blob: 5d5c049bebf477a469c5c88843a6b85d9f79468d [file] [log] [blame]
Tim Chen42cad6c2019-10-03 14:22:52 +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 #| I2C5 | Audio |
53 #| I2C6 | Trackpad |
54 #| I2C7 | Touchscreen |
55 #+-------------------+---------------------------+
56
57 register "tcc_offset" = "10"
58
59 register "common_soc_config" = "{
60 .gspi[0] = {
61 .speed_mhz = 1,
62 .early_init = 1,
63 },
64 .i2c[5] = {
65 .speed = I2C_SPEED_FAST,
66 .rise_time_ns = 104,
67 .fall_time_ns = 52,
68 },
69 .i2c[6] = {
70 .speed = I2C_SPEED_FAST,
71 .rise_time_ns = 66,
72 .fall_time_ns = 90,
73 .data_hold_time_ns = 350,
74 },
75 .i2c[7] = {
76 .speed = I2C_SPEED_FAST,
77 .rise_time_ns = 44,
78 .fall_time_ns = 90,
79 },
80 }"
81
82 device domain 0 on
83 device pci 16.0 off end # - I2C 0
84 device pci 17.1 on
85 chip drivers/i2c/da7219
86 register "irq" = "ACPI_IRQ_LEVEL_LOW(GPIO_137_IRQ)"
87 register "btn_cfg" = "50"
Terry Cheong053c9012023-12-12 11:04:33 +080088 register "mic_det_thr" = "200"
Tim Chen42cad6c2019-10-03 14:22:52 +080089 register "jack_ins_deb" = "20"
90 register "jack_det_rate" = ""32ms_64ms""
91 register "jack_rem_deb" = "1"
92 register "a_d_btn_thr" = "0xa"
93 register "d_b_btn_thr" = "0x16"
94 register "b_c_btn_thr" = "0x21"
95 register "c_mic_btn_thr" = "0x3e"
96 register "btn_avg" = "4"
97 register "adc_1bit_rpt" = "1"
98 register "micbias_lvl" = "2600"
99 register "mic_amp_in_sel" = ""diff""
100 device i2c 1a on end
101 end
102 end # - I2C 5
103 device pci 17.2 on
104 chip drivers/i2c/generic
105 register "hid" = ""ELAN0000""
106 register "desc" = ""ELAN Touchpad""
Matt DeVillierdc807452022-03-30 12:30:21 -0500107 register "irq" = "ACPI_IRQ_WAKE_LEVEL_LOW(GPIO_135_IRQ)"
Tim Chen42cad6c2019-10-03 14:22:52 +0800108 register "wake" = "GPE0_DW3_27"
Matt DeVillier2cf52d82022-09-01 15:09:24 -0500109 register "detect" = "1"
Tim Chen42cad6c2019-10-03 14:22:52 +0800110 device i2c 15 on end
111 end
112 chip drivers/i2c/hid
Matt DeVillier27937162022-12-19 15:15:52 -0600113 register "generic.hid" = ""SYNA0000""
114 register "generic.cid" = ""ACPI0C50""
Tim Chen42cad6c2019-10-03 14:22:52 +0800115 register "generic.desc" = ""Synaptics Touchpad""
Karthikeyan Ramasubramanian61a53912020-11-10 14:37:38 -0700116 register "generic.irq" = "ACPI_IRQ_WAKE_LEVEL_LOW(GPIO_135_IRQ)"
Tim Chen42cad6c2019-10-03 14:22:52 +0800117 register "generic.wake" = "GPE0_DW3_27"
Matt DeVillier2cf52d82022-09-01 15:09:24 -0500118 register "generic.detect" = "1"
Tim Chen42cad6c2019-10-03 14:22:52 +0800119 register "hid_desc_reg_offset" = "0x20"
120 device i2c 0x2c on end
121 end
122 end # - I2C 6
123 device pci 17.3 on
124 chip drivers/i2c/generic
125 register "hid" = ""ELAN0001""
126 register "desc" = ""ELAN Touchscreen""
Matt DeVillierdc807452022-03-30 12:30:21 -0500127 register "irq" = "ACPI_IRQ_LEVEL_LOW(GPIO_212_IRQ)"
Matt DeVillier0c3806d2022-03-28 22:44:32 -0500128 register "detect" = "1"
Tim Chen42cad6c2019-10-03 14:22:52 +0800129 register "reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_105)"
130 register "reset_delay_ms" = "20"
131 register "enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_146)"
132 register "enable_delay_ms" = "1"
133 register "has_power_resource" = "1"
134 device i2c 10 on end
135 end
136 chip drivers/i2c/generic
137 register "hid" = ""RAYD0001""
138 register "desc" = ""Raydium Touchscreen""
Matt DeVillierdc807452022-03-30 12:30:21 -0500139 register "irq" = "ACPI_IRQ_LEVEL_LOW(GPIO_212_IRQ)"
Matt DeVillier0c3806d2022-03-28 22:44:32 -0500140 register "detect" = "1"
Tim Chen42cad6c2019-10-03 14:22:52 +0800141 register "reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_105)"
142 register "reset_delay_ms" = "1"
143 register "enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_146)"
144 register "enable_delay_ms" = "50"
145 register "has_power_resource" = "1"
146 device i2c 39 on end
147 end
Kenneth Chan914a5682020-10-23 14:49:57 +0800148 chip drivers/i2c/hid
149 register "generic.hid" = ""GTCH7502""
150 register "generic.desc" = ""G2TOUCH Touchscreen""
Karthikeyan Ramasubramanian61a53912020-11-10 14:37:38 -0700151 register "generic.irq" = "ACPI_IRQ_LEVEL_LOW(GPIO_212_IRQ)"
Matt DeVillier0c3806d2022-03-28 22:44:32 -0500152 register "generic.detect" = "1"
Kenneth Chan914a5682020-10-23 14:49:57 +0800153 register "generic.reset_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_105)"
154 register "generic.reset_delay_ms" = "50"
155 register "generic.enable_gpio" = "ACPI_GPIO_OUTPUT_ACTIVE_HIGH(GPIO_146)"
156 register "generic.enable_delay_ms" = "1"
157 register "generic.has_power_resource" = "1"
Kenneth Chan914a5682020-10-23 14:49:57 +0800158 register "hid_desc_reg_offset" = "0x01"
159 device i2c 40 on end
160 end
Tim Chen42cad6c2019-10-03 14:22:52 +0800161 end # - I2C 7
162 end
163
164 # Disable compliance mode
Mario Scheithauerfeafddb2023-06-15 14:22:22 +0200165 register "disable_compliance_mode" = "1"
Kenneth Chan32633092020-05-07 17:59:03 +0800166 register "disable_xhci_lfps_pm" = "0"
Tim Chen42cad6c2019-10-03 14:22:52 +0800167end