blob: b1df8256826019c60aaec04c87e3fab11a3c0fd4 [file] [log] [blame]
raymondchungd1f30222020-02-11 15:07:39 +08001chip soc/intel/cannonlake
Sumeet R Pawnikar309ccf72020-05-09 16:37:30 +05302 register "power_limits_config" = "{
3 .tdp_pl1_override = 15,
4 .tdp_pl2_override = 51,
5 }"
raymondchungd1f30222020-02-11 15:07:39 +08006
7 register "SerialIoDevMode" = "{
8 [PchSerialIoIndexI2C0] = PchSerialIoPci,
9 [PchSerialIoIndexI2C1] = PchSerialIoPci,
Matt DeVillier830b0ac2023-10-22 17:09:07 -050010 [PchSerialIoIndexI2C2] = PchSerialIoDisabled,
11 [PchSerialIoIndexI2C3] = PchSerialIoDisabled,
raymondchungd1f30222020-02-11 15:07:39 +080012 [PchSerialIoIndexI2C4] = PchSerialIoPci,
Matt DeVillier830b0ac2023-10-22 17:09:07 -050013 [PchSerialIoIndexI2C5] = PchSerialIoDisabled,
raymondchungd1f30222020-02-11 15:07:39 +080014 [PchSerialIoIndexSPI0] = PchSerialIoPci,
Matt DeVillier830b0ac2023-10-22 17:09:07 -050015 [PchSerialIoIndexSPI1] = PchSerialIoDisabled,
raymondchungd1f30222020-02-11 15:07:39 +080016 [PchSerialIoIndexSPI2] = PchSerialIoDisabled,
17 [PchSerialIoIndexUART0] = PchSerialIoSkipInit,
18 [PchSerialIoIndexUART1] = PchSerialIoDisabled,
19 [PchSerialIoIndexUART2] = PchSerialIoDisabled,
20 }"
21
22 # No PCIe WiFi
23 register "PcieRpEnable[13]" = "0"
24
25 # Enable DMIC1
26 register "PchHdaAudioLinkDmic1" = "1"
27
Seunghwan Kim24a65f82020-04-23 14:04:38 +090028 register "usb2_ports[0]" = "USB2_PORT_SHORT(OC2)" # Type-C Port 0
Elyes HAOUASbfa81662020-03-25 08:05:28 +010029 register "usb2_ports[1]" = "USB2_PORT_LONG(OC2)" # Type-C Port 1
Elyes HAOUASbfa81662020-03-25 08:05:28 +010030 register "usb2_ports[6]" = "USB2_PORT_LONG(OC_SKIP)" # Camera
Elyes HAOUASbfa81662020-03-25 08:05:28 +010031 register "usb2_ports[9]" = "USB2_PORT_MID(OC_SKIP)" # CnVi BT
raymondchungd1f30222020-02-11 15:07:39 +080032
Elyes HAOUASbfa81662020-03-25 08:05:28 +010033 register "usb3_ports[0]" = "USB3_PORT_DEFAULT(OC2)" # Type-C Port 0
34 register "usb3_ports[1]" = "USB3_PORT_DEFAULT(OC2)" # Type-C Port 1
raymondchungd1f30222020-02-11 15:07:39 +080035
36 # Intel Common SoC Config
37 #+-------------------+---------------------------+
38 #| Field | Value |
39 #+-------------------+---------------------------+
40 #| I2C0 | Trackpad |
41 #| I2C1 | Touchscreen |
42 #| I2C2 | Digitizer |
43 #| I2C4 | Audio |
44 #+-------------------+---------------------------+
45 register "common_soc_config" = "{
46 .i2c[0] = {
47 .speed = I2C_SPEED_FAST,
48 .rise_time_ns = 135,
49 .fall_time_ns = 45,
50 },
51 .i2c[1] = {
52 .speed = I2C_SPEED_FAST,
53 .rise_time_ns = 60,
54 .fall_time_ns = 25,
55 },
56 .i2c[2] = {
57 .speed = I2C_SPEED_FAST,
58 .rise_time_ns = 95,
59 .fall_time_ns = 55,
60 },
61 .i2c[4] = {
62 .speed = I2C_SPEED_FAST,
63 .rise_time_ns = 104,
64 .fall_time_ns = 52,
65 },
66 .gspi[0] = {
Elyes HAOUASbfa81662020-03-25 08:05:28 +010067 .speed_mhz = 1,
68 .early_init = 1,
raymondchungd1f30222020-02-11 15:07:39 +080069 },
70 }"
71
72 # GPIO for SD card detect
73 register "sdcard_cd_gpio" = "vSD3_CD_B"
74
75 # Enable eMMC HS400
76 register "ScsEmmcHs400Enabled" = "1"
77
78 # EMMC Tx CMD Delay
79 # Refer to EDS-Vol2-14.3.7.
80 # [14:8] steps of delay for DDR mode, each 125ps, range: 0 - 39.
81 # [6:0] steps of delay for SDR mode, each 125ps, range: 0 - 39.
82 register "common_soc_config.emmc_dll.emmc_tx_cmd_cntl" = "0x505"
83
84 # EMMC TX DATA Delay 1
85 # Refer to EDS-Vol2-14.3.8.
86 # [14:8] steps of delay for HS400, each 125ps, range: 0 - 78.
87 # [6:0] steps of delay for SDR104/HS200, each 125ps, range: 0 - 79.
88 register "common_soc_config.emmc_dll.emmc_tx_data_cntl1" = "0x911"
89
90 # EMMC TX DATA Delay 2
91 # Refer to EDS-Vol2-14.3.9.
92 # [30:24] steps of delay for SDR50, each 125ps, range: 0 - 79.
93 # [22:16] steps of delay for DDR50, each 125ps, range: 0 - 78.
94 # [14:8] steps of delay for SDR25/HS50, each 125ps, range: 0 -79.
95 # [6:0] steps of delay for SDR12, each 125ps. Range: 0 - 79.
96 register "common_soc_config.emmc_dll.emmc_tx_data_cntl2" = "0x1C262828"
97
98 # EMMC RX CMD/DATA Delay 1
99 # Refer to EDS-Vol2-14.3.10.
100 # [30:24] steps of delay for SDR50, each 125ps, range: 0 - 119.
101 # [22:16] steps of delay for DDR50, each 125ps, range: 0 - 78.
102 # [14:8] steps of delay for SDR25/HS50, each 125ps, range: 0 - 119.
103 # [6:0] steps of delay for SDR12, each 125ps, range: 0 - 119.
104 register "common_soc_config.emmc_dll.emmc_rx_cmd_data_cntl1" = "0x1C16583b"
105
106 # EMMC RX CMD/DATA Delay 2
107 # Refer to EDS-Vol2-14.3.12.
108 # [17:16] stands for Rx Clock before Output Buffer,
109 # 00: Rx clock after output buffer,
110 # 01: Rx clock before output buffer,
111 # 10: Automatic selection based on working mode.
112 # 11: Reserved
113 # [14:8] steps of delay for Auto Tuning Mode, each 125ps, range: 0 - 39.
114 # [6:0] steps of delay for HS200, each 125ps, range: 0 - 79.
115 register "common_soc_config.emmc_dll.emmc_rx_cmd_data_cntl2" = "0x1001D"
116
117 # EMMC Rx Strobe Delay
118 # Refer to EDS-Vol2-14.3.11.
119 # [14:8] Rx Strobe Delay DLL 1(HS400 Mode), each 125ps, range: 0 - 39.
120 # [6:0] Rx Strobe Delay DLL 2(HS400 Mode), each 125ps, range: 0 - 39.
121 register "common_soc_config.emmc_dll.emmc_rx_strobe_cntl" = "0x1515"
122
123 device domain 0 on
Matt DeVillierb0b659a2023-10-22 18:46:25 -0500124 device ref igpu on
Matt DeVillierc5a3a4a2020-06-07 04:05:55 -0500125 register "gfx" = "GMA_DEFAULT_PANEL(0)"
126 end
Matt DeVillierb0b659a2023-10-22 18:46:25 -0500127 device ref xhci on
raymondchungd1f30222020-02-11 15:07:39 +0800128 chip drivers/usb/acpi
Matt DeVillierb0b659a2023-10-22 18:46:25 -0500129 device ref xhci_root_hub on
raymondchungd1f30222020-02-11 15:07:39 +0800130 chip drivers/usb/acpi
Matt DeVillierb0b659a2023-10-22 18:46:25 -0500131 device ref usb2_port3 off end
raymondchungd1f30222020-02-11 15:07:39 +0800132 end
133 chip drivers/usb/acpi
Matt DeVillierb0b659a2023-10-22 18:46:25 -0500134 device ref usb2_port4 off end
raymondchungd1f30222020-02-11 15:07:39 +0800135 end
136 chip drivers/usb/acpi
Matt DeVillierb0b659a2023-10-22 18:46:25 -0500137 device ref usb2_port5 off end
raymondchungd1f30222020-02-11 15:07:39 +0800138 end
139 chip drivers/usb/acpi
Matt DeVillierb0b659a2023-10-22 18:46:25 -0500140 device ref usb2_port6 off end
raymondchungd1f30222020-02-11 15:07:39 +0800141 end
142 chip drivers/usb/acpi
Matt DeVillierb0b659a2023-10-22 18:46:25 -0500143 device ref usb2_port8 off end
raymondchungd1f30222020-02-11 15:07:39 +0800144 end
145 chip drivers/usb/acpi
Matt DeVillierb0b659a2023-10-22 18:46:25 -0500146 device ref usb2_port9 off end
raymondchungd1f30222020-02-11 15:07:39 +0800147 end
148 chip drivers/usb/acpi
Matt DeVillierb0b659a2023-10-22 18:46:25 -0500149 device ref usb3_port3 off end
raymondchungd1f30222020-02-11 15:07:39 +0800150 end
151 chip drivers/usb/acpi
Matt DeVillierb0b659a2023-10-22 18:46:25 -0500152 device ref usb3_port4 off end
raymondchungd1f30222020-02-11 15:07:39 +0800153 end
154 chip drivers/usb/acpi
Matt DeVillierb0b659a2023-10-22 18:46:25 -0500155 device ref usb3_port5 off end
raymondchungd1f30222020-02-11 15:07:39 +0800156 end
157 end
158 end
159 end
Matt DeVillierb0b659a2023-10-22 18:46:25 -0500160 device ref sdxc on end
161 device ref i2c0 on
Seunghwan Kim2144bb52020-03-17 16:18:27 +0900162 chip drivers/i2c/generic
Elyes HAOUASbfa81662020-03-25 08:05:28 +0100163 register "hid" = ""ELAN0000""
164 register "desc" = ""ELAN Touchpad""
Matt DeVillier251d4432022-12-18 18:47:20 -0600165 register "irq" = "ACPI_IRQ_WAKE_LEVEL_LOW(GPP_A21_IRQ)"
Matt DeVillier2cf52d82022-09-01 15:09:24 -0500166 register "detect" = "1"
Elyes HAOUASbfa81662020-03-25 08:05:28 +0100167 register "wake" = "GPE0_DW0_21"
168 device i2c 0x15 on end
169 end
Matt DeVillierb0b659a2023-10-22 18:46:25 -0500170 end
171 device ref i2c1 on
Seunghwan Kim2144bb52020-03-17 16:18:27 +0900172 chip drivers/i2c/hid
Elyes HAOUASbfa81662020-03-25 08:05:28 +0100173 register "generic.hid" = ""ELAN902C""
174 register "generic.desc" = ""ELAN Touchscreen""
Karthikeyan Ramasubramanian86dc4b72020-11-10 13:46:26 -0700175 register "generic.irq" = "ACPI_IRQ_LEVEL_LOW(GPP_D16_IRQ)"
Matt DeVillierc5ec4972022-12-18 20:13:28 -0600176 register "generic.detect" = "1"
Elyes HAOUASbfa81662020-03-25 08:05:28 +0100177 register "generic.enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPP_C12)"
178 register "generic.reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_LOW(GPP_D15)"
179 register "generic.reset_delay_ms" = "20"
180 register "generic.has_power_resource" = "1"
Elyes HAOUASbfa81662020-03-25 08:05:28 +0100181 register "hid_desc_reg_offset" = "0x01"
182 device i2c 0x10 on end
183 end
Matt DeVillierb0b659a2023-10-22 18:46:25 -0500184 end
185 device ref i2c4 on
raymondchungd1f30222020-02-11 15:07:39 +0800186 chip drivers/i2c/da7219
187 # TODO: these settings were copied from another board
188 # with the same chip. verify the settings
189 register "irq_gpio" = "ACPI_GPIO_IRQ_EDGE_BOTH(GPP_H0)"
190 register "btn_cfg" = "50"
Terry Cheong053c9012023-12-12 11:04:33 +0800191 register "mic_det_thr" = "200"
raymondchungd1f30222020-02-11 15:07:39 +0800192 register "jack_ins_deb" = "20"
193 register "jack_det_rate" = ""32ms_64ms""
194 register "jack_rem_deb" = "1"
195 register "a_d_btn_thr" = "0xa"
196 register "d_b_btn_thr" = "0x16"
197 register "b_c_btn_thr" = "0x21"
198 register "c_mic_btn_thr" = "0x3e"
199 register "btn_avg" = "4"
200 register "adc_1bit_rpt" = "1"
201 register "micbias_lvl" = "2600"
202 register "mic_amp_in_sel" = ""diff""
203 device i2c 0x1a on end
204 end
Seunghwan Kima1d0fb02020-05-07 13:26:57 +0900205 chip drivers/i2c/max98390
206 register "desc" = ""MAX98390 Speaker Amp 0""
207 register "uid" = "0"
208 register "name" = ""MXW0""
209 register "r0_calib_key" = ""dsm_calib_r0_0""
210 register "temperature_calib_key" = ""dsm_calib_temp_0""
211 device i2c 0x38 on end
212 end
213 chip drivers/i2c/max98390
214 register "desc" = ""MAX98390 Speaker Amp 1""
215 register "uid" = "1"
216 register "name" = ""MXW1""
217 register "r0_calib_key" = ""dsm_calib_r0_1""
218 register "temperature_calib_key" = ""dsm_calib_temp_1""
219 device i2c 0x39 on end
220 end
raymondchungd1f30222020-02-11 15:07:39 +0800221 end
raymondchungd1f30222020-02-11 15:07:39 +0800222 # No PCIe WiFi
Matt DeVillierb0b659a2023-10-22 18:46:25 -0500223 device ref pcie_rp14 off end
224 device ref emmc on end
225 device ref hda on
Matt DeVillier10e928312023-01-17 11:24:25 -0600226 chip drivers/sof
227 register "spkr_tplg" = "max98390"
228 register "jack_tplg" = "da7219"
229 register "mic_tplg" = "_2ch_pdm0"
230 device generic 0 on end
231 end
Matt DeVillierb0b659a2023-10-22 18:46:25 -0500232 end
233 end
raymondchungd1f30222020-02-11 15:07:39 +0800234end