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/tigerlake/hw-gfx-gma-power_and_clocks.adb b/common/tigerlake/hw-gfx-gma-power_and_clocks.adb
index 0a78217..d9d27bb 100644
--- a/common/tigerlake/hw-gfx-gma-power_and_clocks.adb
+++ b/common/tigerlake/hw-gfx-gma-power_and_clocks.adb
@@ -52,6 +52,11 @@
       pragma Debug (Debug.Put_Line (GNAT.Source_Info.Enclosing_Entity));
    end Power_Set_To;
 
+   procedure Power_Up (Port : Active_Port_Type; Success : out Boolean) is
+   begin
+      Success := False;
+   end Power_Up;
+
    procedure Power_Up (Old_Configs, New_Configs : Pipe_Configs) is
    begin
       pragma Debug (Debug.Put_Line (GNAT.Source_Info.Enclosing_Entity));
diff --git a/common/tigerlake/hw-gfx-gma-power_and_clocks.ads b/common/tigerlake/hw-gfx-gma-power_and_clocks.ads
index 72854e8..040d5c1 100644
--- a/common/tigerlake/hw-gfx-gma-power_and_clocks.ads
+++ b/common/tigerlake/hw-gfx-gma-power_and_clocks.ads
@@ -37,6 +37,7 @@
    procedure Enable_CDClk is null;
 
    procedure Power_Set_To (Configs : Pipe_Configs);
+   procedure Power_Up (Port : Active_Port_Type; Success : out Boolean);
    procedure Power_Up (Old_Configs, New_Configs : Pipe_Configs);
    procedure Power_Down (Old_Configs, Tmp_Configs, New_Configs : Pipe_Configs);
    pragma Warnings (On, "subprogram ""*"" has no effect");