<p>Nico Huber has uploaded this change for <strong>review</strong>.</p><p><a href="https://review.coreboot.org/20606">View Change</a></p><pre style="font-family: monospace,monospace; white-space: pre-wrap;">WIP: Update libhwbase + libgfxinit<br><br>Change-Id: I001ba973d864811503410579fd7ad55ab8612759<br>Signed-off-by: Nico Huber <nico.h@gmx.de><br>---<br>M 3rdparty/libgfxinit<br>M 3rdparty/libhwbase<br>M src/Kconfig<br>M src/drivers/intel/gma/hires_fb/gma.adb<br>M src/drivers/intel/gma/text_fb/gma.adb<br>M src/lib/Kconfig<br>M src/lib/Makefile.inc<br>7 files changed, 52 insertions(+), 28 deletions(-)<br><br></pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;">git pull ssh://review.coreboot.org:29418/coreboot refs/changes/06/20606/1</pre><pre style="font-family: monospace,monospace; white-space: pre-wrap;">diff --git a/3rdparty/libgfxinit b/3rdparty/libgfxinit<br>index fb4f8ce..1577cb8 160000<br>--- a/3rdparty/libgfxinit<br>+++ b/3rdparty/libgfxinit<br>@@ -1 +1 @@<br>-Subproject commit fb4f8ce26a05c2304367c066b806519941658373<br>+Subproject commit 1577cb83f9f0c494099e5dda96eb3e81438bfc07<br>diff --git a/3rdparty/libhwbase b/3rdparty/libhwbase<br>index 3bf6759..8421073 160000<br>--- a/3rdparty/libhwbase<br>+++ b/3rdparty/libhwbase<br>@@ -1 +1 @@<br>-Subproject commit 3bf6759dc09d27c06b3533fd536e667356853d3d<br>+Subproject commit 84210735417763ecdcf0c5e4515bc57bc9baf218<br>diff --git a/src/Kconfig b/src/Kconfig<br>index 637f575..701b2b4 100644<br>--- a/src/Kconfig<br>+++ b/src/Kconfig<br>@@ -1145,20 +1145,6 @@<br>         required and not implemented if a weak implementation is found in the<br>         resulting image.<br> <br>-config RAMSTAGE_ADA<br>-  def_bool n<br>-   help<br>-   Selected by features that use Ada code in ramstage.<br>-<br>-config RAMSTAGE_LIBHWBASE<br>- def_bool n<br>-   select RAMSTAGE_ADA<br>-  help<br>-   Selected by features that require `libhwbase` in ramstage.<br>-<br>-config HWBASE_DYNAMIC_MMIO<br>- def_bool y<br>-<br> config UNCOMPRESSED_RAMSTAGE<br>  bool<br> <br>diff --git a/src/drivers/intel/gma/hires_fb/gma.adb b/src/drivers/intel/gma/hires_fb/gma.adb<br>index 7fe4e12..34f1751 100644<br>--- a/src/drivers/intel/gma/hires_fb/gma.adb<br>+++ b/src/drivers/intel/gma/hires_fb/gma.adb<br>@@ -68,9 +68,7 @@<br>    begin<br>       lightup_ok := 0;<br> <br>-      HW.GFX.GMA.Initialize<br>-        (MMIO_Base   => mmio_base,<br>-         Success     => success);<br>+      HW.GFX.GMA.Initialize (Success => success);<br> <br>       if success then<br>          ports := Mainboard.ports;<br>@@ -98,15 +96,19 @@<br> <br>             HW.GFX.GMA.Dump_Configs (configs);<br> <br>-            HW.GFX.GMA.Setup_Default_GTT (fb, phys_fb);<br>-            HW.GFX.Framebuffer_Filler.Fill (linear_fb, fb);<br>+            HW.GFX.GMA.Setup_Default_FB<br>+              (FB       => fb,<br>+               Clear    => true,<br>+               Success  => success);<br> <br>-            HW.GFX.GMA.Update_Outputs (configs);<br>+            if success then<br>+               HW.GFX.GMA.Update_Outputs (configs);<br> <br>-            linear_fb_addr := linear_fb;<br>-            fb_valid := true;<br>+               linear_fb_addr := linear_fb;<br>+               fb_valid := true;<br> <br>-            lightup_ok := 1;<br>+               lightup_ok := 1;<br>+            end if;<br>          end if;<br>       end if;<br>    end gfxinit;<br>diff --git a/src/drivers/intel/gma/text_fb/gma.adb b/src/drivers/intel/gma/text_fb/gma.adb<br>index 6453571..301e108 100644<br>--- a/src/drivers/intel/gma/text_fb/gma.adb<br>+++ b/src/drivers/intel/gma/text_fb/gma.adb<br>@@ -41,9 +41,7 @@<br>    begin<br>       lightup_ok := 0;<br> <br>-      HW.GFX.GMA.Initialize<br>-        (MMIO_Base   => mmio_base,<br>-         Success     => success);<br>+      HW.GFX.GMA.Initialize (Success => success);<br> <br>       if success then<br>          ports := Mainboard.ports;<br>diff --git a/src/lib/Kconfig b/src/lib/Kconfig<br>index 6d5f034..f329c87 100644<br>--- a/src/lib/Kconfig<br>+++ b/src/lib/Kconfig<br>@@ -5,3 +5,28 @@<br>      Don't include default fill_lb_framebuffer() implementation. Select<br>        this if your drivers uses MAINBOARD_DO_NATIVE_VGA_INIT but provides<br>           its own fill_lb_framebuffer() implementation.<br>+<br>+config RAMSTAGE_ADA<br>+     def_bool n<br>+   help<br>+   Selected by features that use Ada code in ramstage.<br>+<br>+config RAMSTAGE_LIBHWBASE<br>+ def_bool n<br>+   select RAMSTAGE_ADA<br>+  help<br>+   Selected by features that require `libhwbase` in ramstage.<br>+<br>+if RAMSTAGE_LIBHWBASE<br>+<br>+config HWBASE_DYNAMIC_MMIO<br>+      def_bool y<br>+<br>+config HWBASE_DEFAULT_MMCONF<br>+ hex<br>+  default MMCONF_BASE_ADDRESS<br>+<br>+config HWBASE_DIRECT_PCIDEV<br>+ def_bool y<br>+<br>+endif<br>diff --git a/src/lib/Makefile.inc b/src/lib/Makefile.inc<br>index e05b3fc..ce84cdd 100644<br>--- a/src/lib/Makefile.inc<br>+++ b/src/lib/Makefile.inc<br>@@ -287,8 +287,21 @@<br> <br> ifeq ($(CONFIG_RAMSTAGE_LIBHWBASE),y)<br> <br>+to-ada-hex = $(eval $(1) := 16\\\#$(patsubst 0x%,%,$($(1)))\\\#)<br>+<br>+$(call to-ada-hex,CONFIG_HWBASE_DEFAULT_MMCONF)<br>+<br> $(call add-special-class,hw)<br> hw-handler = $(eval ramstage-srcs += $$(addprefix $(1),$(2)))<br>+<br>+$(call add-special-class,hw-gen)<br>+hw-gen-handler = \<br>+      $(eval additional-dirs += $(dir $(2))) \<br>+     $(eval ramstage-srcs += $(2)) \<br>+      $(eval ramstage-ads-deps += $(2)) \<br>+  $(eval ramstage-adb-deps += $(2)) \<br>+  $(eval $(2): $(obj)/config.h)<br>+<br> subdirs-y += ../../3rdparty/libhwbase<br> <br> ramstage-$(CONFIG_HAVE_MONOTONIC_TIMER) += hw-time-timer.adb<br></pre><p>To view, visit <a href="https://review.coreboot.org/20606">change 20606</a>. To unsubscribe, 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/20606"/><meta itemprop="name" content="View Change"/></div></div>

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