gma: Allow to configure PCI device, override MMConf

In virtualized environments (e.g. PCI pass-through),  it's possible
that the guest-visible PCI address differs from the actual hardware
address. Similarly, the MMConf/ECAM space might not be fully mapped
into the guest, so allow to override that as well.

Change-Id: Icc286b5db8c2d9098fa99307d449b46fccdec4dc
Signed-off-by: Nico Huber <nico.huber@secunet.com>
Reviewed-on: https://review.sourcearcade.org/c/libgfxinit/+/536
Tested-by: Nico Huber <nico.h@gmx.de>
Reviewed-by: Thomas Heijligen <src@posteo.de>
diff --git a/common/hw-gfx-gma-config.ads.template b/common/hw-gfx-gma-config.ads.template
index 763a22d..e495526 100644
--- a/common/hw-gfx-gma-config.ads.template
+++ b/common/hw-gfx-gma-config.ads.template
@@ -12,6 +12,8 @@
 -- GNU General Public License for more details.
 --
 
+with HW.PCI;
+
 private package HW.GFX.GMA.Config is
 
    Gen : constant Generation := <<GEN>>;
@@ -77,7 +79,9 @@
 
    DDI_HDMI_Buffer_Translation : constant Integer := -1;
 
-   Default_MMIO_Base : constant := <<DEFAULT_MMIO_BASE>>;
+   PCI_Dev : constant PCI.Address := <<PCI_DEV_ADDRESS>>;
+   Override_MMConf_Base : constant := <<OVERRIDE_MMCONF_BASE>>;
+   Default_MMIO_Base    : constant := <<DEFAULT_MMIO_BASE>>;
 
    LVDS_Dual_Threshold : constant := 95_000_000;