Fully implemented UEFI Driver Model protocols
This commit is contained in:
parent
b335041b4f
commit
46942dc800
12 changed files with 337 additions and 0 deletions
78
protocols/adapter_information.h
Normal file
78
protocols/adapter_information.h
Normal file
|
@ -0,0 +1,78 @@
|
|||
#ifndef EFI_PROTOCOLS_ADAPTER_INFORMATION_H
|
||||
#define EFI_PROTOCOLS_ADAPTER_INFORMATION_H
|
||||
|
||||
#define EFI_ADAPTER_INFORMATION_PROTOCOL_GUID {0xe5dd1403,0xd622,0xc24e, {0x84,0x88,0xc7,0x1b,0x17,0xf5,0xe8,0x02}}
|
||||
#define EFI_ADAPTER_INFO_MEDIA_STATE_GUID {0xd7c74207,0xa831,0x4a26, {0xb1,0xf5,0xd1,0x93,0x06,0x5c,0xe8,0xb6}}
|
||||
#define EFI_ADAPTER_INFO_NETWORK_BOOT_GUID {0x1fbd2960,0x4130,0x41e5,{0x94,0xac,0xd2,0xcf,0x03,0x7f,0xb3,0x7c}}
|
||||
#define EFI_ADAPTER_INFO_SAN_MAC_ADDRESS_GUID {0x114da5ef,0x2cf1,0x4e12, {0x9b,0xbb,0xc4,0x70,0xb5,0x52,0x05,0xd9}}
|
||||
#define EFI_ADAPTER_INFO_UNDI_IPV6_SUPPORT_GUID {0x4bd56be3,0x4975,0x4d8a, {0xa0,0xad,0xc4,0x91,0x20,0x4b,0x5d,0x4d}}
|
||||
#define EFI_ADAPTER_INFO_MEDIA_TYPE_GUID {0x8484472f,0x71ec,0x411a, {0xb3,0x9c,0x62,0xcd,0x94,0xd9,0x91,0x6e}}
|
||||
#define EFI_ADAPTER_INFO_CDAT_TYPE_GUID {0x77af24d1,0xb6f0,0x42b9, {0x83,0xf5,0x8f,0xe6,0xe8,0x3e,0xb6,0xf0}}
|
||||
|
||||
typedef struct _EFI_ADAPTER_INFORMATION_PROTOCOL EFI_ADAPTER_INFORMATION_PROTOCOL;
|
||||
|
||||
typedef struct {
|
||||
EFI_STATUS MediaState;
|
||||
} EFI_ADAPTER_INFO_MEDIA_STATE;
|
||||
|
||||
typedef struct {
|
||||
BOOLEAN iSsciIpv4BootCapablity;
|
||||
BOOLEAN iScsiIpv6BootCapablity;
|
||||
BOOLEAN FCoeBootCapablity;
|
||||
BOOLEAN OffloadCapability;
|
||||
BOOLEAN iScsiMpioCapability;
|
||||
BOOLEAN iScsiIpv4Boot;
|
||||
BOOLEAN iScsiIpv6Boot;
|
||||
BOOLEAN FCoeBoot;
|
||||
} EFI_ADAPTER_INFO_NETWORK_BOOT;
|
||||
|
||||
typedef struct {
|
||||
EFI_MAC_ADDRESS SanMacAddress;
|
||||
} EFI_ADAPTER_INFO_SAN_MAC_ADDRESS;
|
||||
|
||||
typedef struct {
|
||||
BOOLEAN Ipv6Support;
|
||||
} EFI_ADAPTER_INFO_UNDI_IPV6_SUPPORT;
|
||||
|
||||
typedef struct {
|
||||
UINT8 MediaType;
|
||||
} EFI_ADAPTER_INFO_MEDIA_TYPE;
|
||||
|
||||
typedef struct {
|
||||
UINTN CdatSize;
|
||||
UINT8 Cdat[];
|
||||
} EFI_ADAPTER_INFO_CDAT_TYPE_TYPE;
|
||||
|
||||
typedef
|
||||
EFI_STATUS
|
||||
(EFIAPI *EFI_ADAPTER_INFO_GET_INFO)(
|
||||
IN EFI_ADAPTER_INFORMATION_PROTOCOL *This,
|
||||
IN EFI_GUID *InformationType,
|
||||
OUT VOID **InformationBlock,
|
||||
OUT UINTN *InformationBlockSize
|
||||
);
|
||||
|
||||
typedef
|
||||
EFI_STATUS
|
||||
(EFIAPI *EFI_ADAPTER_INFO_SET_INFO)(
|
||||
IN EFI_ADAPTER_INFORMATION_PROTOCOL *This,
|
||||
IN EFI_GUID *InformationType,
|
||||
IN VOID *InformationBlock,
|
||||
IN UINTN InformationBlockSize
|
||||
);
|
||||
|
||||
typedef
|
||||
EFI_STATUS
|
||||
(EFIAPI *EFI_ADAPTER_INFO_GET_SUPPORTED_TYPES)(
|
||||
IN EFI_ADAPTER_INFORMATION_PROTOCOL *This,
|
||||
OUT EFI_GUID **InfoTypesBuffer,
|
||||
OUT UINTN *InfoTypesBufferCount
|
||||
);
|
||||
|
||||
typedef struct _EFI_ADAPTER_INFORMATION_PROTOCOL {
|
||||
EFI_ADAPTER_INFO_GET_INFO GetInformation;
|
||||
EFI_ADAPTER_INFO_SET_INFO SetInformation;
|
||||
EFI_ADAPTER_INFO_GET_SUPPORTED_TYPES GetSupportedTypes;
|
||||
} EFI_ADAPTER_INFORMATION_PROTOCOL;
|
||||
|
||||
#endif /* EFI_PROTOCOLS_ADAPTER_INFORMATION_H */
|
Loading…
Add table
Add a link
Reference in a new issue