forked from Nitrokey/coreboot-builder
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathdevicetree-v2.cb
210 lines (200 loc) · 7.14 KB
/
devicetree-v2.cb
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
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
chip soc/intel/cannonlake
# CPU (soc/intel/cannonlake/cpu.c)
# Power limit
register "power_limits_config" = "{
.tdp_pl1_override = 15,
.tdp_pl2_override = 25,
}"
# FSP Memory (soc/intel/cannonlake/romstage/fsp_params.c)
register "SaGv" = "SaGv_FixedHigh"
# FSP Silicon (soc/intel/cannonlake/fsp_params.c)
# Thermal
register "tcc_offset" = "12"
# Serial IRQ Mode
register "serirq_mode" = "SERIRQ_CONTINUOUS"
# Actual device tree
device domain 0 on
device pci 14.0 on # USB xHCI
chip drivers/usb/acpi
device usb 0.0 on
chip drivers/usb/acpi
register "desc" = ""USB2 Type-A Rear Upper""
register "type" = "UPC_TYPE_A"
register "group" = "ACPI_PLD_GROUP(1, 0)"
device usb 2.0 on end
end
chip drivers/usb/acpi
register "desc" = ""USB2 Type-A Rear Lower""
register "type" = "UPC_TYPE_A"
register "group" = "ACPI_PLD_GROUP(1, 1)"
device usb 2.1 on end
end
chip drivers/usb/acpi
register "desc" = ""USB2 Type-A Front Left Upper""
register "type" = "UPC_TYPE_A"
register "group" = "ACPI_PLD_GROUP(0, 0)"
device usb 2.2 on end
end
chip drivers/usb/acpi
register "desc" = ""USB2 Audio""
register "type" = "UPC_TYPE_INTERNAL"
device usb 2.3 on end
end
chip drivers/usb/acpi
device usb 2.4 on end
end
chip drivers/usb/acpi
register "desc" = ""USB2 Type-C Port Rear""
register "type" = "UPC_TYPE_C_USB2_SS_SWITCH"
register "group" = "ACPI_PLD_GROUP(1, 2)"
device usb 2.5 on end
end
chip drivers/usb/acpi
register "desc" = ""USB2 Bluetooth""
register "type" = "UPC_TYPE_INTERNAL"
device usb 2.6 on end
end
chip drivers/usb/acpi
register "desc" = ""USB2 Type-A Front Right Upper""
register "type" = "UPC_TYPE_A"
register "group" = "ACPI_PLD_GROUP(0, 3)"
device usb 2.7 on end
end
chip drivers/usb/acpi
register "desc" = ""USB2 Type-A Front Right Lower""
register "type" = "UPC_TYPE_A"
register "group" = "ACPI_PLD_GROUP(0, 2)"
device usb 2.8 on end
end
chip drivers/usb/acpi
register "desc" = ""USB2 Type-A Front Left Lower""
register "type" = "UPC_TYPE_A"
register "group" = "ACPI_PLD_GROUP(0, 1)"
device usb 2.9 on end
end
chip drivers/usb/acpi
register "desc" = ""USB3 Type-A Front Left Upper""
register "type" = "UPC_TYPE_USB3_A"
register "group" = "ACPI_PLD_GROUP(0, 0)"
device usb 3.0 on end
end
chip drivers/usb/acpi
register "desc" = ""USB3 Type-A Front Left Lower""
register "type" = "UPC_TYPE_USB3_A"
register "group" = "ACPI_PLD_GROUP(0, 1)"
device usb 3.1 on end
end
chip drivers/usb/acpi
register "desc" = ""USB3 Type-C Rear""
register "type" = "UPC_TYPE_C_USB2_SS_SWITCH"
register "group" = "ACPI_PLD_GROUP(1, 2)"
device usb 3.2 on end
end
chip drivers/usb/acpi
device usb 3.3 on end
end
chip drivers/usb/acpi
register "desc" = ""USB3 Type-A Rear Lower""
register "type" = "UPC_TYPE_USB3_A"
register "group" = "ACPI_PLD_GROUP(1, 1)"
device usb 3.4 on end
end
chip drivers/usb/acpi
register "desc" = ""USB3 Type-A Rear Upper""
register "type" = "UPC_TYPE_USB3_A"
register "group" = "ACPI_PLD_GROUP(1, 0)"
device usb 3.5 on end
end
end
end
register "usb2_ports" = "{
#define USB2_PORT_LIBREM_MINI(ocnum) { \
.enable = 1, \
.ocpin = ocnum, \
.tx_bias = USB2_BIAS_45MV, \
.tx_emp_enable = USB2_DE_EMP_ON_PRE_EMP_ON, \
.pre_emp_bias = USB2_BIAS_28P15MV, \
.pre_emp_bit = USB2_FULL_BIT_PRE_EMP, \
}
#define USB2_PORT_LIBREM_MINI2(ocnum) { \
.enable = 1, \
.ocpin = ocnum, \
.tx_bias = USB2_BIAS_56P3MV, \
.tx_emp_enable = USB2_DE_EMP_ON_PRE_EMP_ON, \
.pre_emp_bias = USB2_BIAS_28P15MV, \
.pre_emp_bit = USB2_FULL_BIT_PRE_EMP, \
}
[0] = USB2_PORT_LIBREM_MINI(OC2), /* Type-A rear upper */
[1] = USB2_PORT_LIBREM_MINI2(OC_SKIP), /* Type-A rear lower */
[2] = USB2_PORT_LIBREM_MINI(OC2), /* Type-A front left upper */
[3] = USB2_PORT_MID(OC2), /* Onboard audio */
[4] = USB2_PORT_MID(OC3), /* Unused? */
[5] = USB2_PORT_TYPE_C(OC3), /* Type-C rear */
[6] = USB2_PORT_MID(OC3), /* M.2-2230/Bluetooth */
[7] = USB2_PORT_MID(OC3), /* Type-A front right upper */
[8] = USB2_PORT_MID(OC_SKIP), /* Type-A front right lower */
[9] = USB2_PORT_LIBREM_MINI(OC_SKIP), /* Type-A front left lower */
}"
register "usb3_ports[0]" = "USB3_PORT_DEFAULT(OC2)" # Type-A front left upper
register "usb3_ports[1]" = "USB3_PORT_DEFAULT(OC_SKIP)" # Type-A front left lower
register "usb3_ports[2]" = "USB3_PORT_DEFAULT(OC2)" # Type-C rear
register "usb3_ports[3]" = "USB3_PORT_DEFAULT(OC2)" # Unused?
register "usb3_ports[4]" = "USB3_PORT_DEFAULT(OC_SKIP)" # Type-A rear lower
register "usb3_ports[5]" = "USB3_PORT_DEFAULT(OC_SKIP)" # Type-A rear upper
end
device pci 17.0 on # SATA
register "SataPortsEnable[0]" = "1" # 2.5"
register "SataPortsEnable[2]" = "1" # m.2
register "satapwroptimize" = "1"
end
device pci 1c.7 on # PCI Express Port 8 -- x1 M.2/E 2230 (WLAN)
register "PcieRpSlotImplemented[7]" = "1"
register "PcieRpEnable[7]" = "1"
register "PcieRpLtrEnable[7]" = "1"
# ClkSrcUsage must be set to free-run since SRCCLKREQ2 is NC
register "PcieClkSrcUsage[2]" = "0x80"
smbios_slot_desc "SlotTypeM2Socket1_SD" "SlotLengthOther" "M.2/E 2230" "SlotDataBusWidth1X"
end
device pci 1d.1 on # PCI Express Port 10
device pci 00.0 on end # x1 (LAN)
register "PcieRpEnable[9]" = "1"
register "PcieClkSrcUsage[3]" = "9"
register "PcieClkSrcClkReq[3]" = "3"
end
device pci 1d.4 on # PCI Express Port 13 -- x4 M.2/M 2280 (NVMe)
register "PcieRpSlotImplemented[12]" = "1"
register "PcieRpEnable[12]" = "1"
register "PcieRpLtrEnable[12]" = "1"
register "PcieClkSrcUsage[1]" = "12"
register "PcieClkSrcClkReq[1]" = "1"
smbios_slot_desc "SlotTypeM2Socket3" "SlotLengthOther" "M.2/M 2280" "SlotDataBusWidth4X"
end
device pci 1f.0 on # LPC Bridge
register "gen1_dec" = "0x00040069"
register "gen2_dec" = "0x00fc0e01"
register "gen3_dec" = "0x00fc0f01"
chip superio/ite/it8528e
device pnp 2e.1 on # UART1
io 0x60 = 0x3F8
irq 0x70 = 0x04
end
device pnp 2e.2 on end # UART2
device pnp 2e.4 on end # System Wake-Up Control (SWUC)
device pnp 2e.5 on end # KBC/Mouse
device pnp 2e.6 on end # KBC/Keyboard
device pnp 2e.a on end # Consumer IR
device pnp 2e.f on end # Shared Memory/Flash Interface (SMFI)
device pnp 2e.10 on # RTC-like Timer
io 0x62 = 0x360 # BRAM1 I/O base address
end
device pnp 2e.11 on end # Power Management I/F Channel 1 (PMC1)
device pnp 2e.12 on end # Power Management I/F Channel 2 (PMC2)
device pnp 2e.13 on end # Serial Peripheral Interface (SSPI)
device pnp 2e.14 on end # Platform Environment Control Interface (PECI)
device pnp 2e.17 on end # Power Management I/F Channel 3 (PMC3)
device pnp 2e.18 on end # Power Management I/F Channel 4 (PMC4)
device pnp 2e.19 on end # Power Management I/F Channel 5 (PMC5)
end
end
end
end