diff options
author | Michael Brown <mcb30@ipxe.org> | 2014-08-05 23:07:12 +0100 |
---|---|---|
committer | Michael Brown <mcb30@ipxe.org> | 2014-08-05 23:08:32 +0100 |
commit | 3b42ed477f21ee3f5851dc2993ea670e9edc10f7 (patch) | |
tree | 4123be2ce024110174234f82e6a6bddd414fd86e | |
parent | 471fdfab79845d63fe1016ae5e5729180fdb0f73 (diff) | |
download | ipxe-3b42ed477f21ee3f5851dc2993ea670e9edc10f7.tar.gz |
[efi] Provide centralised definitions of commonly-used GUIDs
Signed-off-by: Michael Brown <mcb30@ipxe.org>
-rw-r--r-- | src/drivers/net/efi/snp.c | 5 | ||||
-rw-r--r-- | src/drivers/net/efi/snpnet.c | 8 | ||||
-rw-r--r-- | src/image/efi_image.c | 4 | ||||
-rw-r--r-- | src/include/ipxe/efi/efi.h | 16 | ||||
-rw-r--r-- | src/interface/efi/efi_autoboot.c | 4 | ||||
-rw-r--r-- | src/interface/efi/efi_debug.c | 72 | ||||
-rw-r--r-- | src/interface/efi/efi_driver.c | 12 | ||||
-rw-r--r-- | src/interface/efi/efi_file.c | 12 | ||||
-rw-r--r-- | src/interface/efi/efi_guid.c | 103 | ||||
-rw-r--r-- | src/interface/efi/efi_init.c | 4 | ||||
-rw-r--r-- | src/interface/efi/efi_pci.c | 4 | ||||
-rw-r--r-- | src/interface/efi/efi_snp.c | 16 |
12 files changed, 119 insertions, 141 deletions
diff --git a/src/drivers/net/efi/snp.c b/src/drivers/net/efi/snp.c index 0e7f500b..a20bd21a 100644 --- a/src/drivers/net/efi/snp.c +++ b/src/drivers/net/efi/snp.c @@ -21,7 +21,6 @@ FILE_LICENCE ( GPL2_OR_LATER ); #include <errno.h> #include <ipxe/efi/efi.h> -#include <ipxe/efi/Protocol/SimpleNetwork.h> #include <ipxe/efi/efi_driver.h> #include <ipxe/efi/efi_snp.h> #include "snpnet.h" @@ -32,10 +31,6 @@ FILE_LICENCE ( GPL2_OR_LATER ); * */ -/** EFI simple network protocol GUID */ -static EFI_GUID efi_simple_network_protocol_guid - = EFI_SIMPLE_NETWORK_PROTOCOL_GUID; - /** * Check to see if driver supports a device * diff --git a/src/drivers/net/efi/snpnet.c b/src/drivers/net/efi/snpnet.c index 9d3f97b9..75574526 100644 --- a/src/drivers/net/efi/snpnet.c +++ b/src/drivers/net/efi/snpnet.c @@ -64,14 +64,6 @@ struct snp_nic { /** Maximum number of received packets per poll */ #define SNP_RX_QUOTA 4 -/** EFI simple network protocol GUID */ -static EFI_GUID efi_simple_network_protocol_guid - = EFI_SIMPLE_NETWORK_PROTOCOL_GUID; - -/** EFI PCI I/O protocol GUID */ -static EFI_GUID efi_pci_io_protocol_guid - = EFI_PCI_IO_PROTOCOL_GUID; - /** * Format SNP MAC address (for debugging) * diff --git a/src/image/efi_image.c b/src/image/efi_image.c index 45a68e53..f5ce102f 100644 --- a/src/image/efi_image.c +++ b/src/image/efi_image.c @@ -52,10 +52,6 @@ FEATURE ( FEATURE_IMAGE, "EFI", DHCP_EB_FEATURE_EFI, 1 ); "Could not start image" ) #define EEFI_START( efirc ) EPLATFORM ( EINFO_EEFI_START, efirc ) -/** EFI loaded image protocol GUID */ -static EFI_GUID efi_loaded_image_protocol_guid = - EFI_LOADED_IMAGE_PROTOCOL_GUID; - /** * Create device path for image * diff --git a/src/include/ipxe/efi/efi.h b/src/include/ipxe/efi/efi.h index a1ba4966..e04bca7e 100644 --- a/src/include/ipxe/efi/efi.h +++ b/src/include/ipxe/efi/efi.h @@ -153,6 +153,22 @@ struct efi_config_table { */ #define EEFI( efirc ) EPLATFORM ( EINFO_EPLATFORM, efirc ) +extern EFI_GUID efi_block_io_protocol_guid; +extern EFI_GUID efi_bus_specific_driver_override_protocol_guid; +extern EFI_GUID efi_component_name_protocol_guid; +extern EFI_GUID efi_component_name2_protocol_guid; +extern EFI_GUID efi_device_path_protocol_guid; +extern EFI_GUID efi_disk_io_protocol_guid; +extern EFI_GUID efi_driver_binding_protocol_guid; +extern EFI_GUID efi_load_file_protocol_guid; +extern EFI_GUID efi_load_file2_protocol_guid; +extern EFI_GUID efi_loaded_image_protocol_guid; +extern EFI_GUID efi_loaded_image_device_path_protocol_guid; +extern EFI_GUID efi_pci_io_protocol_guid; +extern EFI_GUID efi_pci_root_bridge_io_protocol_guid; +extern EFI_GUID efi_simple_file_system_protocol_guid; +extern EFI_GUID efi_simple_network_protocol_guid; + extern EFI_HANDLE efi_image_handle; extern EFI_LOADED_IMAGE_PROTOCOL *efi_loaded_image; extern EFI_DEVICE_PATH_PROTOCOL *efi_loaded_image_path; diff --git a/src/interface/efi/efi_autoboot.c b/src/interface/efi/efi_autoboot.c index 1032440f..ab0f3654 100644 --- a/src/interface/efi/efi_autoboot.c +++ b/src/interface/efi/efi_autoboot.c @@ -30,10 +30,6 @@ FILE_LICENCE ( GPL2_OR_LATER ); * */ -/** EFI simple network protocol GUID */ -static EFI_GUID efi_simple_network_protocol_guid - = EFI_SIMPLE_NETWORK_PROTOCOL_GUID; - /** * Identify autoboot device * diff --git a/src/interface/efi/efi_debug.c b/src/interface/efi/efi_debug.c index ea0a71de..4cbd831c 100644 --- a/src/interface/efi/efi_debug.c +++ b/src/interface/efi/efi_debug.c @@ -33,83 +33,11 @@ FILE_LICENCE ( GPL2_OR_LATER ); #include <ipxe/base16.h> #include <ipxe/efi/efi.h> #include <ipxe/efi/efi_driver.h> -#include <ipxe/efi/Protocol/BlockIo.h> -#include <ipxe/efi/Protocol/BusSpecificDriverOverride.h> #include <ipxe/efi/Protocol/ComponentName.h> #include <ipxe/efi/Protocol/ComponentName2.h> -#include <ipxe/efi/Protocol/DevicePath.h> #include <ipxe/efi/Protocol/DevicePathToText.h> -#include <ipxe/efi/Protocol/DiskIo.h> -#include <ipxe/efi/Protocol/DriverBinding.h> -#include <ipxe/efi/Protocol/LoadFile.h> -#include <ipxe/efi/Protocol/LoadFile2.h> -#include <ipxe/efi/Protocol/LoadedImage.h> -#include <ipxe/efi/Protocol/PciIo.h> -#include <ipxe/efi/Protocol/PciRootBridgeIo.h> -#include <ipxe/efi/Protocol/SimpleFileSystem.h> -#include <ipxe/efi/Protocol/SimpleNetwork.h> #include <ipxe/efi/IndustryStandard/PeImage.h> -/** Block I/O protocol GUID */ -static EFI_GUID efi_block_io_protocol_guid - = EFI_BLOCK_IO_PROTOCOL_GUID; - -/** Bus specific driver override protocol GUID */ -static EFI_GUID efi_bus_specific_driver_override_protocol_guid - = EFI_BUS_SPECIFIC_DRIVER_OVERRIDE_PROTOCOL_GUID; - -/** Component name protocol GUID */ -static EFI_GUID efi_component_name_protocol_guid - = EFI_COMPONENT_NAME_PROTOCOL_GUID; - -/** Component name 2 protocol GUID */ -static EFI_GUID efi_component_name2_protocol_guid - = EFI_COMPONENT_NAME2_PROTOCOL_GUID; - -/** Device path protocol GUID */ -static EFI_GUID efi_device_path_protocol_guid - = EFI_DEVICE_PATH_PROTOCOL_GUID; - -/** Disk I/O protocol GUID */ -static EFI_GUID efi_disk_io_protocol_guid - = EFI_DISK_IO_PROTOCOL_GUID; - -/** Driver binding protocol GUID */ -static EFI_GUID efi_driver_binding_protocol_guid - = EFI_DRIVER_BINDING_PROTOCOL_GUID; - -/** Load file protocol GUID */ -static EFI_GUID efi_load_file_protocol_guid - = EFI_LOAD_FILE_PROTOCOL_GUID; - -/** Load file 2 protocol GUID */ -static EFI_GUID efi_load_file2_protocol_guid - = EFI_LOAD_FILE2_PROTOCOL_GUID; - -/** Loaded image protocol GUID */ -static EFI_GUID efi_loaded_image_protocol_guid - = EFI_LOADED_IMAGE_PROTOCOL_GUID; - -/** Loaded image device path protocol GUID */ -static EFI_GUID efi_loaded_image_device_path_protocol_guid - = EFI_LOADED_IMAGE_DEVICE_PATH_PROTOCOL_GUID; - -/** PCI I/O protocol GUID */ -static EFI_GUID efi_pci_io_protocol_guid - = EFI_PCI_IO_PROTOCOL_GUID; - -/** PCI root bridge I/O protocol GUID */ -static EFI_GUID efi_pci_root_bridge_io_protocol_guid - = EFI_PCI_ROOT_BRIDGE_IO_PROTOCOL_GUID; - -/** Simple file system protocol GUID */ -static EFI_GUID efi_simple_file_system_protocol_guid - = EFI_SIMPLE_FILE_SYSTEM_PROTOCOL_GUID; - -/** Simple network protocol guid */ -static EFI_GUID efi_simple_network_protocol_guid - = EFI_SIMPLE_NETWORK_PROTOCOL_GUID; - /** Device path to text protocol */ static EFI_DEVICE_PATH_TO_TEXT_PROTOCOL *efidpt; EFI_REQUEST_PROTOCOL ( EFI_DEVICE_PATH_TO_TEXT_PROTOCOL, &efidpt ); diff --git a/src/interface/efi/efi_driver.c b/src/interface/efi/efi_driver.c index b9617cbf..424bbc31 100644 --- a/src/interface/efi/efi_driver.c +++ b/src/interface/efi/efi_driver.c @@ -40,18 +40,6 @@ FILE_LICENCE ( GPL2_OR_LATER ); static EFI_DRIVER_BINDING_PROTOCOL efi_driver_binding; -/** EFI driver binding protocol GUID */ -static EFI_GUID efi_driver_binding_protocol_guid - = EFI_DRIVER_BINDING_PROTOCOL_GUID; - -/** EFI component name protocol GUID */ -static EFI_GUID efi_component_name2_protocol_guid - = EFI_COMPONENT_NAME2_PROTOCOL_GUID; - -/** EFI device path protocol GUID */ -static EFI_GUID efi_device_path_protocol_guid - = EFI_DEVICE_PATH_PROTOCOL_GUID; - /** List of controlled EFI devices */ static LIST_HEAD ( efi_devices ); diff --git a/src/interface/efi/efi_file.c b/src/interface/efi/efi_file.c index 06049fc9..c5ce9a2c 100644 --- a/src/interface/efi/efi_file.c +++ b/src/interface/efi/efi_file.c @@ -42,24 +42,12 @@ FILE_LICENCE ( GPL2_OR_LATER ); #include <ipxe/efi/efi_strings.h> #include <ipxe/efi/efi_file.h> -/** EFI simple file system protocol GUID */ -static EFI_GUID efi_simple_file_system_protocol_guid - = EFI_SIMPLE_FILE_SYSTEM_PROTOCOL_GUID; - /** EFI file information GUID */ static EFI_GUID efi_file_info_id = EFI_FILE_INFO_ID; /** EFI file system information GUID */ static EFI_GUID efi_file_system_info_id = EFI_FILE_SYSTEM_INFO_ID; -/** EFI block I/O protocol GUID */ -static EFI_GUID efi_block_io_protocol_guid - = EFI_BLOCK_IO_PROTOCOL_GUID; - -/** EFI disk I/O protocol GUID */ -static EFI_GUID efi_disk_io_protocol_guid - = EFI_DISK_IO_PROTOCOL_GUID; - /** EFI media ID */ #define EFI_MEDIA_ID_MAGIC 0x69505845 diff --git a/src/interface/efi/efi_guid.c b/src/interface/efi/efi_guid.c new file mode 100644 index 00000000..57d8497d --- /dev/null +++ b/src/interface/efi/efi_guid.c @@ -0,0 +1,103 @@ +/* + * Copyright (C) 2014 Michael Brown <mbrown@fensystems.co.uk>. + * + * This program is free software; you can redistribute it and/or + * modify it under the terms of the GNU General Public License as + * published by the Free Software Foundation; either version 2 of the + * License, or any later version. + * + * This program is distributed in the hope that it will be useful, but + * WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program; if not, write to the Free Software + * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA + * 02110-1301, USA. + */ + +FILE_LICENCE ( GPL2_OR_LATER ); + +#include <ipxe/efi/efi.h> +#include <ipxe/efi/Protocol/BlockIo.h> +#include <ipxe/efi/Protocol/BusSpecificDriverOverride.h> +#include <ipxe/efi/Protocol/ComponentName.h> +#include <ipxe/efi/Protocol/ComponentName2.h> +#include <ipxe/efi/Protocol/DevicePath.h> +#include <ipxe/efi/Protocol/DevicePathToText.h> +#include <ipxe/efi/Protocol/DiskIo.h> +#include <ipxe/efi/Protocol/DriverBinding.h> +#include <ipxe/efi/Protocol/LoadFile.h> +#include <ipxe/efi/Protocol/LoadFile2.h> +#include <ipxe/efi/Protocol/LoadedImage.h> +#include <ipxe/efi/Protocol/PciIo.h> +#include <ipxe/efi/Protocol/PciRootBridgeIo.h> +#include <ipxe/efi/Protocol/SimpleFileSystem.h> +#include <ipxe/efi/Protocol/SimpleNetwork.h> + +/** @file + * + * EFI GUIDs + * + */ + +/** Block I/O protocol GUID */ +EFI_GUID efi_block_io_protocol_guid + = EFI_BLOCK_IO_PROTOCOL_GUID; + +/** Bus specific driver override protocol GUID */ +EFI_GUID efi_bus_specific_driver_override_protocol_guid + = EFI_BUS_SPECIFIC_DRIVER_OVERRIDE_PROTOCOL_GUID; + +/** Component name protocol GUID */ +EFI_GUID efi_component_name_protocol_guid + = EFI_COMPONENT_NAME_PROTOCOL_GUID; + +/** Component name 2 protocol GUID */ +EFI_GUID efi_component_name2_protocol_guid + = EFI_COMPONENT_NAME2_PROTOCOL_GUID; + +/** Device path protocol GUID */ +EFI_GUID efi_device_path_protocol_guid + = EFI_DEVICE_PATH_PROTOCOL_GUID; + +/** Disk I/O protocol GUID */ +EFI_GUID efi_disk_io_protocol_guid + = EFI_DISK_IO_PROTOCOL_GUID; + +/** Driver binding protocol GUID */ +EFI_GUID efi_driver_binding_protocol_guid + = EFI_DRIVER_BINDING_PROTOCOL_GUID; + +/** Load file protocol GUID */ +EFI_GUID efi_load_file_protocol_guid + = EFI_LOAD_FILE_PROTOCOL_GUID; + +/** Load file 2 protocol GUID */ +EFI_GUID efi_load_file2_protocol_guid + = EFI_LOAD_FILE2_PROTOCOL_GUID; + +/** Loaded image protocol GUID */ +EFI_GUID efi_loaded_image_protocol_guid + = EFI_LOADED_IMAGE_PROTOCOL_GUID; + +/** Loaded image device path protocol GUID */ +EFI_GUID efi_loaded_image_device_path_protocol_guid + = EFI_LOADED_IMAGE_DEVICE_PATH_PROTOCOL_GUID; + +/** PCI I/O protocol GUID */ +EFI_GUID efi_pci_io_protocol_guid + = EFI_PCI_IO_PROTOCOL_GUID; + +/** PCI root bridge I/O protocol GUID */ +EFI_GUID efi_pci_root_bridge_io_protocol_guid + = EFI_PCI_ROOT_BRIDGE_IO_PROTOCOL_GUID; + +/** Simple file system protocol GUID */ +EFI_GUID efi_simple_file_system_protocol_guid + = EFI_SIMPLE_FILE_SYSTEM_PROTOCOL_GUID; + +/** Simple network protocol guid */ +EFI_GUID efi_simple_network_protocol_guid + = EFI_SIMPLE_NETWORK_PROTOCOL_GUID; diff --git a/src/interface/efi/efi_init.c b/src/interface/efi/efi_init.c index 4204b79b..93ada21d 100644 --- a/src/interface/efi/efi_init.c +++ b/src/interface/efi/efi_init.c @@ -35,10 +35,6 @@ EFI_LOADED_IMAGE_PROTOCOL *efi_loaded_image; /** System table passed to entry point */ EFI_SYSTEM_TABLE *efi_systab; -/** EFI loaded image protocol GUID */ -static EFI_GUID efi_loaded_image_protocol_guid - = EFI_LOADED_IMAGE_PROTOCOL_GUID; - /** Event used to signal shutdown */ static EFI_EVENT efi_shutdown_event; diff --git a/src/interface/efi/efi_pci.c b/src/interface/efi/efi_pci.c index 785ed891..033eae87 100644 --- a/src/interface/efi/efi_pci.c +++ b/src/interface/efi/efi_pci.c @@ -120,10 +120,6 @@ PROVIDE_PCIAPI_INLINE ( efi, pci_write_config_dword ); ****************************************************************************** */ -/** EFI PCI I/O protocol GUID */ -static EFI_GUID efi_pci_io_protocol_guid - = EFI_PCI_IO_PROTOCOL_GUID; - /** * Open EFI PCI device * diff --git a/src/interface/efi/efi_snp.c b/src/interface/efi/efi_snp.c index dd64fd3b..b5eeab21 100644 --- a/src/interface/efi/efi_snp.c +++ b/src/interface/efi/efi_snp.c @@ -34,14 +34,6 @@ FILE_LICENCE ( GPL2_OR_LATER ); #include <ipxe/efi/efi_snp.h> #include <usr/autoboot.h> -/** EFI simple network protocol GUID */ -static EFI_GUID efi_simple_network_protocol_guid - = EFI_SIMPLE_NETWORK_PROTOCOL_GUID; - -/** EFI device path protocol GUID */ -static EFI_GUID efi_device_path_protocol_guid - = EFI_DEVICE_PATH_PROTOCOL_GUID; - /** EFI network interface identifier GUID */ static EFI_GUID efi_nii_protocol_guid = EFI_NETWORK_INTERFACE_IDENTIFIER_PROTOCOL_GUID; @@ -56,14 +48,6 @@ static EFI_GUID efi_nii31_protocol_guid = { { 0xBC, 0x81, 0x76, 0x7F, 0x1F, 0x97, 0x7A, 0x89 } }; -/** EFI component name protocol GUID */ -static EFI_GUID efi_component_name2_protocol_guid - = EFI_COMPONENT_NAME2_PROTOCOL_GUID; - -/** EFI load file protocol GUID */ -static EFI_GUID efi_load_file_protocol_guid - = EFI_LOAD_FILE_PROTOCOL_GUID; - /** List of SNP devices */ static LIST_HEAD ( efi_snp_devices ); |