<p>Nico Huber has uploaded this change for <strong>review</strong>.</p><p><a href="https://review.coreboot.org/27047">View Change</a></p><pre style="font-family: monospace,monospace; white-space: pre-wrap;">gma config, port detection: Scatter Valid_Port initialization<br><br>We did overwrite most the default values for `Config.Valid_Port` anyway.<br>So move the few remaining defaults where they are visible together with<br>the other runtime settings.<br><br>Change-Id: I17df08de0aa1ffb303646ea564c100bb702407f5<br>Signed-off-by: Nico Huber <nico.h@gmx.de><br>---<br>M common/g45/hw-gfx-gma-port_detect.adb<br>M common/hw-gfx-gma-config.ads.template<br>M common/hw-gfx-gma-display_probing.adb<br>M common/hw-gfx-gma.adb<br>M common/ironlake/hw-gfx-gma-port_detect.adb<br>5 files changed, 11 insertions(+), 52 deletions(-)<br><br></pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;">git pull ssh://review.coreboot.org:29418/libgfxinit refs/changes/47/27047/1</pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;"><span>diff --git a/common/g45/hw-gfx-gma-port_detect.adb b/common/g45/hw-gfx-gma-port_detect.adb</span><br><span>index c865079..479b626 100644</span><br><span>--- a/common/g45/hw-gfx-gma-port_detect.adb</span><br><span>+++ b/common/g45/hw-gfx-gma-port_detect.adb</span><br><span>@@ -73,6 +73,8 @@</span><br><span>          DIGI_D => DP3);</span><br><span> </span><br><span>    begin</span><br><span style="color: hsl(120, 100%, 40%);">+      Config.Valid_Port (Analog) := True;</span><br><span style="color: hsl(120, 100%, 40%);">+      Config.Valid_Port (Internal) := Config.Internal_Is_LVDS;</span><br><span>       for HDMI_Port in GMCH_HDMI_Port loop</span><br><span>          Registers.Is_Set_Mask</span><br><span>            (Register => GMCH_HDMI (HDMI_Port),</span><br><span>diff --git a/common/hw-gfx-gma-config.ads.template b/common/hw-gfx-gma-config.ads.template</span><br><span>index 90500ab..f498921 100644</span><br><span>--- a/common/hw-gfx-gma-config.ads.template</span><br><span>+++ b/common/hw-gfx-gma-config.ads.template</span><br><span>@@ -14,7 +14,7 @@</span><br><span> </span><br><span> private package HW.GFX.GMA.Config</span><br><span> with</span><br><span style="color: hsl(0, 100%, 40%);">-   Initializes => (Valid_Port_GPU, Raw_Clock)</span><br><span style="color: hsl(120, 100%, 40%);">+   Initializes => (Valid_Port, Raw_Clock)</span><br><span> is</span><br><span> </span><br><span>    CPU : constant CPU_Type := <<CPU>>;</span><br><span>@@ -38,6 +38,7 @@</span><br><span>    Default_MMIO_Base_Set   : constant Boolean := Default_MMIO_Base /= 0;</span><br><span> </span><br><span>    Has_Internal_Display    : constant Boolean := Internal_Display /= None;</span><br><span style="color: hsl(120, 100%, 40%);">+   Internal_Is_LVDS        : constant Boolean := Internal_Display = LVDS;</span><br><span>    Internal_Is_EDP         : constant Boolean := Internal_Display = DP;</span><br><span>    Have_DVI_I              : constant Boolean := Analog_I2C_Port /= PCH_DAC;</span><br><span>    Has_Presence_Straps     : constant Boolean := CPU /= Broxton;</span><br><span>@@ -143,55 +144,9 @@</span><br><span>       Secondary   => Secondary   <= Max_Pipe,</span><br><span>       Tertiary    => Tertiary    <= Max_Pipe);</span><br><span> </span><br><span style="color: hsl(0, 100%, 40%);">-   type Valid_Per_Port is array (Port_Type) of Boolean;</span><br><span style="color: hsl(0, 100%, 40%);">-   type Valid_Per_GPU is array (CPU_Type) of Valid_Per_Port;</span><br><span style="color: hsl(0, 100%, 40%);">-   Valid_Port_GPU : Valid_Per_GPU :=</span><br><span style="color: hsl(0, 100%, 40%);">-     (G45         =></span><br><span style="color: hsl(0, 100%, 40%);">-        (Disabled => False,</span><br><span style="color: hsl(0, 100%, 40%);">-         Internal => Config.Internal_Display = LVDS,</span><br><span style="color: hsl(0, 100%, 40%);">-         HDMI3    => False,</span><br><span style="color: hsl(0, 100%, 40%);">-         others   => True),</span><br><span style="color: hsl(0, 100%, 40%);">-      Ironlake    =></span><br><span style="color: hsl(0, 100%, 40%);">-        (Disabled => False,</span><br><span style="color: hsl(0, 100%, 40%);">-         Internal => Config.Internal_Display = LVDS,</span><br><span style="color: hsl(0, 100%, 40%);">-         others   => True),</span><br><span style="color: hsl(0, 100%, 40%);">-      Sandybridge =></span><br><span style="color: hsl(0, 100%, 40%);">-        (Disabled => False,</span><br><span style="color: hsl(0, 100%, 40%);">-         Internal => Config.Internal_Display = LVDS,</span><br><span style="color: hsl(0, 100%, 40%);">-         others   => True),</span><br><span style="color: hsl(0, 100%, 40%);">-      Ivybridge   =></span><br><span style="color: hsl(0, 100%, 40%);">-        (Disabled => False,</span><br><span style="color: hsl(0, 100%, 40%);">-         Internal => Config.Internal_Display /= None,</span><br><span style="color: hsl(0, 100%, 40%);">-         others   => True),</span><br><span style="color: hsl(0, 100%, 40%);">-      Haswell     =></span><br><span style="color: hsl(0, 100%, 40%);">-        (Disabled => False,</span><br><span style="color: hsl(0, 100%, 40%);">-         Internal => Config.Internal_Display = DP,</span><br><span style="color: hsl(0, 100%, 40%);">-         HDMI3    => CPU_Var = Normal,</span><br><span style="color: hsl(0, 100%, 40%);">-         DP3      => CPU_Var = Normal,</span><br><span style="color: hsl(0, 100%, 40%);">-         Analog   => CPU_Var = Normal,</span><br><span style="color: hsl(0, 100%, 40%);">-         others   => True),</span><br><span style="color: hsl(0, 100%, 40%);">-      Broadwell   =></span><br><span style="color: hsl(0, 100%, 40%);">-        (Disabled => False,</span><br><span style="color: hsl(0, 100%, 40%);">-         Internal => Config.Internal_Display = DP,</span><br><span style="color: hsl(0, 100%, 40%);">-         HDMI3    => CPU_Var = Normal,</span><br><span style="color: hsl(0, 100%, 40%);">-         DP3      => CPU_Var = Normal,</span><br><span style="color: hsl(0, 100%, 40%);">-         Analog   => CPU_Var = Normal,</span><br><span style="color: hsl(0, 100%, 40%);">-         others   => True),</span><br><span style="color: hsl(0, 100%, 40%);">-      Broxton     =></span><br><span style="color: hsl(0, 100%, 40%);">-        (Internal => Config.Internal_Display = DP,</span><br><span style="color: hsl(0, 100%, 40%);">-         DP1      => True,</span><br><span style="color: hsl(0, 100%, 40%);">-         DP2      => True,</span><br><span style="color: hsl(0, 100%, 40%);">-         HDMI1    => True,</span><br><span style="color: hsl(0, 100%, 40%);">-         HDMI2    => True,</span><br><span style="color: hsl(0, 100%, 40%);">-         others   => False),</span><br><span style="color: hsl(0, 100%, 40%);">-      Skylake     =></span><br><span style="color: hsl(0, 100%, 40%);">-        (Disabled => False,</span><br><span style="color: hsl(0, 100%, 40%);">-         Internal => Config.Internal_Display = DP,</span><br><span style="color: hsl(0, 100%, 40%);">-         Analog   => False,</span><br><span style="color: hsl(0, 100%, 40%);">-         others   => True))</span><br><span style="color: hsl(120, 100%, 40%);">+   Valid_Port : array (Port_Type) of Boolean := (others => False)</span><br><span>    with</span><br><span>       Part_Of => GMA.Config_State;</span><br><span style="color: hsl(0, 100%, 40%);">-   Valid_Port : Valid_Per_Port renames Valid_Port_GPU (CPU);</span><br><span> </span><br><span>    Last_Digital_Port : constant Digital_Port :=</span><br><span>      (if Has_DDI_E then DIGI_E else DIGI_C);</span><br><span>@@ -202,7 +157,7 @@</span><br><span>    Is_FDI_Port : constant FDI_Per_Port :=</span><br><span>      (case CPU is</span><br><span>          when Ironlake .. Ivybridge => FDI_Per_Port'</span><br><span style="color: hsl(0, 100%, 40%);">-           (Internal => Internal_Display = LVDS,</span><br><span style="color: hsl(120, 100%, 40%);">+           (Internal => Internal_Is_LVDS,</span><br><span>             others   => True),</span><br><span>          when Haswell .. Broadwell => FDI_Per_Port'</span><br><span>            (Analog   => Has_PCH_DAC,</span><br><span>diff --git a/common/hw-gfx-gma-display_probing.adb b/common/hw-gfx-gma-display_probing.adb</span><br><span>index d02d0e0..50f9322 100644</span><br><span>--- a/common/hw-gfx-gma-display_probing.adb</span><br><span>+++ b/common/hw-gfx-gma-display_probing.adb</span><br><span>@@ -166,7 +166,7 @@</span><br><span>       Refined_Global =></span><br><span>         (Input =></span><br><span>            (GMA.Cur_Configs,</span><br><span style="color: hsl(0, 100%, 40%);">-            Config.Raw_Clock, Config.Valid_Port_GPU,</span><br><span style="color: hsl(120, 100%, 40%);">+            Config.Raw_Clock, Config.Valid_Port,</span><br><span>             Time.State),</span><br><span>          In_Out => (Panel.Panel_State, Registers.Register_State),</span><br><span>          Proof_In => (Init_State))</span><br><span>diff --git a/common/hw-gfx-gma.adb b/common/hw-gfx-gma.adb</span><br><span>index c9da0f2..f9ca13f 100644</span><br><span>--- a/common/hw-gfx-gma.adb</span><br><span>+++ b/common/hw-gfx-gma.adb</span><br><span>@@ -44,7 +44,7 @@</span><br><span>          HPD_Delay, Wait_For_HPD,</span><br><span>          Linear_FB_Base),</span><br><span>       Init_State => Initialized,</span><br><span style="color: hsl(0, 100%, 40%);">-      Config_State => (Config.Valid_Port_GPU, Config.Raw_Clock),</span><br><span style="color: hsl(120, 100%, 40%);">+      Config_State => (Config.Valid_Port, Config.Raw_Clock),</span><br><span>       Device_State =></span><br><span>         (Dev.PCI_State, Registers.Register_State, Registers.GTT_State))</span><br><span> is</span><br><span>@@ -371,7 +371,7 @@</span><br><span>    with</span><br><span>       Refined_Global =></span><br><span>         (In_Out =></span><br><span style="color: hsl(0, 100%, 40%);">-           (Config.Valid_Port_GPU, Dev.PCI_State,</span><br><span style="color: hsl(120, 100%, 40%);">+           (Config.Valid_Port, Dev.PCI_State,</span><br><span>             Registers.Register_State, Port_IO.State,</span><br><span>             Config.Raw_Clock),</span><br><span>          Input =></span><br><span>diff --git a/common/ironlake/hw-gfx-gma-port_detect.adb b/common/ironlake/hw-gfx-gma-port_detect.adb</span><br><span>index 900c505..5af2e84 100644</span><br><span>--- a/common/ironlake/hw-gfx-gma-port_detect.adb</span><br><span>+++ b/common/ironlake/hw-gfx-gma-port_detect.adb</span><br><span>@@ -69,6 +69,8 @@</span><br><span>          PCH_HDMI_C => DP2,</span><br><span>          PCH_HDMI_D => DP3);</span><br><span>    begin</span><br><span style="color: hsl(120, 100%, 40%);">+      Config.Valid_Port (Analog) := True;</span><br><span style="color: hsl(120, 100%, 40%);">+</span><br><span>       case Config.Internal_Display is</span><br><span>          when LVDS =></span><br><span>             -- PCH_LVDS</span><br><span></span><br></pre><p>To view, visit <a href="https://review.coreboot.org/27047">change 27047</a>. To unsubscribe, or for help writing mail filters, visit <a href="https://review.coreboot.org/settings">settings</a>.</p><div itemscope itemtype="http://schema.org/EmailMessage"><div itemscope itemprop="action" itemtype="http://schema.org/ViewAction"><link itemprop="url" href="https://review.coreboot.org/27047"/><meta itemprop="name" content="View Change"/></div></div>

<div style="display:none"> Gerrit-Project: libgfxinit </div>
<div style="display:none"> Gerrit-Branch: master </div>
<div style="display:none"> Gerrit-MessageType: newchange </div>
<div style="display:none"> Gerrit-Change-Id: I17df08de0aa1ffb303646ea564c100bb702407f5 </div>
<div style="display:none"> Gerrit-Change-Number: 27047 </div>
<div style="display:none"> Gerrit-PatchSet: 1 </div>
<div style="display:none"> Gerrit-Owner: Nico Huber <nico.h@gmx.de> </div>