blob: 3bf0d7a74bc5434f412f12ea23619e415386f76d [file] [log] [blame]
Sean Rhodese96ade62021-10-18 21:07:20 +01001chip soc/intel/cannonlake
2 # CPU
3 # Enable Enhanced Intel SpeedStep
4 register "eist_enable" = "1"
5
6 # Graphics
7 # IGD Displays
8 register "panel_cfg" = "{
9 .up_delay_ms = 0, // T3
10 .backlight_on_delay_ms = 0, // T7
11 .backlight_off_delay_ms = 0, // T9
12 .down_delay_ms = 0, // T10
13 .cycle_delay_ms = 500, // T12
14 .backlight_pwm_hz = 200, // PWM
15 }"
16
17 # FSP Memory
18 register "enable_c6dram" = "1"
19 register "SaGv" = "SaGv_Enabled"
20
21 # FSP Silicon
22 # Serial I/O
23 register "SerialIoDevMode" = "{
24 [PchSerialIoIndexI2C0] = PchSerialIoPci,
25 [PchSerialIoIndexI2C4] = PchSerialIoSkipInit,
26 [PchSerialIoIndexUART2] = PchSerialIoSkipInit,
27 }"
28
29 # Power
30 register "PchPmSlpS3MinAssert" = "2" # 50ms
31 register "PchPmSlpS4MinAssert" = "3" # 1s
32 register "PchPmSlpSusMinAssert" = "3" # 500ms
33 register "PchPmSlpAMinAssert" = "3" # 2s
34
35 # Thermal
36 register "tcc_offset" = "10"
37
38 # PM Util
39 # GPE configuration
40 # Note that GPE events called out in ASL code rely on this
41 # route. i.e. If this route changes then the affected GPE
42 # offset bits also need to be changed.
43 # sudo devmem2 0xfe001920 (pmc_bar + GPIO_GPE_CFG)
44 register "gpe0_dw0" = "PMC_GPP_B"
45 register "gpe0_dw1" = "PMC_GPP_C"
46 register "gpe0_dw2" = "PMC_GPP_E"
47
48 # PCIe Clock
49 register "PcieClkSrcClkReq[0]" = "PCIE_CLK_NOTUSED"
50 register "PcieClkSrcClkReq[2]" = "PCIE_CLK_NOTUSED"
51 register "PcieClkSrcClkReq[3]" = "PCIE_CLK_NOTUSED"
52 register "PcieClkSrcClkReq[4]" = "PCIE_CLK_NOTUSED"
53 register "PcieClkSrcClkReq[5]" = "PCIE_CLK_NOTUSED"
54
55# Actual device tree.
56 device cpu_cluster 0 on
57 device lapic 0 on end
58 end
59
60 device domain 0 on
61 device pci 00.0 on end # Host Bridge
62 device pci 02.0 on end # Integrated Graphics Device
63 device pci 04.0 on # SA Thermal Device
64 register "Device4Enable" = "1"
65 end
66 device pci 12.0 off end # Thermal Subsystem
67 device pci 12.5 off end # UFS SCS
68 device pci 12.6 off end # GSPI #2
69 device pci 14.0 on # USB xHCI
Sean Rhodese96ade62021-10-18 21:07:20 +010070 # Motherboard USB Type C
71 register "usb2_ports[0]" = "USB2_PORT_TYPE_C(OC_SKIP)"
Sean Rhodes840915b2022-05-26 20:46:35 +010072 register "usb3_ports[0]" = "USB3_PORT_DEFAULT(OC_SKIP)"
73
Sean Rhodese96ade62021-10-18 21:07:20 +010074 # Motherboard USB 3.0
75 register "usb2_ports[1]" = "USB2_PORT_MID(OC_SKIP)"
Sean Rhodes840915b2022-05-26 20:46:35 +010076 register "usb3_ports[1]" = "USB3_PORT_DEFAULT(OC_SKIP)"
77
Sean Rhodese96ade62021-10-18 21:07:20 +010078 # Daughterboard SD Card
79 register "usb2_ports[3]" = "USB2_PORT_MID(OC_SKIP)"
Sean Rhodes840915b2022-05-26 20:46:35 +010080
Sean Rhodese96ade62021-10-18 21:07:20 +010081 # Daughterboard USB 3.0
82 register "usb2_ports[5]" = "USB2_PORT_MID(OC_SKIP)"
Sean Rhodes840915b2022-05-26 20:46:35 +010083 register "usb3_ports[2]" = "USB3_PORT_DEFAULT(OC_SKIP)"
84
Sean Rhodese96ade62021-10-18 21:07:20 +010085 # Internal Webcam
86 register "usb2_ports[6]" = "USB2_PORT_MID(OC_SKIP)"
Sean Rhodes840915b2022-05-26 20:46:35 +010087
Sean Rhodese96ade62021-10-18 21:07:20 +010088 # Internal Bluetooth
89 register "usb2_ports[9]" = "USB2_PORT_MID(OC_SKIP)"
Sean Rhodese96ade62021-10-18 21:07:20 +010090 end
91 device pci 14.1 off end # USB xDCI (OTG)
92 device pci 14.3 on # CNVi
93 chip drivers/wifi/generic
94 register "wake" = "GPE0_PME_B0"
95 device generic 0 on end
96 end
97 end
98 device pci 14.5 off end # SDCard
99 device pci 15.0 on # I2C0
100 chip drivers/i2c/hid
101 register "generic.hid" = ""STAR0001""
102 register "generic.desc" = ""Touchpad""
103 register "generic.irq" = "ACPI_IRQ_LEVEL_LOW(GPP_B3_IRQ)"
104 register "generic.probed" = "1"
105 register "hid_desc_reg_offset" = "0x20"
106 device i2c 2c on end
107 end
108 end
109 device pci 15.1 off end # I2C1
110 device pci 15.2 off end # I2C2
111 device pci 15.3 off end # I2C3
112 device pci 16.0 on end # Management Engine Interface 1
113 device pci 16.1 off end # Management Engine Interface 2
114 device pci 16.2 off end # Management Engine IDE-R
115 device pci 16.3 off end # Management Engine KT Redirection
116 device pci 16.4 off end # Management Engine Interface 3
117 device pci 16.5 off end # Management Engine Interface 4
118 device pci 17.0 on # SATA
119 register "SataSalpSupport" = "1"
120 # Port 1
121 register "SataPortsEnable[1]" = "1"
122 register "SataPortsDevSlp[1]" = "1"
123 end
124 device pci 19.0 on end # I2C4
125 device pci 19.1 off end # I2C5
126 device pci 19.2 on end # UART #2
127 device pci 1a.0 off end # eMMC
128 device pci 1c.0 off end # PCI Express Port 1
129 device pci 1c.1 off end # PCI Express Port 2
130 device pci 1c.2 off end # PCI Express Port 3
131 device pci 1c.3 off end # PCI Express Port 4
132 device pci 1c.4 off end # PCI Express Port 5
133 device pci 1c.5 off end # PCI Express Port 6
134 device pci 1c.6 off end # PCI Express Port 7
135 device pci 1c.7 off end # PCI Express Port 8
136 device pci 1d.0 on # PCI Express Port 9 (SSD x4)
137 register "PcieRpSlotImplemented[8]" = "1"
138 register "PcieRpEnable[8]" = "1"
139 register "PcieRpLtrEnable[8]" = "1"
140 register "PcieClkSrcUsage[1]" = "0x08"
141 register "PcieClkSrcClkReq[1]" = "1"
142 smbios_slot_desc "SlotTypeM2Socket3" "SlotLengthOther" "M.2/M 2280" "SlotDataBusWidth4X"
143 end
144 device pci 1d.1 off end # PCI Express Port 10
145 device pci 1d.2 off end # PCI Express Port 11
146 device pci 1d.3 off end # PCI Express Port 12
147 device pci 1e.0 off end # UART #0
148 device pci 1e.1 off end # UART #1
149 device pci 1e.2 off end # GSPI #0
150 device pci 1e.3 off end # GSPI #1
151 device pci 1f.0 on # LPC Interface
152 register "gen1_dec" = "0x000c0681"
153 register "gen2_dec" = "0x000c1641"
154 register "gen3_dec" = "0x00fc0201"
155 register "gen4_dec" = "0x000c0081"
156
157 chip ec/starlabs/merlin
158 # Port pair 4Eh/4Fh
159 device pnp 4e.00 on end # IO Interface
160 device pnp 4e.01 off end # Com 1
161 device pnp 4e.02 off end # Com 2
162 device pnp 4e.04 off end # System Wake-Up
163 device pnp 4e.05 off end # PS/2 Mouse
164 device pnp 4e.06 on # PS/2 Keyboard
165 io 0x60 = 0x0060
166 io 0x62 = 0x0064
167 irq 0x70 = 1
168 end
169 device pnp 4e.0a off end # Consumer IR
170 device pnp 4e.0f off end # Shared Memory/Flash Interface
171 device pnp 4e.10 off end # RTC-like Timer
172 device pnp 4e.11 off end # Power Management Channel 1
173 device pnp 4e.12 off end # Power Management Channel 2
174 device pnp 4e.13 off end # Serial Peripheral Interface
175 device pnp 4e.14 off end # Platform EC Interface
176 device pnp 4e.17 off end # Power Management Channel 3
177 device pnp 4e.18 off end # Power Management Channel 4
178 device pnp 4e.19 off end # Power Management Channel 5
179 end
180 end
181 device pci 1f.1 off end # P2SB
182 device pci 1f.2 hidden end # Power Management Controller
183 device pci 1f.3 on # Intel HDA
Sean Rhodese96ade62021-10-18 21:07:20 +0100184 register "PchHdaAudioLinkHda" = "1"
185 end
186 device pci 1f.4 on end # SMBus
187 device pci 1f.5 on end # PCH SPI
188 device pci 1f.6 off end # GbE
189 end
190 chip drivers/crb
191 device mmio 0xfed40000 on end
192 end
193end