diff options
author | Ard Biesheuvel <ard.biesheuvel@linaro.org> | 2017-04-04 12:58:58 +0100 |
---|---|---|
committer | Ard Biesheuvel <ard.biesheuvel@linaro.org> | 2017-04-05 14:56:10 +0100 |
commit | 4f869acca7a993208890d1852ac72992a97d5da5 (patch) | |
tree | 3da387e03895de5acb9513de9113be8f8e0956a1 /ArmPlatformPkg/ArmJunoPkg | |
parent | 59a169e8905d7ff8a30bb7b621358a10e2b70cd8 (diff) | |
download | edk2-4f869acca7a993208890d1852ac72992a97d5da5.tar.gz edk2-4f869acca7a993208890d1852ac72992a97d5da5.tar.bz2 edk2-4f869acca7a993208890d1852ac72992a97d5da5.zip |
ArmPlatformPkg/ArmJunoDxe: don't register OnEndOfDxe event on rev R0
The ArmJunoDxe driver code registers a callback for the EndOfDxe event,
at which time it does some manipulation of the PCI peripherals on the
board. Given that R0 has no working PCIe, instead of conditionally
performing these operations, omit the registration of the
callback altogether on that platform.
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Tested-by: Ryan Harkin <ryan.harkin@linaro.org>
Reviewed-by: Leif Lindholm <leif.lindholm@linaro.org>
Diffstat (limited to 'ArmPlatformPkg/ArmJunoPkg')
-rw-r--r-- | ArmPlatformPkg/ArmJunoPkg/Drivers/ArmJunoDxe/ArmJunoDxe.c | 43 |
1 files changed, 19 insertions, 24 deletions
diff --git a/ArmPlatformPkg/ArmJunoPkg/Drivers/ArmJunoDxe/ArmJunoDxe.c b/ArmPlatformPkg/ArmJunoPkg/Drivers/ArmJunoDxe/ArmJunoDxe.c index 14ff189a30..f7e33961b4 100644 --- a/ArmPlatformPkg/ArmJunoPkg/Drivers/ArmJunoDxe/ArmJunoDxe.c +++ b/ArmPlatformPkg/ArmJunoPkg/Drivers/ArmJunoDxe/ArmJunoDxe.c @@ -379,7 +379,6 @@ OnEndOfDxe ( EFI_DEVICE_PATH_PROTOCOL* PciRootComplexDevicePath;
EFI_HANDLE Handle;
EFI_STATUS Status;
- UINT32 JunoRevision;
//
// PCI Root Complex initialization
@@ -395,13 +394,9 @@ OnEndOfDxe ( Status = gBS->ConnectController (Handle, NULL, PciRootComplexDevicePath, FALSE);
ASSERT_EFI_ERROR (Status);
- GetJunoRevision (JunoRevision);
-
- if (JunoRevision != JUNO_REVISION_R0) {
- Status = ArmJunoSetNicMacAddress ();
- if (EFI_ERROR (Status)) {
- DEBUG ((DEBUG_ERROR, "ArmJunoDxe: Failed to set Marvell Yukon NIC MAC address\n"));
- }
+ Status = ArmJunoSetNicMacAddress ();
+ if (EFI_ERROR (Status)) {
+ DEBUG ((DEBUG_ERROR, "ArmJunoDxe: Failed to set Marvell Yukon NIC MAC address\n"));
}
}
@@ -511,22 +506,6 @@ ArmJunoEntryPoint ( }
}
- //
- // Create an event belonging to the "gEfiEndOfDxeEventGroupGuid" group.
- // The "OnEndOfDxe()" function is declared as the call back function.
- // It will be called at the end of the DXE phase when an event of the
- // same group is signalled to inform about the end of the DXE phase.
- // Install the INSTALL_FDT_PROTOCOL protocol.
- //
- Status = gBS->CreateEventEx (
- EVT_NOTIFY_SIGNAL,
- TPL_CALLBACK,
- OnEndOfDxe,
- NULL,
- &gEfiEndOfDxeEventGroupGuid,
- &EndOfDxeEvent
- );
-
// Install dynamic Shell command to run baremetal binaries.
Status = ShellDynCmdRunAxfInstall (ImageHandle);
if (EFI_ERROR (Status)) {
@@ -555,6 +534,22 @@ ArmJunoEntryPoint ( // Enable PCI enumeration
PcdSetBool (PcdPciDisableBusEnumeration, FALSE);
+ //
+ // Create an event belonging to the "gEfiEndOfDxeEventGroupGuid" group.
+ // The "OnEndOfDxe()" function is declared as the call back function.
+ // It will be called at the end of the DXE phase when an event of the
+ // same group is signalled to inform about the end of the DXE phase.
+ // Install the INSTALL_FDT_PROTOCOL protocol.
+ //
+ Status = gBS->CreateEventEx (
+ EVT_NOTIFY_SIGNAL,
+ TPL_CALLBACK,
+ OnEndOfDxe,
+ NULL,
+ &gEfiEndOfDxeEventGroupGuid,
+ &EndOfDxeEvent
+ );
+
// Declare the related ACPI Tables
EfiCreateProtocolNotifyEvent (
&gEfiAcpiTableProtocolGuid,
|