1 // SPDX-License-Identifier: GPL-2.0-or-later
3 * Realtek DHC 1619B pin controller driver
5 * Copyright (c) 2023 Realtek Semiconductor Corp.
9 #include <linux/module.h>
11 #include <linux/platform_device.h>
12 #include <linux/pinctrl/pinctrl.h>
14 #include "pinctrl-rtd.h"
16 enum rtd16xxb_iso_pins
{
17 RTD1619B_ISO_GPIO_0
= 0,
53 RTD1619B_ISO_HIF_DATA
,
94 RTD1619B_ISO_EMMC_CMD
,
95 RTD1619B_ISO_SPI_CE_N
,
99 RTD1619B_ISO_EMMC_RST_N
,
100 RTD1619B_ISO_EMMC_DD_SB
,
101 RTD1619B_ISO_EMMC_CLK
,
102 RTD1619B_ISO_EMMC_DATA_0
,
103 RTD1619B_ISO_EMMC_DATA_1
,
104 RTD1619B_ISO_EMMC_DATA_2
,
105 RTD1619B_ISO_EMMC_DATA_3
,
106 RTD1619B_ISO_EMMC_DATA_4
,
107 RTD1619B_ISO_EMMC_DATA_5
,
108 RTD1619B_ISO_EMMC_DATA_6
,
109 RTD1619B_ISO_EMMC_DATA_7
,
110 RTD1619B_ISO_UR2_LOC
,
111 RTD1619B_ISO_GSPI_LOC
,
112 RTD1619B_ISO_SDIO_LOC
,
114 RTD1619B_ISO_HI_WIDTH
,
116 RTD1619B_ISO_ARM_TRACE_DBG_EN
,
117 RTD1619B_ISO_PWM_01_OPEN_DRAIN_EN_LOC0
,
118 RTD1619B_ISO_PWM_23_OPEN_DRAIN_EN_LOC0
,
119 RTD1619B_ISO_PWM_01_OPEN_DRAIN_EN_LOC1
,
120 RTD1619B_ISO_PWM_23_OPEN_DRAIN_EN_LOC1
,
121 RTD1619B_ISO_EJTAG_ACPU_LOC
,
122 RTD1619B_ISO_EJTAG_VCPU_LOC
,
123 RTD1619B_ISO_EJTAG_SCPU_LOC
,
124 RTD1619B_ISO_DMIC_LOC
,
125 RTD1619B_ISO_ISO_GSPI_LOC
,
126 RTD1619B_ISO_EJTAG_VE3_LOC
,
127 RTD1619B_ISO_EJTAG_AUCPU0_LOC
,
128 RTD1619B_ISO_EJTAG_AUCPU1_LOC
,
131 static const struct pinctrl_pin_desc rtd1619b_iso_pins
[] = {
132 PINCTRL_PIN(RTD1619B_ISO_GPIO_0
, "gpio_0"),
133 PINCTRL_PIN(RTD1619B_ISO_GPIO_1
, "gpio_1"),
134 PINCTRL_PIN(RTD1619B_ISO_GPIO_2
, "gpio_2"),
135 PINCTRL_PIN(RTD1619B_ISO_GPIO_3
, "gpio_3"),
136 PINCTRL_PIN(RTD1619B_ISO_GPIO_4
, "gpio_4"),
137 PINCTRL_PIN(RTD1619B_ISO_GPIO_5
, "gpio_5"),
138 PINCTRL_PIN(RTD1619B_ISO_GPIO_6
, "gpio_6"),
139 PINCTRL_PIN(RTD1619B_ISO_GPIO_7
, "gpio_7"),
140 PINCTRL_PIN(RTD1619B_ISO_GPIO_8
, "gpio_8"),
141 PINCTRL_PIN(RTD1619B_ISO_GPIO_9
, "gpio_9"),
142 PINCTRL_PIN(RTD1619B_ISO_GPIO_10
, "gpio_10"),
143 PINCTRL_PIN(RTD1619B_ISO_GPIO_11
, "gpio_11"),
144 PINCTRL_PIN(RTD1619B_ISO_GPIO_12
, "gpio_12"),
145 PINCTRL_PIN(RTD1619B_ISO_GPIO_13
, "gpio_13"),
146 PINCTRL_PIN(RTD1619B_ISO_GPIO_14
, "gpio_14"),
147 PINCTRL_PIN(RTD1619B_ISO_GPIO_15
, "gpio_15"),
148 PINCTRL_PIN(RTD1619B_ISO_GPIO_16
, "gpio_16"),
149 PINCTRL_PIN(RTD1619B_ISO_GPIO_17
, "gpio_17"),
150 PINCTRL_PIN(RTD1619B_ISO_GPIO_18
, "gpio_18"),
151 PINCTRL_PIN(RTD1619B_ISO_GPIO_19
, "gpio_19"),
152 PINCTRL_PIN(RTD1619B_ISO_GPIO_20
, "gpio_20"),
153 PINCTRL_PIN(RTD1619B_ISO_GPIO_21
, "gpio_21"),
154 PINCTRL_PIN(RTD1619B_ISO_GPIO_22
, "gpio_22"),
155 PINCTRL_PIN(RTD1619B_ISO_GPIO_23
, "gpio_23"),
156 PINCTRL_PIN(RTD1619B_ISO_USB_CC2
, "usb_cc2"),
157 PINCTRL_PIN(RTD1619B_ISO_GPIO_25
, "gpio_25"),
158 PINCTRL_PIN(RTD1619B_ISO_GPIO_26
, "gpio_26"),
159 PINCTRL_PIN(RTD1619B_ISO_GPIO_27
, "gpio_27"),
160 PINCTRL_PIN(RTD1619B_ISO_GPIO_28
, "gpio_28"),
161 PINCTRL_PIN(RTD1619B_ISO_GPIO_29
, "gpio_29"),
162 PINCTRL_PIN(RTD1619B_ISO_GPIO_30
, "gpio_30"),
163 PINCTRL_PIN(RTD1619B_ISO_GPIO_31
, "gpio_31"),
164 PINCTRL_PIN(RTD1619B_ISO_GPIO_32
, "gpio_32"),
165 PINCTRL_PIN(RTD1619B_ISO_GPIO_33
, "gpio_33"),
166 PINCTRL_PIN(RTD1619B_ISO_GPIO_34
, "gpio_34"),
167 PINCTRL_PIN(RTD1619B_ISO_GPIO_35
, "gpio_35"),
168 PINCTRL_PIN(RTD1619B_ISO_HIF_DATA
, "hif_data"),
169 PINCTRL_PIN(RTD1619B_ISO_HIF_EN
, "hif_en"),
170 PINCTRL_PIN(RTD1619B_ISO_HIF_RDY
, "hif_rdy"),
171 PINCTRL_PIN(RTD1619B_ISO_HIF_CLK
, "hif_clk"),
172 PINCTRL_PIN(RTD1619B_ISO_GPIO_40
, "gpio_40"),
173 PINCTRL_PIN(RTD1619B_ISO_GPIO_41
, "gpio_41"),
174 PINCTRL_PIN(RTD1619B_ISO_GPIO_42
, "gpio_42"),
175 PINCTRL_PIN(RTD1619B_ISO_GPIO_43
, "gpio_43"),
176 PINCTRL_PIN(RTD1619B_ISO_GPIO_44
, "gpio_44"),
177 PINCTRL_PIN(RTD1619B_ISO_GPIO_45
, "gpio_45"),
178 PINCTRL_PIN(RTD1619B_ISO_GPIO_46
, "gpio_46"),
179 PINCTRL_PIN(RTD1619B_ISO_GPIO_47
, "gpio_47"),
180 PINCTRL_PIN(RTD1619B_ISO_GPIO_48
, "gpio_48"),
181 PINCTRL_PIN(RTD1619B_ISO_GPIO_49
, "gpio_49"),
182 PINCTRL_PIN(RTD1619B_ISO_GPIO_50
, "gpio_50"),
183 PINCTRL_PIN(RTD1619B_ISO_USB_CC1
, "usb_cc1"),
184 PINCTRL_PIN(RTD1619B_ISO_GPIO_52
, "gpio_52"),
185 PINCTRL_PIN(RTD1619B_ISO_GPIO_53
, "gpio_53"),
186 PINCTRL_PIN(RTD1619B_ISO_IR_RX
, "ir_rx"),
187 PINCTRL_PIN(RTD1619B_ISO_UR0_RX
, "ur0_rx"),
188 PINCTRL_PIN(RTD1619B_ISO_UR0_TX
, "ur0_tx"),
189 PINCTRL_PIN(RTD1619B_ISO_GPIO_57
, "gpio_57"),
190 PINCTRL_PIN(RTD1619B_ISO_GPIO_58
, "gpio_58"),
191 PINCTRL_PIN(RTD1619B_ISO_GPIO_59
, "gpio_59"),
192 PINCTRL_PIN(RTD1619B_ISO_GPIO_60
, "gpio_60"),
193 PINCTRL_PIN(RTD1619B_ISO_GPIO_61
, "gpio_61"),
194 PINCTRL_PIN(RTD1619B_ISO_GPIO_62
, "gpio_62"),
195 PINCTRL_PIN(RTD1619B_ISO_GPIO_63
, "gpio_63"),
196 PINCTRL_PIN(RTD1619B_ISO_GPIO_64
, "gpio_64"),
197 PINCTRL_PIN(RTD1619B_ISO_GPIO_65
, "gpio_65"),
198 PINCTRL_PIN(RTD1619B_ISO_GPIO_66
, "gpio_66"),
199 PINCTRL_PIN(RTD1619B_ISO_GPIO_67
, "gpio_67"),
200 PINCTRL_PIN(RTD1619B_ISO_GPIO_68
, "gpio_68"),
201 PINCTRL_PIN(RTD1619B_ISO_GPIO_69
, "gpio_69"),
202 PINCTRL_PIN(RTD1619B_ISO_GPIO_70
, "gpio_70"),
203 PINCTRL_PIN(RTD1619B_ISO_GPIO_71
, "gpio_71"),
204 PINCTRL_PIN(RTD1619B_ISO_GPIO_72
, "gpio_72"),
205 PINCTRL_PIN(RTD1619B_ISO_GPIO_73
, "gpio_73"),
206 PINCTRL_PIN(RTD1619B_ISO_GPIO_74
, "gpio_74"),
207 PINCTRL_PIN(RTD1619B_ISO_GPIO_75
, "gpio_75"),
208 PINCTRL_PIN(RTD1619B_ISO_GPIO_76
, "gpio_76"),
209 PINCTRL_PIN(RTD1619B_ISO_EMMC_CMD
, "emmc_cmd"),
210 PINCTRL_PIN(RTD1619B_ISO_SPI_CE_N
, "spi_ce_n"),
211 PINCTRL_PIN(RTD1619B_ISO_SPI_SCK
, "spi_sck"),
212 PINCTRL_PIN(RTD1619B_ISO_SPI_SO
, "spi_so"),
213 PINCTRL_PIN(RTD1619B_ISO_SPI_SI
, "spi_si"),
214 PINCTRL_PIN(RTD1619B_ISO_EMMC_RST_N
, "emmc_rst_n"),
215 PINCTRL_PIN(RTD1619B_ISO_EMMC_DD_SB
, "emmc_dd_sb"),
216 PINCTRL_PIN(RTD1619B_ISO_EMMC_CLK
, "emmc_clk"),
217 PINCTRL_PIN(RTD1619B_ISO_EMMC_DATA_0
, "emmc_data_0"),
218 PINCTRL_PIN(RTD1619B_ISO_EMMC_DATA_1
, "emmc_data_1"),
219 PINCTRL_PIN(RTD1619B_ISO_EMMC_DATA_2
, "emmc_data_2"),
220 PINCTRL_PIN(RTD1619B_ISO_EMMC_DATA_3
, "emmc_data_3"),
221 PINCTRL_PIN(RTD1619B_ISO_EMMC_DATA_4
, "emmc_data_4"),
222 PINCTRL_PIN(RTD1619B_ISO_EMMC_DATA_5
, "emmc_data_5"),
223 PINCTRL_PIN(RTD1619B_ISO_EMMC_DATA_6
, "emmc_data_6"),
224 PINCTRL_PIN(RTD1619B_ISO_EMMC_DATA_7
, "emmc_data_7"),
225 PINCTRL_PIN(RTD1619B_ISO_UR2_LOC
, "ur2_loc"),
226 PINCTRL_PIN(RTD1619B_ISO_GSPI_LOC
, "gspi_loc"),
227 PINCTRL_PIN(RTD1619B_ISO_SDIO_LOC
, "sdio_loc"),
228 PINCTRL_PIN(RTD1619B_ISO_HI_LOC
, "hi_loc"),
229 PINCTRL_PIN(RTD1619B_ISO_HI_WIDTH
, "hi_width"),
230 PINCTRL_PIN(RTD1619B_ISO_SF_EN
, "sf_en"),
231 PINCTRL_PIN(RTD1619B_ISO_ARM_TRACE_DBG_EN
, "arm_trace_dbg_en"),
232 PINCTRL_PIN(RTD1619B_ISO_PWM_01_OPEN_DRAIN_EN_LOC0
, "pwm_01_open_drain_en_loc0"),
233 PINCTRL_PIN(RTD1619B_ISO_PWM_23_OPEN_DRAIN_EN_LOC0
, "pwm_23_open_drain_en_loc0"),
234 PINCTRL_PIN(RTD1619B_ISO_PWM_01_OPEN_DRAIN_EN_LOC1
, "pwm_01_open_drain_en_loc1"),
235 PINCTRL_PIN(RTD1619B_ISO_PWM_23_OPEN_DRAIN_EN_LOC1
, "pwm_23_open_drain_en_loc1"),
236 PINCTRL_PIN(RTD1619B_ISO_EJTAG_ACPU_LOC
, "ejtag_acpu_loc"),
237 PINCTRL_PIN(RTD1619B_ISO_EJTAG_VCPU_LOC
, "ejtag_vcpu_loc"),
238 PINCTRL_PIN(RTD1619B_ISO_EJTAG_SCPU_LOC
, "ejtag_scpu_loc"),
239 PINCTRL_PIN(RTD1619B_ISO_DMIC_LOC
, "dmic_loc"),
240 PINCTRL_PIN(RTD1619B_ISO_ISO_GSPI_LOC
, "iso_gspi_loc"),
241 PINCTRL_PIN(RTD1619B_ISO_EJTAG_VE3_LOC
, "ejtag_ve3_loc"),
242 PINCTRL_PIN(RTD1619B_ISO_EJTAG_AUCPU0_LOC
, "ejtag_aucpu0_loc"),
243 PINCTRL_PIN(RTD1619B_ISO_EJTAG_AUCPU1_LOC
, "ejtag_aucpu1_loc"),
246 #define DECLARE_RTD1619B_PIN(_pin, _name) \
247 static const unsigned int rtd1619b_## _name ##_pins[] = { _pin }
249 DECLARE_RTD1619B_PIN(RTD1619B_ISO_GPIO_0
, gpio_0
);
250 DECLARE_RTD1619B_PIN(RTD1619B_ISO_GPIO_1
, gpio_1
);
251 DECLARE_RTD1619B_PIN(RTD1619B_ISO_GPIO_2
, gpio_2
);
252 DECLARE_RTD1619B_PIN(RTD1619B_ISO_GPIO_3
, gpio_3
);
253 DECLARE_RTD1619B_PIN(RTD1619B_ISO_GPIO_4
, gpio_4
);
254 DECLARE_RTD1619B_PIN(RTD1619B_ISO_GPIO_5
, gpio_5
);
255 DECLARE_RTD1619B_PIN(RTD1619B_ISO_GPIO_6
, gpio_6
);
256 DECLARE_RTD1619B_PIN(RTD1619B_ISO_GPIO_7
, gpio_7
);
257 DECLARE_RTD1619B_PIN(RTD1619B_ISO_GPIO_8
, gpio_8
);
258 DECLARE_RTD1619B_PIN(RTD1619B_ISO_GPIO_9
, gpio_9
);
259 DECLARE_RTD1619B_PIN(RTD1619B_ISO_GPIO_10
, gpio_10
);
260 DECLARE_RTD1619B_PIN(RTD1619B_ISO_GPIO_11
, gpio_11
);
261 DECLARE_RTD1619B_PIN(RTD1619B_ISO_GPIO_12
, gpio_12
);
262 DECLARE_RTD1619B_PIN(RTD1619B_ISO_GPIO_13
, gpio_13
);
263 DECLARE_RTD1619B_PIN(RTD1619B_ISO_GPIO_14
, gpio_14
);
264 DECLARE_RTD1619B_PIN(RTD1619B_ISO_GPIO_15
, gpio_15
);
265 DECLARE_RTD1619B_PIN(RTD1619B_ISO_GPIO_16
, gpio_16
);
266 DECLARE_RTD1619B_PIN(RTD1619B_ISO_GPIO_17
, gpio_17
);
267 DECLARE_RTD1619B_PIN(RTD1619B_ISO_GPIO_18
, gpio_18
);
268 DECLARE_RTD1619B_PIN(RTD1619B_ISO_GPIO_19
, gpio_19
);
269 DECLARE_RTD1619B_PIN(RTD1619B_ISO_GPIO_20
, gpio_20
);
270 DECLARE_RTD1619B_PIN(RTD1619B_ISO_GPIO_21
, gpio_21
);
271 DECLARE_RTD1619B_PIN(RTD1619B_ISO_GPIO_22
, gpio_22
);
272 DECLARE_RTD1619B_PIN(RTD1619B_ISO_GPIO_23
, gpio_23
);
273 DECLARE_RTD1619B_PIN(RTD1619B_ISO_USB_CC2
, usb_cc2
);
274 DECLARE_RTD1619B_PIN(RTD1619B_ISO_GPIO_25
, gpio_25
);
275 DECLARE_RTD1619B_PIN(RTD1619B_ISO_GPIO_26
, gpio_26
);
276 DECLARE_RTD1619B_PIN(RTD1619B_ISO_GPIO_27
, gpio_27
);
277 DECLARE_RTD1619B_PIN(RTD1619B_ISO_GPIO_28
, gpio_28
);
278 DECLARE_RTD1619B_PIN(RTD1619B_ISO_GPIO_29
, gpio_29
);
279 DECLARE_RTD1619B_PIN(RTD1619B_ISO_GPIO_30
, gpio_30
);
280 DECLARE_RTD1619B_PIN(RTD1619B_ISO_GPIO_31
, gpio_31
);
281 DECLARE_RTD1619B_PIN(RTD1619B_ISO_GPIO_32
, gpio_32
);
282 DECLARE_RTD1619B_PIN(RTD1619B_ISO_GPIO_33
, gpio_33
);
283 DECLARE_RTD1619B_PIN(RTD1619B_ISO_GPIO_34
, gpio_34
);
284 DECLARE_RTD1619B_PIN(RTD1619B_ISO_GPIO_35
, gpio_35
);
285 DECLARE_RTD1619B_PIN(RTD1619B_ISO_HIF_DATA
, hif_data
);
286 DECLARE_RTD1619B_PIN(RTD1619B_ISO_HIF_EN
, hif_en
);
287 DECLARE_RTD1619B_PIN(RTD1619B_ISO_HIF_RDY
, hif_rdy
);
288 DECLARE_RTD1619B_PIN(RTD1619B_ISO_HIF_CLK
, hif_clk
);
289 DECLARE_RTD1619B_PIN(RTD1619B_ISO_GPIO_40
, gpio_40
);
290 DECLARE_RTD1619B_PIN(RTD1619B_ISO_GPIO_41
, gpio_41
);
291 DECLARE_RTD1619B_PIN(RTD1619B_ISO_GPIO_42
, gpio_42
);
292 DECLARE_RTD1619B_PIN(RTD1619B_ISO_GPIO_43
, gpio_43
);
293 DECLARE_RTD1619B_PIN(RTD1619B_ISO_GPIO_44
, gpio_44
);
294 DECLARE_RTD1619B_PIN(RTD1619B_ISO_GPIO_45
, gpio_45
);
295 DECLARE_RTD1619B_PIN(RTD1619B_ISO_GPIO_46
, gpio_46
);
296 DECLARE_RTD1619B_PIN(RTD1619B_ISO_GPIO_47
, gpio_47
);
297 DECLARE_RTD1619B_PIN(RTD1619B_ISO_GPIO_48
, gpio_48
);
298 DECLARE_RTD1619B_PIN(RTD1619B_ISO_GPIO_49
, gpio_49
);
299 DECLARE_RTD1619B_PIN(RTD1619B_ISO_GPIO_50
, gpio_50
);
300 DECLARE_RTD1619B_PIN(RTD1619B_ISO_USB_CC1
, usb_cc1
);
301 DECLARE_RTD1619B_PIN(RTD1619B_ISO_GPIO_52
, gpio_52
);
302 DECLARE_RTD1619B_PIN(RTD1619B_ISO_GPIO_53
, gpio_53
);
303 DECLARE_RTD1619B_PIN(RTD1619B_ISO_IR_RX
, ir_rx
);
304 DECLARE_RTD1619B_PIN(RTD1619B_ISO_UR0_RX
, ur0_rx
);
305 DECLARE_RTD1619B_PIN(RTD1619B_ISO_UR0_TX
, ur0_tx
);
306 DECLARE_RTD1619B_PIN(RTD1619B_ISO_GPIO_57
, gpio_57
);
307 DECLARE_RTD1619B_PIN(RTD1619B_ISO_GPIO_58
, gpio_58
);
308 DECLARE_RTD1619B_PIN(RTD1619B_ISO_GPIO_59
, gpio_59
);
309 DECLARE_RTD1619B_PIN(RTD1619B_ISO_GPIO_60
, gpio_60
);
310 DECLARE_RTD1619B_PIN(RTD1619B_ISO_GPIO_61
, gpio_61
);
311 DECLARE_RTD1619B_PIN(RTD1619B_ISO_GPIO_62
, gpio_62
);
312 DECLARE_RTD1619B_PIN(RTD1619B_ISO_GPIO_63
, gpio_63
);
313 DECLARE_RTD1619B_PIN(RTD1619B_ISO_GPIO_64
, gpio_64
);
314 DECLARE_RTD1619B_PIN(RTD1619B_ISO_GPIO_65
, gpio_65
);
315 DECLARE_RTD1619B_PIN(RTD1619B_ISO_GPIO_66
, gpio_66
);
316 DECLARE_RTD1619B_PIN(RTD1619B_ISO_GPIO_67
, gpio_67
);
317 DECLARE_RTD1619B_PIN(RTD1619B_ISO_GPIO_68
, gpio_68
);
318 DECLARE_RTD1619B_PIN(RTD1619B_ISO_GPIO_69
, gpio_69
);
319 DECLARE_RTD1619B_PIN(RTD1619B_ISO_GPIO_70
, gpio_70
);
320 DECLARE_RTD1619B_PIN(RTD1619B_ISO_GPIO_71
, gpio_71
);
321 DECLARE_RTD1619B_PIN(RTD1619B_ISO_GPIO_72
, gpio_72
);
322 DECLARE_RTD1619B_PIN(RTD1619B_ISO_GPIO_73
, gpio_73
);
323 DECLARE_RTD1619B_PIN(RTD1619B_ISO_GPIO_74
, gpio_74
);
324 DECLARE_RTD1619B_PIN(RTD1619B_ISO_GPIO_75
, gpio_75
);
325 DECLARE_RTD1619B_PIN(RTD1619B_ISO_GPIO_76
, gpio_76
);
326 DECLARE_RTD1619B_PIN(RTD1619B_ISO_EMMC_CMD
, emmc_cmd
);
327 DECLARE_RTD1619B_PIN(RTD1619B_ISO_SPI_CE_N
, spi_ce_n
);
328 DECLARE_RTD1619B_PIN(RTD1619B_ISO_SPI_SCK
, spi_sck
);
329 DECLARE_RTD1619B_PIN(RTD1619B_ISO_SPI_SO
, spi_so
);
330 DECLARE_RTD1619B_PIN(RTD1619B_ISO_SPI_SI
, spi_si
);
331 DECLARE_RTD1619B_PIN(RTD1619B_ISO_EMMC_RST_N
, emmc_rst_n
);
332 DECLARE_RTD1619B_PIN(RTD1619B_ISO_EMMC_DD_SB
, emmc_dd_sb
);
333 DECLARE_RTD1619B_PIN(RTD1619B_ISO_EMMC_CLK
, emmc_clk
);
334 DECLARE_RTD1619B_PIN(RTD1619B_ISO_EMMC_DATA_0
, emmc_data_0
);
335 DECLARE_RTD1619B_PIN(RTD1619B_ISO_EMMC_DATA_1
, emmc_data_1
);
336 DECLARE_RTD1619B_PIN(RTD1619B_ISO_EMMC_DATA_2
, emmc_data_2
);
337 DECLARE_RTD1619B_PIN(RTD1619B_ISO_EMMC_DATA_3
, emmc_data_3
);
338 DECLARE_RTD1619B_PIN(RTD1619B_ISO_EMMC_DATA_4
, emmc_data_4
);
339 DECLARE_RTD1619B_PIN(RTD1619B_ISO_EMMC_DATA_5
, emmc_data_5
);
340 DECLARE_RTD1619B_PIN(RTD1619B_ISO_EMMC_DATA_6
, emmc_data_6
);
341 DECLARE_RTD1619B_PIN(RTD1619B_ISO_EMMC_DATA_7
, emmc_data_7
);
342 DECLARE_RTD1619B_PIN(RTD1619B_ISO_UR2_LOC
, ur2_loc
);
343 DECLARE_RTD1619B_PIN(RTD1619B_ISO_GSPI_LOC
, gspi_loc
);
344 DECLARE_RTD1619B_PIN(RTD1619B_ISO_SDIO_LOC
, sdio_loc
);
345 DECLARE_RTD1619B_PIN(RTD1619B_ISO_HI_LOC
, hi_loc
);
346 DECLARE_RTD1619B_PIN(RTD1619B_ISO_HI_WIDTH
, hi_width
);
347 DECLARE_RTD1619B_PIN(RTD1619B_ISO_SF_EN
, sf_en
);
348 DECLARE_RTD1619B_PIN(RTD1619B_ISO_ARM_TRACE_DBG_EN
, arm_trace_dbg_en
);
349 DECLARE_RTD1619B_PIN(RTD1619B_ISO_PWM_01_OPEN_DRAIN_EN_LOC0
, pwm_01_open_drain_en_loc0
);
350 DECLARE_RTD1619B_PIN(RTD1619B_ISO_PWM_23_OPEN_DRAIN_EN_LOC0
, pwm_23_open_drain_en_loc0
);
351 DECLARE_RTD1619B_PIN(RTD1619B_ISO_PWM_01_OPEN_DRAIN_EN_LOC1
, pwm_01_open_drain_en_loc1
);
352 DECLARE_RTD1619B_PIN(RTD1619B_ISO_PWM_23_OPEN_DRAIN_EN_LOC1
, pwm_23_open_drain_en_loc1
);
353 DECLARE_RTD1619B_PIN(RTD1619B_ISO_EJTAG_ACPU_LOC
, ejtag_acpu_loc
);
354 DECLARE_RTD1619B_PIN(RTD1619B_ISO_EJTAG_VCPU_LOC
, ejtag_vcpu_loc
);
355 DECLARE_RTD1619B_PIN(RTD1619B_ISO_EJTAG_SCPU_LOC
, ejtag_scpu_loc
);
356 DECLARE_RTD1619B_PIN(RTD1619B_ISO_DMIC_LOC
, dmic_loc
);
357 DECLARE_RTD1619B_PIN(RTD1619B_ISO_ISO_GSPI_LOC
, iso_gspi_loc
);
358 DECLARE_RTD1619B_PIN(RTD1619B_ISO_EJTAG_VE3_LOC
, ejtag_ve3_loc
);
359 DECLARE_RTD1619B_PIN(RTD1619B_ISO_EJTAG_AUCPU0_LOC
, ejtag_aucpu0_loc
);
360 DECLARE_RTD1619B_PIN(RTD1619B_ISO_EJTAG_AUCPU1_LOC
, ejtag_aucpu1_loc
);
362 #define RTD1619B_GROUP(_name) \
365 .pins = rtd1619b_ ## _name ## _pins, \
366 .num_pins = ARRAY_SIZE(rtd1619b_ ## _name ## _pins), \
369 static const struct rtd_pin_group_desc rtd1619b_pin_groups
[] = {
370 RTD1619B_GROUP(gpio_0
),
371 RTD1619B_GROUP(gpio_1
),
372 RTD1619B_GROUP(gpio_2
),
373 RTD1619B_GROUP(gpio_3
),
374 RTD1619B_GROUP(gpio_4
),
375 RTD1619B_GROUP(gpio_5
),
376 RTD1619B_GROUP(gpio_6
),
377 RTD1619B_GROUP(gpio_7
),
378 RTD1619B_GROUP(gpio_8
),
379 RTD1619B_GROUP(gpio_9
),
380 RTD1619B_GROUP(gpio_10
),
381 RTD1619B_GROUP(gpio_11
),
382 RTD1619B_GROUP(gpio_12
),
383 RTD1619B_GROUP(gpio_13
),
384 RTD1619B_GROUP(gpio_14
),
385 RTD1619B_GROUP(gpio_15
),
386 RTD1619B_GROUP(gpio_16
),
387 RTD1619B_GROUP(gpio_17
),
388 RTD1619B_GROUP(gpio_18
),
389 RTD1619B_GROUP(gpio_19
),
390 RTD1619B_GROUP(gpio_20
),
391 RTD1619B_GROUP(gpio_21
),
392 RTD1619B_GROUP(gpio_22
),
393 RTD1619B_GROUP(gpio_23
),
394 RTD1619B_GROUP(usb_cc2
),
395 RTD1619B_GROUP(gpio_25
),
396 RTD1619B_GROUP(gpio_26
),
397 RTD1619B_GROUP(gpio_27
),
398 RTD1619B_GROUP(gpio_28
),
399 RTD1619B_GROUP(gpio_29
),
400 RTD1619B_GROUP(gpio_30
),
401 RTD1619B_GROUP(gpio_31
),
402 RTD1619B_GROUP(gpio_32
),
403 RTD1619B_GROUP(gpio_33
),
404 RTD1619B_GROUP(gpio_34
),
405 RTD1619B_GROUP(gpio_35
),
406 RTD1619B_GROUP(hif_data
),
407 RTD1619B_GROUP(hif_en
),
408 RTD1619B_GROUP(hif_rdy
),
409 RTD1619B_GROUP(hif_clk
),
410 RTD1619B_GROUP(gpio_40
),
411 RTD1619B_GROUP(gpio_41
),
412 RTD1619B_GROUP(gpio_42
),
413 RTD1619B_GROUP(gpio_43
),
414 RTD1619B_GROUP(gpio_44
),
415 RTD1619B_GROUP(gpio_45
),
416 RTD1619B_GROUP(gpio_46
),
417 RTD1619B_GROUP(gpio_47
),
418 RTD1619B_GROUP(gpio_48
),
419 RTD1619B_GROUP(gpio_49
),
420 RTD1619B_GROUP(gpio_50
),
421 RTD1619B_GROUP(usb_cc1
),
422 RTD1619B_GROUP(gpio_52
),
423 RTD1619B_GROUP(gpio_53
),
424 RTD1619B_GROUP(ir_rx
),
425 RTD1619B_GROUP(ur0_rx
),
426 RTD1619B_GROUP(ur0_tx
),
427 RTD1619B_GROUP(gpio_57
),
428 RTD1619B_GROUP(gpio_58
),
429 RTD1619B_GROUP(gpio_59
),
430 RTD1619B_GROUP(gpio_60
),
431 RTD1619B_GROUP(gpio_61
),
432 RTD1619B_GROUP(gpio_62
),
433 RTD1619B_GROUP(gpio_63
),
434 RTD1619B_GROUP(gpio_64
),
435 RTD1619B_GROUP(gpio_65
),
436 RTD1619B_GROUP(gpio_66
),
437 RTD1619B_GROUP(gpio_67
),
438 RTD1619B_GROUP(gpio_68
),
439 RTD1619B_GROUP(gpio_69
),
440 RTD1619B_GROUP(gpio_70
),
441 RTD1619B_GROUP(gpio_71
),
442 RTD1619B_GROUP(gpio_72
),
443 RTD1619B_GROUP(gpio_73
),
444 RTD1619B_GROUP(gpio_74
),
445 RTD1619B_GROUP(gpio_75
),
446 RTD1619B_GROUP(gpio_76
),
447 RTD1619B_GROUP(emmc_cmd
),
448 RTD1619B_GROUP(spi_ce_n
),
449 RTD1619B_GROUP(spi_sck
),
450 RTD1619B_GROUP(spi_so
),
451 RTD1619B_GROUP(spi_si
),
452 RTD1619B_GROUP(emmc_rst_n
),
453 RTD1619B_GROUP(emmc_dd_sb
),
454 RTD1619B_GROUP(emmc_clk
),
455 RTD1619B_GROUP(emmc_data_0
),
456 RTD1619B_GROUP(emmc_data_1
),
457 RTD1619B_GROUP(emmc_data_2
),
458 RTD1619B_GROUP(emmc_data_3
),
459 RTD1619B_GROUP(emmc_data_4
),
460 RTD1619B_GROUP(emmc_data_5
),
461 RTD1619B_GROUP(emmc_data_6
),
462 RTD1619B_GROUP(emmc_data_7
),
463 RTD1619B_GROUP(ur2_loc
),
464 RTD1619B_GROUP(gspi_loc
),
465 RTD1619B_GROUP(sdio_loc
),
466 RTD1619B_GROUP(hi_loc
),
467 RTD1619B_GROUP(hi_width
),
468 RTD1619B_GROUP(sf_en
),
469 RTD1619B_GROUP(arm_trace_dbg_en
),
470 RTD1619B_GROUP(pwm_01_open_drain_en_loc0
),
471 RTD1619B_GROUP(pwm_23_open_drain_en_loc0
),
472 RTD1619B_GROUP(pwm_01_open_drain_en_loc1
),
473 RTD1619B_GROUP(pwm_23_open_drain_en_loc1
),
474 RTD1619B_GROUP(ejtag_acpu_loc
),
475 RTD1619B_GROUP(ejtag_vcpu_loc
),
476 RTD1619B_GROUP(ejtag_scpu_loc
),
477 RTD1619B_GROUP(dmic_loc
),
478 RTD1619B_GROUP(iso_gspi_loc
),
479 RTD1619B_GROUP(ejtag_ve3_loc
),
480 RTD1619B_GROUP(ejtag_aucpu0_loc
),
481 RTD1619B_GROUP(ejtag_aucpu1_loc
),
484 static const char * const rtd1619b_gpio_groups
[] = {
485 "gpio_0", "gpio_1", "gpio_2", "gpio_3", "gpio_4",
486 "gpio_5", "gpio_6", "gpio_7", "gpio_8", "gpio_9",
487 "gpio_10", "gpio_11", "gpio_12", "gpio_13", "gpio_14",
488 "gpio_15", "gpio_16", "gpio_17", "gpio_18", "gpio_19",
489 "gpio_20", "gpio_21", "gpio_22", "gpio_23", "usb_cc2",
490 "gpio_25", "gpio_26", "gpio_27", "gpio_28", "gpio_29",
491 "gpio_30", "gpio_31", "gpio_32", "gpio_33", "gpio_34",
492 "gpio_35", "hif_data", "hif_en", "hif_rdy", "hif_clk",
493 "gpio_40", "gpio_41", "gpio_42", "gpio_43", "gpio_44",
494 "gpio_45", "gpio_46", "gpio_47", "gpio_48", "gpio_49",
495 "gpio_50", "usb_cc1", "gpio_52", "gpio_53", "ir_rx",
496 "ur0_rx", "ur0_tx", "gpio_57", "gpio_58", "gpio_59",
497 "gpio_60", "gpio_61", "gpio_62", "gpio_63", "gpio_64",
498 "gpio_65", "gpio_66", "gpio_67", "gpio_68", "gpio_69",
499 "gpio_70", "gpio_71", "gpio_72", "gpio_73", "gpio_74",
500 "gpio_75", "gpio_76", "emmc_cmd", "spi_ce_n", "spi_sck",
502 static const char * const rtd1619b_nf_groups
[] = {
503 "emmc_rst_n", "emmc_clk", "emmc_cmd", "emmc_data_0", "emmc_data_1",
504 "emmc_data_2", "emmc_data_3", "emmc_data_4",
505 "emmc_data_5", "emmc_data_6", "emmc_data_7", "spi_ce_n",
506 "spi_sck", "spi_so", "spi_si" };
507 static const char * const rtd1619b_nf_spi_groups
[] = {
508 "emmc_data_0", "emmc_data_1",
509 "emmc_data_2", "emmc_data_3", "emmc_data_4",
511 static const char * const rtd1619b_spi_groups
[] = {
512 "spi_ce_n", "spi_sck", "spi_so", "spi_si" };
513 static const char * const rtd1619b_emmc_groups
[] = {
514 "emmc_rst_n", "emmc_clk", "emmc_data_0", "emmc_data_1",
515 "emmc_data_2", "emmc_data_3", "emmc_data_4",
516 "emmc_data_5", "emmc_data_6", "emmc_data_7",
517 "emmc_dd_sb", "emmc_cmd"};
519 static const char * const rtd1619b_pmic_groups
[] = { "spi_ce_n" };
520 static const char * const rtd1619b_spdif_groups
[] = { "gpio_50" };
521 static const char * const rtd1619b_spdif_coaxial_groups
[] = { "gpio_1" };
522 static const char * const rtd1619b_spdif_optical_loc0_groups
[] = { "gpio_6" };
523 static const char * const rtd1619b_spdif_optical_loc1_groups
[] = { "gpio_21" };
525 static const char * const rtd1619b_emmc_spi_groups
[] = {
526 "gpio_1", "gpio_2", "gpio_3", "gpio_4", "gpio_5", "gpio_6" };
527 static const char * const rtd1619b_sc1_groups
[] = {
528 "gpio_2", "gpio_3", "gpio_4", "gpio_5" };
529 static const char * const rtd1619b_uart0_groups
[] = { "ur0_rx", "ur0_tx" };
530 static const char * const rtd1619b_uart1_groups
[] = {
531 "gpio_8", "gpio_9", "gpio_10", "gpio_11" };
532 static const char * const rtd1619b_uart2_loc0_groups
[] = {
533 "gpio_18", "gpio_19", "gpio_20", "gpio_31", "ur2_loc" };
534 static const char * const rtd1619b_uart2_loc1_groups
[] = {
535 "gpio_25", "gpio_26", "gpio_27", "gpio_28", "ur2_loc" };
536 static const char * const rtd1619b_gspi_loc1_groups
[] = {
537 "gpio_8", "gpio_9", "gpio_10", "gpio_11", "gspi_loc" };
538 static const char * const rtd1619b_iso_gspi_loc1_groups
[] = {
539 "gpio_8", "gpio_9", "gpio_10", "gpio_11", "iso_gspi_loc" };
540 static const char * const rtd1619b_i2c0_groups
[] = { "gpio_12", "gpio_13" };
541 static const char * const rtd1619b_i2c1_groups
[] = { "gpio_16", "gpio_17" };
542 static const char * const rtd1619b_i2c3_groups
[] = { "gpio_63", "gpio_64" };
543 static const char * const rtd1619b_i2c4_groups
[] = { "gpio_34", "gpio_35" };
544 static const char * const rtd1619b_i2c5_groups
[] = { "gpio_29", "gpio_46" };
545 static const char * const rtd1619b_pwm0_groups
[] = { "gpio_20", "gpio_26" };
546 static const char * const rtd1619b_pwm1_groups
[] = { "gpio_21", "gpio_27" };
547 static const char * const rtd1619b_pwm2_groups
[] = { "gpio_22", "gpio_28" };
548 static const char * const rtd1619b_pwm3_groups
[] = { "gpio_23", "gpio_47" };
549 static const char * const rtd1619b_etn_led_groups
[] = { "gpio_14", "gpio_15", "gpio_23" };
550 static const char * const rtd1619b_etn_phy_groups
[] = { "gpio_14", "gpio_15" };
551 static const char * const rtd1619b_etn_clk_groups
[] = { "gpio_14" };
552 static const char * const rtd1619b_sc0_groups
[] = {
553 "gpio_18", "gpio_19", "gpio_20", "gpio_31" };
554 static const char * const rtd1619b_vfd_groups
[] = {
555 "gpio_26", "gpio_27", "gpio_28" };
557 static const char * const rtd1619b_gspi_loc0_groups
[] = {
558 "gpio_18", "gpio_19", "gpio_20", "gpio_31", "gspi_loc" };
559 static const char * const rtd1619b_iso_gspi_loc0_groups
[] = {
560 "gpio_18", "gpio_19", "gpio_20", "gpio_31", "iso_gspi_loc" };
561 static const char * const rtd1619b_pcie1_groups
[] = { "gpio_25" };
562 static const char * const rtd1619b_pcie2_groups
[] = { "gpio_52" };
563 static const char * const rtd1619b_sd_groups
[] = {
564 "gpio_32", "gpio_33", "gpio_34", "gpio_35", "hif_data",
565 "hif_en", "hif_rdy", "hif_clk" };
566 static const char * const rtd1619b_sdio_loc0_groups
[] = {
567 "gpio_32", "gpio_33", "hif_data", "hif_en",
568 "hif_rdy", "hif_clk", "sdio_loc" };
569 static const char * const rtd1619b_sdio_loc1_groups
[] = {
570 "gpio_40", "gpio_41", "gpio_42", "gpio_43", "gpio_44",
571 "gpio_45", "sdio_loc" };
572 static const char * const rtd1619b_hi_groups
[] = {
573 "hif_data", "hif_en", "hif_rdy", "hif_clk" };
574 static const char * const rtd1619b_hi_m_groups
[] = {
575 "hif_data", "hif_en", "hif_rdy", "hif_clk" };
576 static const char * const rtd1619b_dc_fan_groups
[] = { "gpio_47" };
577 static const char * const rtd1619b_pll_test_loc0_groups
[] = { "gpio_52", "gpio_53" };
578 static const char * const rtd1619b_pll_test_loc1_groups
[] = { "gpio_48", "gpio_49" };
579 static const char * const rtd1619b_tdm_ai_loc0_groups
[] = {
580 "gpio_57", "gpio_58", "gpio_59", "gpio_60" };
581 static const char * const rtd1619b_tdm_ai_loc1_groups
[] = {
582 "hif_data", "hif_en", "hif_rdy", "hif_clk" };
583 static const char * const rtd1619b_dmic_loc0_groups
[] = {
584 "gpio_57", "gpio_58", "gpio_59", "gpio_60", "gpio_61",
585 "gpio_62", "gpio_63", "gpio_64", "dmic_loc"};
586 static const char * const rtd1619b_dmic_loc1_groups
[] = {
587 "gpio_32", "gpio_33", "gpio_34", "gpio_35", "hif_data",
588 "hif_en", "hif_rdy", "hif_clk", "dmic_loc" };
589 static const char * const rtd1619b_ai_loc0_groups
[] = {
590 "gpio_57", "gpio_58", "gpio_59", "gpio_60", "gpio_61",
591 "gpio_62", "gpio_63" };
592 static const char * const rtd1619b_ai_loc1_groups
[] = {
593 "gpio_32", "gpio_33", "gpio_34", "hif_data",
594 "hif_en", "hif_rdy", "hif_clk"};
595 static const char * const rtd1619b_tp0_groups
[] = {
596 "gpio_66", "gpio_67", "gpio_68", "gpio_69",
597 "gpio_70", "gpio_71", "gpio_72", "gpio_73", "gpio_74",
598 "gpio_75", "gpio_76" };
599 static const char * const rtd1619b_tp1_groups
[] = {
600 "gpio_69", "gpio_70", "gpio_71", "gpio_72" };
601 static const char * const rtd1619b_ao_groups
[] = {
602 "gpio_66", "gpio_67", "gpio_68", "gpio_69",
603 "gpio_70", "gpio_71", "gpio_72" };
604 static const char * const rtd1619b_uart2_disable_groups
[] = { "ur2_loc" };
605 static const char * const rtd1619b_gspi_disable_groups
[] = { "gspi_loc" };
606 static const char * const rtd1619b_sdio_disable_groups
[] = { "sdio_loc" };
607 static const char * const rtd1619b_hi_loc_disable_groups
[] = { "hi_loc" };
608 static const char * const rtd1619b_hi_loc0_groups
[] = { "hi_loc" };
609 static const char * const rtd1619b_hi_width_disable_groups
[] = { "hi_width" };
610 static const char * const rtd1619b_hi_width_1bit_groups
[] = { "hi_width" };
612 static const char * const rtd1619b_vtc_i2si_loc0_groups
[] = {
613 "gpio_32", "hif_data", "hif_en", "hif_rdy", "hif_clk" };
614 static const char * const rtd1619b_vtc_tdm_loc0_groups
[] = {
615 "hif_data", "hif_en", "hif_rdy", "hif_clk" };
616 static const char * const rtd1619b_vtc_dmic_loc0_groups
[] = {
617 "hif_data", "hif_en", "hif_rdy", "hif_clk" };
618 static const char * const rtd1619b_vtc_i2si_loc1_groups
[] = {
619 "gpio_57", "gpio_58", "gpio_59", "gpio_60", "gpio_61" };
620 static const char * const rtd1619b_vtc_tdm_loc1_groups
[] = {
621 "gpio_57", "gpio_58", "gpio_59", "gpio_60" };
622 static const char * const rtd1619b_vtc_dmic_loc1_groups
[] = {
623 "gpio_57", "gpio_58", "gpio_59", "gpio_60" };
624 static const char * const rtd1619b_vtc_i2so_groups
[] = {
625 "gpio_66", "gpio_67", "gpio_68", "gpio_69" };
626 static const char * const rtd1619b_ve3_ejtag_loc0_groups
[] = {
627 "gpio_2", "gpio_3", "gpio_4",
628 "gpio_5", "gpio_6", "ejtag_ve3_loc" };
629 static const char * const rtd1619b_aucpu0_ejtag_loc0_groups
[] = {
630 "gpio_2", "gpio_3", "gpio_4",
631 "gpio_5", "gpio_6", "ejtag_aucpu0_loc" };
632 static const char * const rtd1619b_aucpu1_ejtag_loc0_groups
[] = {
633 "gpio_2", "gpio_3", "gpio_4",
634 "gpio_5", "gpio_6", "ejtag_aucpu1_loc" };
635 static const char * const rtd1619b_ve3_ejtag_loc1_groups
[] = {
636 "gpio_32", "gpio_33", "hif_data", "hif_en",
637 "hif_clk", "ejtag_ve3_loc" };
638 static const char * const rtd1619b_aucpu0_ejtag_loc1_groups
[] = {
639 "gpio_32", "gpio_33", "hif_data", "hif_en",
640 "hif_clk", "ejtag_aucpu0_loc" };
641 static const char * const rtd1619b_aucpu1_ejtag_loc1_groups
[] = {
642 "gpio_32", "gpio_33", "hif_data", "hif_en",
643 "hif_clk", "ejtag_aucpu1_loc" };
645 static const char * const rtd1619b_ve3_ejtag_loc2_groups
[] = {
646 "gpio_71", "gpio_72", "gpio_73", "gpio_74",
647 "gpio_75", "gpio_76", "ejtag_ve3_loc" };
648 static const char * const rtd1619b_aucpu0_ejtag_loc2_groups
[] = {
649 "gpio_71", "gpio_72", "gpio_73", "gpio_74",
650 "gpio_75", "gpio_76", "ejtag_aucpu0_loc" };
651 static const char * const rtd1619b_aucpu1_ejtag_loc2_groups
[] = {
652 "gpio_71", "gpio_72", "gpio_73", "gpio_74",
653 "gpio_75", "gpio_76", "ejtag_aucpu1_loc" };
655 static const char * const rtd1619b_scpu_ejtag_loc0_groups
[] = {
656 "gpio_2", "gpio_3", "gpio_4",
657 "gpio_5", "gpio_6", "ejtag_scpu_loc" };
658 static const char * const rtd1619b_acpu_ejtag_loc0_groups
[] = {
659 "gpio_2", "gpio_3", "gpio_4",
660 "gpio_5", "gpio_6", "ejtag_acpu_loc" };
661 static const char * const rtd1619b_vcpu_ejtag_loc0_groups
[] = {
662 "gpio_2", "gpio_3", "gpio_4",
663 "gpio_5", "gpio_6", "ejtag_vcpu_loc" };
664 static const char * const rtd1619b_scpu_ejtag_loc1_groups
[] = {
665 "gpio_32", "gpio_33", "hif_data", "hif_en",
666 "hif_clk", "ejtag_scpu_loc" };
667 static const char * const rtd1619b_acpu_ejtag_loc1_groups
[] = {
668 "gpio_32", "gpio_33", "hif_data", "hif_en",
669 "hif_clk", "ejtag_acpu_loc" };
670 static const char * const rtd1619b_vcpu_ejtag_loc1_groups
[] = {
671 "gpio_32", "gpio_33", "hif_data", "hif_en",
672 "hif_clk", "ejtag_vcpu_loc" };
674 static const char * const rtd1619b_scpu_ejtag_loc2_groups
[] = {
675 "gpio_71", "gpio_72", "gpio_73", "gpio_74",
676 "gpio_75", "gpio_76", "ejtag_scpu_loc" };
677 static const char * const rtd1619b_acpu_ejtag_loc2_groups
[] = {
678 "gpio_71", "gpio_72", "gpio_73", "gpio_74",
679 "gpio_75", "gpio_76", "ejtag_acpu_loc" };
680 static const char * const rtd1619b_vcpu_ejtag_loc2_groups
[] = {
681 "gpio_71", "gpio_72", "gpio_73", "gpio_74",
682 "gpio_75", "gpio_76", "ejtag_vcpu_loc"};
683 static const char * const rtd1619b_ve3_ejtag_disable_groups
[] = { "ejtag_ve3_loc" };
684 static const char * const rtd1619b_aucpu0_ejtag_disable_groups
[] = { "ejtag_aucpu0_loc" };
685 static const char * const rtd1619b_aucpu1_ejtag_disable_groups
[] = { "ejtag_aucpu1_loc" };
687 static const char * const rtd1619b_acpu_ejtag_disable_groups
[] = { "ejtag_acpu_loc" };
688 static const char * const rtd1619b_vcpu_ejtag_disable_groups
[] = { "ejtag_vcpu_loc" };
689 static const char * const rtd1619b_scpu_ejtag_disable_groups
[] = { "ejtag_scpu_loc" };
690 static const char * const rtd1619b_sf_disable_groups
[] = { "sf_en" };
691 static const char * const rtd1619b_sf_enable_groups
[] = { "sf_en" };
692 static const char * const rtd1619b_iso_gspi_disable_groups
[] = { "iso_gspi_loc" };
693 static const char * const rtd1619b_arm_trace_debug_disable_groups
[] = { "arm_trace_dbg_en" };
694 static const char * const rtd1619b_arm_trace_debug_enable_groups
[] = { "arm_trace_dbg_en" };
695 static const char * const rtd1619b_pwm_normal_groups
[] = {
696 "pwm_01_open_drain_en_loc0", "pwm_23_open_drain_en_loc0",
697 "pwm_01_open_drain_en_loc1", "pwm_23_open_drain_en_loc1" };
698 static const char * const rtd1619b_pwm_open_drain_groups
[] = {
699 "pwm_01_open_drain_en_loc0", "pwm_23_open_drain_en_loc0",
700 "pwm_01_open_drain_en_loc1", "pwm_23_open_drain_en_loc1" };
701 static const char * const rtd1619b_standby_dbg_groups
[] = {
702 "gpio_2", "gpio_3", "ir_rx" };
704 static const char * const rtd1619b_usb_cc1_groups
[] = { "usb_cc1" };
705 static const char * const rtd1619b_usb_cc2_groups
[] = { "usb_cc2" };
706 static const char * const rtd1619b_ir_rx_groups
[] = { "ir_rx" };
707 static const char * const rtd1619b_test_loop_dis_groups
[] = { "gpio_50" };
709 #define RTD1619B_FUNC(_name) \
712 .groups = rtd1619b_ ## _name ## _groups, \
713 .num_groups = ARRAY_SIZE(rtd1619b_ ## _name ## _groups), \
716 static const struct rtd_pin_func_desc rtd1619b_pin_functions
[] = {
719 RTD1619B_FUNC(nf_spi
),
722 RTD1619B_FUNC(spdif
),
723 RTD1619B_FUNC(spdif_coaxial
),
724 RTD1619B_FUNC(spdif_optical_loc0
),
725 RTD1619B_FUNC(spdif_optical_loc1
),
726 RTD1619B_FUNC(emmc_spi
),
729 RTD1619B_FUNC(uart0
),
730 RTD1619B_FUNC(uart1
),
731 RTD1619B_FUNC(uart2_loc0
),
732 RTD1619B_FUNC(uart2_loc1
),
733 RTD1619B_FUNC(gspi_loc1
),
734 RTD1619B_FUNC(iso_gspi_loc1
),
744 RTD1619B_FUNC(etn_led
),
745 RTD1619B_FUNC(etn_phy
),
746 RTD1619B_FUNC(etn_clk
),
749 RTD1619B_FUNC(gspi_loc0
),
750 RTD1619B_FUNC(iso_gspi_loc0
),
751 RTD1619B_FUNC(pcie1
),
752 RTD1619B_FUNC(pcie2
),
754 RTD1619B_FUNC(sdio_loc0
),
755 RTD1619B_FUNC(sdio_loc1
),
758 RTD1619B_FUNC(dc_fan
),
759 RTD1619B_FUNC(pll_test_loc0
),
760 RTD1619B_FUNC(pll_test_loc1
),
761 RTD1619B_FUNC(usb_cc1
),
762 RTD1619B_FUNC(usb_cc2
),
763 RTD1619B_FUNC(ir_rx
),
764 RTD1619B_FUNC(tdm_ai_loc0
),
765 RTD1619B_FUNC(tdm_ai_loc1
),
766 RTD1619B_FUNC(dmic_loc0
),
767 RTD1619B_FUNC(dmic_loc1
),
768 RTD1619B_FUNC(ai_loc0
),
769 RTD1619B_FUNC(ai_loc1
),
773 RTD1619B_FUNC(uart2_disable
),
774 RTD1619B_FUNC(gspi_disable
),
775 RTD1619B_FUNC(sdio_disable
),
776 RTD1619B_FUNC(hi_loc_disable
),
777 RTD1619B_FUNC(hi_loc0
),
778 RTD1619B_FUNC(hi_width_disable
),
779 RTD1619B_FUNC(hi_width_1bit
),
780 RTD1619B_FUNC(vtc_i2si_loc0
),
781 RTD1619B_FUNC(vtc_tdm_loc0
),
782 RTD1619B_FUNC(vtc_dmic_loc0
),
783 RTD1619B_FUNC(vtc_i2si_loc1
),
784 RTD1619B_FUNC(vtc_tdm_loc1
),
785 RTD1619B_FUNC(vtc_dmic_loc1
),
786 RTD1619B_FUNC(vtc_i2so
),
787 RTD1619B_FUNC(ve3_ejtag_loc0
),
788 RTD1619B_FUNC(aucpu0_ejtag_loc0
),
789 RTD1619B_FUNC(aucpu1_ejtag_loc0
),
790 RTD1619B_FUNC(ve3_ejtag_loc1
),
791 RTD1619B_FUNC(aucpu0_ejtag_loc1
),
792 RTD1619B_FUNC(aucpu1_ejtag_loc1
),
793 RTD1619B_FUNC(ve3_ejtag_loc2
),
794 RTD1619B_FUNC(aucpu0_ejtag_loc2
),
795 RTD1619B_FUNC(aucpu1_ejtag_loc2
),
796 RTD1619B_FUNC(scpu_ejtag_loc0
),
797 RTD1619B_FUNC(acpu_ejtag_loc0
),
798 RTD1619B_FUNC(vcpu_ejtag_loc0
),
799 RTD1619B_FUNC(scpu_ejtag_loc1
),
800 RTD1619B_FUNC(acpu_ejtag_loc1
),
801 RTD1619B_FUNC(vcpu_ejtag_loc1
),
802 RTD1619B_FUNC(scpu_ejtag_loc2
),
803 RTD1619B_FUNC(acpu_ejtag_loc2
),
804 RTD1619B_FUNC(vcpu_ejtag_loc2
),
805 RTD1619B_FUNC(ve3_ejtag_disable
),
806 RTD1619B_FUNC(aucpu0_ejtag_disable
),
807 RTD1619B_FUNC(aucpu1_ejtag_disable
),
808 RTD1619B_FUNC(acpu_ejtag_disable
),
809 RTD1619B_FUNC(vcpu_ejtag_disable
),
810 RTD1619B_FUNC(scpu_ejtag_disable
),
811 RTD1619B_FUNC(iso_gspi_disable
),
812 RTD1619B_FUNC(sf_disable
),
813 RTD1619B_FUNC(sf_enable
),
814 RTD1619B_FUNC(arm_trace_debug_disable
),
815 RTD1619B_FUNC(arm_trace_debug_enable
),
816 RTD1619B_FUNC(pwm_normal
),
817 RTD1619B_FUNC(pwm_open_drain
),
818 RTD1619B_FUNC(standby_dbg
),
819 RTD1619B_FUNC(test_loop_dis
),
824 static const struct rtd_pin_desc rtd1619b_iso_muxes
[] = {
825 [RTD1619B_ISO_EMMC_RST_N
] = RTK_PIN_MUX(emmc_rst_n
, 0x0, GENMASK(1, 0),
826 RTK_PIN_FUNC(SHIFT_LEFT(0x1, 0), "nf"),
827 RTK_PIN_FUNC(SHIFT_LEFT(0x2, 0), "emmc")),
828 [RTD1619B_ISO_EMMC_DD_SB
] = RTK_PIN_MUX(emmc_dd_sb
, 0x0, GENMASK(3, 2),
829 RTK_PIN_FUNC(SHIFT_LEFT(0x2, 2), "emmc")),
830 [RTD1619B_ISO_EMMC_CLK
] = RTK_PIN_MUX(emmc_clk
, 0x0, GENMASK(5, 4),
831 RTK_PIN_FUNC(SHIFT_LEFT(0x1, 4), "nf"),
832 RTK_PIN_FUNC(SHIFT_LEFT(0x2, 4), "emmc")),
833 [RTD1619B_ISO_EMMC_CMD
] = RTK_PIN_MUX(emmc_cmd
, 0x0, GENMASK(7, 6),
834 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 6), "gpio"),
835 RTK_PIN_FUNC(SHIFT_LEFT(0x1, 6), "nf"),
836 RTK_PIN_FUNC(SHIFT_LEFT(0x2, 6), "emmc")),
837 [RTD1619B_ISO_EMMC_DATA_0
] = RTK_PIN_MUX(emmc_data_0
, 0x0, GENMASK(9, 8),
838 RTK_PIN_FUNC(SHIFT_LEFT(0x1, 8), "nf"),
839 RTK_PIN_FUNC(SHIFT_LEFT(0x2, 8), "emmc"),
840 RTK_PIN_FUNC(SHIFT_LEFT(0x3, 8), "nf_spi")),
841 [RTD1619B_ISO_EMMC_DATA_1
] = RTK_PIN_MUX(emmc_data_1
, 0x0, GENMASK(11, 10),
842 RTK_PIN_FUNC(SHIFT_LEFT(0x1, 10), "nf"),
843 RTK_PIN_FUNC(SHIFT_LEFT(0x2, 10), "emmc"),
844 RTK_PIN_FUNC(SHIFT_LEFT(0x3, 10), "nf_spi")),
845 [RTD1619B_ISO_EMMC_DATA_2
] = RTK_PIN_MUX(emmc_data_2
, 0x0, GENMASK(13, 12),
846 RTK_PIN_FUNC(SHIFT_LEFT(0x1, 12), "nf"),
847 RTK_PIN_FUNC(SHIFT_LEFT(0x2, 12), "emmc"),
848 RTK_PIN_FUNC(SHIFT_LEFT(0x3, 12), "nf_spi")),
849 [RTD1619B_ISO_EMMC_DATA_3
] = RTK_PIN_MUX(emmc_data_3
, 0x0, GENMASK(15, 14),
850 RTK_PIN_FUNC(SHIFT_LEFT(0x1, 14), "nf"),
851 RTK_PIN_FUNC(SHIFT_LEFT(0x2, 14), "emmc"),
852 RTK_PIN_FUNC(SHIFT_LEFT(0x3, 14), "nf_spi")),
853 [RTD1619B_ISO_EMMC_DATA_4
] = RTK_PIN_MUX(emmc_data_4
, 0x0, GENMASK(17, 16),
854 RTK_PIN_FUNC(SHIFT_LEFT(0x1, 16), "nf"),
855 RTK_PIN_FUNC(SHIFT_LEFT(0x2, 16), "emmc"),
856 RTK_PIN_FUNC(SHIFT_LEFT(0x3, 16), "nf_spi")),
857 [RTD1619B_ISO_EMMC_DATA_5
] = RTK_PIN_MUX(emmc_data_5
, 0x0, GENMASK(19, 18),
858 RTK_PIN_FUNC(SHIFT_LEFT(0x1, 18), "nf"),
859 RTK_PIN_FUNC(SHIFT_LEFT(0x2, 18), "emmc"),
860 RTK_PIN_FUNC(SHIFT_LEFT(0x3, 18), "nf_spi")),
861 [RTD1619B_ISO_EMMC_DATA_6
] = RTK_PIN_MUX(emmc_data_6
, 0x0, GENMASK(21, 20),
862 RTK_PIN_FUNC(SHIFT_LEFT(0x1, 20), "nf"),
863 RTK_PIN_FUNC(SHIFT_LEFT(0x2, 20), "emmc")),
864 [RTD1619B_ISO_EMMC_DATA_7
] = RTK_PIN_MUX(emmc_data_7
, 0x0, GENMASK(23, 22),
865 RTK_PIN_FUNC(SHIFT_LEFT(0x1, 22), "nf"),
866 RTK_PIN_FUNC(SHIFT_LEFT(0x2, 22), "emmc")),
867 [RTD1619B_ISO_SPI_CE_N
] = RTK_PIN_MUX(spi_ce_n
, 0x0, GENMASK(25, 24),
868 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 24), "gpio"),
869 RTK_PIN_FUNC(SHIFT_LEFT(0x1, 24), "nf"),
870 RTK_PIN_FUNC(SHIFT_LEFT(0x2, 24), "spi"),
871 RTK_PIN_FUNC(SHIFT_LEFT(0x3, 24), "pmic")),
872 [RTD1619B_ISO_SPI_SCK
] = RTK_PIN_MUX(spi_sck
, 0x0, GENMASK(27, 26),
873 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 26), "gpio"),
874 RTK_PIN_FUNC(SHIFT_LEFT(0x1, 26), "nf"),
875 RTK_PIN_FUNC(SHIFT_LEFT(0x2, 26), "spi")),
876 [RTD1619B_ISO_SPI_SO
] = RTK_PIN_MUX(spi_so
, 0x0, GENMASK(29, 28),
877 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 28), "gpio"),
878 RTK_PIN_FUNC(SHIFT_LEFT(0x1, 28), "nf"),
879 RTK_PIN_FUNC(SHIFT_LEFT(0x2, 28), "spi")),
880 [RTD1619B_ISO_SPI_SI
] = RTK_PIN_MUX(spi_si
, 0x0, GENMASK(31, 30),
881 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 30), "gpio"),
882 RTK_PIN_FUNC(SHIFT_LEFT(0x1, 30), "nf"),
883 RTK_PIN_FUNC(SHIFT_LEFT(0x2, 30), "spi")),
885 [RTD1619B_ISO_GPIO_0
] = RTK_PIN_MUX(gpio_0
, 0x4, GENMASK(0, 0),
886 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 0), "gpio")),
887 [RTD1619B_ISO_GPIO_1
] = RTK_PIN_MUX(gpio_1
, 0x4, GENMASK(3, 1),
888 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 1), "gpio"),
889 RTK_PIN_FUNC(SHIFT_LEFT(0x3, 1), "emmc_spi"),
890 RTK_PIN_FUNC(SHIFT_LEFT(0x5, 1), "spdif_coaxial")),
891 [RTD1619B_ISO_GPIO_2
] = RTK_PIN_MUX(gpio_2
, 0x4, GENMASK(7, 4),
892 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 4), "gpio"),
893 RTK_PIN_FUNC(SHIFT_LEFT(0x1, 4), "standby_dbg"),
894 RTK_PIN_FUNC(SHIFT_LEFT(0x3, 4), "emmc_spi"),
895 RTK_PIN_FUNC(SHIFT_LEFT(0x4, 4), "sc1"),
896 RTK_PIN_FUNC(SHIFT_LEFT(0x5, 4), "scpu_ejtag_loc0"),
897 RTK_PIN_FUNC(SHIFT_LEFT(0x6, 4), "acpu_ejtag_loc0"),
898 RTK_PIN_FUNC(SHIFT_LEFT(0x7, 4), "vcpu_ejtag_loc0"),
899 RTK_PIN_FUNC(SHIFT_LEFT(0x8, 4), "ve3_ejtag_loc0"),
900 RTK_PIN_FUNC(SHIFT_LEFT(0x9, 4), "aucpu0_ejtag_loc0"),
901 RTK_PIN_FUNC(SHIFT_LEFT(0x10, 4), "aucpu1_ejtag_loc0")),
902 [RTD1619B_ISO_GPIO_3
] = RTK_PIN_MUX(gpio_3
, 0x4, GENMASK(11, 8),
903 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 8), "gpio"),
904 RTK_PIN_FUNC(SHIFT_LEFT(0x1, 8), "standby_dbg"),
905 RTK_PIN_FUNC(SHIFT_LEFT(0x3, 8), "emmc_spi"),
906 RTK_PIN_FUNC(SHIFT_LEFT(0x4, 8), "sc1"),
907 RTK_PIN_FUNC(SHIFT_LEFT(0x5, 8), "scpu_ejtag_loc0"),
908 RTK_PIN_FUNC(SHIFT_LEFT(0x6, 8), "acpu_ejtag_loc0"),
909 RTK_PIN_FUNC(SHIFT_LEFT(0x7, 8), "vcpu_ejtag_loc0"),
910 RTK_PIN_FUNC(SHIFT_LEFT(0x8, 8), "ve3_ejtag_loc0"),
911 RTK_PIN_FUNC(SHIFT_LEFT(0x9, 8), "aucpu0_ejtag_loc0"),
912 RTK_PIN_FUNC(SHIFT_LEFT(0x10, 8), "aucpu1_ejtag_loc0")),
913 [RTD1619B_ISO_GPIO_4
] = RTK_PIN_MUX(gpio_4
, 0x4, GENMASK(15, 12),
914 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 12), "gpio"),
915 RTK_PIN_FUNC(SHIFT_LEFT(0x3, 12), "emmc_spi"),
916 RTK_PIN_FUNC(SHIFT_LEFT(0x4, 12), "sc1"),
917 RTK_PIN_FUNC(SHIFT_LEFT(0x5, 12), "scpu_ejtag_loc0"),
918 RTK_PIN_FUNC(SHIFT_LEFT(0x6, 12), "acpu_ejtag_loc0"),
919 RTK_PIN_FUNC(SHIFT_LEFT(0x7, 12), "vcpu_ejtag_loc0"),
920 RTK_PIN_FUNC(SHIFT_LEFT(0x8, 12), "ve3_ejtag_loc0"),
921 RTK_PIN_FUNC(SHIFT_LEFT(0x9, 12), "aucpu0_ejtag_loc0"),
922 RTK_PIN_FUNC(SHIFT_LEFT(0x10, 12), "aucpu1_ejtag_loc0")),
923 [RTD1619B_ISO_GPIO_5
] = RTK_PIN_MUX(gpio_5
, 0x4, GENMASK(19, 16),
924 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 16), "gpio"),
925 RTK_PIN_FUNC(SHIFT_LEFT(0x3, 16), "emmc_spi"),
926 RTK_PIN_FUNC(SHIFT_LEFT(0x4, 16), "sc1"),
927 RTK_PIN_FUNC(SHIFT_LEFT(0x5, 16), "scpu_ejtag_loc0"),
928 RTK_PIN_FUNC(SHIFT_LEFT(0x6, 16), "acpu_ejtag_loc0"),
929 RTK_PIN_FUNC(SHIFT_LEFT(0x7, 16), "vcpu_ejtag_loc0"),
930 RTK_PIN_FUNC(SHIFT_LEFT(0x8, 16), "ve3_ejtag_loc0"),
931 RTK_PIN_FUNC(SHIFT_LEFT(0x9, 16), "aucpu0_ejtag_loc0"),
932 RTK_PIN_FUNC(SHIFT_LEFT(0x10, 16), "aucpu1_ejtag_loc0")),
933 [RTD1619B_ISO_GPIO_6
] = RTK_PIN_MUX(gpio_6
, 0x4, GENMASK(23, 20),
934 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 20), "gpio"),
935 RTK_PIN_FUNC(SHIFT_LEFT(0x3, 20), "emmc_spi"),
936 RTK_PIN_FUNC(SHIFT_LEFT(0x4, 20), "spdif_optical_loc0"),
937 RTK_PIN_FUNC(SHIFT_LEFT(0x5, 20), "scpu_ejtag_loc0"),
938 RTK_PIN_FUNC(SHIFT_LEFT(0x6, 20), "acpu_ejtag_loc0"),
939 RTK_PIN_FUNC(SHIFT_LEFT(0x7, 20), "vcpu_ejtag_loc0"),
940 RTK_PIN_FUNC(SHIFT_LEFT(0x8, 20), "ve3_ejtag_loc0"),
941 RTK_PIN_FUNC(SHIFT_LEFT(0x9, 20), "aucpu0_ejtag_loc0"),
942 RTK_PIN_FUNC(SHIFT_LEFT(0x10, 20), "aucpu1_ejtag_loc0")),
943 [RTD1619B_ISO_GPIO_7
] = RTK_PIN_MUX(gpio_7
, 0x4, GENMASK(24, 24),
944 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 24), "gpio")),
945 [RTD1619B_ISO_GPIO_8
] = RTK_PIN_MUX(gpio_8
, 0x4, GENMASK(27, 25),
946 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 25), "gpio"),
947 RTK_PIN_FUNC(SHIFT_LEFT(0x1, 25), "uart1"),
948 RTK_PIN_FUNC(SHIFT_LEFT(0x3, 25), "gspi_loc1"),
949 RTK_PIN_FUNC(SHIFT_LEFT(0x5, 25), "iso_gspi_loc1")),
950 [RTD1619B_ISO_GPIO_9
] = RTK_PIN_MUX(gpio_9
, 0x4, GENMASK(30, 28),
951 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 28), "gpio"),
952 RTK_PIN_FUNC(SHIFT_LEFT(0x1, 28), "uart1"),
953 RTK_PIN_FUNC(SHIFT_LEFT(0x3, 28), "gspi_loc1"),
954 RTK_PIN_FUNC(SHIFT_LEFT(0x5, 28), "iso_gspi_loc1")),
955 [RTD1619B_ISO_GPIO_10
] = RTK_PIN_MUX(gpio_10
, 0x8, GENMASK(2, 0),
956 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 0), "gpio"),
957 RTK_PIN_FUNC(SHIFT_LEFT(0x1, 0), "uart1"),
958 RTK_PIN_FUNC(SHIFT_LEFT(0x3, 0), "gspi_loc1"),
959 RTK_PIN_FUNC(SHIFT_LEFT(0x5, 0), "iso_gspi_loc1")),
960 [RTD1619B_ISO_GPIO_11
] = RTK_PIN_MUX(gpio_11
, 0x8, GENMASK(5, 3),
961 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 3), "gpio"),
962 RTK_PIN_FUNC(SHIFT_LEFT(0x1, 3), "uart1"),
963 RTK_PIN_FUNC(SHIFT_LEFT(0x3, 3), "gspi_loc1"),
964 RTK_PIN_FUNC(SHIFT_LEFT(0x5, 3), "iso_gspi_loc1")),
966 [RTD1619B_ISO_GPIO_12
] = RTK_PIN_MUX(gpio_12
, 0x8, GENMASK(6, 6),
967 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 6), "gpio"),
968 RTK_PIN_FUNC(SHIFT_LEFT(0x1, 6), "i2c0")),
969 [RTD1619B_ISO_GPIO_13
] = RTK_PIN_MUX(gpio_13
, 0x8, GENMASK(7, 7),
970 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 7), "gpio"),
971 RTK_PIN_FUNC(SHIFT_LEFT(0x1, 7), "i2c0")),
972 [RTD1619B_ISO_GPIO_14
] = RTK_PIN_MUX(gpio_14
, 0x8, GENMASK(10, 8),
973 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 8), "gpio"),
974 RTK_PIN_FUNC(SHIFT_LEFT(0x1, 8), "etn_led"),
975 RTK_PIN_FUNC(SHIFT_LEFT(0x3, 8), "etn_phy"),
976 RTK_PIN_FUNC(SHIFT_LEFT(0x5, 8), "etn_clk")),
977 [RTD1619B_ISO_GPIO_15
] = RTK_PIN_MUX(gpio_15
, 0x8, GENMASK(12, 11),
978 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 11), "gpio"),
979 RTK_PIN_FUNC(SHIFT_LEFT(0x1, 11), "etn_led"),
980 RTK_PIN_FUNC(SHIFT_LEFT(0x3, 11), "etn_phy")),
981 [RTD1619B_ISO_GPIO_16
] = RTK_PIN_MUX(gpio_16
, 0x8, GENMASK(13, 13),
982 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 13), "gpio"),
983 RTK_PIN_FUNC(SHIFT_LEFT(0x1, 13), "i2c1")),
984 [RTD1619B_ISO_GPIO_17
] = RTK_PIN_MUX(gpio_17
, 0x8, GENMASK(14, 14),
985 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 14), "gpio"),
986 RTK_PIN_FUNC(SHIFT_LEFT(0x1, 14), "i2c1")),
987 [RTD1619B_ISO_GPIO_18
] = RTK_PIN_MUX(gpio_18
, 0x8, GENMASK(17, 15),
988 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 15), "gpio"),
989 RTK_PIN_FUNC(SHIFT_LEFT(0x1, 15), "uart2_loc0"),
990 RTK_PIN_FUNC(SHIFT_LEFT(0x2, 15), "sc0"),
991 RTK_PIN_FUNC(SHIFT_LEFT(0x3, 15), "gspi_loc0"),
992 RTK_PIN_FUNC(SHIFT_LEFT(0x5, 15), "iso_gspi_loc0")),
993 [RTD1619B_ISO_GPIO_19
] = RTK_PIN_MUX(gpio_19
, 0x8, GENMASK(20, 18),
994 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 18), "gpio"),
995 RTK_PIN_FUNC(SHIFT_LEFT(0x1, 18), "uart2_loc0"),
996 RTK_PIN_FUNC(SHIFT_LEFT(0x2, 18), "sc0"),
997 RTK_PIN_FUNC(SHIFT_LEFT(0x3, 18), "gspi_loc0"),
998 RTK_PIN_FUNC(SHIFT_LEFT(0x5, 18), "iso_gspi_loc0")),
999 [RTD1619B_ISO_GPIO_20
] = RTK_PIN_MUX(gpio_20
, 0x8, GENMASK(23, 21),
1000 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 21), "gpio"),
1001 RTK_PIN_FUNC(SHIFT_LEFT(0x1, 21), "uart2_loc0"),
1002 RTK_PIN_FUNC(SHIFT_LEFT(0x2, 21), "pwm0"),
1003 RTK_PIN_FUNC(SHIFT_LEFT(0x3, 21), "gspi_loc0"),
1004 RTK_PIN_FUNC(SHIFT_LEFT(0x4, 21), "sc0"),
1005 RTK_PIN_FUNC(SHIFT_LEFT(0x5, 21), "iso_gspi_loc0")),
1006 [RTD1619B_ISO_GPIO_21
] = RTK_PIN_MUX(gpio_21
, 0x8, GENMASK(26, 24),
1007 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 24), "gpio"),
1008 RTK_PIN_FUNC(SHIFT_LEFT(0x2, 24), "pwm1"),
1009 RTK_PIN_FUNC(SHIFT_LEFT(0x5, 24), "spdif_optical_loc1")),
1010 [RTD1619B_ISO_GPIO_22
] = RTK_PIN_MUX(gpio_22
, 0x8, GENMASK(28, 27),
1011 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 27), "gpio"),
1012 RTK_PIN_FUNC(SHIFT_LEFT(0x2, 27), "pwm2")),
1013 [RTD1619B_ISO_GPIO_23
] = RTK_PIN_MUX(gpio_23
, 0x8, GENMASK(30, 29),
1014 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 29), "gpio"),
1015 RTK_PIN_FUNC(SHIFT_LEFT(0x1, 29), "etn_led"),
1016 RTK_PIN_FUNC(SHIFT_LEFT(0x2, 29), "pwm3")),
1017 [RTD1619B_ISO_USB_CC2
] = RTK_PIN_MUX(usb_cc2
, 0x8, GENMASK(31, 31),
1018 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 31), "gpio"),
1019 RTK_PIN_FUNC(SHIFT_LEFT(0x1, 31), "usb_cc2")),
1020 [RTD1619B_ISO_GPIO_25
] = RTK_PIN_MUX(gpio_25
, 0xc, GENMASK(1, 0),
1021 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 0), "gpio"),
1022 RTK_PIN_FUNC(SHIFT_LEFT(0x1, 0), "uart2_loc1"),
1023 RTK_PIN_FUNC(SHIFT_LEFT(0x2, 0), "pcie1")),
1024 [RTD1619B_ISO_GPIO_26
] = RTK_PIN_MUX(gpio_26
, 0xc, GENMASK(3, 2),
1025 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 2), "gpio"),
1026 RTK_PIN_FUNC(SHIFT_LEFT(0x1, 2), "uart2_loc1"),
1027 RTK_PIN_FUNC(SHIFT_LEFT(0x2, 2), "vfd"),
1028 RTK_PIN_FUNC(SHIFT_LEFT(0x3, 2), "pwm0")),
1029 [RTD1619B_ISO_GPIO_27
] = RTK_PIN_MUX(gpio_27
, 0xc, GENMASK(5, 4),
1030 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 4), "gpio"),
1031 RTK_PIN_FUNC(SHIFT_LEFT(0x1, 4), "uart2_loc1"),
1032 RTK_PIN_FUNC(SHIFT_LEFT(0x2, 4), "vfd"),
1033 RTK_PIN_FUNC(SHIFT_LEFT(0x3, 4), "pwm1")),
1035 [RTD1619B_ISO_GPIO_28
] = RTK_PIN_MUX(gpio_28
, 0xc, GENMASK(7, 6),
1036 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 6), "gpio"),
1037 RTK_PIN_FUNC(SHIFT_LEFT(0x1, 6), "uart2_loc1"),
1038 RTK_PIN_FUNC(SHIFT_LEFT(0x2, 6), "vfd"),
1039 RTK_PIN_FUNC(SHIFT_LEFT(0x3, 6), "pwm2")),
1040 [RTD1619B_ISO_GPIO_29
] = RTK_PIN_MUX(gpio_29
, 0xc, GENMASK(8, 8),
1041 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 8), "gpio"),
1042 RTK_PIN_FUNC(SHIFT_LEFT(0x1, 8), "i2c5")),
1043 [RTD1619B_ISO_GPIO_30
] = RTK_PIN_MUX(gpio_30
, 0xc, GENMASK(9, 9),
1044 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 9), "gpio")),
1045 [RTD1619B_ISO_GPIO_31
] = RTK_PIN_MUX(gpio_31
, 0xc, GENMASK(12, 10),
1046 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 10), "gpio"),
1047 RTK_PIN_FUNC(SHIFT_LEFT(0x1, 10), "uart2_loc0"),
1048 RTK_PIN_FUNC(SHIFT_LEFT(0x2, 10), "sc0"),
1049 RTK_PIN_FUNC(SHIFT_LEFT(0x3, 10), "gspi_loc0"),
1050 RTK_PIN_FUNC(SHIFT_LEFT(0x5, 10), "iso_gspi_loc0")),
1051 [RTD1619B_ISO_GPIO_32
] = RTK_PIN_MUX(gpio_32
, 0xc, GENMASK(17, 13),
1052 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 13), "gpio"),
1053 RTK_PIN_FUNC(SHIFT_LEFT(0x1, 13), "sd"),
1054 RTK_PIN_FUNC(SHIFT_LEFT(0x2, 13), "sdio_loc0"),
1055 RTK_PIN_FUNC(SHIFT_LEFT(0x3, 13), "dmic_loc1"),
1056 RTK_PIN_FUNC(SHIFT_LEFT(0x4, 13), "ai_loc1"),
1057 RTK_PIN_FUNC(SHIFT_LEFT(0x5, 13), "scpu_ejtag_loc1"),
1058 RTK_PIN_FUNC(SHIFT_LEFT(0x6, 13), "acpu_ejtag_loc1"),
1059 RTK_PIN_FUNC(SHIFT_LEFT(0x7, 13), "vcpu_ejtag_loc1"),
1060 RTK_PIN_FUNC(SHIFT_LEFT(0x11, 13), "vtc_i2si_loc0"),
1061 RTK_PIN_FUNC(SHIFT_LEFT(0x14, 13), "ve3_ejtag_loc1"),
1062 RTK_PIN_FUNC(SHIFT_LEFT(0x15, 13), "aucpu0_ejtag_loc1"),
1063 RTK_PIN_FUNC(SHIFT_LEFT(0x16, 13), "aucpu1_ejtag_loc1")),
1064 [RTD1619B_ISO_GPIO_33
] = RTK_PIN_MUX(gpio_33
, 0xc, GENMASK(22, 18),
1065 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 18), "gpio"),
1066 RTK_PIN_FUNC(SHIFT_LEFT(0x1, 18), "sd"),
1067 RTK_PIN_FUNC(SHIFT_LEFT(0x2, 18), "sdio_loc0"),
1068 RTK_PIN_FUNC(SHIFT_LEFT(0x3, 18), "dmic_loc1"),
1069 RTK_PIN_FUNC(SHIFT_LEFT(0x4, 18), "ai_loc1"),
1070 RTK_PIN_FUNC(SHIFT_LEFT(0x5, 18), "scpu_ejtag_loc1"),
1071 RTK_PIN_FUNC(SHIFT_LEFT(0x6, 18), "acpu_ejtag_loc1"),
1072 RTK_PIN_FUNC(SHIFT_LEFT(0x7, 18), "vcpu_ejtag_loc1"),
1073 RTK_PIN_FUNC(SHIFT_LEFT(0x14, 18), "ve3_ejtag_loc1"),
1074 RTK_PIN_FUNC(SHIFT_LEFT(0x15, 18), "aucpu0_ejtag_loc1"),
1075 RTK_PIN_FUNC(SHIFT_LEFT(0x16, 18), "aucpu1_ejtag_loc1")),
1076 [RTD1619B_ISO_GPIO_34
] = RTK_PIN_MUX(gpio_34
, 0xc, GENMASK(25, 23),
1077 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 23), "gpio"),
1078 RTK_PIN_FUNC(SHIFT_LEFT(0x1, 23), "sd"),
1079 RTK_PIN_FUNC(SHIFT_LEFT(0x3, 23), "dmic_loc1"),
1080 RTK_PIN_FUNC(SHIFT_LEFT(0x4, 23), "ai_loc1"),
1081 RTK_PIN_FUNC(SHIFT_LEFT(0x5, 23), "i2c4")),
1082 [RTD1619B_ISO_GPIO_35
] = RTK_PIN_MUX(gpio_35
, 0xc, GENMASK(28, 26),
1083 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 26), "gpio"),
1084 RTK_PIN_FUNC(SHIFT_LEFT(0x1, 26), "sd"),
1085 RTK_PIN_FUNC(SHIFT_LEFT(0x3, 26), "dmic_loc1"),
1086 RTK_PIN_FUNC(SHIFT_LEFT(0x5, 26), "i2c4")),
1087 [RTD1619B_ISO_HIF_DATA
] = RTK_PIN_MUX(hif_data
, 0x10, GENMASK(4, 0),
1088 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 0), "gpio"),
1089 RTK_PIN_FUNC(SHIFT_LEFT(0x1, 0), "sd"),
1090 RTK_PIN_FUNC(SHIFT_LEFT(0x2, 0), "sdio_loc0"),
1091 RTK_PIN_FUNC(SHIFT_LEFT(0x3, 0), "dmic_loc1"),
1092 RTK_PIN_FUNC(SHIFT_LEFT(0x4, 0), "tdm_ai_loc1"),
1093 RTK_PIN_FUNC(SHIFT_LEFT(0x5, 0), "scpu_ejtag_loc1"),
1094 RTK_PIN_FUNC(SHIFT_LEFT(0x6, 0), "acpu_ejtag_loc1"),
1095 RTK_PIN_FUNC(SHIFT_LEFT(0x7, 0), "vcpu_ejtag_loc1"),
1096 RTK_PIN_FUNC(SHIFT_LEFT(0x8, 0), "ai_loc1"),
1097 RTK_PIN_FUNC(SHIFT_LEFT(0x9, 0), "hi"),
1098 RTK_PIN_FUNC(SHIFT_LEFT(0x10, 0), "hi_m"),
1099 RTK_PIN_FUNC(SHIFT_LEFT(0x11, 0), "vtc_i2si_loc0"),
1100 RTK_PIN_FUNC(SHIFT_LEFT(0x12, 0), "vtc_tdm_loc0"),
1101 RTK_PIN_FUNC(SHIFT_LEFT(0x13, 0), "vtc_dmic_loc0"),
1102 RTK_PIN_FUNC(SHIFT_LEFT(0x14, 0), "ve3_ejtag_loc1"),
1103 RTK_PIN_FUNC(SHIFT_LEFT(0x15, 0), "aucpu0_ejtag_loc1"),
1104 RTK_PIN_FUNC(SHIFT_LEFT(0x16, 0), "aucpu1_ejtag_loc1")),
1105 [RTD1619B_ISO_HIF_EN
] = RTK_PIN_MUX(hif_en
, 0x10, GENMASK(9, 5),
1106 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 5), "gpio"),
1107 RTK_PIN_FUNC(SHIFT_LEFT(0x1, 5), "sd"),
1108 RTK_PIN_FUNC(SHIFT_LEFT(0x2, 5), "sdio_loc0"),
1109 RTK_PIN_FUNC(SHIFT_LEFT(0x3, 5), "dmic_loc1"),
1110 RTK_PIN_FUNC(SHIFT_LEFT(0x4, 5), "tdm_ai_loc1"),
1111 RTK_PIN_FUNC(SHIFT_LEFT(0x5, 5), "scpu_ejtag_loc1"),
1112 RTK_PIN_FUNC(SHIFT_LEFT(0x6, 5), "acpu_ejtag_loc1"),
1113 RTK_PIN_FUNC(SHIFT_LEFT(0x7, 5), "vcpu_ejtag_loc1"),
1114 RTK_PIN_FUNC(SHIFT_LEFT(0x8, 5), "ai_loc1"),
1115 RTK_PIN_FUNC(SHIFT_LEFT(0x9, 5), "hi"),
1116 RTK_PIN_FUNC(SHIFT_LEFT(0x10, 5), "hi_m"),
1117 RTK_PIN_FUNC(SHIFT_LEFT(0x11, 5), "vtc_i2si_loc0"),
1118 RTK_PIN_FUNC(SHIFT_LEFT(0x12, 5), "vtc_tdm_loc0"),
1119 RTK_PIN_FUNC(SHIFT_LEFT(0x13, 5), "vtc_dmic_loc0"),
1120 RTK_PIN_FUNC(SHIFT_LEFT(0x14, 5), "ve3_ejtag_loc1"),
1121 RTK_PIN_FUNC(SHIFT_LEFT(0x15, 5), "aucpu0_ejtag_loc1"),
1122 RTK_PIN_FUNC(SHIFT_LEFT(0x16, 5), "aucpu1_ejtag_loc1")),
1123 [RTD1619B_ISO_HIF_RDY
] = RTK_PIN_MUX(hif_rdy
, 0x10, GENMASK(13, 10),
1124 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 10), "gpio"),
1125 RTK_PIN_FUNC(SHIFT_LEFT(0x1, 10), "sd"),
1126 RTK_PIN_FUNC(SHIFT_LEFT(0x2, 10), "sdio_loc0"),
1127 RTK_PIN_FUNC(SHIFT_LEFT(0x3, 10), "dmic_loc1"),
1128 RTK_PIN_FUNC(SHIFT_LEFT(0x4, 10), "tdm_ai_loc1"),
1129 RTK_PIN_FUNC(SHIFT_LEFT(0x8, 10), "ai_loc1"),
1130 RTK_PIN_FUNC(SHIFT_LEFT(0x9, 10), "hi"),
1131 RTK_PIN_FUNC(SHIFT_LEFT(0x10, 10), "hi_m"),
1132 RTK_PIN_FUNC(SHIFT_LEFT(0x11, 10), "vtc_i2si_loc0"),
1133 RTK_PIN_FUNC(SHIFT_LEFT(0x12, 10), "vtc_tdm_loc0"),
1134 RTK_PIN_FUNC(SHIFT_LEFT(0x13, 10), "vtc_dmic_loc0")),
1136 [RTD1619B_ISO_HIF_CLK
] = RTK_PIN_MUX(hif_clk
, 0x10, GENMASK(18, 14),
1137 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 14), "gpio"),
1138 RTK_PIN_FUNC(SHIFT_LEFT(0x1, 14), "sd"),
1139 RTK_PIN_FUNC(SHIFT_LEFT(0x2, 14), "sdio_loc0"),
1140 RTK_PIN_FUNC(SHIFT_LEFT(0x3, 14), "dmic_loc1"),
1141 RTK_PIN_FUNC(SHIFT_LEFT(0x4, 14), "tdm_ai_loc1"),
1142 RTK_PIN_FUNC(SHIFT_LEFT(0x5, 14), "scpu_ejtag_loc1"),
1143 RTK_PIN_FUNC(SHIFT_LEFT(0x6, 14), "acpu_ejtag_loc1"),
1144 RTK_PIN_FUNC(SHIFT_LEFT(0x7, 14), "vcpu_ejtag_loc1"),
1145 RTK_PIN_FUNC(SHIFT_LEFT(0x8, 14), "ai_loc1"),
1146 RTK_PIN_FUNC(SHIFT_LEFT(0x9, 14), "hi"),
1147 RTK_PIN_FUNC(SHIFT_LEFT(0x10, 14), "hi_m"),
1148 RTK_PIN_FUNC(SHIFT_LEFT(0x11, 14), "vtc_i2si_loc0"),
1149 RTK_PIN_FUNC(SHIFT_LEFT(0x12, 14), "vtc_tdm_loc0"),
1150 RTK_PIN_FUNC(SHIFT_LEFT(0x13, 14), "vtc_dmic_loc0"),
1151 RTK_PIN_FUNC(SHIFT_LEFT(0x14, 14), "ve3_ejtag_loc1"),
1152 RTK_PIN_FUNC(SHIFT_LEFT(0x15, 14), "aucpu0_ejtag_loc1"),
1153 RTK_PIN_FUNC(SHIFT_LEFT(0x16, 14), "aucpu1_ejtag_loc1")),
1154 [RTD1619B_ISO_GPIO_40
] = RTK_PIN_MUX(gpio_40
, 0x10, GENMASK(20, 19),
1155 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 19), "gpio"),
1156 RTK_PIN_FUNC(SHIFT_LEFT(0x2, 19), "sdio_loc1")),
1157 [RTD1619B_ISO_GPIO_41
] = RTK_PIN_MUX(gpio_41
, 0x10, GENMASK(22, 21),
1158 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 21), "gpio"),
1159 RTK_PIN_FUNC(SHIFT_LEFT(0x2, 21), "sdio_loc1")),
1160 [RTD1619B_ISO_GPIO_42
] = RTK_PIN_MUX(gpio_42
, 0x10, GENMASK(24, 23),
1161 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 23), "gpio"),
1162 RTK_PIN_FUNC(SHIFT_LEFT(0x2, 23), "sdio_loc1")),
1163 [RTD1619B_ISO_GPIO_43
] = RTK_PIN_MUX(gpio_43
, 0x10, GENMASK(26, 25),
1164 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 25), "gpio"),
1165 RTK_PIN_FUNC(SHIFT_LEFT(0x2, 25), "sdio_loc1")),
1166 [RTD1619B_ISO_GPIO_44
] = RTK_PIN_MUX(gpio_44
, 0x10, GENMASK(28, 27),
1167 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 27), "gpio"),
1168 RTK_PIN_FUNC(SHIFT_LEFT(0x2, 27), "sdio_loc1")),
1169 [RTD1619B_ISO_GPIO_45
] = RTK_PIN_MUX(gpio_45
, 0x10, GENMASK(30, 29),
1170 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 29), "gpio"),
1171 RTK_PIN_FUNC(SHIFT_LEFT(0x2, 29), "sdio_loc1")),
1172 [RTD1619B_ISO_GPIO_46
] = RTK_PIN_MUX(gpio_46
, 0x10, GENMASK(31, 31),
1173 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 31), "gpio"),
1174 RTK_PIN_FUNC(SHIFT_LEFT(0x1, 31), "i2c5")),
1175 [RTD1619B_ISO_GPIO_47
] = RTK_PIN_MUX(gpio_47
, 0x14, GENMASK(1, 0),
1176 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 0), "gpio"),
1177 RTK_PIN_FUNC(SHIFT_LEFT(0x2, 0), "dc_fan"),
1178 RTK_PIN_FUNC(SHIFT_LEFT(0x3, 0), "pwm3")),
1179 [RTD1619B_ISO_GPIO_48
] = RTK_PIN_MUX(gpio_48
, 0x14, GENMASK(2, 2),
1180 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 2), "gpio"),
1181 RTK_PIN_FUNC(SHIFT_LEFT(0x1, 2), "pll_test_loc1")),
1182 [RTD1619B_ISO_GPIO_49
] = RTK_PIN_MUX(gpio_49
, 0x14, GENMASK(3, 3),
1183 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 3), "gpio"),
1184 RTK_PIN_FUNC(SHIFT_LEFT(0x1, 3), "pll_test_loc1")),
1185 [RTD1619B_ISO_GPIO_50
] = RTK_PIN_MUX(gpio_50
, 0x14, GENMASK(5, 4),
1186 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 4), "gpio"),
1187 RTK_PIN_FUNC(SHIFT_LEFT(0x1, 4), "spdif"),
1188 RTK_PIN_FUNC(SHIFT_LEFT(0x2, 4), "test_loop_dis")),
1189 [RTD1619B_ISO_USB_CC1
] = RTK_PIN_MUX(usb_cc1
, 0x14, GENMASK(6, 6),
1190 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 6), "gpio"),
1191 RTK_PIN_FUNC(SHIFT_LEFT(0x1, 6), "usb_cc1")),
1192 [RTD1619B_ISO_GPIO_52
] = RTK_PIN_MUX(gpio_52
, 0x14, GENMASK(8, 7),
1193 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 7), "gpio"),
1194 RTK_PIN_FUNC(SHIFT_LEFT(0x1, 7), "pll_test_loc0"),
1195 RTK_PIN_FUNC(SHIFT_LEFT(0x3, 7), "pcie2")),
1196 [RTD1619B_ISO_GPIO_53
] = RTK_PIN_MUX(gpio_53
, 0x14, GENMASK(9, 9),
1197 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 9), "gpio"),
1198 RTK_PIN_FUNC(SHIFT_LEFT(0x1, 9), "pll_test_loc0")),
1199 [RTD1619B_ISO_IR_RX
] = RTK_PIN_MUX(ir_rx
, 0x14, GENMASK(11, 10),
1200 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 10), "gpio"),
1201 RTK_PIN_FUNC(SHIFT_LEFT(0x1, 10), "ir_rx"),
1202 RTK_PIN_FUNC(SHIFT_LEFT(0x2, 10), "standby_dbg")),
1203 [RTD1619B_ISO_UR0_RX
] = RTK_PIN_MUX(ur0_rx
, 0x14, GENMASK(12, 12),
1204 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 12), "gpio"),
1205 RTK_PIN_FUNC(SHIFT_LEFT(0x1, 12), "uart0")),
1207 [RTD1619B_ISO_UR0_TX
] = RTK_PIN_MUX(ur0_tx
, 0x14, GENMASK(13, 13),
1208 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 13), "gpio"),
1209 RTK_PIN_FUNC(SHIFT_LEFT(0x1, 13), "uart0")),
1210 [RTD1619B_ISO_GPIO_57
] = RTK_PIN_MUX(gpio_57
, 0x14, GENMASK(17, 14),
1211 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 14), "gpio"),
1212 RTK_PIN_FUNC(SHIFT_LEFT(0x1, 14), "tdm_ai_loc0"),
1213 RTK_PIN_FUNC(SHIFT_LEFT(0x2, 14), "ai_loc0"),
1214 RTK_PIN_FUNC(SHIFT_LEFT(0x3, 14), "dmic_loc0"),
1215 RTK_PIN_FUNC(SHIFT_LEFT(0x11, 14), "vtc_i2si_loc1"),
1216 RTK_PIN_FUNC(SHIFT_LEFT(0x12, 14), "vtc_tdm_loc1"),
1217 RTK_PIN_FUNC(SHIFT_LEFT(0x13, 14), "vtc_dmic_loc1")),
1218 [RTD1619B_ISO_GPIO_58
] = RTK_PIN_MUX(gpio_58
, 0x14, GENMASK(21, 18),
1219 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 18), "gpio"),
1220 RTK_PIN_FUNC(SHIFT_LEFT(0x1, 18), "tdm_ai_loc0"),
1221 RTK_PIN_FUNC(SHIFT_LEFT(0x2, 18), "ai_loc0"),
1222 RTK_PIN_FUNC(SHIFT_LEFT(0x3, 18), "dmic_loc0"),
1223 RTK_PIN_FUNC(SHIFT_LEFT(0x11, 18), "vtc_i2si_loc1"),
1224 RTK_PIN_FUNC(SHIFT_LEFT(0x12, 18), "vtc_tdm_loc1"),
1225 RTK_PIN_FUNC(SHIFT_LEFT(0x13, 18), "vtc_dmic_loc1")),
1226 [RTD1619B_ISO_GPIO_59
] = RTK_PIN_MUX(gpio_59
, 0x14, GENMASK(25, 22),
1227 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 22), "gpio"),
1228 RTK_PIN_FUNC(SHIFT_LEFT(0x1, 22), "tdm_ai_loc0"),
1229 RTK_PIN_FUNC(SHIFT_LEFT(0x2, 22), "ai_loc0"),
1230 RTK_PIN_FUNC(SHIFT_LEFT(0x3, 22), "dmic_loc0"),
1231 RTK_PIN_FUNC(SHIFT_LEFT(0x11, 22), "vtc_i2si_loc1"),
1232 RTK_PIN_FUNC(SHIFT_LEFT(0x12, 22), "vtc_tdm_loc1"),
1233 RTK_PIN_FUNC(SHIFT_LEFT(0x13, 22), "vtc_dmic_loc1")),
1234 [RTD1619B_ISO_GPIO_60
] = RTK_PIN_MUX(gpio_60
, 0x14, GENMASK(29, 26),
1235 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 26), "gpio"),
1236 RTK_PIN_FUNC(SHIFT_LEFT(0x1, 26), "tdm_ai_loc0"),
1237 RTK_PIN_FUNC(SHIFT_LEFT(0x2, 26), "ai_loc0"),
1238 RTK_PIN_FUNC(SHIFT_LEFT(0x3, 26), "dmic_loc0"),
1239 RTK_PIN_FUNC(SHIFT_LEFT(0x11, 26), "vtc_i2si_loc1"),
1240 RTK_PIN_FUNC(SHIFT_LEFT(0x12, 26), "vtc_tdm_loc1"),
1241 RTK_PIN_FUNC(SHIFT_LEFT(0x13, 26), "vtc_dmic_loc1")),
1242 [RTD1619B_ISO_GPIO_61
] = RTK_PIN_MUX(gpio_61
, 0x18, GENMASK(3, 0),
1243 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 0), "gpio"),
1244 RTK_PIN_FUNC(SHIFT_LEFT(0x1, 0), "ai_loc0"),
1245 RTK_PIN_FUNC(SHIFT_LEFT(0x3, 0), "dmic_loc0"),
1246 RTK_PIN_FUNC(SHIFT_LEFT(0x11, 0), "vtc_i2si_loc1")),
1247 [RTD1619B_ISO_GPIO_62
] = RTK_PIN_MUX(gpio_62
, 0x18, GENMASK(5, 4),
1248 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 4), "gpio"),
1249 RTK_PIN_FUNC(SHIFT_LEFT(0x1, 4), "ai_loc0"),
1250 RTK_PIN_FUNC(SHIFT_LEFT(0x3, 4), "dmic_loc0")),
1251 [RTD1619B_ISO_GPIO_63
] = RTK_PIN_MUX(gpio_63
, 0x18, GENMASK(7, 6),
1252 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 6), "gpio"),
1253 RTK_PIN_FUNC(SHIFT_LEFT(0x1, 6), "ai_loc0"),
1254 RTK_PIN_FUNC(SHIFT_LEFT(0x2, 6), "i2c3"),
1255 RTK_PIN_FUNC(SHIFT_LEFT(0x3, 6), "dmic_loc0")),
1256 [RTD1619B_ISO_GPIO_64
] = RTK_PIN_MUX(gpio_64
, 0x18, GENMASK(9, 8),
1257 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 8), "gpio"),
1258 RTK_PIN_FUNC(SHIFT_LEFT(0x2, 8), "i2c3"),
1259 RTK_PIN_FUNC(SHIFT_LEFT(0x3, 8), "dmic_loc0")),
1260 [RTD1619B_ISO_GPIO_65
] = RTK_PIN_MUX(gpio_65
, 0x18, GENMASK(10, 10),
1261 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 10), "gpio")),
1262 [RTD1619B_ISO_GPIO_66
] = RTK_PIN_MUX(gpio_66
, 0x18, GENMASK(14, 11),
1263 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 11), "gpio"),
1264 RTK_PIN_FUNC(SHIFT_LEFT(0x2, 11), "tp0"),
1265 RTK_PIN_FUNC(SHIFT_LEFT(0x4, 11), "ao"),
1266 RTK_PIN_FUNC(SHIFT_LEFT(0x11, 11), "vtc_i2so")),
1267 [RTD1619B_ISO_GPIO_67
] = RTK_PIN_MUX(gpio_67
, 0x18, GENMASK(18, 15),
1268 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 15), "gpio"),
1269 RTK_PIN_FUNC(SHIFT_LEFT(0x2, 15), "tp0"),
1270 RTK_PIN_FUNC(SHIFT_LEFT(0x4, 15), "ao"),
1271 RTK_PIN_FUNC(SHIFT_LEFT(0x11, 15), "vtc_i2so")),
1272 [RTD1619B_ISO_GPIO_68
] = RTK_PIN_MUX(gpio_68
, 0x18, GENMASK(22, 19),
1273 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 19), "gpio"),
1274 RTK_PIN_FUNC(SHIFT_LEFT(0x2, 19), "tp0"),
1275 RTK_PIN_FUNC(SHIFT_LEFT(0x4, 19), "ao"),
1276 RTK_PIN_FUNC(SHIFT_LEFT(0x11, 19), "vtc_i2so")),
1277 [RTD1619B_ISO_GPIO_69
] = RTK_PIN_MUX(gpio_69
, 0x18, GENMASK(26, 23),
1278 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 23), "gpio"),
1279 RTK_PIN_FUNC(SHIFT_LEFT(0x2, 23), "tp0"),
1280 RTK_PIN_FUNC(SHIFT_LEFT(0x3, 23), "tp1"),
1281 RTK_PIN_FUNC(SHIFT_LEFT(0x4, 23), "ao"),
1282 RTK_PIN_FUNC(SHIFT_LEFT(0x11, 23), "vtc_i2so")),
1284 [RTD1619B_ISO_GPIO_70
] = RTK_PIN_MUX(gpio_70
, 0x18, GENMASK(29, 27),
1285 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 27), "gpio"),
1286 RTK_PIN_FUNC(SHIFT_LEFT(0x2, 27), "tp0"),
1287 RTK_PIN_FUNC(SHIFT_LEFT(0x3, 27), "tp1"),
1288 RTK_PIN_FUNC(SHIFT_LEFT(0x4, 27), "ao")),
1289 [RTD1619B_ISO_GPIO_71
] = RTK_PIN_MUX(gpio_71
, 0x1c, GENMASK(2, 0),
1290 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 0), "gpio"),
1291 RTK_PIN_FUNC(SHIFT_LEFT(0x2, 0), "tp0"),
1292 RTK_PIN_FUNC(SHIFT_LEFT(0x3, 0), "tp1"),
1293 RTK_PIN_FUNC(SHIFT_LEFT(0x4, 0), "ao"),
1294 RTK_PIN_FUNC(SHIFT_LEFT(0x5, 0), "scpu_ejtag_loc2"),
1295 RTK_PIN_FUNC(SHIFT_LEFT(0x6, 0), "acpu_ejtag_loc2"),
1296 RTK_PIN_FUNC(SHIFT_LEFT(0x7, 0), "vcpu_ejtag_loc2"),
1297 RTK_PIN_FUNC(SHIFT_LEFT(0x8, 0), "ve3_ejtag_loc2"),
1298 RTK_PIN_FUNC(SHIFT_LEFT(0x9, 0), "aucpu0_ejtag_loc2"),
1299 RTK_PIN_FUNC(SHIFT_LEFT(0x10, 0), "aucpu1_ejtag_loc2")),
1300 [RTD1619B_ISO_GPIO_72
] = RTK_PIN_MUX(gpio_72
, 0x1c, GENMASK(6, 3),
1301 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 3), "gpio"),
1302 RTK_PIN_FUNC(SHIFT_LEFT(0x2, 3), "tp0"),
1303 RTK_PIN_FUNC(SHIFT_LEFT(0x3, 3), "tp1"),
1304 RTK_PIN_FUNC(SHIFT_LEFT(0x4, 3), "ao"),
1305 RTK_PIN_FUNC(SHIFT_LEFT(0x5, 3), "scpu_ejtag_loc2"),
1306 RTK_PIN_FUNC(SHIFT_LEFT(0x6, 3), "acpu_ejtag_loc2"),
1307 RTK_PIN_FUNC(SHIFT_LEFT(0x7, 3), "vcpu_ejtag_loc2"),
1308 RTK_PIN_FUNC(SHIFT_LEFT(0x8, 3), "ve3_ejtag_loc2"),
1309 RTK_PIN_FUNC(SHIFT_LEFT(0x9, 3), "aucpu0_ejtag_loc2"),
1310 RTK_PIN_FUNC(SHIFT_LEFT(0x10, 3), "aucpu1_ejtag_loc2")),
1311 [RTD1619B_ISO_GPIO_73
] = RTK_PIN_MUX(gpio_73
, 0x1c, GENMASK(10, 7),
1312 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 7), "gpio"),
1313 RTK_PIN_FUNC(SHIFT_LEFT(0x2, 7), "tp0"),
1314 RTK_PIN_FUNC(SHIFT_LEFT(0x5, 7), "scpu_ejtag_loc2"),
1315 RTK_PIN_FUNC(SHIFT_LEFT(0x6, 7), "acpu_ejtag_loc2"),
1316 RTK_PIN_FUNC(SHIFT_LEFT(0x7, 7), "vcpu_ejtag_loc2"),
1317 RTK_PIN_FUNC(SHIFT_LEFT(0x8, 7), "ve3_ejtag_loc2"),
1318 RTK_PIN_FUNC(SHIFT_LEFT(0x9, 7), "aucpu0_ejtag_loc2"),
1319 RTK_PIN_FUNC(SHIFT_LEFT(0x10, 7), "aucpu1_ejtag_loc2")),
1320 [RTD1619B_ISO_GPIO_74
] = RTK_PIN_MUX(gpio_74
, 0x1c, GENMASK(14, 11),
1321 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 11), "gpio"),
1322 RTK_PIN_FUNC(SHIFT_LEFT(0x2, 11), "tp0"),
1323 RTK_PIN_FUNC(SHIFT_LEFT(0x5, 11), "scpu_ejtag_loc2"),
1324 RTK_PIN_FUNC(SHIFT_LEFT(0x6, 11), "acpu_ejtag_loc2"),
1325 RTK_PIN_FUNC(SHIFT_LEFT(0x7, 11), "vcpu_ejtag_loc2"),
1326 RTK_PIN_FUNC(SHIFT_LEFT(0x8, 11), "ve3_ejtag_loc2"),
1327 RTK_PIN_FUNC(SHIFT_LEFT(0x9, 11), "aucpu0_ejtag_loc2"),
1328 RTK_PIN_FUNC(SHIFT_LEFT(0x10, 11), "aucpu1_ejtag_loc2")),
1329 [RTD1619B_ISO_GPIO_75
] = RTK_PIN_MUX(gpio_75
, 0x1c, GENMASK(18, 15),
1330 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 15), "gpio"),
1331 RTK_PIN_FUNC(SHIFT_LEFT(0x2, 15), "tp0"),
1332 RTK_PIN_FUNC(SHIFT_LEFT(0x5, 15), "scpu_ejtag_loc2"),
1333 RTK_PIN_FUNC(SHIFT_LEFT(0x6, 15), "acpu_ejtag_loc2"),
1334 RTK_PIN_FUNC(SHIFT_LEFT(0x7, 15), "vcpu_ejtag_loc2"),
1335 RTK_PIN_FUNC(SHIFT_LEFT(0x8, 15), "ve3_ejtag_loc2"),
1336 RTK_PIN_FUNC(SHIFT_LEFT(0x9, 15), "aucpu0_ejtag_loc2"),
1337 RTK_PIN_FUNC(SHIFT_LEFT(0x10, 15), "aucpu1_ejtag_loc2")),
1338 [RTD1619B_ISO_GPIO_76
] = RTK_PIN_MUX(gpio_76
, 0x1c, GENMASK(22, 19),
1339 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 19), "gpio"),
1340 RTK_PIN_FUNC(SHIFT_LEFT(0x2, 19), "tp0"),
1341 RTK_PIN_FUNC(SHIFT_LEFT(0x5, 19), "scpu_ejtag_loc2"),
1342 RTK_PIN_FUNC(SHIFT_LEFT(0x6, 19), "acpu_ejtag_loc2"),
1343 RTK_PIN_FUNC(SHIFT_LEFT(0x7, 19), "vcpu_ejtag_loc2"),
1344 RTK_PIN_FUNC(SHIFT_LEFT(0x8, 19), "ve3_ejtag_loc2"),
1345 RTK_PIN_FUNC(SHIFT_LEFT(0x9, 19), "aucpu0_ejtag_loc2"),
1346 RTK_PIN_FUNC(SHIFT_LEFT(0x10, 19), "aucpu1_ejtag_loc2")),
1348 [RTD1619B_ISO_UR2_LOC
] = RTK_PIN_MUX(ur2_loc
, 0x120, GENMASK(1, 0),
1349 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 0), "uart2_disable"),
1350 RTK_PIN_FUNC(SHIFT_LEFT(0x1, 0), "uart2_loc0"),
1351 RTK_PIN_FUNC(SHIFT_LEFT(0x2, 0), "uart2_loc1")),
1352 [RTD1619B_ISO_GSPI_LOC
] = RTK_PIN_MUX(gspi_loc
, 0x120, GENMASK(3, 2),
1353 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 2), "gspi_disable"),
1354 RTK_PIN_FUNC(SHIFT_LEFT(0x1, 2), "gspi_loc0"),
1355 RTK_PIN_FUNC(SHIFT_LEFT(0x2, 2), "gspi_loc1")),
1356 [RTD1619B_ISO_SDIO_LOC
] = RTK_PIN_MUX(sdio_loc
, 0x120, GENMASK(5, 4),
1357 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 4), "sdio_disable"),
1358 RTK_PIN_FUNC(SHIFT_LEFT(0x1, 4), "sdio_loc0"),
1359 RTK_PIN_FUNC(SHIFT_LEFT(0x2, 4), "sdio_loc1")),
1360 [RTD1619B_ISO_HI_LOC
] = RTK_PIN_MUX(hi_loc
, 0x120, GENMASK(7, 6),
1361 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 6), "hi_loc_disable"),
1362 RTK_PIN_FUNC(SHIFT_LEFT(0x1, 6), "hi_loc0")),
1363 [RTD1619B_ISO_HI_WIDTH
] = RTK_PIN_MUX(hi_width
, 0x120, GENMASK(9, 8),
1364 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 8), "hi_width_disable"),
1365 RTK_PIN_FUNC(SHIFT_LEFT(0x1, 8), "hi_width_1bit")),
1366 [RTD1619B_ISO_SF_EN
] = RTK_PIN_MUX(sf_en
, 0x120, GENMASK(11, 11),
1367 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 11), "sf_disable"),
1368 RTK_PIN_FUNC(SHIFT_LEFT(0x1, 11), "sf_enable")),
1369 [RTD1619B_ISO_ARM_TRACE_DBG_EN
] = RTK_PIN_MUX(arm_trace_dbg_en
, 0x120, GENMASK(12, 12),
1370 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 12), "arm_trace_debug_disable"),
1371 RTK_PIN_FUNC(SHIFT_LEFT(0x1, 12), "arm_trace_debug_enable")),
1372 [RTD1619B_ISO_PWM_01_OPEN_DRAIN_EN_LOC0
] = RTK_PIN_MUX(pwm_01_open_drain_en_loc0
, 0x120,
1374 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 13), "pwm_normal"),
1375 RTK_PIN_FUNC(SHIFT_LEFT(0x1, 13), "pwm_open_drain")),
1376 [RTD1619B_ISO_PWM_23_OPEN_DRAIN_EN_LOC0
] = RTK_PIN_MUX(pwm_23_open_drain_en_loc0
, 0x120,
1378 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 14), "pwm_normal"),
1379 RTK_PIN_FUNC(SHIFT_LEFT(0x1, 14), "pwm_open_drain")),
1380 [RTD1619B_ISO_PWM_01_OPEN_DRAIN_EN_LOC1
] = RTK_PIN_MUX(pwm_01_open_drain_en_loc1
, 0x120,
1382 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 15), "pwm_normal"),
1383 RTK_PIN_FUNC(SHIFT_LEFT(0x1, 15), "pwm_open_drain")),
1384 [RTD1619B_ISO_PWM_23_OPEN_DRAIN_EN_LOC1
] = RTK_PIN_MUX(pwm_23_open_drain_en_loc1
, 0x120,
1386 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 16), "pwm_normal"),
1387 RTK_PIN_FUNC(SHIFT_LEFT(0x1, 16), "pwm_open_drain")),
1388 [RTD1619B_ISO_EJTAG_ACPU_LOC
] = RTK_PIN_MUX(ejtag_acpu_loc
, 0x120, GENMASK(19, 17),
1389 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 17), "acpu_ejtag_disable"),
1390 RTK_PIN_FUNC(SHIFT_LEFT(0x1, 17), "acpu_ejtag_loc0"),
1391 RTK_PIN_FUNC(SHIFT_LEFT(0x2, 17), "acpu_ejtag_loc1"),
1392 RTK_PIN_FUNC(SHIFT_LEFT(0x4, 17), "acpu_ejtag_loc2")),
1393 [RTD1619B_ISO_EJTAG_VCPU_LOC
] = RTK_PIN_MUX(ejtag_vcpu_loc
, 0x120, GENMASK(22, 20),
1394 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 20), "vcpu_ejtag_disable"),
1395 RTK_PIN_FUNC(SHIFT_LEFT(0x1, 20), "vcpu_ejtag_loc0"),
1396 RTK_PIN_FUNC(SHIFT_LEFT(0x2, 20), "vcpu_ejtag_loc1"),
1397 RTK_PIN_FUNC(SHIFT_LEFT(0x4, 20), "vcpu_ejtag_loc2")),
1398 [RTD1619B_ISO_EJTAG_SCPU_LOC
] = RTK_PIN_MUX(ejtag_scpu_loc
, 0x120, GENMASK(25, 23),
1399 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 23), "scpu_ejtag_disable"),
1400 RTK_PIN_FUNC(SHIFT_LEFT(0x1, 23), "scpu_ejtag_loc0"),
1401 RTK_PIN_FUNC(SHIFT_LEFT(0x2, 23), "scpu_ejtag_loc1"),
1402 RTK_PIN_FUNC(SHIFT_LEFT(0x4, 23), "scpu_ejtag_loc2")),
1403 [RTD1619B_ISO_DMIC_LOC
] = RTK_PIN_MUX(dmic_loc
, 0x120, GENMASK(27, 26),
1404 RTK_PIN_FUNC(SHIFT_LEFT(0x1, 26), "dmic_loc0"),
1405 RTK_PIN_FUNC(SHIFT_LEFT(0x2, 26), "dmic_loc1")),
1406 [RTD1619B_ISO_ISO_GSPI_LOC
] = RTK_PIN_MUX(iso_gspi_loc
, 0x120, GENMASK(29, 28),
1407 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 28), "iso_gspi_disable"),
1408 RTK_PIN_FUNC(SHIFT_LEFT(0x1, 28), "iso_gspi_loc0"),
1409 RTK_PIN_FUNC(SHIFT_LEFT(0x2, 28), "iso_gspi_loc1")),
1410 [RTD1619B_ISO_EJTAG_VE3_LOC
] = RTK_PIN_MUX(ejtag_ve3_loc
, 0x124, GENMASK(20, 18),
1411 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 18), "ve3_ejtag_disable"),
1412 RTK_PIN_FUNC(SHIFT_LEFT(0x1, 18), "ve3_ejtag_loc0"),
1413 RTK_PIN_FUNC(SHIFT_LEFT(0x2, 18), "ve3_ejtag_loc1"),
1414 RTK_PIN_FUNC(SHIFT_LEFT(0x4, 18), "ve3_ejtag_loc2")),
1415 [RTD1619B_ISO_EJTAG_AUCPU1_LOC
] = RTK_PIN_MUX(ejtag_aucpu1_loc
, 0x124, GENMASK(23, 21),
1416 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 21), "aucpu1_ejtag_disable"),
1417 RTK_PIN_FUNC(SHIFT_LEFT(0x1, 21), "aucpu1_ejtag_loc0"),
1418 RTK_PIN_FUNC(SHIFT_LEFT(0x2, 21), "aucpu1_ejtag_loc1"),
1419 RTK_PIN_FUNC(SHIFT_LEFT(0x4, 21), "aucpu1_ejtag_loc2")),
1420 [RTD1619B_ISO_EJTAG_AUCPU0_LOC
] = RTK_PIN_MUX(ejtag_aucpu0_loc
, 0x124, GENMASK(26, 24),
1421 RTK_PIN_FUNC(SHIFT_LEFT(0x0, 24), "aucpu0_ejtag_disable"),
1422 RTK_PIN_FUNC(SHIFT_LEFT(0x1, 24), "aucpu0_ejtag_loc0"),
1423 RTK_PIN_FUNC(SHIFT_LEFT(0x2, 24), "aucpu0_ejtag_loc1"),
1424 RTK_PIN_FUNC(SHIFT_LEFT(0x4, 24), "aucpu0_ejtag_loc2")),
1427 static const struct rtd_pin_config_desc rtd1619b_iso_configs
[] = {
1428 [RTD1619B_ISO_GPIO_17
] = RTK_PIN_CONFIG(gpio_17
, 0x20, 0, 1, 2, 0, 3, 4, PADDRI_4_8
),
1429 [RTD1619B_ISO_GPIO_19
] = RTK_PIN_CONFIG(gpio_19
, 0x20, 5, 1, 2, 0, 3, 4, PADDRI_4_8
),
1430 [RTD1619B_ISO_GPIO_50
] = RTK_PIN_CONFIG(gpio_50
, 0x20, 10, 1, 2, 0, 3, 4, PADDRI_4_8
),
1431 [RTD1619B_ISO_GPIO_21
] = RTK_PIN_CONFIG(gpio_21
, 0x20, 15, 1, 2, 0, 3, 4, PADDRI_4_8
),
1432 [RTD1619B_ISO_GPIO_66
] = RTK_PIN_CONFIG(gpio_66
, 0x20, 20, 1, 2, 0, 3, 4, PADDRI_4_8
),
1433 [RTD1619B_ISO_GPIO_67
] = RTK_PIN_CONFIG(gpio_67
, 0x20, 25, 1, 2, 0, 3, 4, PADDRI_4_8
),
1434 [RTD1619B_ISO_GPIO_68
] = RTK_PIN_CONFIG(gpio_68
, 0x24, 0, 1, 2, 0, 3, 4, PADDRI_4_8
),
1435 [RTD1619B_ISO_GPIO_69
] = RTK_PIN_CONFIG(gpio_69
, 0x24, 5, 1, 2, 0, 3, 4, PADDRI_4_8
),
1436 [RTD1619B_ISO_GPIO_70
] = RTK_PIN_CONFIG(gpio_70
, 0x24, 10, 1, 2, 0, 3, 4, PADDRI_4_8
),
1437 [RTD1619B_ISO_GPIO_71
] = RTK_PIN_CONFIG(gpio_71
, 0x24, 15, 1, 2, 0, 3, 4, PADDRI_4_8
),
1438 [RTD1619B_ISO_GPIO_72
] = RTK_PIN_CONFIG(gpio_72
, 0x24, 20, 1, 2, 0, 3, 4, PADDRI_4_8
),
1439 [RTD1619B_ISO_GPIO_73
] = RTK_PIN_CONFIG(gpio_73
, 0x24, 25, 1, 2, 0, 3, 4, PADDRI_4_8
),
1440 [RTD1619B_ISO_GPIO_74
] = RTK_PIN_CONFIG(gpio_74
, 0x28, 0, 1, 2, 0, 3, 4, PADDRI_4_8
),
1441 [RTD1619B_ISO_GPIO_75
] = RTK_PIN_CONFIG(gpio_75
, 0x28, 5, 1, 2, 0, 3, 4, PADDRI_4_8
),
1442 [RTD1619B_ISO_GPIO_76
] = RTK_PIN_CONFIG(gpio_76
, 0x28, 10, 1, 2, 0, 3, 4, PADDRI_4_8
),
1443 [RTD1619B_ISO_SPI_SI
] = RTK_PIN_CONFIG(spi_si
, 0x28, 15, 0, 1, 3, 2, 12, NA
),
1444 [RTD1619B_ISO_SPI_SCK
] = RTK_PIN_CONFIG(spi_sck
, 0x2c, 0, 0, 1, 3, 2, 12, NA
),
1445 [RTD1619B_ISO_SPI_CE_N
] = RTK_PIN_CONFIG(spi_ce_n
, 0x2c, 13, 0, 1, 3, 2, 12, NA
),
1446 [RTD1619B_ISO_SPI_SO
] = RTK_PIN_CONFIG(spi_so
, 0x2c, 26, 0, 1, 3, 2, 12, NA
),
1447 [RTD1619B_ISO_EMMC_CLK
] = RTK_PIN_CONFIG(emmc_clk
, 0x30, 7, 0, 1, 3, 2, 12, NA
),
1448 [RTD1619B_ISO_EMMC_CMD
] = RTK_PIN_CONFIG(emmc_cmd
, 0x34, 0, 0, 1, 3, 2, 13, NA
),
1449 [RTD1619B_ISO_EMMC_RST_N
] = RTK_PIN_CONFIG(emmc_rst_n
, 0x34, 14, 0, 1, 3, 2, 12, NA
),
1450 [RTD1619B_ISO_EMMC_DD_SB
] = RTK_PIN_CONFIG(emmc_dd_sb
, 0x34, 27, 0, 1, 3, 2, 12, NA
),
1451 [RTD1619B_ISO_EMMC_DATA_5
] = RTK_PIN_CONFIG(emmc_data_5
, 0x38, 8, 0, 1, 3, 2, 12, NA
),
1452 [RTD1619B_ISO_EMMC_DATA_3
] = RTK_PIN_CONFIG(emmc_data_3
, 0x3c, 0, 0, 1, 3, 2, 12, NA
),
1453 [RTD1619B_ISO_EMMC_DATA_4
] = RTK_PIN_CONFIG(emmc_data_4
, 0x3c, 13, 0, 1, 3, 2, 12, NA
),
1454 [RTD1619B_ISO_EMMC_DATA_0
] = RTK_PIN_CONFIG(emmc_data_0
, 0x3c, 26, 0, 1, 3, 2, 12, NA
),
1455 [RTD1619B_ISO_EMMC_DATA_1
] = RTK_PIN_CONFIG(emmc_data_1
, 0x40, 7, 0, 1, 3, 2, 12, NA
),
1456 [RTD1619B_ISO_EMMC_DATA_2
] = RTK_PIN_CONFIG(emmc_data_2
, 0x44, 0, 0, 1, 3, 2, 12, NA
),
1457 [RTD1619B_ISO_EMMC_DATA_7
] = RTK_PIN_CONFIG(emmc_data_7
, 0x44, 13, 0, 1, 3, 2, 12, NA
),
1458 [RTD1619B_ISO_EMMC_DATA_6
] = RTK_PIN_CONFIG(emmc_data_6
, 0x44, 26, 0, 1, 3, 2, 12, NA
),
1459 [RTD1619B_ISO_USB_CC1
] = RTK_PIN_CONFIG(usb_cc1
, 0x48, 7, NA
, NA
, 0, 1, 9, PADDRI_4_8
),
1460 [RTD1619B_ISO_USB_CC2
] = RTK_PIN_CONFIG(usb_cc2
, 0x48, 10, NA
, NA
, 0, 1, 9, PADDRI_4_8
),
1461 [RTD1619B_ISO_GPIO_26
] = RTK_PIN_CONFIG(gpio_26
, 0x48, 13, 1, 2, 0, 3, 4, PADDRI_4_8
),
1462 [RTD1619B_ISO_GPIO_27
] = RTK_PIN_CONFIG(gpio_27
, 0x48, 18, 1, 2, 0, 3, 4, PADDRI_4_8
),
1463 [RTD1619B_ISO_GPIO_28
] = RTK_PIN_CONFIG(gpio_28
, 0x48, 23, 1, 2, 0, 3, 4, PADDRI_4_8
),
1464 [RTD1619B_ISO_GPIO_29
] = RTK_PIN_CONFIG(gpio_29
, 0x4c, 0, 1, 2, 0, 3, 4, PADDRI_4_8
),
1465 [RTD1619B_ISO_GPIO_46
] = RTK_PIN_CONFIG(gpio_46
, 0x4c, 5, 1, 2, 0, 3, 4, PADDRI_4_8
),
1466 [RTD1619B_ISO_GPIO_48
] = RTK_PIN_CONFIG(gpio_48
, 0x4c, 10, 1, 2, 0, 3, 4, PADDRI_4_8
),
1467 [RTD1619B_ISO_GPIO_49
] = RTK_PIN_CONFIG(gpio_49
, 0x4c, 15, 1, 2, 0, 3, 4, PADDRI_4_8
),
1468 [RTD1619B_ISO_GPIO_53
] = RTK_PIN_CONFIG(gpio_53
, 0x4c, 20, 1, 2, 0, 3, 4, PADDRI_4_8
),
1469 [RTD1619B_ISO_GPIO_65
] = RTK_PIN_CONFIG(gpio_65
, 0x4c, 25, 1, 2, 0, 3, 4, PADDRI_4_8
),
1470 [RTD1619B_ISO_GPIO_14
] = RTK_PIN_CONFIG(gpio_14
, 0x50, 0, 1, 2, 0, 3, 4, PADDRI_4_8
),
1471 [RTD1619B_ISO_GPIO_15
] = RTK_PIN_CONFIG(gpio_15
, 0x50, 5, 1, 2, 0, 3, 4, PADDRI_4_8
),
1472 [RTD1619B_ISO_GPIO_23
] = RTK_PIN_CONFIG(gpio_23
, 0x50, 10, 1, 2, 0, 3, 4, PADDRI_4_8
),
1473 [RTD1619B_ISO_IR_RX
] = RTK_PIN_CONFIG(ir_rx
, 0x50, 20, 1, 2, 0, 3, 4, PADDRI_4_8
),
1474 [RTD1619B_ISO_GPIO_57
] = RTK_PIN_CONFIG(gpio_57
, 0x50, 25, 1, 2, 0, 3, 4, PADDRI_4_8
),
1475 [RTD1619B_ISO_GPIO_58
] = RTK_PIN_CONFIG(gpio_58
, 0x50, 30, 1, 2, 0, 3, 4, PADDRI_4_8
),
1476 [RTD1619B_ISO_GPIO_59
] = RTK_PIN_CONFIG(gpio_59
, 0x54, 3, 1, 2, 0, 3, 4, PADDRI_4_8
),
1477 [RTD1619B_ISO_GPIO_60
] = RTK_PIN_CONFIG(gpio_60
, 0x54, 8, 1, 2, 0, 3, 4, PADDRI_4_8
),
1478 [RTD1619B_ISO_GPIO_61
] = RTK_PIN_CONFIG(gpio_61
, 0x54, 13, 1, 2, 0, 3, 4, PADDRI_4_8
),
1479 [RTD1619B_ISO_GPIO_62
] = RTK_PIN_CONFIG(gpio_62
, 0x54, 18, 1, 2, 0, 3, 4, PADDRI_4_8
),
1480 [RTD1619B_ISO_GPIO_63
] = RTK_PIN_CONFIG(gpio_63
, 0x54, 23, 1, 2, 0, 3, 4, PADDRI_4_8
),
1481 [RTD1619B_ISO_GPIO_64
] = RTK_PIN_CONFIG(gpio_64
, 0x58, 0, 1, 2, 0, 3, 4, PADDRI_4_8
),
1482 [RTD1619B_ISO_UR0_TX
] = RTK_PIN_CONFIG(ur0_tx
, 0x58, 5, 1, 2, 0, 3, 4, PADDRI_4_8
),
1483 [RTD1619B_ISO_UR0_RX
] = RTK_PIN_CONFIG(ur0_rx
, 0x58, 13, 1, 2, 0, 3, 4, PADDRI_4_8
),
1484 [RTD1619B_ISO_GPIO_12
] = RTK_PIN_CONFIG(gpio_12
, 0x58, 18, 1, 2, 0, 3, 4, PADDRI_4_8
),
1485 [RTD1619B_ISO_GPIO_13
] = RTK_PIN_CONFIG(gpio_13
, 0x58, 23, 1, 2, 0, 3, 4, PADDRI_4_8
),
1486 [RTD1619B_ISO_GPIO_30
] = RTK_PIN_CONFIG(gpio_30
, 0x58, 28, 1, 2, 0, 3, 4, PADDRI_4_8
),
1487 [RTD1619B_ISO_GPIO_7
] = RTK_PIN_CONFIG(gpio_7
, 0x5c, 1, 1, 2, 0, 3, 4, PADDRI_4_8
),
1488 [RTD1619B_ISO_GPIO_16
] = RTK_PIN_CONFIG(gpio_16
, 0x5c, 6, 1, 2, 0, 3, 4, PADDRI_4_8
),
1489 [RTD1619B_ISO_GPIO_18
] = RTK_PIN_CONFIG(gpio_18
, 0x5c, 11, 1, 2, 0, 3, 4, PADDRI_4_8
),
1490 [RTD1619B_ISO_GPIO_20
] = RTK_PIN_CONFIG(gpio_20
, 0x5c, 16, 1, 2, 0, 3, 4, PADDRI_4_8
),
1491 [RTD1619B_ISO_GPIO_22
] = RTK_PIN_CONFIG(gpio_22
, 0x5c, 21, 1, 2, 0, 3, 4, PADDRI_4_8
),
1492 [RTD1619B_ISO_GPIO_31
] = RTK_PIN_CONFIG(gpio_31
, 0x5c, 26, 1, 2, 0, 3, 4, PADDRI_4_8
),
1493 [RTD1619B_ISO_GPIO_47
] = RTK_PIN_CONFIG(gpio_47
, 0x60, 12, 1, 2, 0, 3, 4, PADDRI_4_8
),
1494 [RTD1619B_ISO_GPIO_25
] = RTK_PIN_CONFIG(gpio_25
, 0x60, 17, 1, 2, 0, 3, 4, PADDRI_4_8
),
1495 [RTD1619B_ISO_GPIO_6
] = RTK_PIN_CONFIG(gpio_6
, 0x60, 22, 1, 2, 0, 3, 4, PADDRI_4_8
),
1496 [RTD1619B_ISO_GPIO_5
] = RTK_PIN_CONFIG(gpio_5
, 0x60, 27, 1, 2, 0, 3, 4, PADDRI_4_8
),
1497 [RTD1619B_ISO_GPIO_4
] = RTK_PIN_CONFIG(gpio_4
, 0x64, 0, 1, 2, 0, 3, 4, PADDRI_4_8
),
1498 [RTD1619B_ISO_GPIO_3
] = RTK_PIN_CONFIG(gpio_3
, 0x64, 5, 1, 2, 0, 3, 4, PADDRI_4_8
),
1499 [RTD1619B_ISO_GPIO_2
] = RTK_PIN_CONFIG(gpio_2
, 0x64, 10, 1, 2, 0, 3, 4, PADDRI_4_8
),
1500 [RTD1619B_ISO_GPIO_1
] = RTK_PIN_CONFIG(gpio_1
, 0x64, 15, 1, 2, 0, 3, 4, PADDRI_4_8
),
1501 [RTD1619B_ISO_GPIO_0
] = RTK_PIN_CONFIG(gpio_0
, 0x64, 20, 1, 2, 0, 3, 4, PADDRI_4_8
),
1502 [RTD1619B_ISO_GPIO_52
] = RTK_PIN_CONFIG(gpio_52
, 0x64, 25, 1, 2, 0, 3, 4, PADDRI_4_8
),
1503 [RTD1619B_ISO_GPIO_35
] = RTK_PIN_CONFIG(gpio_35
, 0x68, 0, 1, 2, 0, 3, 4, PADDRI_4_8
),
1504 [RTD1619B_ISO_GPIO_34
] = RTK_PIN_CONFIG(gpio_34
, 0x68, 5, 1, 2, 0, 3, 4, PADDRI_4_8
),
1505 [RTD1619B_ISO_GPIO_40
] = RTK_PIN_CONFIG(gpio_40
, 0x68, 10, 0, 1, 3, 2, 12, NA
),
1506 [RTD1619B_ISO_GPIO_41
] = RTK_PIN_CONFIG(gpio_41
, 0x6c, 0, 0, 1, 3, 2, 12, NA
),
1507 [RTD1619B_ISO_GPIO_42
] = RTK_PIN_CONFIG(gpio_42
, 0x6c, 13, 0, 1, 3, 2, 12, NA
),
1508 [RTD1619B_ISO_GPIO_43
] = RTK_PIN_CONFIG(gpio_43
, 0x70, 0, 0, 1, 3, 2, 12, NA
),
1509 [RTD1619B_ISO_GPIO_44
] = RTK_PIN_CONFIG(gpio_44
, 0x70, 13, 0, 1, 3, 2, 12, NA
),
1510 [RTD1619B_ISO_GPIO_45
] = RTK_PIN_CONFIG(gpio_45
, 0x70, 26, 0, 1, 3, 2, 12, NA
),
1511 [RTD1619B_ISO_GPIO_8
] = RTK_PIN_CONFIG(gpio_8
, 0x74, 7, 1, 2, 0, 3, 4, PADDRI_4_8
),
1512 [RTD1619B_ISO_GPIO_9
] = RTK_PIN_CONFIG(gpio_9
, 0x74, 12, 1, 2, 0, 3, 4, PADDRI_4_8
),
1513 [RTD1619B_ISO_GPIO_10
] = RTK_PIN_CONFIG(gpio_10
, 0x74, 17, 1, 2, 0, 3, 4, PADDRI_4_8
),
1514 [RTD1619B_ISO_GPIO_11
] = RTK_PIN_CONFIG(gpio_11
, 0x74, 22, 1, 2, 0, 3, 4, PADDRI_4_8
),
1515 [RTD1619B_ISO_HIF_RDY
] = RTK_PIN_CONFIG(hif_rdy
, 0x78, 0, 0, 1, 3, 2, 12, NA
),
1516 [RTD1619B_ISO_HIF_CLK
] = RTK_PIN_CONFIG(hif_clk
, 0x78, 13, 0, 1, 3, 2, 12, NA
),
1517 [RTD1619B_ISO_GPIO_32
] = RTK_PIN_CONFIG(gpio_32
, 0x78, 26, 0, 1, 3, 2, 12, NA
),
1518 [RTD1619B_ISO_GPIO_33
] = RTK_PIN_CONFIG(gpio_33
, 0x7c, 7, 0, 1, 3, 2, 12, NA
),
1519 [RTD1619B_ISO_HIF_DATA
] = RTK_PIN_CONFIG(hif_data
, 0x80, 0, 0, 1, 3, 2, 12, NA
),
1520 [RTD1619B_ISO_HIF_EN
] = RTK_PIN_CONFIG(hif_en
, 0x80, 13, 0, 1, 3, 2, 12, NA
),
1523 static const struct rtd_pin_sconfig_desc rtd1619b_iso_sconfigs
[] = {
1524 RTK_PIN_SCONFIG(spi_si
, 0x28, 18, 3, 21, 3, 24, 3),
1525 RTK_PIN_SCONFIG(spi_sck
, 0x2c, 3, 3, 6, 3, 9, 3),
1526 RTK_PIN_SCONFIG(spi_ce_n
, 0x2c, 16, 3, 19, 3, 22, 3),
1527 RTK_PIN_SCONFIG(spi_so
, 0x2c, 29, 3, 32, 3, 35, 3),
1528 RTK_PIN_SCONFIG(emmc_clk
, 0x30, 10, 3, 13, 3, 16, 3),
1529 RTK_PIN_SCONFIG(emmc_cmd
, 0x34, 3, 3, 6, 3, 9, 3),
1530 RTK_PIN_SCONFIG(emmc_rst_n
, 0x34, 17, 3, 20, 3, 23, 3),
1531 RTK_PIN_SCONFIG(emmc_dd_sb
, 0x34, 30, 3, 33, 3, 36, 3),
1532 RTK_PIN_SCONFIG(emmc_data_5
, 0x38, 11, 3, 14, 3, 17, 3),
1533 RTK_PIN_SCONFIG(emmc_data_3
, 0x3c, 3, 3, 6, 3, 9, 3),
1534 RTK_PIN_SCONFIG(emmc_data_4
, 0x3c, 16, 3, 19, 3, 22, 3),
1535 RTK_PIN_SCONFIG(emmc_data_0
, 0x3c, 29, 3, 32, 3, 35, 3),
1536 RTK_PIN_SCONFIG(emmc_data_1
, 0x40, 10, 3, 13, 3, 16, 3),
1537 RTK_PIN_SCONFIG(emmc_data_2
, 0x44, 3, 3, 6, 3, 9, 3),
1538 RTK_PIN_SCONFIG(emmc_data_7
, 0x44, 16, 3, 19, 3, 22, 3),
1539 RTK_PIN_SCONFIG(emmc_data_6
, 0x44, 29, 3, 32, 3, 35, 3),
1540 RTK_PIN_SCONFIG(gpio_40
, 0x68, 13, 3, 16, 3, 19, 3),
1541 RTK_PIN_SCONFIG(gpio_41
, 0x6c, 3, 3, 6, 3, 9, 3),
1542 RTK_PIN_SCONFIG(gpio_42
, 0x6c, 16, 3, 19, 3, 22, 3),
1543 RTK_PIN_SCONFIG(gpio_43
, 0x70, 3, 3, 6, 3, 9, 3),
1544 RTK_PIN_SCONFIG(gpio_44
, 0x70, 16, 3, 19, 3, 22, 3),
1545 RTK_PIN_SCONFIG(gpio_45
, 0x70, 29, 3, 32, 3, 35, 3),
1546 RTK_PIN_SCONFIG(hif_rdy
, 0x78, 3, 3, 6, 3, 9, 3),
1547 RTK_PIN_SCONFIG(hif_clk
, 0x78, 16, 3, 19, 3, 22, 3),
1548 RTK_PIN_SCONFIG(gpio_32
, 0x78, 29, 3, 32, 3, 35, 3),
1549 RTK_PIN_SCONFIG(gpio_33
, 0x7c, 10, 3, 13, 3, 16, 3),
1550 RTK_PIN_SCONFIG(hif_data
, 0x80, 3, 3, 6, 3, 9, 3),
1551 RTK_PIN_SCONFIG(hif_en
, 0x80, 16, 3, 19, 3, 22, 3),
1554 static const struct rtd_pinctrl_desc rtd1619b_iso_pinctrl_desc
= {
1555 .pins
= rtd1619b_iso_pins
,
1556 .num_pins
= ARRAY_SIZE(rtd1619b_iso_pins
),
1557 .groups
= rtd1619b_pin_groups
,
1558 .num_groups
= ARRAY_SIZE(rtd1619b_pin_groups
),
1559 .functions
= rtd1619b_pin_functions
,
1560 .num_functions
= ARRAY_SIZE(rtd1619b_pin_functions
),
1561 .muxes
= rtd1619b_iso_muxes
,
1562 .num_muxes
= ARRAY_SIZE(rtd1619b_iso_muxes
),
1563 .configs
= rtd1619b_iso_configs
,
1564 .num_configs
= ARRAY_SIZE(rtd1619b_iso_configs
),
1565 .sconfigs
= rtd1619b_iso_sconfigs
,
1566 .num_sconfigs
= ARRAY_SIZE(rtd1619b_iso_sconfigs
),
1569 static int rtd1619b_pinctrl_probe(struct platform_device
*pdev
)
1571 return rtd_pinctrl_probe(pdev
, &rtd1619b_iso_pinctrl_desc
);
1574 static const struct of_device_id rtd1619b_pinctrl_of_match
[] = {
1575 { .compatible
= "realtek,rtd1619b-pinctrl", },
1579 static struct platform_driver rtd1619b_pinctrl_driver
= {
1581 .name
= "rtd1619b-pinctrl",
1582 .of_match_table
= rtd1619b_pinctrl_of_match
,
1584 .probe
= rtd1619b_pinctrl_probe
,
1587 static int __init
rtd1619b_pinctrl_init(void)
1589 return platform_driver_register(&rtd1619b_pinctrl_driver
);
1591 arch_initcall(rtd1619b_pinctrl_init
);
1593 static void __exit
rtd1619b_pinctrl_exit(void)
1595 platform_driver_unregister(&rtd1619b_pinctrl_driver
);
1597 module_exit(rtd1619b_pinctrl_exit
);
1599 MODULE_LICENSE("GPL");
1600 MODULE_AUTHOR("Realtek Semiconductor Corporation");
1601 MODULE_DESCRIPTION("Realtek DHC SoC RTD1619B pinctrl driver");