gma tgl: Fill out power and clocks module

This is the modeset sequence for the display engine itself.  TGL has
similarities to both SKL and BXT, but also adds new programming, like
MBUS credits, Bandwidth Buddy, and of course new chicken bits.

Tested on google/delbin; can still boot successfully to the kernel and
the kernel can still properly perform its own modeset and not crash :)

Signed-off-by: Tim Wawrzynczak <twawrzynczak@chromium.org>
Signed-off-by: Jeremy Compostella <jeremy.compostella@intel.com>
Change-Id: I8f09696588aa73cebc7a44583ae5e029c705a535
Reviewed-on: https://review.sourcearcade.org/c/libgfxinit/+/464
Reviewed-by: Angel Pons <th3fanbus@gmail.com>
Tested-by: Nico Huber <nico.h@gmx.de>
diff --git a/common/tigerlake/hw-gfx-gma-power_and_clocks.ads b/common/tigerlake/hw-gfx-gma-power_and_clocks.ads
index 040d5c1..881d0f1 100644
--- a/common/tigerlake/hw-gfx-gma-power_and_clocks.ads
+++ b/common/tigerlake/hw-gfx-gma-power_and_clocks.ads
@@ -16,30 +16,31 @@
 
 private package HW.GFX.GMA.Power_And_Clocks is
 
-   pragma Warnings (Off, "subprogram ""*"" has no effect",
-                    Reason => "Not yet implemented.");
+   subtype Refclk_Range is Frequency_Type range 19_200_000 .. 38_400_000;
+   subtype Refclk_Range_KHz is Pos64
+      range (Refclk_Range'First / 1000) .. (Refclk_Range'Last / 1000);
+
    procedure Pre_All_Off;
    procedure Post_All_Off;
 
    procedure Initialize;
 
-   pragma Warnings (Off, """Configs"" is not modified, could be IN",
-                    Reason => "Not yet implemented.");
    procedure Limit_Dotclocks
      (Configs           : in out Pipe_Configs;
       CDClk_Switch      : out Boolean)
    with
       Post => Config_Helpers.Stable_FB (Configs'Old, Configs);
+
    procedure Update_CDClk (Configs : in out Pipe_Configs)
    with
       Post => Config_Helpers.Stable_FB (Configs'Old, Configs);
-   pragma Warnings (On, """Configs"" is not modified, could be IN");
-   procedure Enable_CDClk is null;
+   procedure Enable_CDClk;
 
    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");
+
+   procedure Get_Refclk (Refclk : out Refclk_Range);
 
 end HW.GFX.GMA.Power_And_Clocks;