]> git.proxmox.com Git - mirror_edk2.git/blobdiff - ArmPlatformPkg/Bds/BdsInternal.h
ArmPkg/BdsLib: Move the Generic BDS_LOAD_OPTION structure from Armplatform/Pkg to...
[mirror_edk2.git] / ArmPlatformPkg / Bds / BdsInternal.h
index d4c438b01067a9ccbf6fe63ed21e014615d98434..3f2d1a63d213e7030adf86335f7383a97cdf3953 100644 (file)
@@ -71,6 +71,11 @@ typedef struct {
   ARM_BDS_LOADER_ARGUMENTS            Arguments;\r
 } ARM_BDS_LOADER_OPTIONAL_DATA;\r
 \r
+typedef struct {\r
+  LIST_ENTRY                  Link;\r
+  BDS_LOAD_OPTION*            BdsLoadOption;\r
+} BDS_LOAD_OPTION_ENTRY;\r
+\r
 typedef enum {\r
   BDS_DEVICE_FILESYSTEM = 0,\r
   BDS_DEVICE_MEMMAP,\r
@@ -88,23 +93,6 @@ typedef struct {
 \r
 #define SUPPORTED_BOOT_DEVICE_FROM_LINK(a)   BASE_CR(a, BDS_SUPPORTED_DEVICE, Link)\r
 \r
-typedef UINT8* EFI_LOAD_OPTION;\r
-\r
-/* This is defined by the UEFI specs, don't change it */\r
-typedef struct {\r
-  LIST_ENTRY                  Link;\r
-\r
-  UINT16                      LoadOptionIndex;\r
-  EFI_LOAD_OPTION             LoadOption;\r
-  UINTN                       LoadOptionSize;\r
-\r
-  UINT32                      Attributes;\r
-  UINT16                      FilePathListLength;\r
-  CHAR16                      *Description;\r
-  EFI_DEVICE_PATH_PROTOCOL    *FilePathList;\r
-  BDS_LOADER_OPTIONAL_DATA    *OptionalData;\r
-} BDS_LOAD_OPTION;\r
-\r
 typedef struct _BDS_LOAD_OPTION_SUPPORT {\r
   BDS_SUPPORTED_DEVICE_TYPE   Type;\r
   EFI_STATUS    (*ListDevices)(IN OUT LIST_ENTRY* BdsLoadOptionList);\r
@@ -113,7 +101,8 @@ typedef struct _BDS_LOAD_OPTION_SUPPORT {
   EFI_STATUS    (*UpdateDevicePathNode)(IN EFI_DEVICE_PATH *OldDevicePath, OUT EFI_DEVICE_PATH_PROTOCOL** NewDevicePath, OUT ARM_BDS_LOADER_TYPE *BootType, OUT UINT32 *Attributes);\r
 } BDS_LOAD_OPTION_SUPPORT;\r
 \r
-#define LOAD_OPTION_FROM_LINK(a)   BASE_CR(a, BDS_LOAD_OPTION, Link)\r
+#define LOAD_OPTION_ENTRY_FROM_LINK(a)  BASE_CR(a, BDS_LOAD_OPTION_ENTRY, Link)\r
+#define LOAD_OPTION_FROM_LINK(a)        ((BDS_LOAD_OPTION_ENTRY*)BASE_CR(a, BDS_LOAD_OPTION_ENTRY, Link))->BdsLoadOption\r
 \r
 EFI_STATUS\r
 GetEnvironmentVariable (\r