Nothing in the UEFI Requirements appendix is valuable.
The table of required boot services is unnecessary because it is an exact duplicate of the UEFI boot services list in the UEFI spec (and it also happens to be slightly incorrect) (UEFI 2.6.1). It is providing no value to include in EBBR as all UEFI implementations are required to implement the full set.
The tables of required core protocols are already specified in the UEFI spec (UEFI 2.6.1)
The table of required media i/o protocols are already required if the device supports booting from a disk device (UEFI 2.6.2).
The table of console protocols is similarly already required if a console device is present.
It isn't clear that HII protocols need to be required. U-Boot does implement them, but it doesn't appear to be a critical requirement on whether or not an OSV can support the platform.
The tables of optional UEFI protocols isn't adding any value because it doesn't require anything of implementers, and it doesn't provide any commentary on when the protocols should be included. This is just additional text.
Remove the lot to simplify the spec.
Signed-off-by: Grant Likely grant.likely@arm.com --- source/appendix-a-uefi-features.rst | 203 ------------------------------------ source/chapter2-uefi.rst | 4 - source/index.rst | 1 - 3 files changed, 208 deletions(-) delete mode 100644 source/appendix-a-uefi-features.rst
diff --git a/source/appendix-a-uefi-features.rst b/source/appendix-a-uefi-features.rst deleted file mode 100644 index bb74ca5..0000000 --- a/source/appendix-a-uefi-features.rst +++ /dev/null @@ -1,203 +0,0 @@ -.. SPDX-License-Identifier: CC-BY-SA-4.0 -.. _appendix-uefi-requirements: - -############################################# -APPENDIX A - UEFI Implementation Requirements -############################################# - -Required Boot Services -********************** - -========================================== ====== -Service UEFI § -========================================== ====== -EFI_RAISE_TPL 7.1 -EFI_RESTORE_TPL 7.1 -EFI_ALLOCATE_PAGES 7.2 -EFI_FREE_PAGES 7.2 -EFI_GET_MEMORY_MAP 7.2 -EFI_ALLOCATE_POOL 7.2 -EFI_FREE_POOL 7.2 -EFI_CREATE_EVENT 7.1 -EFI_SET_TIMER 7.1 -EFI_WAIT_FOR_EVENT 7.1 -EFI_SIGNAL_EVENT 7.1 -EFI_CLOSE_EVENT 7.1 -EFI_INSTALL_PROTOCOL_INTERFACE 7.3 -EFI_REINSTALL_PROTOCOL_INTERFACE 7.3 -EFI_UNINSTALL_PROTOCOL_INTERFACE 7.3 -EFI_HANDLE_PROTOCOL 7.3 -EFI_REGISTER_PROTOCOL_NOTIFY 7.3 -EFI_LOCATE_HANDLE 7.3 -EFI_LOCATE_PROTOCOL 7.3 -EFI_LOCATE_DEVICE_PATH 7.3 -EFI_INSTALL_CONFIGURATION_TABLE 7.3 -EFI_IMAGE_LOAD 7.4 -EFI_IMAGE_START 7.4 -EFI_EXIT 7.4 -EFI_IMAGE_UNLOAD 7.4 -EFI_EXIT_BOOT_SERVICES 7.4 -EFI_GET_NEXT_MONOTONIC_COUNT 7.5 -EFI_STALL 7.5 -EFI_SET_WATCHDOG_TIMER 7.5 -EFI_CONNECT_CONTROLLER 7.3 -EFI_DISCONNECT_CONTROLLER 7.3 -EFI_OPEN_PROTOCOL 7.3 -EFI_CLOSE_PROTOCOL 7.3 -EFI_OPEN_PROTOCOL_INFORMATION 7.3 -EFI_PROTOCOLS_PER_HANDLE 7.3 -EFI_LOCATE_HANDLE_BUFFER 7.3 -EFI_LOCATE_PROTOCOL 7.3 -EFI_INSTALL_MULTIPLE_PROTOCOL_INTERFACES 7.3 -EFI_UNINSTALL_MULTIPLE_PROTOCOL_INTERFACES 7.3 -EFI_CALCULATE_CRC32 7.5 -EFI_COPY_MEM 7.5 -EFI_SET_MEM 7.5 -EFI_CREATE_EVENT_EX 7.5 -========================================== ====== - -Required UEFI Protocols -*********************** - -Core UEFI Protocols -=================== - -========================================== ====== -Service UEFI § -========================================== ====== -EFI_LOADED_IMAGE_PROTOCOL 9.1 -EFI_LOADED_IMAGE_DEVICE_PATH_PROTOCOL 9.2 -EFI_DECOMPRESS_PROTOCOL 19.5 -EFI_DEVICE_PATH_PROTOCOL 10.2 -EFI_DEVICE_PATH_UTILITIES_PROTOCOL 10.3 -========================================== ====== - -Media I/O Protocols -=================== - -========================================== ====== -Service UEFI § -========================================== ====== -EFI_LOAD_FILE2_PROTOCOL 13.2 -EFI_SIMPLE_FILE_SYSTEM_PROTOCOL 13.4 -EFI_FILE_PROTOCOL 13.5 -========================================== ====== - -Console Protocols -================= - -========================================== ====== -Service UEFI § -========================================== ====== -EFI_SIMPLE_TEXT_INPUT_PROTOCOL 12.2 -EFI_SIMPLE_TEXT_INPUT_EX_PROTOCOL 12.3 -EFI_SIMPLE_TEXT_OUTPUT_PROTOCOL 12.4 -========================================== ====== - -Driver Configuration Protocols -============================== - -========================================== ====== -Service UEFI § -========================================== ====== -EFI_HII_DATABASE_PROTOCOL 33.4 -EFI_HII_STRING_PROTOCOL 33.4 -EFI_HII_CONFIG_ROUTING_PROTOCOL 33.4 -EFI_HII_CONFIG_ACCESS_PROTOCOL 33.4 -========================================== ====== - -Optional UEFI Protocols -*********************** - -Basic Networking Support -======================== - -============================================ ====== -Service UEFI § -============================================ ====== -EFI_SIMPLE_NETWORK_PROTOCOL 24.1 -EFI_MANAGED_NETWORK_PROTOCOL 25.1 -EFI_MANAGED_NETWORK_SERVICE_BINDING_PROTOCOL 25.1 -============================================ ====== - -.. note:: Networking services are optional on platforms that do not support - networking. - -Network Boot Protocols -====================== - -========================================== ====== -Service UEFI § -========================================== ====== -EFI_PXE_BASE_CODE_PROTOCOL 24.3 -EFI_PXE_BASE_CODE_CALLBACK_PROTOCOL 24.4 -EFI_BIS_PROTOCOL 24.5 -EFI_MTFTP4_PROTOCOL 30.3 -EFI_MTFTP6_PROTOCOL 30.4 -========================================== ====== - -.. note:: EFI_BIS_PROTOCOL is optional on machines that do not support Secure - Boot. - -IPV4 Network Support -==================== - -========================================== ====== -Service UEFI § -========================================== ====== -EFI_ARP_PROTOCOL 29.1 -EFI_ARP_SERVICE_BINDING_PROTOCOL 29.1 -EFI_DHCP4_SERVICE_BINDING_PROTOCOL 29.2 -EFI_DHCP4_PROTOCOL 29.2 -EFI_TCP4_PROTOCOL 28.1.2 -EFI_TCP4_SERVICE_BINDING_PROTOCOL 28.1.1 -EFI_IP4_SERVICE_BINDING_PROTOCOL 28.3.1 -EFI_IP4_CONFIG2_PROTOCOL 28.5 -EFI_UDP4_PROTOCOL 30.1.2 -EFI_UDP4_SERVICE_BINDING_PROTOCOL 30.1.1 -========================================== ====== - -.. note:: Networking services are optional on platforms that do not support - networking. - -IPV6 Network Support -==================== - -========================================== ====== -Service UEFI § -========================================== ====== -EFI_DHCP6_PROTOCOL 29.3.2 -EFI_DHCP6_SERVICE_BINDING_PROTOCOL 29.3.1 -EFI_TCP6_PROTOCOL 28.2.2 -EFI_TCP6_SERVICE_BINDING_PROTOCOL 28.2.1 -EFI_IP6_SERVICE_BINDING_PROTOCOL 28.6.1 -EFI_IP6_CONFIG_PROTOCOL 28.7 -EFI_UDP6_PROTOCOL 30.2.2 -EFI_UDP6_SERVICE_BINDING_PROTOCOL 30.2.1 -========================================== ====== - -.. note:: Networking services are optional on platforms that do not support - networking. - -VLAN Protocols -============== - -========================================== ====== -Service UEFI § -========================================== ====== -EFI_VLAN_CONFIG_PROTOCOL 27.1 -========================================== ====== - -iSCSI Protocols -=============== - -========================================== ====== -Service UEFI § -========================================== ====== -EFI_ISCSI_INITIATOR_NAME_PROTOCOL 16.2 -========================================== ====== - -.. note:: Support for iSCSI is only required on machines that lack persistent - storage, such as a, HDD. This configuration is intended for thin clients and - compute-only nodes - diff --git a/source/chapter2-uefi.rst b/source/chapter2-uefi.rst index a8fe3a3..f6a5802 100644 --- a/source/chapter2-uefi.rst +++ b/source/chapter2-uefi.rst @@ -17,10 +17,6 @@ UEFI Compliance EBBR compliant platforms shall conform to the requirements in [UEFI]_ § 2.6, except where explicit exemptions are provided by this document.
-EBBR compliant platforms shall also implement the UEFI services and -protocols that are listed in :ref:`appendix-uefi-requirements` of this -document. - Block device partitioning -------------------------
diff --git a/source/index.rst b/source/index.rst index 8722694..186498f 100644 --- a/source/index.rst +++ b/source/index.rst @@ -51,5 +51,4 @@ Creative Commons, PO Box 1866, Mountain View, CA 94042, USA. chapter2-uefi chapter3-secureworld chapter4-firmware-media - appendix-a-uefi-features references
boot-architecture@lists.linaro.org