gma config: allow override of presence straps

A handful of boards do not properly implement the presence straps,
leading libgfxinit to fail to detect an attached internal display.
Add an override which can be set by coreboot for affected boards.

Change-Id: Iabf0fac3a8431ffceb81cd583bb05f9c28e8ad64
Signed-off-by: Matt DeVillier <matt.devillier@puri.sm>
Reviewed-on: https://review.coreboot.org/c/libgfxinit/+/41415
Tested-by: Nico Huber <nico.h@gmx.de>
Reviewed-by: Nico Huber <nico.h@gmx.de>
diff --git a/common/haswell_shared/hw-gfx-gma-port_detect.adb b/common/haswell_shared/hw-gfx-gma-port_detect.adb
index 09136ff..5765941 100644
--- a/common/haswell_shared/hw-gfx-gma-port_detect.adb
+++ b/common/haswell_shared/hw-gfx-gma-port_detect.adb
@@ -88,7 +88,7 @@
       end if;
 
       -- DDI_A
-      if Config.Has_Presence_Straps then
+      if Config.Has_Presence_Straps and not Config.Ignore_Presence_Straps then
          Registers.Is_Set_Mask
            (Register => Registers.DDI_BUF_CTL_A,
             Mask     => DDI_PORT_DETECTED (DIGI_A),
@@ -123,7 +123,7 @@
       for Port in Ext_Digital_Port range
          DIGI_B .. Ext_Digital_Port'Min (DIGI_D, Config.Last_Digital_Port)
       loop
-         if Config.Has_Presence_Straps then
+         if Config.Has_Presence_Straps and not Config.Ignore_Presence_Straps then
             Registers.Is_Set_Mask
               (Register => Registers.SFUSE_STRAP,
                Mask     => DDI_PORT_DETECTED (Port),