summaryrefslogtreecommitdiffstats
path: root/ArmPlatformPkg
diff options
context:
space:
mode:
authorArd Biesheuvel <ard.biesheuvel@linaro.org>2018-11-21 12:58:24 +0100
committerArd Biesheuvel <ard.biesheuvel@linaro.org>2018-11-26 17:53:42 +0100
commit4ef113583978c6a385c82cbbe1ed9cc754a5ffdc (patch)
treee6588e22e374d14f83398df83281fe46e39e6b0e /ArmPlatformPkg
parent1ec194b21c0eb3c8561c6933fa72f5edc76cf805 (diff)
downloadedk2-4ef113583978c6a385c82cbbe1ed9cc754a5ffdc.tar.gz
edk2-4ef113583978c6a385c82cbbe1ed9cc754a5ffdc.tar.bz2
edk2-4ef113583978c6a385c82cbbe1ed9cc754a5ffdc.zip
ArmPlatformPkg/NorFlashDxe: prepare for devicepath format change
A subsequent patch will change the layout of devicepath nodes produced by this driver. In preparation, make some tweaks to the code to use a packed struct for the devicepath and to pass the device index to NorFlashCreateInstance(). These are cosmetic changes only, the resulting binaries should be identical. Contributed-under: TianoCore Contribution Agreement 1.1 Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org> Reviewed-by: Laszlo Ersek <lersek@redhat.com> Reviewed-by: Leif Lindholm <leif.lindholm@linaro.org> Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com> Tested-by: Thomas Abraham <thomas.abraham@arm.com>
Diffstat (limited to 'ArmPlatformPkg')
-rw-r--r--ArmPlatformPkg/Drivers/NorFlashDxe/NorFlashDxe.c9
-rw-r--r--ArmPlatformPkg/Drivers/NorFlashDxe/NorFlashDxe.h2
2 files changed, 8 insertions, 3 deletions
diff --git a/ArmPlatformPkg/Drivers/NorFlashDxe/NorFlashDxe.c b/ArmPlatformPkg/Drivers/NorFlashDxe/NorFlashDxe.c
index 46e815beb3..53753a4721 100644
--- a/ArmPlatformPkg/Drivers/NorFlashDxe/NorFlashDxe.c
+++ b/ArmPlatformPkg/Drivers/NorFlashDxe/NorFlashDxe.c
@@ -82,7 +82,10 @@ NOR_FLASH_INSTANCE mNorFlashInstanceTemplate = {
{
HARDWARE_DEVICE_PATH,
HW_VENDOR_DP,
- { (UINT8)sizeof(VENDOR_DEVICE_PATH), (UINT8)((sizeof(VENDOR_DEVICE_PATH)) >> 8) }
+ {
+ (UINT8)(OFFSET_OF (NOR_FLASH_DEVICE_PATH, End)),
+ (UINT8)(OFFSET_OF (NOR_FLASH_DEVICE_PATH, End) >> 8)
+ }
},
{ 0x0, 0x0, 0x0, { 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0, 0x0 } }, // GUID ... NEED TO BE FILLED
},
@@ -99,7 +102,7 @@ NorFlashCreateInstance (
IN UINTN NorFlashDeviceBase,
IN UINTN NorFlashRegionBase,
IN UINTN NorFlashSize,
- IN UINT32 MediaId,
+ IN UINT32 Index,
IN UINT32 BlockSize,
IN BOOLEAN SupportFvb,
IN CONST GUID *NorFlashGuid,
@@ -121,7 +124,7 @@ NorFlashCreateInstance (
Instance->Size = NorFlashSize;
Instance->BlockIoProtocol.Media = &Instance->Media;
- Instance->Media.MediaId = MediaId;
+ Instance->Media.MediaId = Index;
Instance->Media.BlockSize = BlockSize;
Instance->Media.LastBlock = (NorFlashSize / BlockSize)-1;
diff --git a/ArmPlatformPkg/Drivers/NorFlashDxe/NorFlashDxe.h b/ArmPlatformPkg/Drivers/NorFlashDxe/NorFlashDxe.h
index 5c07694fbf..4436fc4323 100644
--- a/ArmPlatformPkg/Drivers/NorFlashDxe/NorFlashDxe.h
+++ b/ArmPlatformPkg/Drivers/NorFlashDxe/NorFlashDxe.h
@@ -122,10 +122,12 @@
typedef struct _NOR_FLASH_INSTANCE NOR_FLASH_INSTANCE;
+#pragma pack (1)
typedef struct {
VENDOR_DEVICE_PATH Vendor;
EFI_DEVICE_PATH_PROTOCOL End;
} NOR_FLASH_DEVICE_PATH;
+#pragma pack ()
struct _NOR_FLASH_INSTANCE {
UINT32 Signature;