]> git.proxmox.com Git - mirror_edk2.git/commitdiff
ArmVirtPkg/VirtFdtDxe: remove GIC discovery
authorArd Biesheuvel <ard.biesheuvel@linaro.org>
Fri, 8 Apr 2016 09:44:52 +0000 (11:44 +0200)
committerArd Biesheuvel <ard.biesheuvel@linaro.org>
Mon, 11 Apr 2016 16:12:21 +0000 (18:12 +0200)
Now that we moved the GIC discovery to our ArmGicArchLib implementation,
we can remove it from VirtFdtDxe, since it is no longer used. Remove the
PcdArmGicRevision declaration and definitions as well: VirtFdtDxe no longer
sets it, and no other drivers consume its value.

Contributed-under: TianoCore Contribution Agreement 1.0
Signed-off-by: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Reviewed-by: Laszlo Ersek <lersek@redhat.com>
ArmVirtPkg/ArmVirtPkg.dec
ArmVirtPkg/ArmVirtQemu.dsc
ArmVirtPkg/ArmVirtQemuKernel.dsc
ArmVirtPkg/ArmVirtXen.dsc
ArmVirtPkg/VirtFdtDxe/VirtFdtDxe.c
ArmVirtPkg/VirtFdtDxe/VirtFdtDxe.inf

index fa908253b3205378cfa38e76ea6c2d48d23ff768..adbd5e319a0947c04601fd742107444d63b04f14 100644 (file)
   gArmVirtTokenSpaceGuid.PcdFwCfgDataAddress|0x0|UINT64|0x00000005\r
   gArmVirtTokenSpaceGuid.PcdFwCfgDmaAddress|0x0|UINT64|0x00000009\r
 \r
-  #\r
-  # Supported GIC revision (2, 3, ...)\r
-  #\r
-  gArmVirtTokenSpaceGuid.PcdArmGicRevision|0x0|UINT32|0x00000008\r
-\r
 [PcdsFeatureFlag]\r
   #\r
   # "Map PCI MMIO as Cached"\r
index f11596c37aee9b92341260b1dfca8a6c56841d44..a148615321ca7424fe772ee88a51744c060ba572 100644 (file)
   gArmTokenSpaceGuid.PcdGicDistributorBase|0x0\r
   gArmTokenSpaceGuid.PcdGicRedistributorsBase|0x0\r
   gArmTokenSpaceGuid.PcdGicInterruptInterfaceBase|0x0\r
-  gArmVirtTokenSpaceGuid.PcdArmGicRevision|0x0\r
 \r
   ## PL031 RealTimeClock\r
   gArmPlatformTokenSpaceGuid.PcdPL031RtcBase|0x0\r
index 3eb441284d2a47383945abba86067aa84085bf1e..f29fe395f3805145826ad08dd1fa7fbb663c6863 100644 (file)
   gArmTokenSpaceGuid.PcdGicDistributorBase|0x0\r
   gArmTokenSpaceGuid.PcdGicRedistributorsBase|0x0\r
   gArmTokenSpaceGuid.PcdGicInterruptInterfaceBase|0x0\r
-  gArmVirtTokenSpaceGuid.PcdArmGicRevision|0x0\r
 \r
   ## PL031 RealTimeClock\r
   gArmPlatformTokenSpaceGuid.PcdPL031RtcBase|0x0\r
index 7bd0d115061d0edc6aee466889d20bda12633d97..f356b23bd4a007afffc211d09d06008fa36acda9 100644 (file)
   gArmTokenSpaceGuid.PcdGicDistributorBase|0x0\r
   gArmTokenSpaceGuid.PcdGicRedistributorsBase|0x0\r
   gArmTokenSpaceGuid.PcdGicInterruptInterfaceBase|0x0\r
-  gArmVirtTokenSpaceGuid.PcdArmGicRevision|0x0\r
 \r
   ## PL031 RealTimeClock\r
   gArmPlatformTokenSpaceGuid.PcdPL031RtcBase|0x0\r
