gma: Drop Auto_Configure()

This procedure was never used to its full extent, afaict. It does too
much and that's barely tested. New code should be based on Scan_Ports().

Change-Id: I2367488f4b906a03a226313a41bf3d5f8dc4e6ef
Signed-off-by: Nico Huber <nico.h@gmx.de>
Reviewed-on: https://review.coreboot.org/17751
Reviewed-by: Reto Buerki <reet@codelabs.ch>
This commit is contained in:
Nico Huber
2016-11-20 01:53:40 +01:00
parent 0d454cde12
commit dca242dbb7
2 changed files with 0 additions and 106 deletions

View File

@@ -402,109 +402,6 @@ is
Power_And_Clocks.Power_Set_To (Cur_Configs);
end Scan_Ports;
procedure Auto_Configure
(Configs : in out Pipe_Configs;
Keep_Power : in Boolean := False)
is
Raw_EDID : EDID.Raw_EDID_Data := (others => 16#00#);
Success : Boolean;
Config_Idx : Pipe_Index;
Port_Cfg : Port_Config;
function Free_Config return Boolean
with
Pre => True
is
begin
return Port_Configured (Configs, Disabled);
end Free_Config;
function First_Free_Config return Pipe_Index
with
Pre => Free_Config
is
begin
return (if Configs (Primary).Port = Disabled then Primary else
(if Configs (Secondary).Port = Disabled then Secondary
else Tertiary));
end First_Free_Config;
begin
-- TODO: Only check ports with hot-plug event?
if Config.Has_Internal_Display and then
not Keep_Power and then
not Port_Configured (Cur_Configs, Internal)
then
Panel.On (Wait => False);
end if;
-- Check if displays are still connected
for I in Pipe_Index loop
if Configs (I).Port /= Disabled then
Fill_Port_Config (Port_Cfg, Configs, I, Success);
if Success then
Connector_Info.Read_EDID
(Raw_EDID => Raw_EDID,
Port_Cfg => Port_Cfg,
Success => Success);
end if;
if not Success or else
not EDID.Has_Preferred_Mode (Raw_EDID) or else
Configs (I).Mode /= EDID.Preferred_Mode (Raw_EDID)
then
Configs (I).Port := Disabled;
end if;
end if;
end loop;
-- Add new displays as long as there is a free pipe config
for Port in Active_Port_Type loop
if Free_Config and then not Port_Configured (Configs, Port) then
Config_Idx := First_Free_Config;
Configs (Config_Idx).Port := Port;
Fill_Port_Config (Port_Cfg, Configs, Config_Idx, Success);
if Success then
-- Need power to probe port
if not Keep_Power and then To_Display_Type (Port) = DP then
Power_And_Clocks.Power_Up (Cur_Configs, Configs);
end if;
if not Keep_Power and then Port = Internal then
Panel.Wait_On;
end if;
Connector_Info.Read_EDID
(Raw_EDID => Raw_EDID,
Port_Cfg => Port_Cfg,
Success => Success);
end if;
if Success and then
(EDID.Compatible_Display (Raw_EDID, Port_Cfg.Display) and
EDID.Has_Preferred_Mode (Raw_EDID))
then
Configs (Config_Idx) := Pipe_Config'
(Port => Port,
Framebuffer => Configs (Config_Idx).Framebuffer,
Mode => EDID.Preferred_Mode (Raw_EDID));
else
Configs (Config_Idx).Port := Disabled;
end if;
end if;
end loop;
if not Keep_Power then
Power_And_Clocks.Power_Set_To (Cur_Configs);
if Config.Has_Internal_Display and then
not Port_Configured (Cur_Configs, Internal)
then
Panel.Off;
end if;
end if;
end Auto_Configure;
----------------------------------------------------------------------------
procedure Update_Outputs (Configs : Pipe_Configs)

View File

@@ -82,9 +82,6 @@ is
(Configs : out Pipe_Configs;
Ports : in Port_List;
Max_Pipe : in Pipe_Index := Pipe_Index'Last);
procedure Auto_Configure
(Configs : in out Pipe_Configs;
Keep_Power : in Boolean := False);
procedure Update_Outputs (Configs : Pipe_Configs);
pragma Warnings (GNATprove, Off, "subprogram ""Dump_Configs"" has no effect",