blob: fe43d210abc17a522eab628a246b894b5254aa10 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
|
/** @file
Register names for PCH Thermal Device
Conventions:
- Prefixes:
Definitions beginning with "R_" are registers
Definitions beginning with "B_" are bits within registers
Definitions beginning with "V_" are meaningful values within the bits
Definitions beginning with "S_" are register sizes
Definitions beginning with "N_" are the bit position
- In general, PCH registers are denoted by "_PCH_" in register names
- Registers / bits that are different between PCH generations are denoted by
"_PCH_[generation_name]_" in register/bit names.
- Registers / bits that are specific to PCH-H denoted by "_H_" in register/bit names.
Registers / bits that are specific to PCH-LP denoted by "_LP_" in register/bit names.
e.g., "_PCH_H_", "_PCH_LP_"
Registers / bits names without _H_ or _LP_ apply for both H and LP.
- Registers / bits that are different between SKUs are denoted by "_[SKU_name]"
at the end of the register/bit names
- Registers / bits of new devices introduced in a PCH generation will be just named
as "_PCH_" without [generation_name] inserted.
Copyright (c) 2017, Intel Corporation. All rights reserved.<BR>
This program and the accompanying materials are licensed and made available under
the terms and conditions of the BSD License that accompanies this distribution.
The full text of the license may be found at
http://opensource.org/licenses/bsd-license.php.
THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
**/
#ifndef _PCH_REGS_THERMAL_H_
#define _PCH_REGS_THERMAL_H_
//
// Thermal Device Registers (D20:2)
//
#define PCI_DEVICE_NUMBER_PCH_THERMAL 20
#define PCI_FUNCTION_NUMBER_PCH_THERMAL 2
#define R_PCH_THERMAL_TBAR 0x10
#define V_PCH_THERMAL_TBAR_SIZE (4 * 1024)
#define N_PCH_THREMAL_TBAR_ALIGNMENT 12
#define B_PCH_THERMAL_TBAR_MASK 0xFFFFF000
#define R_PCH_THERMAL_TBARH 0x14
#define R_PCH_THERMAL_TBARB 0x40
#define V_PCH_THERMAL_TBARB_SIZE (4 * 1024)
#define N_PCH_THREMAL_TBARB_ALIGNMENT 12
#define B_PCH_THERMAL_SPTYPEN BIT0
#define R_PCH_THERMAL_TBARBH 0x44
#define B_PCH_THERMAL_TBARB_MASK 0xFFFFF000
//
// Thermal TBAR MMIO registers
//
#define R_PCH_TBAR_TSC 0x04
#define B_PCH_TBAR_TSC_PLD BIT7
#define B_PCH_TBAR_TSC_CPDE BIT0
#define R_PCH_TBAR_TSS 0x06
#define R_PCH_TBAR_TSEL 0x08
#define B_PCH_TBAR_TSEL_PLD BIT7
#define B_PCH_TBAR_TSEL_ETS BIT0
#define R_PCH_TBAR_TSREL 0x0A
#define R_PCH_TBAR_TSMIC 0x0C
#define B_PCH_TBAR_TSMIC_PLD BIT7
#define B_PCH_TBAR_TSMIC_SMIE BIT0
#define R_PCH_TBAR_CTT 0x10
#define R_PCH_TBAR_TAHV 0x14
#define R_PCH_TBAR_TALV 0x18
#define R_PCH_TBAR_TSPM 0x1C
#define B_PCH_TBAR_TSPM_LTT (BIT8 | BIT7 | BIT6 | BIT5 | BIT4 | BIT3 | BIT2 | BIT1 | BIT0)
#define V_PCH_TBAR_TSPM_LTT 0x0C8
#define B_PCH_TBAR_TSPM_MAXTSST (BIT11 | BIT10 | BIT9)
#define V_PCH_TBAR_TSPM_MAXTSST (0x4 << 9)
#define B_PCH_TBAR_TSPM_MINTSST BIT12
#define B_PCH_TBAR_TSPM_DTSSIC0 BIT13
#define B_PCH_TBAR_TSPM_DTSSS0EN BIT14
#define B_PCH_TBAR_TSPM_TSPMLOCK BIT15
#define R_PCH_TBAR_TL 0x40
#define B_PCH_TBAR_TL_LOCK BIT31
#define B_PCH_TBAR_TL_TTEN BIT29
#define R_PCH_TBAR_TL2 0x50
#define R_PCH_TBAR_TL2_LOCK BIT15
#define R_PCH_TBAR_TL2_PMCTEN BIT14
#define R_PCH_TBAR_PHL 0x60
#define B_PCH_TBAR_PHLE BIT15
#define R_PCH_TBAR_PHLC 0x62
#define B_PCH_TBAR_PHLC_LOCK BIT0
#define R_PCH_TBAR_TAS 0x80
#define R_PCH_TBAR_TSPIEN 0x82
#define R_PCH_TBAR_TSGPEN 0x84
#define B_PCH_TBAR_TL2_PMCTEN BIT14
#define R_PCH_TBAR_A4 0xA4
#define R_PCH_TBAR_C0 0xC0
#define R_PCH_TBAR_C4 0xC4
#define R_PCH_TBAR_C8 0xC8
#define R_PCH_TBAR_CC 0xCC
#define R_PCH_TBAR_D0 0xD0
#define R_PCH_TBAR_E0 0xE0
#define R_PCH_TBAR_E4 0xE4
#define R_PCH_TBAR_E8 0xE8
#define R_PCH_TBAR_TCFD 0xF0 ///< Thermal controller function disable
#define B_PCH_TBAR_TCFD_TCD BIT0 ///< Thermal controller disable
#endif
|