blob: 62d3a6842ed240c139f931c0379bb3f14cee01b2 [file] [log] [blame]
Nico Huber8c45bcf2016-11-20 17:30:57 +01001--
2-- Copyright (C) 2015-2016 secunet Security Networks AG
3--
4-- This program is free software; you can redistribute it and/or modify
5-- it under the terms of the GNU General Public License as published by
6-- the Free Software Foundation; either version 2 of the License, or
7-- (at your option) any later version.
8--
9-- This program is distributed in the hope that it will be useful,
10-- but WITHOUT ANY WARRANTY; without even the implied warranty of
11-- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
12-- GNU General Public License for more details.
13--
14
Nico Huber040d9b62019-02-18 00:52:00 +010015with HW.GFX.EDID;
16
Nico Huber8c45bcf2016-11-20 17:30:57 +010017package HW.GFX.GMA.Display_Probing
18is
19
Nico Huber4de75652026-04-18 15:24:53 +020020 type Port_List_Range is range
21 1 .. Active_Port_Type'Pos (Active_Port_Type'Last);
Nico Huber8c45bcf2016-11-20 17:30:57 +010022 type Port_List is array (Port_List_Range) of Port_Type;
Nico Huber4c7356d2016-12-16 14:22:32 +010023 All_Ports : constant Port_List :=
Nico Huber8b381fc2024-03-26 18:04:19 +010024 (DP1, DP2, DP3, DP_TC1, DP_TC2, DP_TC3, DP_TC4,
25 HDMI1, HDMI2, HDMI3, HDMI_TC1, HDMI_TC2, HDMI_TC3, HDMI_TC4,
26 USBC1, USBC2, USBC3, USBC4,
27 Analog, LVDS, eDP);
Nico Huber8c45bcf2016-11-20 17:30:57 +010028
Nico Huber040d9b62019-02-18 00:52:00 +010029 procedure Read_EDID
30 (Raw_EDID : out EDID.Raw_EDID_Data;
31 Port : in Active_Port_Type;
32 Success : out Boolean)
33 with
Nico Huber41e86742024-07-17 17:10:28 +020034 Relaxed_Initialization => Raw_EDID,
35 Post => (if Success then Raw_EDID'Initialized and EDID.Valid (Raw_EDID));
Nico Huber040d9b62019-02-18 00:52:00 +010036
Nico Huber8c45bcf2016-11-20 17:30:57 +010037 procedure Scan_Ports
Nico Huber4c7356d2016-12-16 14:22:32 +010038 (Configs : out Pipe_Configs;
39 Ports : in Port_List := All_Ports;
40 Max_Pipe : in Pipe_Index := Pipe_Index'Last;
41 Keep_Power : in Boolean := False);
Nico Huber8c45bcf2016-11-20 17:30:57 +010042
Nico Huber92de9c42019-09-29 19:03:58 +020043 procedure Hotplug_Events (Ports : out Port_List);
44
Nico Huber8c45bcf2016-11-20 17:30:57 +010045end HW.GFX.GMA.Display_Probing;