blob: ea133294281aa2be9d390d2af35a32c7995755a2 [file] [log] [blame]
--
-- Copyright (C) 2015-2016 secunet Security Networks AG
--
-- This program is free software; you can redistribute it and/or modify
-- it under the terms of the GNU General Public License as published by
-- the Free Software Foundation; either version 2 of the License, or
-- (at your option) any later version.
--
-- This program is distributed in the hope that it will be useful,
-- but WITHOUT ANY WARRANTY; without even the implied warranty of
-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
-- GNU General Public License for more details.
--
with HW.GFX.EDID;
package HW.GFX.GMA.Display_Probing
is
type Port_List_Range is range 0 .. 20;
type Port_List is array (Port_List_Range) of Port_Type;
All_Ports : constant Port_List :=
(DP1, DP2, DP3, DP_TC1, DP_TC2, DP_TC3, DP_TC4,
HDMI1, HDMI2, HDMI3, HDMI_TC1, HDMI_TC2, HDMI_TC3, HDMI_TC4,
USBC1, USBC2, USBC3, USBC4,
Analog, LVDS, eDP);
procedure Read_EDID
(Raw_EDID : out EDID.Raw_EDID_Data;
Port : in Active_Port_Type;
Success : out Boolean)
with
Relaxed_Initialization => Raw_EDID,
Post => (if Success then Raw_EDID'Initialized and EDID.Valid (Raw_EDID));
procedure Scan_Ports
(Configs : out Pipe_Configs;
Ports : in Port_List := All_Ports;
Max_Pipe : in Pipe_Index := Pipe_Index'Last;
Keep_Power : in Boolean := False);
procedure Hotplug_Events (Ports : out Port_List);
end HW.GFX.GMA.Display_Probing;