2. EFI Compliance Test#
2.1. EFI Requirements Test#
Reference Document:
UEFI Specification, Requirements Section.
Configuration
Configuration is a checkpoint in the EFI Requirements Test. If the you need to check the platform-specific protocols, the related profile needs to be updated.
For the correct formatting of profiles, refer to Appendix section A.1, EFI Requirements Test Profile.
2.1.1. Required Elements#
Number | GUID | Assertion | Test Description |
5.22.1.1.1 | 0xf6a871e3, 0xef8a, 0x420f, 0x82, 0x01, 0x35, 0xb6, 0x1c, 0xe2, 0xe8, 0xdb | EFI-Compliant - EFI System Table must be implemented. | 1. The Signature of EFI System Table should be 0x5453595320494249. 2. The Revision of EFI System Table should be equal to or larger than 0x00020000. 3. The Reserved field in EFI System Table should be 0. 4. The RuntimeServices and BootServices pointers of EFI System Table should not be NULL. 5. The CRC32 of EFI System Table must be correct. |
5.22.1.1.2 | 0xaddab6ed, 0x5a17, 0x4327, 0x8f, 0xb1, 0x72, 0x93, 0x3d, 0x1a, 0x7b, 0xba | EFI-Compliant - EFI Boot Services Table must be implemented. | 1. The Signature of EFI Boot Services Table should be 0x56524553544f4f42. 2. The Revision of EFI Boot Services Table should be equal to or larger than 0x00020000. 3. The Reserved field in EFI Boot Services Table should be 0. 4. No function pointers in EFI Boot Services Table should be NULL. |
5.22.1.1.3 | 0x13a20958, 0xc860, 0x452f, 0xb9, 0xa2, 0xe6, 0xd9, 0x96, 0x41, 0x92, 0x24 | EFI-Compliant - EFI Runtime Services Table must be implemented. | 1. The Signature of EFI Runtime Services Table should be 0x56524553544e5552. 2. The Revision of EFI Runtime Services Table should be equal to or larger than 0x00020000. 3. The Reserved field in EFI Runtime Services Table should be 0. 4. No function pointers in EFI Runtime Services Table should be NULL. |
5.22.1.1.4 | 0xa82f8d56, 0x1476, 0x41f1, 0xba, 0xc4, 0x97, 0x59, 0x79, 0x9f, 0x97, 0xf3 | EFI-Compliant –EFI_LOADED_IMAGE_PROTOCOL must exist. | 1. Call LocateProtocol() to find the LOADED_IMAGE_PROTOCOL. The return status should be EFI_SUCCESS. |
5.22.1.1.5 | 0xf61f0f0a, 0x64fe, 0x40a6, 0x9d, 0x7c, 0x07, 0x46, 0xa2, 0x30, 0x24, 0x5f | EFI-Compliant –EFI_DEVICE_PATH_PROTOCOL must exist. | 1. Call LocateProtocol() to find the DEVICE_PATH_PROTOCOL. The return status should be EFI_SUCCESS. |
5.22.1.1.6 | 0x02c017d7, 0x1557, 0x47d9, 0xbc, 0xe9, 0x87, 0x18, 0x2d, 0x07, 0x91, 0x0c | EFI-Compliant –EFI_DECOMPRESS_PROTOCOL must exist. | 1. Call LocateProtocol() to find the DECOMPRESS_PROTOCOL. The return status should be EFI_SUCCESS. 2. No function pointers in DECOMPRESS_PROTOCOL should be NULL. |
5.22.1.1.7 | 0x3a07dc1b, 0x53d1, 0x4fac, 0x88, 0xaf, 0xc7, 0x25, 0x79, 0xeb, 0x07, 0xf2 | UEFI-Compliant-EFI_DEVICE_PATH_UTILITIES_PROTOCOL must exist | 1. Call LocateProtocol() to find the EFI_DEVICE_PATH_UTILITIES_PROTOCOL, the return status should be EFI_SUCCESS 2. No function pointer in Device Path Utility protocol should be NULL |
5.22.1.1.8 | 0xf6334f9b, 0xb930, 0x4adb, 0xa5, 0x3b, 0x76, 0xfa, 0x7b, 0x4c, 0x27, 0x62 | UEFI-Compliant The EFI_GLOBAL_VARIABLE guid should be used by the globally defined variables only, and the attributes of the variables should be same with the definition in the Specification. |
1. Locate all variables with EFI_GLOBAL_VARIABLE guid, check the variable name is in the pre-defined globally variable list. 2. Check the variable attribute. |
2.1.2. Platform-Specific Elements#
Number | GUID | Assertion | Test Description |
5.22.1.2.1 | 0x8f7556c2, 0x4665, 0x4353, 0xa3, 0xaf, 0x9c, 0x00, 0x5a, 0x1e, 0x63, 0xe1 | EFI-Compliant - EFI_SIMPLE_ TEXT_INPUT_PROTOCOL, EFI_SIMPLE_ TEXT_INPUT_EX_PROTOCOL and EFI_SIMPLE_TEXT_OUT_PROTOCOL must be implemented if a platform includes console devices. | 1. Call LocateProtocol() to find the EFI_SIMPLE_ TEXT_INPUT_PROTOCOL. 2. Call LocateProtocol() to find the EFI_SIMPLE_TEXT_INPUT_EX_PROTOCOL. 3. Call LocateProtocol() to find the EFI_SIMPLE_TEXT_OUT_PROTOCOL. 4. If the INI file indicates that the platform includes console devices, the return status in steps 1, 2 and 3 should be EFI_SUCCESS. If not, the return status in steps 1, 2 and 3 should be EFI_SUCCESS or EFI_ERROR. |
5.22.1.2.2 | 0x72ba0e86, 0x58e5, 0x48dd, 0x85, 0x29, 0x88, 0xc6, 0x83, 0x83, 0x11, 0x8d | UEFI-Compliant - EFI_GRAPHICS_OUTPUT_PROTOCOL, EFI_EDID_ACTIVE_PROTOCOL, EFI_EDID_DISCOVERED_PROTOCOL must be implemented if a platform includes graphical console devices. | 1. Call LocateProtocol() to find the EFI_GRAPHICS_OUTPUT_PROTOCOL 2. Call LocateProtocol() to find the EFI_EDID_ACTIVE_PROTOCOL. , 3. Call LocateProtocol() to find the EFI_EDID_DISCOVERED_PROTOCOL. 4. If the INI file indicates that the platform includes graphical console devices, the return status in all steps 1, 2 and 3 should be EFI_SUCCESS. 5. If the INI file doesn’t indicate that the platform includes graphical console devices, the return status in all steps 1, 2 and 3 could be either EFI_SUCCESS or EFI_ERROR. |
5.22.1.2.3 | 0x18670db1, 0x89fb, 0x4de4, 0xb1, 0x0f, 0x89, 0x8e, 0x04, 0x7d, 0x95, 0x2a | UEFI-Compliant –EFI_SIMPLE_POINTER_PROTOCOL must be implemented if a platform includes a pointer device as part of its console support. | 1. Call LocateProtocol() to find the EFI_SIMPLE_POINTER_PROTOCOL. 2. If the INI file indicates that the platform includes a pointer device, the return status in step 1 should be EFI_SUCCESS. 3. If the INI file doesn’t indicate that the platform includes a pointer device, the return status in step 1 could be either EFI_SUCCESS or EFI_ERROR. |
5.22.1.2.4 | 0xbf38a3fd, 0x58ac, 0x419a, 0xab, 0xc2, 0xc6, 0x0b, 0xae, 0x9c, 0xfe, 0x67 | UEFI-Compliant –EFI_BLOCK_IO_PROTOCOL, EFI_DISK_IO_PROTOCOL, EFI_SIMPLE_FILE_SYSTEM; EFI_UNICODE_COLLATION_PROTOCOL must be implemented if a platform supports booting from a disk. | 1. Call LocateProtocol() to find the EFI_BLOCK_IO_PROTOCOL protocol. 2. Call LocateProtocol() to find the EFI_DISK_IO_PROTOCOL. 3. Call LocateProtocol() to find the EFI_SIMPLE_FILE_SYSTEM_PROTOCOL. 4. Call LocateProtocol() to find the EFI_UNICODE_COLLATION_PROTOCOL. 5. If the INI file indicates that the platform supports booting from a disk, the return status in steps 1, 2, 3, and 4 all should be EFI_SUCCESS. 6. If the INI file doesn’t indicate that the platform supports booting from a disk, the return status in steps 1, 2, 3, and 4 all should be EFI_SUCCESS or EFI_ERROR. |
5.22.1.2.5 | 0x98551ae7, 0x5020, 0x4ddd, 0x86, 0x1a, 0xcf, 0xff, 0xb4, 0xd6, 0x03, 0x82 | UEFI-Compliant – EFI_PXE_BASE_CODE_PROTOCOL must be implemented if a platform supports TFTP-based booting from a network device. And platform must be prepared to produce this protocol on any of EFI_NETWORK_INTERFACE_IDENTIFIER_PROTOCOL (UNDI), EFI_SIMPLE_NETWORK_PROTOCOL, or the EFI_MANAGED_NETWORK_PROTOCOL. If platform supports validating the image received from network device, SetupMode equal zero. |
1. Call LocateProtocol() to find the EFI_PXE_BASE_CODE_PROTOCOL 2. Call LocateProtocol() to find the EFI_NETWORK_INTERFACE_IDENTIFIER_PROTOCOL, EFI_SIMPLE_NETWORK_PROTOCOL, EFI_MANAGED_NETWORK_PROTOCOL 3. If the INI file indicates that the platform supports TFTP-based booting from a network device, the return status in step 1 should be EFI_SUCCESS. And one of the step 2 should be EFI_SUCCESS at least 4. If the INI file doesn’t indicate that the platform supports TFTP-based booting from a network device, the return status in both step 1 and step 2 step should be EFI_SUCCESS or EFI_ERROR 5. If the INI file indicates that the platform supports validating the image received from a network device, SetupMode equal zero. |
5.22.1.2.6 | 0x517bcbeb, 0x4982, 0x4a7e, 0x85, 0x51, 0xca, 0x84, 0x7d, 0xdc, 0x21, 0xc2 | UEFI-Compliant –EFI_SERIAL_IO_PROTOCOL must be implemented if a platform includes a byte stream device. | 1. Call LocateProtocol() to find the EFI_SERIAL_IO_PROTOCOL. 2. If the INI file indicates that the platform includes a byte-stream device, the return status in step 1 should be EFI_SUCCESS. 3. If the INI file doesn’t indicate that the platform includes a byte-stream device, the return status in step 1 step could be either EFI_SUCCESS or EFI_ERROR. |
5.22.1.2.7 | 0x213a75c9, 0x7f3d, 0x42db, 0xb3, 0x2a, 0x02, 0xdb, 0xd6, 0x98, 0x31, 0x9d | UEFI-Compliant –EFI_PCI_ROOT_BRIDGE_IO_PROTOCOL and EFI_PCI_IO_PROTOCOL must be implemented if a platform includes PCI bus support. | 1. Call LocateProtocol() to find the EFI_PCI_ROOT_BRIDGE_IO _PROTOCOL. 2. Call LocateProtocol() to find the EFI_PCI_IO_PROTOCOL. 3. If the INI file indicates that the platform includes PCI bus support, the return status in both steps 1 and 2 should be EFI_SUCCESS. 4. If the INI file doesn’t indicate that the platform includes PCI bus support, the return status in both steps 1 and 2 steps could be EFI_SUCCESS or EFI_ERROR. |
5.22.1.2.8 | 0x0ccd5843, 0x5bb5, 0x4fc2, 0xa7, 0x32, 0xdb, 0x17, 0xc4, 0x14, 0xa4, 0x3d | UEFI-Compliant –EFI_USB_HC2_PROTOCOL and EFI_USB_IO_PROTOCOL must be implemented if a platform includes USB bus support. | 1. Call LocateProtocol() to find the EFI_USB_HC2_PROTOCOL. 2. Call LocateProtocol() to find the EFI_USB_IO_PROTOCOL. 3. If INI file indicates the platform includes USB bus support, the return status in 1 and 2 steps should be both EFI_SUCCESS. 4. If INI file doesn’t indicate the platform includes USB bus support, the return status in 1 and 2 steps should be both EFI_SUCCESS or both EFI_ERROR. |
5.22.1.2.9 | 0x2b83418f, 0xe7fb, 0x4528, 0xb6, 0xff, 0xc9, 0xd4, 0x87, 0xae, 0x2e, 0xff | UEFI-Compliant –EFI_EXT_SCSI_PASS_THRU_PROTOCOL must be implemented if a platform includes an I/O system that uses SCSI command packets. | 1. Call LocateProtocol() to find the EFI_EXT_SCSI_PASS_THRU_PROTOCOL. 2. If INI file indicates the platform includes an I/O system that uses SCSI command packets, the return status in 1 step should be EFI_SUCCESS. 3. If INI file doesn’t indicate the platform includes an I/O system that uses SCSI command packets, the return status in 1 step could be EFI_SUCCESS or EFI_ERROR. |
5.22.1.2.10 | 0x3ee22696, 0x0875, 0x46f4, 0x88, 0x84, 0xba, 0x12, 0x4c, 0x7e, 0xaf, 0xf0 | UEFI-Compliant –EFI_DEBUG_SUPPORT_PROTOCOL and EFI_DEBUG_PORT_PROTOCOL must be implemented if a platform supports debugging capabilities. | 1. Call LocateProtocol() to find the EFI_DEBUG_SUPPORT_PROTOCOL. 2. Call LocateProtocol() to find the EFI_DEBUG_PORT_PROTOCOL. 3. If INI file indicates the platform supports debugging capabilities, the return status in 1 and 2 steps should be both EFI_SUCCESS. 4. If INI file doesn’t indicate the platform supports debugging capabilities, the return status in 1 and 2 steps should be both EFI_SUCCESS or both EFI_ERROR. |
5.22.1.2.11 | 0x329027ce, 0x406e, 0x48c8, 0x8a, 0xc1, 0xa0, 0x2c, 0x1a, 0x6e, 0x39, 0x83 | UEFI-Compliant –EFI_PLATFORM_DRIVER_OVERRIDE_PROTOCOL must be implemented if a platform includes the ability to override the default driver. | 1. Call LocateProtocol() to find the EFI_PLATFORM_DRIVER_OVERRIDE_PROTOCOL. 2. If INI file indicates the platform includes the ability to override the default driver, the return status in 1 step should be EFI_SUCCESS. 3. If INI file doesn’t indicate the platform includes the ability to override the default driver, the return status in 1 step could be EFI_SUCCESS or EFI_ERROR. |
5.22.1.2.12 | 0x76a6a1b0, 0x8c53, 0x407d, 0x84, 0x86, 0x9a, 0x6e, 0x63, 0x32, 0xd3, 0xce | UEFI-Compliant –
EFI_MANAGED_NETWOR
K_PROTOCOL,
EFI_MANAGED_NETWOR
K_SERVICE_BINDING_
PROTOCOL,
EFI_ARP_PROTOCOL,
EFI_ARP_SERVICE_BI
NDING_PROTOCOL,
EFI_DHCP4_PROTOCOL, EFI_DHCP4_SERVICE_ BINDING_PROTOCOL, EFI_TCP4_PROTOCOL, EFI_TCP4_SERVICE_B INDING_PROTOCOL, EFI_IP4_PROTOCOL, EFI_IP4_SERVICE_BINDING_PROTOCOL, EFI_IP4_CONFIG2_PROTOCOL, EFI_UDP4_PROTOCOL, EFI_UDP4_SERVICE_B INDING_PROTOCOL, EFI_MTFTP4_PROTOCO L, and EFI_MTFTP4_SERVICE _BINIING_PROTOCOL are required for general network application |
1. Call LocateProtocol() to find the
EFI_MANAGED_NETWORK_PROTOCOL,
EFI_MANAGED_NETWORK_SERVICE_BINDING_PROTOCOL,
EFI_ARP_PROTOCOL,
EFI_ARP_SERVICE_BINDING_PROTOCOL, EFI_DHCP4_PROTOCOL, 2. If INI file indicates the platform includes the ability to general network application, the return status for locating all protocols described in step 1 should be EFI_SUCCESS 3. If INI file doesn’t indicate the platform includes the ability for general network application, the return status for locating all protocols described in step 1 could |
5.22.1.2.13 | 0x28c068f2, 0xf398, 0x488a, 0xb0, 0x59, 0x53, 0x4e, 0x98, 0x2d, 0x9c, 0x85 | UEFI-Compliant –EFI_SCSI IO_PROTOCOL, EFI_Block IO_PROTOCOL and EFI_EXT_SCSI_PASS_THRU_PROTOCOL must be implemented if a platform supports booting from a SCSI peripheral device. | 1. Call LocateProtocol() to find the EFI_SCSI IO_PROTOCOL. 2. Call LocateProtocol() to find the EFI_Block IO_PROTOCOL protocol. 3. Call LocateProtocol() to find the EFI_EXT_SCSI_PASS_THRU_PROTOCOL. 4. If the INI file indicates that the platform supports booting from a network device, the return status in all steps 1, 2 and 3 should be EFI_SUCCESS. 5. If the INI file doesn’t indicate that the platform supports booting from a network device, the return status in all steps 1, 2 and 3 should be EFI_SUCCESS or EFI_ERROR. |
5.22.1.2.14 | 0x6b7077a6, 0x4b13, 0x4e13, 0x9b, 0x1f, 0x0c, 0x4b, 0x3a, 0x86, 0x69, 0xe2 | UEFI-Compliant – EFI_ISCSI_INITIATOR_NAME_PROTOCOL and EFI_AUTHENTICATION_INFO_PROTOCOL must be implemented if a platform supports booting from a ISCSI peripheral device. | 1. Call LocateProtocol() to find the EFI_ISCSI_INITIATOR_NAME_PROTO COL and EFI_AUTHENTICATION_INFO_PROTOCOL 2. If the INI file indicates that the platform supports booting from a iSCSI peripheral, the return status in both steps 1 should be EFI_SUCCESS 3. If the INI file doesn’t indicate that the platform supports booting from iSCSI peripheral, the return status in steps 1 should be EFI_SUCCESS or EFI_ERROR. |
5.22.1.2.15 | 0x4c82eb2d, 0xc785, 0x410c, 0x95, 0xd1, 0xae, 0x27, 0x12, 0x21, 0x44, 0xc8 | UEFI Compliant –UEFI V6 General Network Driver Dhcp6SB, Tcp6SB, Ip6SB, Udp6SB, Ip6Config, Vlan must exist if a platform supports V6 network stack | 1. Call LocateProtocol() to find the V6 network stack. 2. If the INI file indicates that the platform supports v6 stack , the return status in step 1 should be EFI_SUCCESS. 3. If the INI file doesn’t indicate that the platform supports v6 network stack, the return status in steps1 should be EFI_SUCCESS or EFI_ERROR. |
5.22.1.2.16 | 0x1d0a2f2a, 0x924, 0x4b8c, 0x9f, 0xc7, 0xb1, 0x85, 0xcc, 0x22, 0xe1, 0x18 | UEFI Compliant –UEFI EBC interpreter must exist if a platform supports EBC image | 1. Call LocateProtocol() to find the EFI_EBC_PROTOCOL. 2. If the INI file indicates that the platform supports EBC image , the return status in step 1 should be EFI_SUCCESS. 3. If the INI file doesn’t indicate that the platform supports EBC image, the return status in step 1 should be EFI_SUCCESS or EFI_ERROR. |
5.22.1.2.17 | 0xb7cd2d76, 0xea43, 0x4013, 0xb7, 0xd1, 0x59, 0xeb, 0x2e, 0xc9, 0xbf, 0x1b |
UEFI Compliant –UEFI HiiDatabase, HiiString, HiiConfigRouting, HiiConfigAccess must be existed if the platform supports HII. If it supports bitmapped fonts, then HiiFont must exist also. | 1. Call LocateProtocol() to find HiiDatabase, HiiString, HiiConfigRouting, HiiConfigAccess. 2. If the INI file indicates that the platform supports HII all return statuses in step 1 should be EFI_SUCCESS. 3. If the INI file doesn’t indicate that the platform supports HII, the return status in step1 should be EFI_SUCCESS or EFI_ERROR. 4. If step 2 is true, and the INI file indicates the platform support bitmapped font, call LocateProtocol() to find HiiFont, and the return status should EFI_SUCCESS. |
5.22.1.2.18 | 0x5aea7246, 0xbcf9, 0x4ba4, 0x81, 0xd2, 0x83, 0x2c, 0x98, 0x41, 0x46, 0xf3 |
UEFI-Compliant – EFI_NVM_EXPRESS _PASS_THRU_PROTOCOL must be implemented if a platform includes an NVM Express controller |
1. Call LocateProtocol() to find the EFI_NVM_EXPRESS_PASS_THRU_PROTOCOL 2. If the INI file indicates that the platform includes an NVM Express controller, the return status in steps 1 should be EFI_SUCCESS 3. If the INI file doesn’t indicate that the platform includes an NVM Express controller, the return status in steps 1 should be EFI_SUCCESS or EFI_ERROR. |
5.22.1.2.19 | 0x5cb0cdb5, 0xac80, 0x4983, 0xb7, 0x10, 0x4b, 0xb, 0xf0, 0x19, 0x15, 0x63 | UEFI Compliant – EFI_BLOCK_IO_PROTOCOL must be existed if the platform supports booting from a block-oriented NVM Express controller. EFI_NVM_EXPRESS_PASS_THRU_PROTOCOL may be required. |
1. Call LocateProtocol() to find EFI_BLOCK_IO_PROTOCOL 2. If the INI file indicates that the platform supports booting from a block-oriented NVM Express controller, all return statuses in step 1 should be EFI_SUCCESS 3. If the INI file doesn’t indicate that the platform supports booting from a block-oriented NVM Express controller, the return status in step1 should be EFI_SUCCESS or EFI_ERROR 4. If step 2 is true, and the INI file indicates the platform support EFI_NVM_EXPRESS_PASS_THRU_PROTOCOL, call LocateProtocol() to find it, and the return status should be EFI_SUCCESS. |
5.22.1.2.20 | 0x563f654f, 0xaba8, 0x4539, 0x80, 0x4b, 0x50, 0x63, 0x5, 0x7, 0x26, 0x23 | UEFI-Compliant – EFI_ATA_PASS_THRU_PROTOCOL must be implemented if a platform includes an I/O subsystem that utilizes ATA command packets. |
1. Call LocateProtocol() to find the EFI_ATA_PASS_THRU_PROTOCOL 2. If the INI file indicates that the platform includes an I/O subsystem that utilizes ATA command packets, the return status in steps 1 should be EFI_SUCCESS 3. If the INI file doesn’t indicate that the platform includes an I/O subsystem that utilizes ATA command packets, the return status in steps 1 should be EFI_SUCCESS or EFI_ERROR. |
5.22.1.2.21 | 0x2e6d1733, 0x6d39, 0x49ab, 0xa8, 0x86, 0x1b, 0x6d, 0xe4, 0x45, 0x66, 0xa8 | UEFI Compliant – EFI_DNS4_PROTOCOL, EFI_DNS4_SERVICE_BINDING_PROTOCOL must be existed if the platform supports DNS for IPv4 stack. |
1. Call LocateProtocol() to find the EFI_DNS4_PROTOCOL and EFI_DNS4_SERVICE_BINDING_PROTOCOL 2. If the INI file indicates that the platform supports DNS for IPv4 stack, the return status in steps 1 should be EFI_SUCCESS 3. If the INI file doesn’t indicate this capability, the return status in steps 1 should be EFI_SUCCESS or EFI_ERROR. |
5.22.1.2.22 | 0xe02a6ef3, 0x4b70, 0x40ec, 0xaa, 0x23, 0x50, 0xb7, 0xb9, 0x72, 0xb0, 0x65 | UEFI Compliant – EFI_DNS6_PROTOCOL, EFI_DNS6_SERVICE_BINDING_PROTOCOL must be existed if the platform supports DNS for IPv6 stack. |
1. Call LocateProtocol() to find the EFI_DNS6_PROTOCOL and EFI_DNS6_SERVICE_BINDING_PROTOCOL 2. If the INI file indicates that the platform supports DNS for IPv6 stack, the return status in steps 1 should be EFI_SUCCESS 3. If the INI file doesn’t indicate this capability, the return status in steps 1 should be EFI_SUCCESS or EFI_ERROR. |
5.22.1.2.23 | 0xcb6f7b77, 0xb15, 0x43f7, 0xa9, 0x5b, 0x8c, 0x7f, 0x9f, 0xd7, 0xb, 0x21 | UEFI Compliant – EFI_TLS_PROTOCOL, EFI_TLS_SERVICE_BINDING_PROTOCOL, EFI_TLS_CONFIGURATION_PROTOCOL must be existed if the platform supports TLS feature. | 1. Call LocateProtocol() to find the EFI_TLS_PROTOCOL, EFI_TLS_SERVICE_BINDING_PROTOCOL and EFI_TLS_CONFIGURATION_PROTOCOL 2. If the INI file indicates that the platform supports TLS feature, the return status in steps 1 should be EFI_SUCCESS 3. If the INI file doesn’t indicate this capability, the return status in steps 1 should be EFI_SUCCESS or EFI_ERROR. |
5.22.1.2.24 | 0x77fddb95, 0x5969, 0x4fb4, 0xa2, 0x18, 0x5c, 0xc, 0x76, 0xb, 0x5, 0x64 | UEFI Compliant – EFI_HTTP_PROTOCOL, EFI_HTTP_SERVICE_BINDING_PROTOCOL, EFI_HTTP_UTILITIES_PROTOCOL must be existed if the platform includes the ability to perform a HTTP-based boot from a network device. |
1. Call LocateProtocol() to find the EFI_HTTP_PROTOCOL, EFI_HTTP_SERVICE_BINDING_PROTOCOL and EFI_HTTP_ UTILITIES_PROTOCOL 2. If the INI file indicates that the platform includes the ability to perform a HTTP-based boot from a network device, the return status in steps 1 should be EFI_SUCCESS 3. If the INI file doesn’t indicate this capability, the return status in steps 1 should be EFI_SUCCESS or EFI_ERROR. |
5.22.1.2.25 | 0xf0dc12 fa, 0x3c4b, 0x43f7, 0xa6, 0x9e, 0xa5, 0xbe, 0x6f, 0xcc, 0x90, 0xa1 |
UEFI Compliant – EFI_EAP_PROTOCOL, EFI_EAP_CONFIGURATION_PROTOCOL, EFI_EAP_MANAGEMENT2_PROTOCOL must be existed if the platform includes the ability to perform a wireless boot from a network device with EAP feature, and if this platform provides a standalone wireless EAP driver. |
1. Call LocateProtocol() to find the EFI_EAP_PROTOCOL, EFI_EAP_CONFIGURATION_PROTOCOL and EFI_EAP_MANAGEMENT2_PROTOCOL 2. If the INI file indicates that the platform includes the ability to perform a wireless boot from a network device with EAP feature, and if this platform provides a standalone wireless EAP driver, the return status in steps 1 should be EFI_SUCCESS 3. If the INI file doesn’t indicate this capability, the return status in steps 1 should be EFI_SUCCESS or EFI_ERROR. |
5.22.1.2.26 | 0x87e50392, 0xf5a2, 0x42b8, 0x81, 0x12, 0x68, 0xbe, 0xc9, 0x2, 0xb9, 0xbc | UEFI Compliant – EFI_BLUETOOTH_HC_PROTOCOL, EFI_ BLUETOOTH_IO_PROTOCOL, EFI_BLUETOOTH_CONFIG_PROTOCOL must be existed if the platform supports classic Bluetooth. |
1. Call LocateProtocol() to find the UEFI Compliant –UEFI EFI_BLUETOOTH_HC_PROTOCOL, EFI_BLUETOOTH_IO_PROTOCOL and EFI_BLUETOOTH_CONFIG_PROTOCOL 2. If the INI file indicates that the platform supports classic Bluetooth, the return status in steps 1 should be EFI_SUCCESS 3. If the INI file doesn’t indicate this capability, the return status in steps 1 should be EFI_SUCCESS or EFI_ERROR. |