XenevaOS
Loading...
Searching...
No Matches
SimpleNetwork.h
Go to the documentation of this file.
1
26#ifndef __SIMPLE_NETWORK_H__
27#define __SIMPLE_NETWORK_H__
28
29#define EFI_SIMPLE_NETWORK_PROTOCOL_GUID \
30 { \
31 0xA19832B9, 0xAC25, 0x11D3, {0x9A, 0x2D, 0x00, 0x90, 0x27, 0x3F, 0xC1, 0x4D } \
32 }
33
35
36
41
144
156
157#define EFI_SIMPLE_NETWORK_RECEIVE_UNICAST 0x01
158#define EFI_SIMPLE_NETWORK_RECEIVE_MULTICAST 0x02
159#define EFI_SIMPLE_NETWORK_RECEIVE_BROADCAST 0x04
160#define EFI_SIMPLE_NETWORK_RECEIVE_PROMISCUOUS 0x08
161#define EFI_SIMPLE_NETWORK_RECEIVE_PROMISCUOUS_MULTICAST 0x10
162
163#define EFI_SIMPLE_NETWORK_RECEIVE_INTERRUPT 0x01
164#define EFI_SIMPLE_NETWORK_TRANSMIT_INTERRUPT 0x02
165#define EFI_SIMPLE_NETWORK_COMMAND_INTERRUPT 0x04
166#define EFI_SIMPLE_NETWORK_SOFTWARE_INTERRUPT 0x08
167
168#define MAX_MCAST_FILTER_CNT 16
250
251//
252// Protocol Member Functions
253//
266typedef
270 );
271
284typedef
288 );
289
316typedef
320 IN UINTN ExtraRxBufferSize OPTIONAL,
321 IN UINTN ExtraTxBufferSize OPTIONAL
322 );
323
340typedef
344 IN BOOLEAN ExtendedVerification
345 );
346
360typedef
364 );
365
390typedef
394 IN UINT32 Enable,
395 IN UINT32 Disable,
396 IN BOOLEAN ResetMCastFilter,
397 IN UINTN MCastFilterCnt OPTIONAL,
398 IN EFI_MAC_ADDRESS *MCastFilter OPTIONAL
399 );
400
416typedef
420 IN BOOLEAN Reset,
422 );
423
445typedef
449 IN BOOLEAN Reset,
450 IN OUT UINTN *StatisticsSize OPTIONAL,
451 OUT EFI_NETWORK_STATISTICS *StatisticsTable OPTIONAL
452 );
453
475typedef
479 IN BOOLEAN IPv6,
480 IN EFI_IP_ADDRESS *IP,
482 );
483
504typedef
508 IN BOOLEAN ReadWrite,
509 IN UINTN Offset,
510 IN UINTN BufferSize,
511 IN OUT VOID *Buffer
512 );
513
539typedef
543 OUT UINT32 *InterruptStatus OPTIONAL,
544 OUT VOID **TxBuf OPTIONAL
545 );
546
580typedef
584 IN UINTN HeaderSize,
585 IN UINTN BufferSize,
586 IN VOID *Buffer,
587 IN EFI_MAC_ADDRESS *SrcAddr OPTIONAL,
588 IN EFI_MAC_ADDRESS *DestAddr OPTIONAL,
589 IN UINT16 *Protocol OPTIONAL
590 );
591
624typedef
628 OUT UINTN *HeaderSize OPTIONAL,
629 IN OUT UINTN *BufferSize,
630 OUT VOID *Buffer,
632 OUT EFI_MAC_ADDRESS *DestAddr OPTIONAL,
633 OUT UINT16 *Protocol OPTIONAL
634 );
635
636#define EFI_SIMPLE_NETWORK_PROTOCOL_REVISION 0x00010000
637
638//
639// Revision defined in EFI1.1
640//
641#define EFI_SIMPLE_NETWORK_INTERFACE_REVISION EFI_SIMPLE_NETWORK_PROTOCOL_REVISION
642
678
680
681#endif
UINT64 UINTN
Definition ProcessorBind.h:118
#define EFIAPI
Definition ProcessorBind.h:172
unsigned int UINT32
Definition ProcessorBind.h:102
#define IN
Definition Base.h:347
#define OUT
Definition Base.h:352
#define OPTIONAL
Definition Base.h:358
EFI_GUID gEfiSimpleNetworkProtocolGuid
EFI_STATUS(EFIAPI * EFI_SIMPLE_NETWORK_RECEIVE_FILTERS)(IN EFI_SIMPLE_NETWORK_PROTOCOL *This, IN UINT32 Enable, IN UINT32 Disable, IN BOOLEAN ResetMCastFilter, IN UINTN MCastFilterCnt OPTIONAL, IN EFI_MAC_ADDRESS *MCastFilter OPTIONAL)
Definition SimpleNetwork.h:392
EFI_STATUS(EFIAPI * EFI_SIMPLE_NETWORK_SHUTDOWN)(IN EFI_SIMPLE_NETWORK_PROTOCOL *This)
Definition SimpleNetwork.h:362
EFI_STATUS(EFIAPI * EFI_SIMPLE_NETWORK_START)(IN EFI_SIMPLE_NETWORK_PROTOCOL *This)
Definition SimpleNetwork.h:268
EFI_STATUS(EFIAPI * EFI_SIMPLE_NETWORK_GET_STATUS)(IN EFI_SIMPLE_NETWORK_PROTOCOL *This, OUT UINT32 *InterruptStatus OPTIONAL, OUT VOID **TxBuf OPTIONAL)
Definition SimpleNetwork.h:541
EFI_STATUS(EFIAPI * EFI_SIMPLE_NETWORK_NVDATA)(IN EFI_SIMPLE_NETWORK_PROTOCOL *This, IN BOOLEAN ReadWrite, IN UINTN Offset, IN UINTN BufferSize, IN OUT VOID *Buffer)
Definition SimpleNetwork.h:506
EFI_STATUS(EFIAPI * EFI_SIMPLE_NETWORK_STATION_ADDRESS)(IN EFI_SIMPLE_NETWORK_PROTOCOL *This, IN BOOLEAN Reset, IN EFI_MAC_ADDRESS *New OPTIONAL)
Definition SimpleNetwork.h:418
EFI_STATUS(EFIAPI * EFI_SIMPLE_NETWORK_RESET)(IN EFI_SIMPLE_NETWORK_PROTOCOL *This, IN BOOLEAN ExtendedVerification)
Definition SimpleNetwork.h:342
EFI_SIMPLE_NETWORK_STATE
Definition SimpleNetwork.h:150
@ EfiSimpleNetworkInitialized
Definition SimpleNetwork.h:153
@ EfiSimpleNetworkStarted
Definition SimpleNetwork.h:152
@ EfiSimpleNetworkStopped
Definition SimpleNetwork.h:151
@ EfiSimpleNetworkMaxState
Definition SimpleNetwork.h:154
EFI_STATUS(EFIAPI * EFI_SIMPLE_NETWORK_INITIALIZE)(IN EFI_SIMPLE_NETWORK_PROTOCOL *This, IN UINTN ExtraRxBufferSize OPTIONAL, IN UINTN ExtraTxBufferSize OPTIONAL)
Definition SimpleNetwork.h:318
EFI_SIMPLE_NETWORK_PROTOCOL EFI_SIMPLE_NETWORK
Definition SimpleNetwork.h:40
#define MAX_MCAST_FILTER_CNT
Definition SimpleNetwork.h:168
EFI_STATUS(EFIAPI * EFI_SIMPLE_NETWORK_STATISTICS)(IN EFI_SIMPLE_NETWORK_PROTOCOL *This, IN BOOLEAN Reset, IN OUT UINTN *StatisticsSize OPTIONAL, OUT EFI_NETWORK_STATISTICS *StatisticsTable OPTIONAL)
Definition SimpleNetwork.h:447
EFI_STATUS(EFIAPI * EFI_SIMPLE_NETWORK_TRANSMIT)(IN EFI_SIMPLE_NETWORK_PROTOCOL *This, IN UINTN HeaderSize, IN UINTN BufferSize, IN VOID *Buffer, IN EFI_MAC_ADDRESS *SrcAddr OPTIONAL, IN EFI_MAC_ADDRESS *DestAddr OPTIONAL, IN UINT16 *Protocol OPTIONAL)
Definition SimpleNetwork.h:582
EFI_STATUS(EFIAPI * EFI_SIMPLE_NETWORK_MCAST_IP_TO_MAC)(IN EFI_SIMPLE_NETWORK_PROTOCOL *This, IN BOOLEAN IPv6, IN EFI_IP_ADDRESS *IP, OUT EFI_MAC_ADDRESS *MAC)
Definition SimpleNetwork.h:477
EFI_STATUS(EFIAPI * EFI_SIMPLE_NETWORK_RECEIVE)(IN EFI_SIMPLE_NETWORK_PROTOCOL *This, OUT UINTN *HeaderSize OPTIONAL, IN OUT UINTN *BufferSize, OUT VOID *Buffer, OUT EFI_MAC_ADDRESS *SrcAddr OPTIONAL, OUT EFI_MAC_ADDRESS *DestAddr OPTIONAL, OUT UINT16 *Protocol OPTIONAL)
Definition SimpleNetwork.h:626
EFI_STATUS(EFIAPI * EFI_SIMPLE_NETWORK_STOP)(IN EFI_SIMPLE_NETWORK_PROTOCOL *This)
Definition SimpleNetwork.h:286
RETURN_STATUS EFI_STATUS
Definition UefiBaseType.h:33
VOID * EFI_EVENT
Definition UefiBaseType.h:41
#define VOID
Definition acefi.h:190
unsigned short UINT16
Definition actypes.h:237
unsigned char BOOLEAN
Definition actypes.h:235
unsigned char UINT8
Definition actypes.h:236
COMPILER_DEPENDENT_UINT64 UINT64
Definition actypes.h:239
Definition UefiBaseType.h:100
Definition SimpleNetwork.h:45
UINT64 TxDroppedFrames
Definition SimpleNetwork.h:107
UINT64 TxErrorFrames
Definition SimpleNetwork.h:137
UINT64 RxTotalFrames
Definition SimpleNetwork.h:50
UINT64 RxTotalBytes
Definition SimpleNetwork.h:98
UINT64 RxDroppedFrames
Definition SimpleNetwork.h:72
UINT64 TxRetryFrames
Definition SimpleNetwork.h:142
UINT64 TxTotalFrames
Definition SimpleNetwork.h:103
UINT64 TxUndersizeFrames
Definition SimpleNetwork.h:105
UINT64 RxDuplicatedFrames
Definition SimpleNetwork.h:127
UINT64 RxCrcErrorFrames
Definition SimpleNetwork.h:92
UINT64 RxGoodFrames
Definition SimpleNetwork.h:55
UINT64 UnsupportedProtocol
Definition SimpleNetwork.h:122
UINT64 TxMulticastFrames
Definition SimpleNetwork.h:110
UINT64 RxOversizeFrames
Definition SimpleNetwork.h:67
UINT64 RxMulticastFrames
Definition SimpleNetwork.h:87
UINT64 RxUndersizeFrames
Definition SimpleNetwork.h:61
UINT64 TxOversizeFrames
Definition SimpleNetwork.h:106
UINT64 Collisions
Definition SimpleNetwork.h:117
UINT64 RxUnicastFrames
Definition SimpleNetwork.h:77
UINT64 RxBroadcastFrames
Definition SimpleNetwork.h:82
UINT64 TxBroadcastFrames
Definition SimpleNetwork.h:109
UINT64 TxUnicastFrames
Definition SimpleNetwork.h:108
UINT64 TxTotalBytes
Definition SimpleNetwork.h:112
UINT64 TxGoodFrames
Definition SimpleNetwork.h:104
UINT64 RxDecryptErrorFrames
Definition SimpleNetwork.h:132
UINT64 TxCrcErrorFrames
Definition SimpleNetwork.h:111
Definition SimpleNetwork.h:169
BOOLEAN MacAddressChangeable
Definition SimpleNetwork.h:236
EFI_MAC_ADDRESS CurrentAddress
Definition SimpleNetwork.h:220
UINT32 NvRamAccessSize
Definition SimpleNetwork.h:196
BOOLEAN MultipleTxSupported
Definition SimpleNetwork.h:240
UINT32 ReceiveFilterMask
Definition SimpleNetwork.h:200
UINT32 NvRamSize
Definition SimpleNetwork.h:189
UINT32 MediaHeaderSize
Definition SimpleNetwork.h:181
BOOLEAN MediaPresent
Definition SimpleNetwork.h:248
UINT8 IfType
Definition SimpleNetwork.h:232
UINT32 State
Definition SimpleNetwork.h:173
UINT32 MaxMCastFilterCount
Definition SimpleNetwork.h:208
BOOLEAN MediaPresentSupported
Definition SimpleNetwork.h:244
EFI_MAC_ADDRESS PermanentAddress
Definition SimpleNetwork.h:228
UINT32 MCastFilterCount
Definition SimpleNetwork.h:212
UINT32 MaxPacketSize
Definition SimpleNetwork.h:185
EFI_MAC_ADDRESS BroadcastAddress
Definition SimpleNetwork.h:224
UINT32 HwAddressSize
Definition SimpleNetwork.h:177
UINT32 ReceiveFilterSetting
Definition SimpleNetwork.h:204
Definition Base.h:281
Definition SimpleNetwork.h:649
EFI_SIMPLE_NETWORK_INITIALIZE Initialize
Definition SimpleNetwork.h:658
UINT64 Revision
Definition SimpleNetwork.h:655
EFI_SIMPLE_NETWORK_MCAST_IP_TO_MAC MCastIpToMac
Definition SimpleNetwork.h:664
EFI_SIMPLE_NETWORK_RECEIVE Receive
Definition SimpleNetwork.h:668
EFI_SIMPLE_NETWORK_STATISTICS Statistics
Definition SimpleNetwork.h:663
EFI_SIMPLE_NETWORK_NVDATA NvData
Definition SimpleNetwork.h:665
EFI_SIMPLE_NETWORK_START Start
Definition SimpleNetwork.h:656
EFI_EVENT WaitForPacket
Definition SimpleNetwork.h:672
EFI_SIMPLE_NETWORK_RECEIVE_FILTERS ReceiveFilters
Definition SimpleNetwork.h:661
EFI_SIMPLE_NETWORK_MODE * Mode
Definition SimpleNetwork.h:676
EFI_SIMPLE_NETWORK_SHUTDOWN Shutdown
Definition SimpleNetwork.h:660
EFI_SIMPLE_NETWORK_STATION_ADDRESS StationAddress
Definition SimpleNetwork.h:662
EFI_SIMPLE_NETWORK_TRANSMIT Transmit
Definition SimpleNetwork.h:667
EFI_SIMPLE_NETWORK_STOP Stop
Definition SimpleNetwork.h:657
EFI_SIMPLE_NETWORK_GET_STATUS GetStatus
Definition SimpleNetwork.h:666
EFI_SIMPLE_NETWORK_RESET Reset
Definition SimpleNetwork.h:659
Definition UefiBaseType.h:108