index d3043fa9b877da9636ca5d859ec0108ddd57f749..0e308497e79e6b5a2d44cb42eccec51f31312a87 100644 (file)
@@ -42,7 +42,6 @@ typedef struct {
 \r
 typedef enum {\r
   PropertyTypeUnknown,\r
-  PropertyTypeGic,\r
   PropertyTypeRtc,\r
   PropertyTypeVirtio,\r
   PropertyTypeUart,\r
@@ -50,7 +49,6 @@ typedef enum {
   PropertyTypePsci,\r
   PropertyTypeFwCfg,\r
   PropertyTypePciHost,\r
-  PropertyTypeGicV3,\r
   PropertyTypeXen,\r
 } PROPERTY_TYPE;\r
 \r
@@ -60,7 +58,6 @@ typedef struct {
 } PROPERTY;\r
 \r
 STATIC CONST PROPERTY CompatibleProperties[] = {\r
-  { PropertyTypeGic,     "arm,cortex-a15-gic"    },\r
   { PropertyTypeRtc,     "arm,pl031"             },\r
   { PropertyTypeVirtio,  "virtio,mmio"           },\r
   { PropertyTypeUart,    "arm,pl011"             },\r
@@ -69,7 +66,6 @@ STATIC CONST PROPERTY CompatibleProperties[] = {
   { PropertyTypePsci,    "arm,psci-0.2"          },\r
   { PropertyTypeFwCfg,   "qemu,fw-cfg-mmio"      },\r
   { PropertyTypePciHost, "pci-host-ecam-generic" },\r
-  { PropertyTypeGicV3,   "arm,gic-v3"            },\r
   { PropertyTypeXen,     "xen,xen"               },\r
   { PropertyTypeUnknown, ""                      }\r
 };\r
@@ -294,7 +290,6 @@ InitializeVirtFdtDxe (
   VIRTIO_TRANSPORT_DEVICE_PATH   *DevicePath;\r
   EFI_HANDLE                     Handle;\r
   UINT64                         RegBase;\r
-  UINT64                         DistBase, CpuBase, RedistBase;\r
   CONST INTERRUPT_PROPERTY       *InterruptProp;\r
   INT32                          SecIntrNum, IntrNum, VirtIntrNum, HypIntrNum;\r
   CONST CHAR8                    *PsciMethod;\r
@@ -446,52 +441,6 @@ InitializeVirtFdtDxe (
       }\r
       break;\r
 \r
-    case PropertyTypeGic:\r
-      ASSERT (Len == 32);\r
-\r
-      DistBase = fdt64_to_cpu (((UINT64 *)RegProp)[0]);\r
-      CpuBase  = fdt64_to_cpu (((UINT64 *)RegProp)[2]);\r
-      ASSERT (DistBase < MAX_UINT32);\r
-      ASSERT (CpuBase < MAX_UINT32);\r
-\r
-      PcdSet32 (PcdGicDistributorBase, (UINT32)DistBase);\r
-      PcdSet32 (PcdGicInterruptInterfaceBase, (UINT32)CpuBase);\r
-      PcdSet32 (PcdArmGicRevision, 2);\r
-\r
-      DEBUG ((EFI_D_INFO, "Found GIC @ 0x%Lx/0x%Lx\n", DistBase, CpuBase));\r
-      break;\r
-\r
-    case PropertyTypeGicV3:\r
-      //\r
-      // The GIC v3 DT binding describes a series of at least 3 physical (base\r
-      // addresses, size) pairs: the distributor interface (GICD), at least one\r
-      // redistributor region (GICR) containing dedicated redistributor\r
-      // interfaces for all individual CPUs, and the CPU interface (GICC).\r
-      // Under virtualization, we assume that the first redistributor region\r
-      // listed covers the boot CPU. Also, our GICv3 driver only supports the\r
-      // system register CPU interface, so we can safely ignore the MMIO version\r
-      // which is listed after the sequence of redistributor interfaces.\r
-      // This means we are only interested in the first two memory regions\r
-      // supplied, and ignore everything else.\r
-      //\r
-      ASSERT (Len >= 32);\r
-\r
-      // RegProp[0..1] == { GICD base, GICD size }\r
-      DistBase = fdt64_to_cpu (((UINT64 *)RegProp)[0]);\r
-      ASSERT (DistBase < MAX_UINT32);\r
-\r
-      // RegProp[2..3] == { GICR base, GICR size }\r
-      RedistBase = fdt64_to_cpu (((UINT64 *)RegProp)[2]);\r
-      ASSERT (RedistBase < MAX_UINT32);\r
-\r
-      PcdSet32 (PcdGicDistributorBase, (UINT32)DistBase);\r
-      PcdSet32 (PcdGicRedistributorsBase, (UINT32)RedistBase);\r
-      PcdSet32 (PcdArmGicRevision, 3);\r
-\r
-      DEBUG ((EFI_D_INFO, "Found GIC v3 (re)distributor @ 0x%Lx (0x%Lx)\n",\r
-        DistBase, RedistBase));\r
-      break;\r
-\r
     case PropertyTypeRtc:\r
       ASSERT (Len == 16);\r
 \r
index f807bf76bb4b55d184e7ab5dfb170e1d724aaf52..628b14501f455eaaba1bd9d15315bf9de0807ad3 100644 (file)
   gArmVirtTokenSpaceGuid.PcdFwCfgSelectorAddress\r
   gArmVirtTokenSpaceGuid.PcdFwCfgDataAddress\r
   gArmVirtTokenSpaceGuid.PcdFwCfgDmaAddress\r
-  gArmVirtTokenSpaceGuid.PcdArmGicRevision\r
-  gArmTokenSpaceGuid.PcdGicDistributorBase\r
-  gArmTokenSpaceGuid.PcdGicRedistributorsBase\r
-  gArmTokenSpaceGuid.PcdGicInterruptInterfaceBase\r
   gArmTokenSpaceGuid.PcdArmArchTimerSecIntrNum\r
   gArmTokenSpaceGuid.PcdArmArchTimerIntrNum\r
   gArmTokenSpaceGuid.PcdArmArchTimerVirtIntrNum\r