26 Snp->Cdb.OpFlags = PXE_OPFLAGS_NOT_USED;
31 Snp->Cdb.StatCode = PXE_STATCODE_INITIALIZE;
32 Snp->Cdb.StatFlags = PXE_STATFLAGS_INITIALIZE;
33 Snp->Cdb.IFnum = Snp->IfNum;
34 Snp->Cdb.Control = PXE_CONTROL_LAST_CDB_IN_LIST;
39 DEBUG ((DEBUG_NET,
"\nsnp->undi.shutdown() "));
41 (*Snp->IssueUndi32Command)((UINT64)(
UINTN)&Snp->Cdb);
47 DEBUG ((DEBUG_WARN,
"\nsnp->undi.shutdown() %xh:%xh\n", Snp->Cdb.StatFlags, Snp->Cdb.StatCode));
49 return EFI_DEVICE_ERROR;
55 if (Snp->TxRxBuffer !=
NULL) {
56 Snp->PciIo->FreeBuffer (
58 SNP_MEM_PAGES (Snp->TxRxBufferSize),
59 (VOID *)Snp->TxRxBuffer
63 Snp->TxRxBuffer =
NULL;
64 Snp->TxRxBufferSize = 0;
102 return EFI_INVALID_PARAMETER;
105 Snp = EFI_SIMPLE_NETWORK_DEV_FROM_THIS (This);
107 OldTpl =
gBS->RaiseTPL (TPL_CALLBACK);
112 switch (Snp->Mode.
State) {
113 case EfiSimpleNetworkInitialized:
116 case EfiSimpleNetworkStopped:
117 Status = EFI_NOT_STARTED;
121 Status = EFI_DEVICE_ERROR;
127 Snp->Mode.
State = EfiSimpleNetworkStarted;
142 gBS->RestoreTPL (OldTpl);
VOID *EFIAPI CopyMem(OUT VOID *DestinationBuffer, IN CONST VOID *SourceBuffer, IN UINTN Length)
VOID *EFIAPI ZeroMem(OUT VOID *Buffer, IN UINTN Length)
#define DEBUG(Expression)
EFI_STATUS EFIAPI SnpUndi32Shutdown(IN EFI_SIMPLE_NETWORK_PROTOCOL *This)
EFI_STATUS PxeShutdown(IN SNP_DRIVER *Snp)
#define PXE_CPBSIZE_NOT_USED
zero
#define PXE_DBSIZE_NOT_USED
zero
#define PXE_CPBADDR_NOT_USED
zero
#define PXE_DBADDR_NOT_USED
zero
#define PXE_STATCODE_SUCCESS
#define PXE_OPCODE_SHUTDOWN
EFI_MAC_ADDRESS CurrentAddress
EFI_MAC_ADDRESS MCastFilter[MAX_MCAST_FILTER_CNT]
EFI_MAC_ADDRESS PermanentAddress
UINT32 ReceiveFilterSetting