blob: 6bfff4693d92d241f76362c3935222accd6c729b [file] [log] [blame]
Nico Huber83693c82016-10-08 22:17:55 +02001--
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
Nico Huber125a29e2016-10-18 00:23:54 +02006-- the Free Software Foundation; either version 2 of the License, or
7-- (at your option) any later version.
Nico Huber83693c82016-10-08 22:17:55 +02008--
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
15with HW.GFX.GMA.Config;
16
17private package HW.GFX.GMA.PCH is
18
19 type FDI_Port_Type is (FDI_A, FDI_B, FDI_C);
20
21 ----------------------------------------------------------------------------
22
23 -- common to all PCH outputs
24
25 PCH_TRANSCODER_SELECT_SHIFT : constant :=
26 (case Config.CPU is
27 when Ironlake => 30,
28 when Sandybridge | Ivybridge => 29,
29 when Haswell | Broadwell | Skylake => 0);
30
31 PCH_TRANSCODER_SELECT_MASK : constant :=
32 (case Config.CPU is
33 when Ironlake => 1 * 2 ** 30,
34 when Sandybridge | Ivybridge => 3 * 2 ** 29,
35 when Haswell | Broadwell | Skylake => 0);
36
37 type PCH_TRANSCODER_SELECT_Array is array (FDI_Port_Type) of Word32;
38 PCH_TRANSCODER_SELECT : constant PCH_TRANSCODER_SELECT_Array :=
39 (FDI_A => 0 * 2 ** PCH_TRANSCODER_SELECT_SHIFT,
40 FDI_B => 1 * 2 ** PCH_TRANSCODER_SELECT_SHIFT,
41 FDI_C => 2 * 2 ** PCH_TRANSCODER_SELECT_SHIFT);
42
43end HW.GFX.GMA.PCH;