Remove the handling of the fw_cfg DT node from VirtFdtDxe now that the fw_cfg client library has been moved to the FDT client protocol, and no longer relies on VirtFdtDxe to pass this information via dynamic PCDs. Since the PCDs in question are now no longer used, remove them from the various DEC and DSC files as well.
Contributed-under: TianoCore Contribution Agreement 1.0 Signed-off-by: Ard Biesheuvel <[email protected]> --- ArmVirtPkg/ArmVirtPkg.dec | 5 -- ArmVirtPkg/ArmVirtQemu.dsc | 4 -- ArmVirtPkg/ArmVirtQemuKernel.dsc | 4 -- ArmVirtPkg/ArmVirtXen.dsc | 4 -- ArmVirtPkg/VirtFdtDxe/VirtFdtDxe.c | 49 -------------------- ArmVirtPkg/VirtFdtDxe/VirtFdtDxe.inf | 3 -- 6 files changed, 69 deletions(-) diff --git a/ArmVirtPkg/ArmVirtPkg.dec b/ArmVirtPkg/ArmVirtPkg.dec index 73136adf62c6..9f98f28f01e1 100644 --- a/ArmVirtPkg/ArmVirtPkg.dec +++ b/ArmVirtPkg/ArmVirtPkg.dec @@ -59,11 +59,6 @@ [PcdsFixedAtBuild, PcdsPatchableInModule] # gArmVirtTokenSpaceGuid.PcdTerminalTypeGuidBuffer|{0x65, 0x60, 0xA6, 0xDF, 0x19, 0xB4, 0xD3, 0x11, 0x9A, 0x2D, 0x00, 0x90, 0x27, 0x3F, 0xC1, 0x4D}|VOID*|0x00000007 -[PcdsDynamic, PcdsFixedAtBuild] - gArmVirtTokenSpaceGuid.PcdFwCfgSelectorAddress|0x0|UINT64|0x00000004 - gArmVirtTokenSpaceGuid.PcdFwCfgDataAddress|0x0|UINT64|0x00000005 - gArmVirtTokenSpaceGuid.PcdFwCfgDmaAddress|0x0|UINT64|0x00000009 - [PcdsFeatureFlag] # # "Map PCI MMIO as Cached" diff --git a/ArmVirtPkg/ArmVirtQemu.dsc b/ArmVirtPkg/ArmVirtQemu.dsc index ee9d37c2d660..4eb350e805d4 100644 --- a/ArmVirtPkg/ArmVirtQemu.dsc +++ b/ArmVirtPkg/ArmVirtQemu.dsc @@ -221,10 +221,6 @@ [PcdsDynamicDefault.common] gArmPlatformTokenSpaceGuid.PcdPciMmio32Size|0x0 gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x0 - gArmVirtTokenSpaceGuid.PcdFwCfgSelectorAddress|0x0 - gArmVirtTokenSpaceGuid.PcdFwCfgDataAddress|0x0 - gArmVirtTokenSpaceGuid.PcdFwCfgDmaAddress|0x0 - # # Set video resolution for boot options and for text setup. # PlatformDxe can set the former at runtime. diff --git a/ArmVirtPkg/ArmVirtQemuKernel.dsc b/ArmVirtPkg/ArmVirtQemuKernel.dsc index f41dd19da583..32484fffa126 100644 --- a/ArmVirtPkg/ArmVirtQemuKernel.dsc +++ b/ArmVirtPkg/ArmVirtQemuKernel.dsc @@ -206,10 +206,6 @@ [PcdsDynamicDefault.common] gArmPlatformTokenSpaceGuid.PcdPciMmio32Size|0x0 gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x0 - gArmVirtTokenSpaceGuid.PcdFwCfgSelectorAddress|0x0 - gArmVirtTokenSpaceGuid.PcdFwCfgDataAddress|0x0 - gArmVirtTokenSpaceGuid.PcdFwCfgDmaAddress|0x0 - # # Set video resolution for boot options and for text setup. # PlatformDxe can set the former at runtime. diff --git a/ArmVirtPkg/ArmVirtXen.dsc b/ArmVirtPkg/ArmVirtXen.dsc index 7ea46514dad3..0af82be42913 100644 --- a/ArmVirtPkg/ArmVirtXen.dsc +++ b/ArmVirtPkg/ArmVirtXen.dsc @@ -142,10 +142,6 @@ [PcdsDynamicDefault.common] gArmPlatformTokenSpaceGuid.PcdPciMmio32Size|0x0 gEfiMdePkgTokenSpaceGuid.PcdPciExpressBaseAddress|0x0 - gArmVirtTokenSpaceGuid.PcdFwCfgSelectorAddress|0x0 - gArmVirtTokenSpaceGuid.PcdFwCfgDataAddress|0x0 - gArmVirtTokenSpaceGuid.PcdFwCfgDmaAddress|0x0 - gEfiMdePkgTokenSpaceGuid.PcdPlatformBootTimeOut|3 ################################################################################ diff --git a/ArmVirtPkg/VirtFdtDxe/VirtFdtDxe.c b/ArmVirtPkg/VirtFdtDxe/VirtFdtDxe.c index 368618956be1..0a47092e35ce 100644 --- a/ArmVirtPkg/VirtFdtDxe/VirtFdtDxe.c +++ b/ArmVirtPkg/VirtFdtDxe/VirtFdtDxe.c @@ -45,7 +45,6 @@ typedef enum { PropertyTypeRtc, PropertyTypeVirtio, PropertyTypeUart, - PropertyTypeFwCfg, PropertyTypePciHost, PropertyTypeXen, } PROPERTY_TYPE; @@ -59,7 +58,6 @@ STATIC CONST PROPERTY CompatibleProperties[] = { { PropertyTypeRtc, "arm,pl031" }, { PropertyTypeVirtio, "virtio,mmio" }, { PropertyTypeUart, "arm,pl011" }, - { PropertyTypeFwCfg, "qemu,fw-cfg-mmio" }, { PropertyTypePciHost, "pci-host-ecam-generic" }, { PropertyTypeXen, "xen,xen" }, { PropertyTypeUnknown, "" } @@ -279,12 +277,6 @@ InitializeVirtFdtDxe ( VIRTIO_TRANSPORT_DEVICE_PATH *DevicePath; EFI_HANDLE Handle; UINT64 RegBase; - UINT64 FwCfgSelectorAddress; - UINT64 FwCfgSelectorSize; - UINT64 FwCfgDataAddress; - UINT64 FwCfgDataSize; - UINT64 FwCfgDmaAddress; - UINT64 FwCfgDmaSize; BOOLEAN HavePci; Hob = GetFirstGuidHob(&gFdtHobGuid); @@ -338,47 +330,6 @@ InitializeVirtFdtDxe ( HavePci = TRUE; break; - case PropertyTypeFwCfg: - ASSERT (Len == 2 * sizeof (UINT64)); - - FwCfgDataAddress = fdt64_to_cpu (((UINT64 *)RegProp)[0]); - FwCfgDataSize = 8; - FwCfgSelectorAddress = FwCfgDataAddress + FwCfgDataSize; - FwCfgSelectorSize = 2; - - // - // The following ASSERT()s express - // - // Address + Size - 1 <= MAX_UINTN - // - // for both registers, that is, that the last byte in each MMIO range is - // expressible as a MAX_UINTN. The form below is mathematically - // equivalent, and it also prevents any unsigned overflow before the - // comparison. - // - ASSERT (FwCfgSelectorAddress <= MAX_UINTN - FwCfgSelectorSize + 1); - ASSERT (FwCfgDataAddress <= MAX_UINTN - FwCfgDataSize + 1); - - PcdSet64 (PcdFwCfgSelectorAddress, FwCfgSelectorAddress); - PcdSet64 (PcdFwCfgDataAddress, FwCfgDataAddress); - - DEBUG ((EFI_D_INFO, "Found FwCfg @ 0x%Lx/0x%Lx\n", FwCfgSelectorAddress, - FwCfgDataAddress)); - - if (fdt64_to_cpu (((UINT64 *)RegProp)[1]) >= 0x18) { - FwCfgDmaAddress = FwCfgDataAddress + 0x10; - FwCfgDmaSize = 0x08; - - // - // See explanation above. - // - ASSERT (FwCfgDmaAddress <= MAX_UINTN - FwCfgDmaSize + 1); - - PcdSet64 (PcdFwCfgDmaAddress, FwCfgDmaAddress); - DEBUG ((EFI_D_INFO, "Found FwCfg DMA @ 0x%Lx\n", FwCfgDmaAddress)); - } - break; - case PropertyTypeVirtio: ASSERT (Len == 16); // diff --git a/ArmVirtPkg/VirtFdtDxe/VirtFdtDxe.inf b/ArmVirtPkg/VirtFdtDxe/VirtFdtDxe.inf index c928e826c258..6c8ba68599ae 100644 --- a/ArmVirtPkg/VirtFdtDxe/VirtFdtDxe.inf +++ b/ArmVirtPkg/VirtFdtDxe/VirtFdtDxe.inf @@ -50,9 +50,6 @@ [Guids] gFdtHobGuid [Pcd] - gArmVirtTokenSpaceGuid.PcdFwCfgSelectorAddress - gArmVirtTokenSpaceGuid.PcdFwCfgDataAddress - gArmVirtTokenSpaceGuid.PcdFwCfgDmaAddress gArmPlatformTokenSpaceGuid.PcdPL031RtcBase gArmPlatformTokenSpaceGuid.PcdPciBusMin gArmPlatformTokenSpaceGuid.PcdPciBusMax -- 2.5.0 _______________________________________________ edk2-devel mailing list [email protected] https://lists.01.org/mailman/listinfo/edk2-devel

