blob: 26b7b17813665342c9b00767d8d3eb8ddb390e86 [file] [log] [blame]
Kevin Chiub19de282019-05-16 11:16:18 +08001chip soc/intel/apollolake
2
3 # EMMC Tx CMD Delay
4 # Refer to EDS-Vol2-16.32.
5 # [14:8] steps of delay for DDR mode, each 125ps.
6 # [6:0] steps of delay for SDR mode, each 125ps.
7 register "emmc_tx_cmd_cntl" = "0x505"
8
9 # EMMC TX DATA Delay 1
10 # Refer to EDS-Vol2-16.33.
11 # [14:8] steps of delay for HS400, each 125ps.
12 # [6:0] steps of delay for SDR104/HS200, each 125ps.
13 register "emmc_tx_data_cntl1" = "0x0a0b"
14
15 # EMMC TX DATA Delay 2
16 # Refer to EDS-Vol2-16.34.
17 # [30:24] steps of delay for SDR50, each 125ps.
18 # [22:16] steps of delay for DDR50, each 125ps.
19 # [14:8] steps of delay for SDR25/HS50, each 125ps.
20 # [6:0] steps of delay for SDR12, each 125ps.
21 register "emmc_tx_data_cntl2" = "0x1c272828"
22
23 # EMMC RX CMD/DATA Delay 1
24 # Refer to EDS-Vol2-16.35.
25 # [30:24] steps of delay for SDR50, each 125ps.
26 # [22:16] steps of delay for DDR50, each 125ps.
27 # [14:8] steps of delay for SDR25/HS50, each 125ps.
28 # [6:0] steps of delay for SDR12, each 125ps.
29 register "emmc_rx_cmd_data_cntl1" = "0x00181b1a"
30
31 # EMMC RX CMD/DATA Delay 2
32 # Refer to EDS-Vol2-16.37.
33 # [17:16] stands for Rx Clock before Output Buffer
34 # [14:8] steps of delay for Auto Tuning Mode, each 125ps.
35 # [6:0] steps of delay for HS200, each 125ps.
36 register "emmc_rx_cmd_data_cntl2" = "0x10021"
37
38 # EMMC Rx Strobe Delay
39 # Refer to EDS-Vol2-16.36.
40 # [14:8] Rx Strobe Delay DLL 1(HS400 Mode), each 125ps.
41 # [6:0] Rx Strobe Delay DLL 2(HS400 Mode), each 125ps.
42 register "emmc_rx_strobe_cntl" = "0x0a0a"
43
44 # Intel Common SoC Config
45 #+-------------------+---------------------------+
46 #| Field | Value |
47 #+-------------------+---------------------------+
48 #| GSPI0 | cr50 TPM. Early init is |
49 #| | required to set up a BAR |
50 #| | for TPM communication |
51 #| | before memory is up |
52 #| I2C0 | Digitizer |
53 #| I2C5 | Audio |
54 #| I2C6 | Trackpad |
55 #| I2C7 | Touchscreen |
56 #+-------------------+---------------------------+
57
58 register "tcc_offset" = "10"
59
60 register "common_soc_config" = "{
61 .gspi[0] = {
62 .speed_mhz = 1,
63 .early_init = 1,
64 },
65 .i2c[0] = {
66 .speed = I2C_SPEED_FAST,
67 .rise_time_ns = 88,
68 .fall_time_ns = 16,
69 },
70 .i2c[5] = {
71 .speed = I2C_SPEED_FAST,
72 .rise_time_ns = 104,
73 .fall_time_ns = 52,
74 },
75 .i2c[6] = {
76 .speed = I2C_SPEED_FAST,
77 .rise_time_ns = 66,
78 .fall_time_ns = 90,
79 .data_hold_time_ns = 350,
80 },
81 .i2c[7] = {
82 .speed = I2C_SPEED_FAST,
83 .rise_time_ns = 44,
84 .fall_time_ns = 90,
85 },
86 }"
87
88 device domain 0 on
89 device pci 16.0 on
90 chip drivers/i2c/hid
91 register "generic.hid" = ""WCOM50C1""
92 register "generic.desc" = ""WCOM Digitizer""
93 register "generic.irq" = "ACPI_IRQ_LEVEL_LOW(GPIO_139_IRQ)"
94 register "generic.reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_140)"
95 register "generic.reset_delay_ms" = "20"
96 register "generic.has_power_resource" = "1"
97 register "hid_desc_reg_offset" = "0x1"
98 device i2c 0x9 on end
99 end
100 chip drivers/generic/gpio_keys
101 register "name" = ""PENH""
102 register "gpio" = "ACPI_GPIO_INPUT_ACTIVE_LOW(GPIO_145)"
103 register "key.dev_name" = ""EJCT""
104 register "key.linux_code" = "SW_PEN_INSERTED"
105 register "key.linux_input_type" = "EV_SW"
106 register "key.label" = ""pen_eject""
Furquan Shaikhfa8b75f2020-06-26 01:19:46 -0700107 register "key.wake_gpe" = "GPE0_DW2_04"
108 register "key.wakeup_route" = "WAKEUP_ROUTE_SCI"
Kevin Chiub19de282019-05-16 11:16:18 +0800109 register "key.wakeup_event_action" = "EV_ACT_DEASSERTED"
110 device generic 0 on end
111 end
112 end # - I2C 0
113 device pci 17.1 on
114 chip drivers/i2c/da7219
115 register "irq" = "ACPI_IRQ_LEVEL_LOW(GPIO_137_IRQ)"
116 register "btn_cfg" = "50"
Terry Cheong053c9012023-12-12 11:04:33 +0800117 register "mic_det_thr" = "200"
Kevin Chiub19de282019-05-16 11:16:18 +0800118 register "jack_ins_deb" = "20"
119 register "jack_det_rate" = ""32ms_64ms""
120 register "jack_rem_deb" = "1"
121 register "a_d_btn_thr" = "0xa"
122 register "d_b_btn_thr" = "0x16"
123 register "b_c_btn_thr" = "0x21"
124 register "c_mic_btn_thr" = "0x3e"
125 register "btn_avg" = "4"
126 register "adc_1bit_rpt" = "1"
127 register "micbias_lvl" = "2600"
128 register "mic_amp_in_sel" = ""diff""
129 device i2c 1a on end
130 end
Kevin Chiubb0c4042021-06-16 16:30:53 +0800131 chip drivers/i2c/generic
132 register "hid" = ""10EC5682""
133 register "name" = ""RT58""
134 register "desc" = ""Realtek RT5682""
135 register "irq" = "ACPI_IRQ_LEVEL_LOW(GPIO_137_IRQ)"
136 register "probed" = "1"
137 register "property_count" = "1"
138 # Set the jd_src to RT5668_JD1 for jack detection
139 register "property_list[0].type" = "ACPI_DP_TYPE_INTEGER"
140 register "property_list[0].name" = ""realtek,jd-src""
141 register "property_list[0].integer" = "1"
142 device i2c 1a on end
143 end
Kevin Chiub19de282019-05-16 11:16:18 +0800144 end # - I2C 5
145 device pci 17.2 on
146 chip drivers/i2c/generic
147 register "hid" = ""ELAN0000""
148 register "desc" = ""ELAN Touchpad""
Matt DeVillierdc807452022-03-30 12:30:21 -0500149 register "irq" = "ACPI_IRQ_WAKE_LEVEL_LOW(GPIO_135_IRQ)"
Kevin Chiub19de282019-05-16 11:16:18 +0800150 register "wake" = "GPE0_DW3_27"
Matt DeVillier2cf52d82022-09-01 15:09:24 -0500151 register "detect" = "1"
Kevin Chiub19de282019-05-16 11:16:18 +0800152 device i2c 15 on end
153 end
154 chip drivers/i2c/hid
Matt DeVillier27937162022-12-19 15:15:52 -0600155 register "generic.hid" = ""SYNA0000""
156 register "generic.cid" = ""ACPI0C50""
Kevin Chiub19de282019-05-16 11:16:18 +0800157 register "generic.desc" = ""Synaptics Touchpad""
Karthikeyan Ramasubramanian61a53912020-11-10 14:37:38 -0700158 register "generic.irq" = "ACPI_IRQ_WAKE_LEVEL_LOW(GPIO_135_IRQ)"
Kevin Chiub19de282019-05-16 11:16:18 +0800159 register "generic.wake" = "GPE0_DW3_27"
Matt DeVillier2cf52d82022-09-01 15:09:24 -0500160 register "generic.detect" = "1"
Kevin Chiub19de282019-05-16 11:16:18 +0800161 register "hid_desc_reg_offset" = "0x20"
162 device i2c 0x2c on end
163 end
164 end # - I2C 6
165 device pci 17.3 on
166 chip drivers/i2c/generic
167 register "hid" = ""ELAN0001""
168 register "desc" = ""ELAN Touchscreen""
Matt DeVillierdc807452022-03-30 12:30:21 -0500169 register "irq" = "ACPI_IRQ_LEVEL_LOW(GPIO_212_IRQ)"
Matt DeVillier0c3806d2022-03-28 22:44:32 -0500170 register "detect" = "1"
Kevin Chiub19de282019-05-16 11:16:18 +0800171 register "reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_105)"
172 register "reset_delay_ms" = "20"
173 register "enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_146)"
174 register "enable_delay_ms" = "1"
175 register "has_power_resource" = "1"
176 device i2c 10 on end
177 end
178 chip drivers/i2c/generic
179 register "hid" = ""RAYD0001""
180 register "desc" = ""Raydium Touchscreen""
Matt DeVillierdc807452022-03-30 12:30:21 -0500181 register "irq" = "ACPI_IRQ_LEVEL_LOW(GPIO_212_IRQ)"
Matt DeVillier0c3806d2022-03-28 22:44:32 -0500182 register "detect" = "1"
Kevin Chiub19de282019-05-16 11:16:18 +0800183 register "reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_105)"
184 register "reset_delay_ms" = "1"
185 register "enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_146)"
186 register "enable_delay_ms" = "50"
187 register "has_power_resource" = "1"
188 device i2c 39 on end
189 end
Tony Huang8679ad62020-06-01 16:01:51 +0800190 chip drivers/i2c/hid
191 register "generic.hid" = ""GTCH7503""
192 register "generic.desc" = ""G2TOUCH Touchscreen""
Karthikeyan Ramasubramanian61a53912020-11-10 14:37:38 -0700193 register "generic.irq" = "ACPI_IRQ_LEVEL_LOW(GPIO_212_IRQ)"
Matt DeVillier0c3806d2022-03-28 22:44:32 -0500194 register "generic.detect" = "1"
Tony Huang8679ad62020-06-01 16:01:51 +0800195 register "generic.reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_105)"
196 register "generic.reset_delay_ms" = "50"
197 register "generic.enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_146)"
198 register "generic.enable_delay_ms" = "1"
199 register "generic.has_power_resource" = "1"
Tony Huang8679ad62020-06-01 16:01:51 +0800200 register "hid_desc_reg_offset" = "0x01"
201 device i2c 40 on end
202 end
Kevin Chiub19de282019-05-16 11:16:18 +0800203 end # - I2C 7
204 end
205
206 # Disable compliance mode
Mario Scheithauerfeafddb2023-06-15 14:22:22 +0200207 register "disable_compliance_mode" = "1"
Kevin Chiu5b511f92020-10-24 01:36:00 +0800208 register "disable_xhci_lfps_pm" = "0"
Kevin Chiub19de282019-05-16 11:16:18 +0800209end