gma power: Allow to explicitly enable DDI/Aux power
We used to enable power for DP-aux channels quite implicitly by faking
configs that use a specific port. As Tiger Lake requires us to enable
a DDI port's power late during the modesetting sequence, we introduce
a new API for such cases, and also use it for the DP-aux case.
Tested on HSW, and BXT & CFL where we enable PW2 explicitly now.
Change-Id: I1fd6348ff4855557166495613c6a181f85a818f4
Signed-off-by: Nico Huber <nico.huber@secunet.com>
Reviewed-on: https://review.sourcearcade.org/c/libgfxinit/+/461
Tested-by: Nico Huber <nico.h@gmx.de>
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
diff --git a/common/broxton/hw-gfx-gma-power_and_clocks.adb b/common/broxton/hw-gfx-gma-power_and_clocks.adb
index e719ba5..279071a 100644
--- a/common/broxton/hw-gfx-gma-power_and_clocks.adb
+++ b/common/broxton/hw-gfx-gma-power_and_clocks.adb
@@ -192,6 +192,16 @@
end loop;
end Power_Set_To;
+ procedure Power_Up (Port : Active_Port_Type; Success : out Boolean) is
+ begin
+ case Port is
+ when eDP => PD_On (DDI_A);
+ when DP1 | HDMI1 | DP2 | HDMI2 => PW_On (PW2); PD_On (DDI_BC);
+ when others => null;
+ end case;
+ Success := True;
+ end Power_Up;
+
procedure Power_Up (Old_Configs, New_Configs : Pipe_Configs) is
begin
for PD in Dynamic_Domain loop