On 11/28/14 00:19, Laszlo Ersek wrote:
> Qemu's firmware configuration interface consists of two MMIO registers, a
> 16-bit selector and an 8-bit data register. Parse their addresses and
> verify their sizes from the DTB, and expose them to the rest of DXE by
> storing them in dynamic PCDs.
> 
> Contributed-under: TianoCore Contribution Agreement 1.0
> Signed-off-by: Laszlo Ersek <ler...@redhat.com>
> ---
>  ArmPlatformPkg/ArmVirtualizationPkg/VirtFdtDxe/VirtFdtDxe.inf |  2 ++
>  ArmPlatformPkg/ArmVirtualizationPkg/VirtFdtDxe/VirtFdtDxe.c   | 26 
> ++++++++++++++++++++++++++
>  ArmPlatformPkg/ArmVirtualizationPkg/ArmVirtualizationPkg.dec  |  3 +++
>  ArmPlatformPkg/ArmVirtualizationPkg/ArmVirtualizationQemu.dsc |  3 +++
>  4 files changed, 34 insertions(+)
> 
> diff --git a/ArmPlatformPkg/ArmVirtualizationPkg/VirtFdtDxe/VirtFdtDxe.inf 
> b/ArmPlatformPkg/ArmVirtualizationPkg/VirtFdtDxe/VirtFdtDxe.inf
> index 1c9dd20..daafe6c 100644
> --- a/ArmPlatformPkg/ArmVirtualizationPkg/VirtFdtDxe/VirtFdtDxe.inf
> +++ b/ArmPlatformPkg/ArmVirtualizationPkg/VirtFdtDxe/VirtFdtDxe.inf
> @@ -47,6 +47,8 @@
>  [Pcd]
>    gArmVirtualizationTokenSpaceGuid.PcdDeviceTreeBaseAddress
>    gArmVirtualizationTokenSpaceGuid.PcdArmPsciMethod
> +  gArmVirtualizationTokenSpaceGuid.PcdFwCfgSelectorAddress
> +  gArmVirtualizationTokenSpaceGuid.PcdFwCfgDataAddress
>    gArmTokenSpaceGuid.PcdGicDistributorBase
>    gArmTokenSpaceGuid.PcdGicInterruptInterfaceBase
>    gArmTokenSpaceGuid.PcdArmArchTimerSecIntrNum
> diff --git a/ArmPlatformPkg/ArmVirtualizationPkg/VirtFdtDxe/VirtFdtDxe.c 
> b/ArmPlatformPkg/ArmVirtualizationPkg/VirtFdtDxe/VirtFdtDxe.c
> index d002e66..f1b5283 100644
> --- a/ArmPlatformPkg/ArmVirtualizationPkg/VirtFdtDxe/VirtFdtDxe.c
> +++ b/ArmPlatformPkg/ArmVirtualizationPkg/VirtFdtDxe/VirtFdtDxe.c
> @@ -44,6 +44,7 @@ typedef enum {
>    PropertyTypeUart,
>    PropertyTypeTimer,
>    PropertyTypePsci,
> +  PropertyTypeFwCfg,
>  } PROPERTY_TYPE;
>  
>  typedef struct {
> @@ -59,6 +60,7 @@ STATIC CONST PROPERTY CompatibleProperties[] = {
>    { PropertyTypeTimer,   "arm,armv7-timer"     },
>    { PropertyTypeTimer,   "arm,armv8-timer"     },
>    { PropertyTypePsci,    "arm,psci-0.2"        },
> +  { PropertyTypeFwCfg,   "fw-cfg,mmio"         },

The part of the DTB that exposes this device was slightly changed. Since
there were no review comments thus far, I'll post a v2 of this edk2 series.

Thanks
Laszlo

Reply via email to