summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNico Huber <nico.huber@secunet.com>2018-03-29 15:15:10 +0200
committerPatrick Georgi <pgeorgi@google.com>2018-04-06 06:46:27 +0000
commit71cbd71eb5c0e8e13b25b5d5dd2f495e7d2967eb (patch)
treea9900fea7e80e4c29bd0281aaae1887540f3a489
parent06c8c0d1fed29f488fda1c7d3bc13a7edfed1be3 (diff)
downloadcoreboot-71cbd71eb5c0e8e13b25b5d5dd2f495e7d2967eb.tar.xz
drivers/intel/gma: Depend less on default fb values
Instead of hard-coding a lot of default values of the framebuffer config, we use the values provided by Display_Probing.Scan_Ports() and only overwrite what is necessary. This way we are more independent from changes inside libgfxinit. Change-Id: I121bbd926532c27321446282aa334cc45cdbeef1 Signed-off-by: Nico Huber <nico.huber@secunet.com> Reviewed-on: https://review.coreboot.org/25452 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Patrick Georgi <pgeorgi@google.com> Reviewed-by: Paul Menzel <paulepanter@users.sourceforge.net>
-rw-r--r--src/drivers/intel/gma/hires_fb/gma.adb11
-rw-r--r--src/drivers/intel/gma/text_fb/gma.adb11
2 files changed, 10 insertions, 12 deletions
diff --git a/src/drivers/intel/gma/hires_fb/gma.adb b/src/drivers/intel/gma/hires_fb/gma.adb
index 086da9b80f..839d2d3e91 100644
--- a/src/drivers/intel/gma/hires_fb/gma.adb
+++ b/src/drivers/intel/gma/hires_fb/gma.adb
@@ -79,12 +79,11 @@ is
min_v := pos16'min (min_v, configs (i).Mode.V_Visible);
end loop;
- fb :=
- (Width => Width_Type (min_h),
- Height => Height_Type (min_v),
- BPC => 8,
- Stride => Div_Round_Up (Width_Type (min_h), 16) * 16,
- Offset => 0);
+ fb := configs (Primary).Framebuffer;
+ fb.Width := Width_Type (min_h);
+ fb.Height := Height_Type (min_v);
+ fb.Stride := Div_Round_Up (fb.Width, 16) * 16;
+
for i in Pipe_Index loop
exit when configs (i).Port = Disabled;
diff --git a/src/drivers/intel/gma/text_fb/gma.adb b/src/drivers/intel/gma/text_fb/gma.adb
index 8f61d1dd65..145b9a047e 100644
--- a/src/drivers/intel/gma/text_fb/gma.adb
+++ b/src/drivers/intel/gma/text_fb/gma.adb
@@ -51,12 +51,11 @@ is
vga_io_init;
vga_textmode_init;
- configs (Primary).Framebuffer :=
- (Width => 640,
- Height => 400,
- BPC => Auto_BPC, -- ignored for VGA plane
- Stride => 320, -- ignored
- Offset => VGA_PLANE_FRAMEBUFFER_OFFSET);
+ -- override probed framebuffer config
+ configs (Primary).Framebuffer.Width := 640;
+ configs (Primary).Framebuffer.Height := 400;
+ configs (Primary).Framebuffer.Offset :=
+ VGA_PLANE_FRAMEBUFFER_OFFSET;
HW.GFX.GMA.Dump_Configs (configs);
HW.GFX.GMA.Update_Outputs (configs);