gma: Add procedure to power up legacy VGA block

Calling this is necessary for VGA text mode on at least Skylake, where
the legacy VGA registers are inaccessible otherwise.

Change-Id: I48ba1738bcc7babd4e666e5266f775dcd06b2a3f
Signed-off-by: Nico Huber <nico.huber@secunet.com>
Reviewed-on: https://review.coreboot.org/21323
Reviewed-by: Arthur Heymans <arthur@aheymans.xyz>
Tested-by: Nico Huber <nico.h@gmx.de>
This commit is contained in:
Nico Huber
2017-09-01 17:01:51 +02:00
committed by Nico Huber
parent 3a0e2a08f5
commit 42fb2d065d
2 changed files with 23 additions and 0 deletions

View File

@@ -438,6 +438,23 @@ is
----------------------------------------------------------------------------
procedure Power_Up_VGA
is
Fake_Config : constant Pipe_Configs :=
(Primary =>
(Port => Analog,
Framebuffer => HW.GFX.Default_FB,
Mode => HW.GFX.Invalid_Mode),
others =>
(Port => Disabled,
Framebuffer => HW.GFX.Default_FB,
Mode => HW.GFX.Invalid_Mode));
begin
Power_And_Clocks.Power_Up (Cur_Configs, Fake_Config);
end Power_Up_VGA;
----------------------------------------------------------------------------
function FB_First_Page (FB : Framebuffer_Type) return Natural is
(Natural (FB.Offset / GTT_Page_Size));
function FB_Pages (FB : Framebuffer_Type) return Natural is

View File

@@ -80,6 +80,12 @@ is
Global => (Input => Init_State);
pragma Warnings (GNATprove, On, "unused variable ""Write_Delay""");
pragma Warnings (GNATprove, Off, "subprogram ""Power_Up_VGA"" has no effect",
Reason => "Effect depends on the platform compiled for");
procedure Power_Up_VGA
with
Pre => Is_Initialized;
procedure Update_Outputs (Configs : Pipe_Configs);
pragma Warnings (GNATprove, Off, "subprogram ""Dump_Configs"" has no effect",