blob: 733d0209790213cdcd5aa73cdaa93979ffd6447b [file] [log] [blame]
Tim Crawfordfdc8fd32021-01-26 11:50:36 -07001chip soc/intel/cannonlake
2 register "common_soc_config" = "{
Tim Crawfordfdc8fd32021-01-26 11:50:36 -07003 // Touchpad I2C bus
4 .i2c[0] = {
5 .speed = I2C_SPEED_FAST,
6 .rise_time_ns = 80,
7 .fall_time_ns = 110,
8 },
9 }"
10
11# CPU (soc/intel/cannonlake/cpu.c)
12 # Power limit
13 register "power_limits_config" = "{
14 .tdp_pl1_override = 45,
15 .tdp_pl2_override = 78,
16 }"
17
18 # Enable Enhanced Intel SpeedStep
19 register "eist_enable" = "1"
20
21# FSP Memory (soc/intel/cannonlake/romstage/fsp_params.c)
22 register "enable_c6dram" = "1"
23
24# FSP Silicon (soc/intel/cannonlake/fsp_params.c)
25 # Serial I/O
26 register "SerialIoDevMode" = "{
27 [PchSerialIoIndexI2C0] = PchSerialIoPci, // Touchpad I2C bus
28 [PchSerialIoIndexI2C1] = PchSerialIoPci,
29 [PchSerialIoIndexUART2] = PchSerialIoPci, // Debug console
30 }"
31
32 # Misc
33 register "AcousticNoiseMitigation" = "1"
34
35 # Power
36 register "PchPmSlpS3MinAssert" = "3" # 50ms
37 register "PchPmSlpS4MinAssert" = "1" # 1s
38 register "PchPmSlpSusMinAssert" = "4" # 4s
39 register "PchPmSlpAMinAssert" = "4" # 2s
40
41 # Thermal
42 register "tcc_offset" = "13"
43
44 # Serial IRQ Continuous
45 register "serirq_mode" = "SERIRQ_CONTINUOUS"
46
47# PM Util (soc/intel/cannonlake/pmutil.c)
48 # GPE configuration
49 # Note that GPE events called out in ASL code rely on this
50 # route. i.e. If this route changes then the affected GPE
51 # offset bits also need to be changed.
52 register "gpe0_dw0" = "PMC_GPP_B"
53 register "gpe0_dw1" = "PMC_GPP_G"
54 register "gpe0_dw2" = "PMC_GPP_E"
55
56# Actual device tree
Arthur Heymans69cd7292022-11-07 13:52:11 +010057 device cpu_cluster 0 on end
Tim Crawfordfdc8fd32021-01-26 11:50:36 -070058
59 device domain 0 on
60 subsystemid 0x1558 0x95e6 inherit
61 device pci 00.0 on end # Host Bridge
62 device pci 01.0 on # GPU Port
63 # PCI Express Graphics #0 x16, Clock 8 (NVIDIA GPU)
64 register "PcieClkSrcUsage[8]" = "0x40"
65 register "PcieClkSrcClkReq[8]" = "8"
66 end
67 device pci 02.0 on # Integrated Graphics Device
68 register "gfx" = "GMA_DEFAULT_PANEL(0)"
69 end
70 device pci 04.0 on # SA Thermal device
71 register "Device4Enable" = "1"
72 end
73 device pci 12.0 on end # Thermal Subsystem
74 device pci 12.5 off end # UFS SCS
75 device pci 12.6 off end # GSPI #2
76 device pci 13.0 off end # Integrated Sensor Hub
77 device pci 14.0 on # USB xHCI
78 # USB2
79 register "usb2_ports[0]" = "USB2_PORT_TYPE_C(OC_SKIP)" # Type-C
80 register "usb2_ports[1]" = "USB2_PORT_TYPE_C(OC_SKIP)" # Type-C/DP
81 register "usb2_ports[2]" = "USB2_PORT_MID(OC_SKIP)" # USB 3 Right
82 register "usb2_ports[3]" = "USB2_PORT_MID(OC_SKIP)" # USB 3 Left
83 register "usb2_ports[4]" = "USB2_PORT_MID(OC_SKIP)" # Per-key RGB
84 register "usb2_ports[6]" = "USB2_PORT_MID(OC_SKIP)" # 3G/LTE
85 register "usb2_ports[7]" = "USB2_PORT_MID(OC_SKIP)" # Camera
86 register "usb2_ports[9]" = "USB2_PORT_MID(OC_SKIP)" # Fingerprint
87 register "usb2_ports[13]" = "USB2_PORT_MID(OC_SKIP)" # WLAN/Bluetooth
88 # USB3
89 register "usb3_ports[0]" = "USB3_PORT_DEFAULT(OC_SKIP)" # Type-C
90 register "usb3_ports[1]" = "USB3_PORT_DEFAULT(OC_SKIP)" # Type-C/DP
91 register "usb3_ports[2]" = "USB3_PORT_DEFAULT(OC_SKIP)" # USB 3 Right
92 register "usb3_ports[3]" = "USB3_PORT_DEFAULT(OC_SKIP)" # USB 3 Left
93 register "usb3_ports[6]" = "USB3_PORT_DEFAULT(OC_SKIP)" # 3G/LTE
94 end
95 device pci 14.1 off end # USB xDCI (OTG)
96 device pci 14.2 on end # Shared SRAM
97 device pci 14.3 on # CNVi wifi
98 #chip drivers/intel/wifi
99 # register "wake" = "PME_B0_EN_BIT"
100 #end
101 end
102 device pci 14.5 off end # SDCard
103 device pci 15.0 on # I2C #0
104 # I2C HID not supported on PNP0f13
105 end
106 device pci 15.1 on end # I2C #1
107 device pci 15.2 off end # I2C #2
108 device pci 15.3 off end # I2C #3
Tim Crawfordc3ced8f2021-10-27 15:14:54 -0600109 device pci 16.0 on end # Management Engine Interface 1
Tim Crawfordfdc8fd32021-01-26 11:50:36 -0700110 device pci 16.1 off end # Management Engine Interface 2
111 device pci 16.2 off end # Management Engine IDE-R
112 device pci 16.3 off end # Management Engine KT Redirection
113 device pci 16.4 off end # Management Engine Interface 3
114 device pci 16.5 off end # Management Engine Interface 4
115 device pci 17.0 on # SATA
116 register "SataPortsEnable[1]" = "1" # SSD (SATA1A)
117 register "SataPortsEnable[4]" = "1" # HDD (SATA4)
118 end
119 device pci 19.0 off end # I2C #4
120 device pci 19.1 off end # I2C #5
121 device pci 19.2 on end # UART #2
122 device pci 1a.0 off end # eMMC
123 device pci 1b.0 off end # PCI Express Port 17
124 device pci 1b.1 off end # PCI Express Port 18
125 device pci 1b.2 off end # PCI Express Port 19
126 device pci 1b.3 off end # PCI Express Port 20
127 device pci 1b.4 on # PCI Express Port 21
128 # PCI Express root port #21 x4, Clock 11 (SSD2)
129 register "PcieRpEnable[20]" = "1"
130 register "PcieRpLtrEnable[20]" = "1"
131 register "PcieClkSrcUsage[11]" = "20"
132 register "PcieClkSrcClkReq[11]" = "11"
133 end
134 device pci 1b.5 off end # PCI Express Port 22
135 device pci 1b.6 off end # PCI Express Port 23
136 device pci 1b.7 off end # PCI Express Port 24
137 device pci 1c.0 off end # PCI Express Port 1
138 device pci 1c.1 off end # PCI Express Port 2
139 device pci 1c.2 off end # PCI Express Port 3
140 device pci 1c.3 off end # PCI Express Port 4
141 device pci 1c.4 off end # PCI Express Port 5
142 device pci 1c.5 off end # PCI Express Port 6
143 device pci 1c.6 off end # PCI Express Port 7
144 device pci 1c.7 off end # PCI Express Port 8
145 device pci 1d.0 on # PCI Express Port 9
146 # PCI Express root port #9 x4, Clock 12 (SSD)
147 register "PcieRpEnable[8]" = "1"
148 register "PcieRpLtrEnable[8]" = "1"
149 register "PcieClkSrcUsage[12]" = "8"
150 register "PcieClkSrcClkReq[12]" = "12"
151 end
152 device pci 1d.1 off end # PCI Express Port 10
153 device pci 1d.2 off end # PCI Express Port 11
154 device pci 1d.3 off end # PCI Express Port 12
155 device pci 1d.4 off end # PCI Express Port 13
156 device pci 1d.5 on # PCI Express Port 14
157 # PCI Express root port #14 x1, Clock 13 (WLAN)
158 register "PcieRpEnable[13]" = "1"
159 register "PcieRpLtrEnable[13]" = "1"
160 register "PcieClkSrcUsage[13]" = "13"
161 register "PcieClkSrcClkReq[13]" = "13"
162 end
163 device pci 1d.6 on # PCI Express Port 15
164 # PCI Express root port #15 x1, Clock 14 (GLAN)
165 register "PcieRpEnable[14]" = "1"
166 register "PcieRpLtrEnable[14]" = "1"
167 register "PcieClkSrcUsage[14]" = "14"
168 register "PcieClkSrcClkReq[14]" = "14"
169 end
170 device pci 1d.7 on # PCI Express Port 16
171 # PCI Express root port #16 x1, Clock 15 (Card Reader)
172 register "PcieRpEnable[15]" = "1"
173 register "PcieRpLtrEnable[15]" = "1"
174 register "PcieClkSrcUsage[15]" = "15"
175 register "PcieClkSrcClkReq[15]" = "15"
176 end
177 device pci 1e.0 off end # UART #0
178 device pci 1e.1 off end # UART #1
179 device pci 1e.2 off end # GSPI #0
180 device pci 1e.3 off end # GSPI #1
181 device pci 1f.0 on # LPC Interface
Michael Niewöhnerc5f1dc92021-04-10 22:51:15 +0200182 register "gen1_dec" = "0x00040069"
183 register "gen2_dec" = "0x00fc0e01"
184 register "gen3_dec" = "0x00fc0f01"
Tim Crawfordfdc8fd32021-01-26 11:50:36 -0700185 chip drivers/pc80/tpm
186 device pnp 0c31.0 on end
187 end
188 end
189 device pci 1f.1 off end # P2SB
Tim Wawrzynczakb7b51152021-07-01 08:38:30 -0600190 device pci 1f.2 hidden end # Power Management Controller
Tim Crawfordfdc8fd32021-01-26 11:50:36 -0700191 device pci 1f.3 on # Intel HDA
192 subsystemid 0x1558 0x96e1
193 register "PchHdaAudioLinkHda" = "1"
194 end
Tim Crawforda346fd92021-02-08 23:01:53 -0700195 device pci 1f.4 on # SMBus
196 chip drivers/i2c/tas5825m
197 register "id" = "0"
198 device i2c 4e on end # (8bit address: 0x9c)
199 end # tas5825m
200 end
Tim Crawfordfdc8fd32021-01-26 11:50:36 -0700201 device pci 1f.5 on end # PCH SPI
202 device pci 1f.6 off end # GbE
203 end
204end