diff options
author | Ard Biesheuvel <ard.biesheuvel@linaro.org> | 2016-04-08 11:45:05 +0200 |
---|---|---|
committer | Ard Biesheuvel <ard.biesheuvel@linaro.org> | 2016-04-13 17:26:05 +0200 |
commit | 0a51462c94d0b47565cf46d6deb1f0db3bd029d8 (patch) | |
tree | c2ca2a98aa88207ebe91b8a9d70b89a5a7f5ecce /ArmVirtPkg | |
parent | 7fba5299eb5f81096d11a7932013b0ae0e9bc0c9 (diff) | |
download | edk2-platforms-0a51462c94d0b47565cf46d6deb1f0db3bd029d8.tar.xz |
ArmVirtPkg/VirtFdtDxe: drop RTC handling
The RTC driver no longer relies on VirtFdtDxe to set the pl031 RTC base
address in a dynamic PCD, so drop the handling altogether.
Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Reviewed-by: Laszlo Ersek <lersek@redhat.com>
Diffstat (limited to 'ArmVirtPkg')
-rw-r--r-- | ArmVirtPkg/VirtFdtDxe/VirtFdtDxe.c | 29 | ||||
-rw-r--r-- | ArmVirtPkg/VirtFdtDxe/VirtFdtDxe.inf | 3 |
2 files changed, 1 insertions, 31 deletions
diff --git a/ArmVirtPkg/VirtFdtDxe/VirtFdtDxe.c b/ArmVirtPkg/VirtFdtDxe/VirtFdtDxe.c index 31e0ca7db8..4fca50a6b3 100644 --- a/ArmVirtPkg/VirtFdtDxe/VirtFdtDxe.c +++ b/ArmVirtPkg/VirtFdtDxe/VirtFdtDxe.c @@ -42,7 +42,6 @@ typedef struct { typedef enum {
PropertyTypeUnknown,
- PropertyTypeRtc,
PropertyTypeVirtio,
PropertyTypeUart,
PropertyTypeXen,
@@ -54,7 +53,6 @@ typedef struct { } PROPERTY;
STATIC CONST PROPERTY CompatibleProperties[] = {
- { PropertyTypeRtc, "arm,pl031" },
{ PropertyTypeVirtio, "virtio,mmio" },
{ PropertyTypeUart, "arm,pl011" },
{ PropertyTypeXen, "xen,xen" },
@@ -96,7 +94,6 @@ InitializeVirtFdtDxe ( VOID *Hob;
VOID *DeviceTreeBase;
INT32 Node, Prev;
- INT32 RtcNode;
EFI_STATUS Status;
CONST CHAR8 *Type;
INT32 Len;
@@ -119,7 +116,6 @@ InitializeVirtFdtDxe ( DEBUG ((EFI_D_INFO, "%a: DTB @ 0x%p\n", __FUNCTION__, DeviceTreeBase));
- RtcNode = -1;
//
// Now enumerate the nodes and install peripherals that we are interested in,
// i.e., GIC, RTC and virtio MMIO nodes
@@ -196,18 +192,6 @@ InitializeVirtFdtDxe ( }
break;
- case PropertyTypeRtc:
- ASSERT (Len == 16);
-
- RegBase = fdt64_to_cpu (((UINT64 *)RegProp)[0]);
- ASSERT (RegBase < MAX_UINT32);
-
- PcdSet32 (PcdPL031RtcBase, (UINT32)RegBase);
-
- DEBUG ((EFI_D_INFO, "Found PL031 RTC @ 0x%Lx\n", RegBase));
- RtcNode = Node;
- break;
-
case PropertyTypeXen:
ASSERT (Len == 16);
@@ -240,18 +224,7 @@ InitializeVirtFdtDxe ( //
Status = gBS->InstallConfigurationTable (&gFdtTableGuid, DeviceTreeBase);
ASSERT_EFI_ERROR (Status);
-
- //
- // UEFI takes ownership of the RTC hardware, and exposes its functionality
- // through the UEFI Runtime Services GetTime, SetTime, etc. This means we
- // need to disable it in the device tree to prevent the OS from attaching its
- // device driver as well.
- //
- if ((RtcNode != -1) &&
- fdt_setprop_string (DeviceTreeBase, RtcNode, "status",
- "disabled") != 0) {
- DEBUG ((EFI_D_WARN, "Failed to set PL031 status to 'disabled'\n"));
- }
}
+
return EFI_SUCCESS;
}
diff --git a/ArmVirtPkg/VirtFdtDxe/VirtFdtDxe.inf b/ArmVirtPkg/VirtFdtDxe/VirtFdtDxe.inf index 8ebce33774..8c098e5885 100644 --- a/ArmVirtPkg/VirtFdtDxe/VirtFdtDxe.inf +++ b/ArmVirtPkg/VirtFdtDxe/VirtFdtDxe.inf @@ -49,9 +49,6 @@ gVirtioMmioTransportGuid
gFdtHobGuid
-[Pcd]
- gArmPlatformTokenSpaceGuid.PcdPL031RtcBase
-
[FeaturePcd]
gArmVirtTokenSpaceGuid.PcdPureAcpiBoot
|