1 /*
2  * Pinctrl data for the NVIDIA Tegra30 pinmux
3  *
4  * Copyright (c) 2011, NVIDIA CORPORATION.  All rights reserved.
5  *
6  * This program is free software; you can redistribute it and/or modify it
7  * under the terms and conditions of the GNU General Public License,
8  * version 2, as published by the Free Software Foundation.
9  *
10  * This program is distributed in the hope it will be useful, but WITHOUT
11  * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
12  * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License for
13  * more details.
14  */
15 
16 #include <linux/platform_device.h>
17 #include <linux/pinctrl/pinctrl.h>
18 #include <linux/pinctrl/pinmux.h>
19 
20 #include "pinctrl-tegra.h"
21 
22 /*
23  * Most pins affected by the pinmux can also be GPIOs. Define these first.
24  * These must match how the GPIO driver names/numbers its pins.
25  */
26 #define _GPIO(offset)				(offset)
27 
28 #define TEGRA_PIN_CLK_32K_OUT_PA0	_GPIO(0)
29 #define TEGRA_PIN_UART3_CTS_N_PA1	_GPIO(1)
30 #define TEGRA_PIN_DAP2_FS_PA2		_GPIO(2)
31 #define TEGRA_PIN_DAP2_SCLK_PA3		_GPIO(3)
32 #define TEGRA_PIN_DAP2_DIN_PA4		_GPIO(4)
33 #define TEGRA_PIN_DAP2_DOUT_PA5		_GPIO(5)
34 #define TEGRA_PIN_SDMMC3_CLK_PA6	_GPIO(6)
35 #define TEGRA_PIN_SDMMC3_CMD_PA7	_GPIO(7)
36 #define TEGRA_PIN_GMI_A17_PB0		_GPIO(8)
37 #define TEGRA_PIN_GMI_A18_PB1		_GPIO(9)
38 #define TEGRA_PIN_LCD_PWR0_PB2		_GPIO(10)
39 #define TEGRA_PIN_LCD_PCLK_PB3		_GPIO(11)
40 #define TEGRA_PIN_SDMMC3_DAT3_PB4	_GPIO(12)
41 #define TEGRA_PIN_SDMMC3_DAT2_PB5	_GPIO(13)
42 #define TEGRA_PIN_SDMMC3_DAT1_PB6	_GPIO(14)
43 #define TEGRA_PIN_SDMMC3_DAT0_PB7	_GPIO(15)
44 #define TEGRA_PIN_UART3_RTS_N_PC0	_GPIO(16)
45 #define TEGRA_PIN_LCD_PWR1_PC1		_GPIO(17)
46 #define TEGRA_PIN_UART2_TXD_PC2		_GPIO(18)
47 #define TEGRA_PIN_UART2_RXD_PC3		_GPIO(19)
48 #define TEGRA_PIN_GEN1_I2C_SCL_PC4	_GPIO(20)
49 #define TEGRA_PIN_GEN1_I2C_SDA_PC5	_GPIO(21)
50 #define TEGRA_PIN_LCD_PWR2_PC6		_GPIO(22)
51 #define TEGRA_PIN_GMI_WP_N_PC7		_GPIO(23)
52 #define TEGRA_PIN_SDMMC3_DAT5_PD0	_GPIO(24)
53 #define TEGRA_PIN_SDMMC3_DAT4_PD1	_GPIO(25)
54 #define TEGRA_PIN_LCD_DC1_PD2		_GPIO(26)
55 #define TEGRA_PIN_SDMMC3_DAT6_PD3	_GPIO(27)
56 #define TEGRA_PIN_SDMMC3_DAT7_PD4	_GPIO(28)
57 #define TEGRA_PIN_VI_D1_PD5		_GPIO(29)
58 #define TEGRA_PIN_VI_VSYNC_PD6		_GPIO(30)
59 #define TEGRA_PIN_VI_HSYNC_PD7		_GPIO(31)
60 #define TEGRA_PIN_LCD_D0_PE0		_GPIO(32)
61 #define TEGRA_PIN_LCD_D1_PE1		_GPIO(33)
62 #define TEGRA_PIN_LCD_D2_PE2		_GPIO(34)
63 #define TEGRA_PIN_LCD_D3_PE3		_GPIO(35)
64 #define TEGRA_PIN_LCD_D4_PE4		_GPIO(36)
65 #define TEGRA_PIN_LCD_D5_PE5		_GPIO(37)
66 #define TEGRA_PIN_LCD_D6_PE6		_GPIO(38)
67 #define TEGRA_PIN_LCD_D7_PE7		_GPIO(39)
68 #define TEGRA_PIN_LCD_D8_PF0		_GPIO(40)
69 #define TEGRA_PIN_LCD_D9_PF1		_GPIO(41)
70 #define TEGRA_PIN_LCD_D10_PF2		_GPIO(42)
71 #define TEGRA_PIN_LCD_D11_PF3		_GPIO(43)
72 #define TEGRA_PIN_LCD_D12_PF4		_GPIO(44)
73 #define TEGRA_PIN_LCD_D13_PF5		_GPIO(45)
74 #define TEGRA_PIN_LCD_D14_PF6		_GPIO(46)
75 #define TEGRA_PIN_LCD_D15_PF7		_GPIO(47)
76 #define TEGRA_PIN_GMI_AD0_PG0		_GPIO(48)
77 #define TEGRA_PIN_GMI_AD1_PG1		_GPIO(49)
78 #define TEGRA_PIN_GMI_AD2_PG2		_GPIO(50)
79 #define TEGRA_PIN_GMI_AD3_PG3		_GPIO(51)
80 #define TEGRA_PIN_GMI_AD4_PG4		_GPIO(52)
81 #define TEGRA_PIN_GMI_AD5_PG5		_GPIO(53)
82 #define TEGRA_PIN_GMI_AD6_PG6		_GPIO(54)
83 #define TEGRA_PIN_GMI_AD7_PG7		_GPIO(55)
84 #define TEGRA_PIN_GMI_AD8_PH0		_GPIO(56)
85 #define TEGRA_PIN_GMI_AD9_PH1		_GPIO(57)
86 #define TEGRA_PIN_GMI_AD10_PH2		_GPIO(58)
87 #define TEGRA_PIN_GMI_AD11_PH3		_GPIO(59)
88 #define TEGRA_PIN_GMI_AD12_PH4		_GPIO(60)
89 #define TEGRA_PIN_GMI_AD13_PH5		_GPIO(61)
90 #define TEGRA_PIN_GMI_AD14_PH6		_GPIO(62)
91 #define TEGRA_PIN_GMI_AD15_PH7		_GPIO(63)
92 #define TEGRA_PIN_GMI_WR_N_PI0		_GPIO(64)
93 #define TEGRA_PIN_GMI_OE_N_PI1		_GPIO(65)
94 #define TEGRA_PIN_GMI_DQS_PI2		_GPIO(66)
95 #define TEGRA_PIN_GMI_CS6_N_PI3		_GPIO(67)
96 #define TEGRA_PIN_GMI_RST_N_PI4		_GPIO(68)
97 #define TEGRA_PIN_GMI_IORDY_PI5		_GPIO(69)
98 #define TEGRA_PIN_GMI_CS7_N_PI6		_GPIO(70)
99 #define TEGRA_PIN_GMI_WAIT_PI7		_GPIO(71)
100 #define TEGRA_PIN_GMI_CS0_N_PJ0		_GPIO(72)
101 #define TEGRA_PIN_LCD_DE_PJ1		_GPIO(73)
102 #define TEGRA_PIN_GMI_CS1_N_PJ2		_GPIO(74)
103 #define TEGRA_PIN_LCD_HSYNC_PJ3		_GPIO(75)
104 #define TEGRA_PIN_LCD_VSYNC_PJ4		_GPIO(76)
105 #define TEGRA_PIN_UART2_CTS_N_PJ5	_GPIO(77)
106 #define TEGRA_PIN_UART2_RTS_N_PJ6	_GPIO(78)
107 #define TEGRA_PIN_GMI_A16_PJ7		_GPIO(79)
108 #define TEGRA_PIN_GMI_ADV_N_PK0		_GPIO(80)
109 #define TEGRA_PIN_GMI_CLK_PK1		_GPIO(81)
110 #define TEGRA_PIN_GMI_CS4_N_PK2		_GPIO(82)
111 #define TEGRA_PIN_GMI_CS2_N_PK3		_GPIO(83)
112 #define TEGRA_PIN_GMI_CS3_N_PK4		_GPIO(84)
113 #define TEGRA_PIN_SPDIF_OUT_PK5		_GPIO(85)
114 #define TEGRA_PIN_SPDIF_IN_PK6		_GPIO(86)
115 #define TEGRA_PIN_GMI_A19_PK7		_GPIO(87)
116 #define TEGRA_PIN_VI_D2_PL0		_GPIO(88)
117 #define TEGRA_PIN_VI_D3_PL1		_GPIO(89)
118 #define TEGRA_PIN_VI_D4_PL2		_GPIO(90)
119 #define TEGRA_PIN_VI_D5_PL3		_GPIO(91)
120 #define TEGRA_PIN_VI_D6_PL4		_GPIO(92)
121 #define TEGRA_PIN_VI_D7_PL5		_GPIO(93)
122 #define TEGRA_PIN_VI_D8_PL6		_GPIO(94)
123 #define TEGRA_PIN_VI_D9_PL7		_GPIO(95)
124 #define TEGRA_PIN_LCD_D16_PM0		_GPIO(96)
125 #define TEGRA_PIN_LCD_D17_PM1		_GPIO(97)
126 #define TEGRA_PIN_LCD_D18_PM2		_GPIO(98)
127 #define TEGRA_PIN_LCD_D19_PM3		_GPIO(99)
128 #define TEGRA_PIN_LCD_D20_PM4		_GPIO(100)
129 #define TEGRA_PIN_LCD_D21_PM5		_GPIO(101)
130 #define TEGRA_PIN_LCD_D22_PM6		_GPIO(102)
131 #define TEGRA_PIN_LCD_D23_PM7		_GPIO(103)
132 #define TEGRA_PIN_DAP1_FS_PN0		_GPIO(104)
133 #define TEGRA_PIN_DAP1_DIN_PN1		_GPIO(105)
134 #define TEGRA_PIN_DAP1_DOUT_PN2		_GPIO(106)
135 #define TEGRA_PIN_DAP1_SCLK_PN3		_GPIO(107)
136 #define TEGRA_PIN_LCD_CS0_N_PN4		_GPIO(108)
137 #define TEGRA_PIN_LCD_SDOUT_PN5		_GPIO(109)
138 #define TEGRA_PIN_LCD_DC0_PN6		_GPIO(110)
139 #define TEGRA_PIN_HDMI_INT_PN7		_GPIO(111)
140 #define TEGRA_PIN_ULPI_DATA7_PO0	_GPIO(112)
141 #define TEGRA_PIN_ULPI_DATA0_PO1	_GPIO(113)
142 #define TEGRA_PIN_ULPI_DATA1_PO2	_GPIO(114)
143 #define TEGRA_PIN_ULPI_DATA2_PO3	_GPIO(115)
144 #define TEGRA_PIN_ULPI_DATA3_PO4	_GPIO(116)
145 #define TEGRA_PIN_ULPI_DATA4_PO5	_GPIO(117)
146 #define TEGRA_PIN_ULPI_DATA5_PO6	_GPIO(118)
147 #define TEGRA_PIN_ULPI_DATA6_PO7	_GPIO(119)
148 #define TEGRA_PIN_DAP3_FS_PP0		_GPIO(120)
149 #define TEGRA_PIN_DAP3_DIN_PP1		_GPIO(121)
150 #define TEGRA_PIN_DAP3_DOUT_PP2		_GPIO(122)
151 #define TEGRA_PIN_DAP3_SCLK_PP3		_GPIO(123)
152 #define TEGRA_PIN_DAP4_FS_PP4		_GPIO(124)
153 #define TEGRA_PIN_DAP4_DIN_PP5		_GPIO(125)
154 #define TEGRA_PIN_DAP4_DOUT_PP6		_GPIO(126)
155 #define TEGRA_PIN_DAP4_SCLK_PP7		_GPIO(127)
156 #define TEGRA_PIN_KB_COL0_PQ0		_GPIO(128)
157 #define TEGRA_PIN_KB_COL1_PQ1		_GPIO(129)
158 #define TEGRA_PIN_KB_COL2_PQ2		_GPIO(130)
159 #define TEGRA_PIN_KB_COL3_PQ3		_GPIO(131)
160 #define TEGRA_PIN_KB_COL4_PQ4		_GPIO(132)
161 #define TEGRA_PIN_KB_COL5_PQ5		_GPIO(133)
162 #define TEGRA_PIN_KB_COL6_PQ6		_GPIO(134)
163 #define TEGRA_PIN_KB_COL7_PQ7		_GPIO(135)
164 #define TEGRA_PIN_KB_ROW0_PR0		_GPIO(136)
165 #define TEGRA_PIN_KB_ROW1_PR1		_GPIO(137)
166 #define TEGRA_PIN_KB_ROW2_PR2		_GPIO(138)
167 #define TEGRA_PIN_KB_ROW3_PR3		_GPIO(139)
168 #define TEGRA_PIN_KB_ROW4_PR4		_GPIO(140)
169 #define TEGRA_PIN_KB_ROW5_PR5		_GPIO(141)
170 #define TEGRA_PIN_KB_ROW6_PR6		_GPIO(142)
171 #define TEGRA_PIN_KB_ROW7_PR7		_GPIO(143)
172 #define TEGRA_PIN_KB_ROW8_PS0		_GPIO(144)
173 #define TEGRA_PIN_KB_ROW9_PS1		_GPIO(145)
174 #define TEGRA_PIN_KB_ROW10_PS2		_GPIO(146)
175 #define TEGRA_PIN_KB_ROW11_PS3		_GPIO(147)
176 #define TEGRA_PIN_KB_ROW12_PS4		_GPIO(148)
177 #define TEGRA_PIN_KB_ROW13_PS5		_GPIO(149)
178 #define TEGRA_PIN_KB_ROW14_PS6		_GPIO(150)
179 #define TEGRA_PIN_KB_ROW15_PS7		_GPIO(151)
180 #define TEGRA_PIN_VI_PCLK_PT0		_GPIO(152)
181 #define TEGRA_PIN_VI_MCLK_PT1		_GPIO(153)
182 #define TEGRA_PIN_VI_D10_PT2		_GPIO(154)
183 #define TEGRA_PIN_VI_D11_PT3		_GPIO(155)
184 #define TEGRA_PIN_VI_D0_PT4		_GPIO(156)
185 #define TEGRA_PIN_GEN2_I2C_SCL_PT5	_GPIO(157)
186 #define TEGRA_PIN_GEN2_I2C_SDA_PT6	_GPIO(158)
187 #define TEGRA_PIN_SDMMC4_CMD_PT7	_GPIO(159)
188 #define TEGRA_PIN_PU0			_GPIO(160)
189 #define TEGRA_PIN_PU1			_GPIO(161)
190 #define TEGRA_PIN_PU2			_GPIO(162)
191 #define TEGRA_PIN_PU3			_GPIO(163)
192 #define TEGRA_PIN_PU4			_GPIO(164)
193 #define TEGRA_PIN_PU5			_GPIO(165)
194 #define TEGRA_PIN_PU6			_GPIO(166)
195 #define TEGRA_PIN_JTAG_RTCK_PU7		_GPIO(167)
196 #define TEGRA_PIN_PV0			_GPIO(168)
197 #define TEGRA_PIN_PV1			_GPIO(169)
198 #define TEGRA_PIN_PV2			_GPIO(170)
199 #define TEGRA_PIN_PV3			_GPIO(171)
200 #define TEGRA_PIN_DDC_SCL_PV4		_GPIO(172)
201 #define TEGRA_PIN_DDC_SDA_PV5		_GPIO(173)
202 #define TEGRA_PIN_CRT_HSYNC_PV6		_GPIO(174)
203 #define TEGRA_PIN_CRT_VSYNC_PV7		_GPIO(175)
204 #define TEGRA_PIN_LCD_CS1_N_PW0		_GPIO(176)
205 #define TEGRA_PIN_LCD_M1_PW1		_GPIO(177)
206 #define TEGRA_PIN_SPI2_CS1_N_PW2	_GPIO(178)
207 #define TEGRA_PIN_SPI2_CS2_N_PW3	_GPIO(179)
208 #define TEGRA_PIN_CLK1_OUT_PW4		_GPIO(180)
209 #define TEGRA_PIN_CLK2_OUT_PW5		_GPIO(181)
210 #define TEGRA_PIN_UART3_TXD_PW6		_GPIO(182)
211 #define TEGRA_PIN_UART3_RXD_PW7		_GPIO(183)
212 #define TEGRA_PIN_SPI2_MOSI_PX0		_GPIO(184)
213 #define TEGRA_PIN_SPI2_MISO_PX1		_GPIO(185)
214 #define TEGRA_PIN_SPI2_SCK_PX2		_GPIO(186)
215 #define TEGRA_PIN_SPI2_CS0_N_PX3	_GPIO(187)
216 #define TEGRA_PIN_SPI1_MOSI_PX4		_GPIO(188)
217 #define TEGRA_PIN_SPI1_SCK_PX5		_GPIO(189)
218 #define TEGRA_PIN_SPI1_CS0_N_PX6	_GPIO(190)
219 #define TEGRA_PIN_SPI1_MISO_PX7		_GPIO(191)
220 #define TEGRA_PIN_ULPI_CLK_PY0		_GPIO(192)
221 #define TEGRA_PIN_ULPI_DIR_PY1		_GPIO(193)
222 #define TEGRA_PIN_ULPI_NXT_PY2		_GPIO(194)
223 #define TEGRA_PIN_ULPI_STP_PY3		_GPIO(195)
224 #define TEGRA_PIN_SDMMC1_DAT3_PY4	_GPIO(196)
225 #define TEGRA_PIN_SDMMC1_DAT2_PY5	_GPIO(197)
226 #define TEGRA_PIN_SDMMC1_DAT1_PY6	_GPIO(198)
227 #define TEGRA_PIN_SDMMC1_DAT0_PY7	_GPIO(199)
228 #define TEGRA_PIN_SDMMC1_CLK_PZ0	_GPIO(200)
229 #define TEGRA_PIN_SDMMC1_CMD_PZ1	_GPIO(201)
230 #define TEGRA_PIN_LCD_SDIN_PZ2		_GPIO(202)
231 #define TEGRA_PIN_LCD_WR_N_PZ3		_GPIO(203)
232 #define TEGRA_PIN_LCD_SCK_PZ4		_GPIO(204)
233 #define TEGRA_PIN_SYS_CLK_REQ_PZ5	_GPIO(205)
234 #define TEGRA_PIN_PWR_I2C_SCL_PZ6	_GPIO(206)
235 #define TEGRA_PIN_PWR_I2C_SDA_PZ7	_GPIO(207)
236 #define TEGRA_PIN_SDMMC4_DAT0_PAA0	_GPIO(208)
237 #define TEGRA_PIN_SDMMC4_DAT1_PAA1	_GPIO(209)
238 #define TEGRA_PIN_SDMMC4_DAT2_PAA2	_GPIO(210)
239 #define TEGRA_PIN_SDMMC4_DAT3_PAA3	_GPIO(211)
240 #define TEGRA_PIN_SDMMC4_DAT4_PAA4	_GPIO(212)
241 #define TEGRA_PIN_SDMMC4_DAT5_PAA5	_GPIO(213)
242 #define TEGRA_PIN_SDMMC4_DAT6_PAA6	_GPIO(214)
243 #define TEGRA_PIN_SDMMC4_DAT7_PAA7	_GPIO(215)
244 #define TEGRA_PIN_PBB0			_GPIO(216)
245 #define TEGRA_PIN_CAM_I2C_SCL_PBB1	_GPIO(217)
246 #define TEGRA_PIN_CAM_I2C_SDA_PBB2	_GPIO(218)
247 #define TEGRA_PIN_PBB3			_GPIO(219)
248 #define TEGRA_PIN_PBB4			_GPIO(220)
249 #define TEGRA_PIN_PBB5			_GPIO(221)
250 #define TEGRA_PIN_PBB6			_GPIO(222)
251 #define TEGRA_PIN_PBB7			_GPIO(223)
252 #define TEGRA_PIN_CAM_MCLK_PCC0		_GPIO(224)
253 #define TEGRA_PIN_PCC1			_GPIO(225)
254 #define TEGRA_PIN_PCC2			_GPIO(226)
255 #define TEGRA_PIN_SDMMC4_RST_N_PCC3	_GPIO(227)
256 #define TEGRA_PIN_SDMMC4_CLK_PCC4	_GPIO(228)
257 #define TEGRA_PIN_CLK2_REQ_PCC5		_GPIO(229)
258 #define TEGRA_PIN_PEX_L2_RST_N_PCC6	_GPIO(230)
259 #define TEGRA_PIN_PEX_L2_CLKREQ_N_PCC7	_GPIO(231)
260 #define TEGRA_PIN_PEX_L0_PRSNT_N_PDD0	_GPIO(232)
261 #define TEGRA_PIN_PEX_L0_RST_N_PDD1	_GPIO(233)
262 #define TEGRA_PIN_PEX_L0_CLKREQ_N_PDD2	_GPIO(234)
263 #define TEGRA_PIN_PEX_WAKE_N_PDD3	_GPIO(235)
264 #define TEGRA_PIN_PEX_L1_PRSNT_N_PDD4	_GPIO(236)
265 #define TEGRA_PIN_PEX_L1_RST_N_PDD5	_GPIO(237)
266 #define TEGRA_PIN_PEX_L1_CLKREQ_N_PDD6	_GPIO(238)
267 #define TEGRA_PIN_PEX_L2_PRSNT_N_PDD7	_GPIO(239)
268 #define TEGRA_PIN_CLK3_OUT_PEE0		_GPIO(240)
269 #define TEGRA_PIN_CLK3_REQ_PEE1		_GPIO(241)
270 #define TEGRA_PIN_CLK1_REQ_PEE2		_GPIO(242)
271 #define TEGRA_PIN_HDMI_CEC_PEE3		_GPIO(243)
272 #define TEGRA_PIN_PEE4			_GPIO(244)
273 #define TEGRA_PIN_PEE5			_GPIO(245)
274 #define TEGRA_PIN_PEE6			_GPIO(246)
275 #define TEGRA_PIN_PEE7			_GPIO(247)
276 
277 /* All non-GPIO pins follow */
278 #define NUM_GPIOS				(TEGRA_PIN_PEE7 + 1)
279 #define _PIN(offset)				(NUM_GPIOS + (offset))
280 
281 /* Non-GPIO pins */
282 #define TEGRA_PIN_CLK_32K_IN		_PIN(0)
283 #define TEGRA_PIN_CORE_PWR_REQ		_PIN(1)
284 #define TEGRA_PIN_CPU_PWR_REQ		_PIN(2)
285 #define TEGRA_PIN_JTAG_TCK		_PIN(3)
286 #define TEGRA_PIN_JTAG_TDI		_PIN(4)
287 #define TEGRA_PIN_JTAG_TDO		_PIN(5)
288 #define TEGRA_PIN_JTAG_TMS		_PIN(6)
289 #define TEGRA_PIN_JTAG_TRST_N		_PIN(7)
290 #define TEGRA_PIN_OWR			_PIN(8)
291 #define TEGRA_PIN_PWR_INT_N		_PIN(9)
292 #define TEGRA_PIN_SYS_RESET_N		_PIN(10)
293 #define TEGRA_PIN_TEST_MODE_EN		_PIN(11)
294 
295 static const struct pinctrl_pin_desc tegra30_pins[] = {
296 	PINCTRL_PIN(TEGRA_PIN_CLK_32K_OUT_PA0, "CLK_32K_OUT PA0"),
297 	PINCTRL_PIN(TEGRA_PIN_UART3_CTS_N_PA1, "UART3_CTS_N PA1"),
298 	PINCTRL_PIN(TEGRA_PIN_DAP2_FS_PA2, "DAP2_FS PA2"),
299 	PINCTRL_PIN(TEGRA_PIN_DAP2_SCLK_PA3, "DAP2_SCLK PA3"),
300 	PINCTRL_PIN(TEGRA_PIN_DAP2_DIN_PA4, "DAP2_DIN PA4"),
301 	PINCTRL_PIN(TEGRA_PIN_DAP2_DOUT_PA5, "DAP2_DOUT PA5"),
302 	PINCTRL_PIN(TEGRA_PIN_SDMMC3_CLK_PA6, "SDMMC3_CLK PA6"),
303 	PINCTRL_PIN(TEGRA_PIN_SDMMC3_CMD_PA7, "SDMMC3_CMD PA7"),
304 	PINCTRL_PIN(TEGRA_PIN_GMI_A17_PB0, "GMI_A17 PB0"),
305 	PINCTRL_PIN(TEGRA_PIN_GMI_A18_PB1, "GMI_A18 PB1"),
306 	PINCTRL_PIN(TEGRA_PIN_LCD_PWR0_PB2, "LCD_PWR0 PB2"),
307 	PINCTRL_PIN(TEGRA_PIN_LCD_PCLK_PB3, "LCD_PCLK PB3"),
308 	PINCTRL_PIN(TEGRA_PIN_SDMMC3_DAT3_PB4, "SDMMC3_DAT3 PB4"),
309 	PINCTRL_PIN(TEGRA_PIN_SDMMC3_DAT2_PB5, "SDMMC3_DAT2 PB5"),
310 	PINCTRL_PIN(TEGRA_PIN_SDMMC3_DAT1_PB6, "SDMMC3_DAT1 PB6"),
311 	PINCTRL_PIN(TEGRA_PIN_SDMMC3_DAT0_PB7, "SDMMC3_DAT0 PB7"),
312 	PINCTRL_PIN(TEGRA_PIN_UART3_RTS_N_PC0, "UART3_RTS_N PC0"),
313 	PINCTRL_PIN(TEGRA_PIN_LCD_PWR1_PC1, "LCD_PWR1 PC1"),
314 	PINCTRL_PIN(TEGRA_PIN_UART2_TXD_PC2, "UART2_TXD PC2"),
315 	PINCTRL_PIN(TEGRA_PIN_UART2_RXD_PC3, "UART2_RXD PC3"),
316 	PINCTRL_PIN(TEGRA_PIN_GEN1_I2C_SCL_PC4, "GEN1_I2C_SCL PC4"),
317 	PINCTRL_PIN(TEGRA_PIN_GEN1_I2C_SDA_PC5, "GEN1_I2C_SDA PC5"),
318 	PINCTRL_PIN(TEGRA_PIN_LCD_PWR2_PC6, "LCD_PWR2 PC6"),
319 	PINCTRL_PIN(TEGRA_PIN_GMI_WP_N_PC7, "GMI_WP_N PC7"),
320 	PINCTRL_PIN(TEGRA_PIN_SDMMC3_DAT5_PD0, "SDMMC3_DAT5 PD0"),
321 	PINCTRL_PIN(TEGRA_PIN_SDMMC3_DAT4_PD1, "SDMMC3_DAT4 PD1"),
322 	PINCTRL_PIN(TEGRA_PIN_LCD_DC1_PD2, "LCD_DC1 PD2"),
323 	PINCTRL_PIN(TEGRA_PIN_SDMMC3_DAT6_PD3, "SDMMC3_DAT6 PD3"),
324 	PINCTRL_PIN(TEGRA_PIN_SDMMC3_DAT7_PD4, "SDMMC3_DAT7 PD4"),
325 	PINCTRL_PIN(TEGRA_PIN_VI_D1_PD5, "VI_D1 PD5"),
326 	PINCTRL_PIN(TEGRA_PIN_VI_VSYNC_PD6, "VI_VSYNC PD6"),
327 	PINCTRL_PIN(TEGRA_PIN_VI_HSYNC_PD7, "VI_HSYNC PD7"),
328 	PINCTRL_PIN(TEGRA_PIN_LCD_D0_PE0, "LCD_D0 PE0"),
329 	PINCTRL_PIN(TEGRA_PIN_LCD_D1_PE1, "LCD_D1 PE1"),
330 	PINCTRL_PIN(TEGRA_PIN_LCD_D2_PE2, "LCD_D2 PE2"),
331 	PINCTRL_PIN(TEGRA_PIN_LCD_D3_PE3, "LCD_D3 PE3"),
332 	PINCTRL_PIN(TEGRA_PIN_LCD_D4_PE4, "LCD_D4 PE4"),
333 	PINCTRL_PIN(TEGRA_PIN_LCD_D5_PE5, "LCD_D5 PE5"),
334 	PINCTRL_PIN(TEGRA_PIN_LCD_D6_PE6, "LCD_D6 PE6"),
335 	PINCTRL_PIN(TEGRA_PIN_LCD_D7_PE7, "LCD_D7 PE7"),
336 	PINCTRL_PIN(TEGRA_PIN_LCD_D8_PF0, "LCD_D8 PF0"),
337 	PINCTRL_PIN(TEGRA_PIN_LCD_D9_PF1, "LCD_D9 PF1"),
338 	PINCTRL_PIN(TEGRA_PIN_LCD_D10_PF2, "LCD_D10 PF2"),
339 	PINCTRL_PIN(TEGRA_PIN_LCD_D11_PF3, "LCD_D11 PF3"),
340 	PINCTRL_PIN(TEGRA_PIN_LCD_D12_PF4, "LCD_D12 PF4"),
341 	PINCTRL_PIN(TEGRA_PIN_LCD_D13_PF5, "LCD_D13 PF5"),
342 	PINCTRL_PIN(TEGRA_PIN_LCD_D14_PF6, "LCD_D14 PF6"),
343 	PINCTRL_PIN(TEGRA_PIN_LCD_D15_PF7, "LCD_D15 PF7"),
344 	PINCTRL_PIN(TEGRA_PIN_GMI_AD0_PG0, "GMI_AD0 PG0"),
345 	PINCTRL_PIN(TEGRA_PIN_GMI_AD1_PG1, "GMI_AD1 PG1"),
346 	PINCTRL_PIN(TEGRA_PIN_GMI_AD2_PG2, "GMI_AD2 PG2"),
347 	PINCTRL_PIN(TEGRA_PIN_GMI_AD3_PG3, "GMI_AD3 PG3"),
348 	PINCTRL_PIN(TEGRA_PIN_GMI_AD4_PG4, "GMI_AD4 PG4"),
349 	PINCTRL_PIN(TEGRA_PIN_GMI_AD5_PG5, "GMI_AD5 PG5"),
350 	PINCTRL_PIN(TEGRA_PIN_GMI_AD6_PG6, "GMI_AD6 PG6"),
351 	PINCTRL_PIN(TEGRA_PIN_GMI_AD7_PG7, "GMI_AD7 PG7"),
352 	PINCTRL_PIN(TEGRA_PIN_GMI_AD8_PH0, "GMI_AD8 PH0"),
353 	PINCTRL_PIN(TEGRA_PIN_GMI_AD9_PH1, "GMI_AD9 PH1"),
354 	PINCTRL_PIN(TEGRA_PIN_GMI_AD10_PH2, "GMI_AD10 PH2"),
355 	PINCTRL_PIN(TEGRA_PIN_GMI_AD11_PH3, "GMI_AD11 PH3"),
356 	PINCTRL_PIN(TEGRA_PIN_GMI_AD12_PH4, "GMI_AD12 PH4"),
357 	PINCTRL_PIN(TEGRA_PIN_GMI_AD13_PH5, "GMI_AD13 PH5"),
358 	PINCTRL_PIN(TEGRA_PIN_GMI_AD14_PH6, "GMI_AD14 PH6"),
359 	PINCTRL_PIN(TEGRA_PIN_GMI_AD15_PH7, "GMI_AD15 PH7"),
360 	PINCTRL_PIN(TEGRA_PIN_GMI_WR_N_PI0, "GMI_WR_N PI0"),
361 	PINCTRL_PIN(TEGRA_PIN_GMI_OE_N_PI1, "GMI_OE_N PI1"),
362 	PINCTRL_PIN(TEGRA_PIN_GMI_DQS_PI2, "GMI_DQS PI2"),
363 	PINCTRL_PIN(TEGRA_PIN_GMI_CS6_N_PI3, "GMI_CS6_N PI3"),
364 	PINCTRL_PIN(TEGRA_PIN_GMI_RST_N_PI4, "GMI_RST_N PI4"),
365 	PINCTRL_PIN(TEGRA_PIN_GMI_IORDY_PI5, "GMI_IORDY PI5"),
366 	PINCTRL_PIN(TEGRA_PIN_GMI_CS7_N_PI6, "GMI_CS7_N PI6"),
367 	PINCTRL_PIN(TEGRA_PIN_GMI_WAIT_PI7, "GMI_WAIT PI7"),
368 	PINCTRL_PIN(TEGRA_PIN_GMI_CS0_N_PJ0, "GMI_CS0_N PJ0"),
369 	PINCTRL_PIN(TEGRA_PIN_LCD_DE_PJ1, "LCD_DE PJ1"),
370 	PINCTRL_PIN(TEGRA_PIN_GMI_CS1_N_PJ2, "GMI_CS1_N PJ2"),
371 	PINCTRL_PIN(TEGRA_PIN_LCD_HSYNC_PJ3, "LCD_HSYNC PJ3"),
372 	PINCTRL_PIN(TEGRA_PIN_LCD_VSYNC_PJ4, "LCD_VSYNC PJ4"),
373 	PINCTRL_PIN(TEGRA_PIN_UART2_CTS_N_PJ5, "UART2_CTS_N PJ5"),
374 	PINCTRL_PIN(TEGRA_PIN_UART2_RTS_N_PJ6, "UART2_RTS_N PJ6"),
375 	PINCTRL_PIN(TEGRA_PIN_GMI_A16_PJ7, "GMI_A16 PJ7"),
376 	PINCTRL_PIN(TEGRA_PIN_GMI_ADV_N_PK0, "GMI_ADV_N PK0"),
377 	PINCTRL_PIN(TEGRA_PIN_GMI_CLK_PK1, "GMI_CLK PK1"),
378 	PINCTRL_PIN(TEGRA_PIN_GMI_CS4_N_PK2, "GMI_CS4_N PK2"),
379 	PINCTRL_PIN(TEGRA_PIN_GMI_CS2_N_PK3, "GMI_CS2_N PK3"),
380 	PINCTRL_PIN(TEGRA_PIN_GMI_CS3_N_PK4, "GMI_CS3_N PK4"),
381 	PINCTRL_PIN(TEGRA_PIN_SPDIF_OUT_PK5, "SPDIF_OUT PK5"),
382 	PINCTRL_PIN(TEGRA_PIN_SPDIF_IN_PK6, "SPDIF_IN PK6"),
383 	PINCTRL_PIN(TEGRA_PIN_GMI_A19_PK7, "GMI_A19 PK7"),
384 	PINCTRL_PIN(TEGRA_PIN_VI_D2_PL0, "VI_D2 PL0"),
385 	PINCTRL_PIN(TEGRA_PIN_VI_D3_PL1, "VI_D3 PL1"),
386 	PINCTRL_PIN(TEGRA_PIN_VI_D4_PL2, "VI_D4 PL2"),
387 	PINCTRL_PIN(TEGRA_PIN_VI_D5_PL3, "VI_D5 PL3"),
388 	PINCTRL_PIN(TEGRA_PIN_VI_D6_PL4, "VI_D6 PL4"),
389 	PINCTRL_PIN(TEGRA_PIN_VI_D7_PL5, "VI_D7 PL5"),
390 	PINCTRL_PIN(TEGRA_PIN_VI_D8_PL6, "VI_D8 PL6"),
391 	PINCTRL_PIN(TEGRA_PIN_VI_D9_PL7, "VI_D9 PL7"),
392 	PINCTRL_PIN(TEGRA_PIN_LCD_D16_PM0, "LCD_D16 PM0"),
393 	PINCTRL_PIN(TEGRA_PIN_LCD_D17_PM1, "LCD_D17 PM1"),
394 	PINCTRL_PIN(TEGRA_PIN_LCD_D18_PM2, "LCD_D18 PM2"),
395 	PINCTRL_PIN(TEGRA_PIN_LCD_D19_PM3, "LCD_D19 PM3"),
396 	PINCTRL_PIN(TEGRA_PIN_LCD_D20_PM4, "LCD_D20 PM4"),
397 	PINCTRL_PIN(TEGRA_PIN_LCD_D21_PM5, "LCD_D21 PM5"),
398 	PINCTRL_PIN(TEGRA_PIN_LCD_D22_PM6, "LCD_D22 PM6"),
399 	PINCTRL_PIN(TEGRA_PIN_LCD_D23_PM7, "LCD_D23 PM7"),
400 	PINCTRL_PIN(TEGRA_PIN_DAP1_FS_PN0, "DAP1_FS PN0"),
401 	PINCTRL_PIN(TEGRA_PIN_DAP1_DIN_PN1, "DAP1_DIN PN1"),
402 	PINCTRL_PIN(TEGRA_PIN_DAP1_DOUT_PN2, "DAP1_DOUT PN2"),
403 	PINCTRL_PIN(TEGRA_PIN_DAP1_SCLK_PN3, "DAP1_SCLK PN3"),
404 	PINCTRL_PIN(TEGRA_PIN_LCD_CS0_N_PN4, "LCD_CS0_N PN4"),
405 	PINCTRL_PIN(TEGRA_PIN_LCD_SDOUT_PN5, "LCD_SDOUT PN5"),
406 	PINCTRL_PIN(TEGRA_PIN_LCD_DC0_PN6, "LCD_DC0 PN6"),
407 	PINCTRL_PIN(TEGRA_PIN_HDMI_INT_PN7, "HDMI_INT PN7"),
408 	PINCTRL_PIN(TEGRA_PIN_ULPI_DATA7_PO0, "ULPI_DATA7 PO0"),
409 	PINCTRL_PIN(TEGRA_PIN_ULPI_DATA0_PO1, "ULPI_DATA0 PO1"),
410 	PINCTRL_PIN(TEGRA_PIN_ULPI_DATA1_PO2, "ULPI_DATA1 PO2"),
411 	PINCTRL_PIN(TEGRA_PIN_ULPI_DATA2_PO3, "ULPI_DATA2 PO3"),
412 	PINCTRL_PIN(TEGRA_PIN_ULPI_DATA3_PO4, "ULPI_DATA3 PO4"),
413 	PINCTRL_PIN(TEGRA_PIN_ULPI_DATA4_PO5, "ULPI_DATA4 PO5"),
414 	PINCTRL_PIN(TEGRA_PIN_ULPI_DATA5_PO6, "ULPI_DATA5 PO6"),
415 	PINCTRL_PIN(TEGRA_PIN_ULPI_DATA6_PO7, "ULPI_DATA6 PO7"),
416 	PINCTRL_PIN(TEGRA_PIN_DAP3_FS_PP0, "DAP3_FS PP0"),
417 	PINCTRL_PIN(TEGRA_PIN_DAP3_DIN_PP1, "DAP3_DIN PP1"),
418 	PINCTRL_PIN(TEGRA_PIN_DAP3_DOUT_PP2, "DAP3_DOUT PP2"),
419 	PINCTRL_PIN(TEGRA_PIN_DAP3_SCLK_PP3, "DAP3_SCLK PP3"),
420 	PINCTRL_PIN(TEGRA_PIN_DAP4_FS_PP4, "DAP4_FS PP4"),
421 	PINCTRL_PIN(TEGRA_PIN_DAP4_DIN_PP5, "DAP4_DIN PP5"),
422 	PINCTRL_PIN(TEGRA_PIN_DAP4_DOUT_PP6, "DAP4_DOUT PP6"),
423 	PINCTRL_PIN(TEGRA_PIN_DAP4_SCLK_PP7, "DAP4_SCLK PP7"),
424 	PINCTRL_PIN(TEGRA_PIN_KB_COL0_PQ0, "KB_COL0 PQ0"),
425 	PINCTRL_PIN(TEGRA_PIN_KB_COL1_PQ1, "KB_COL1 PQ1"),
426 	PINCTRL_PIN(TEGRA_PIN_KB_COL2_PQ2, "KB_COL2 PQ2"),
427 	PINCTRL_PIN(TEGRA_PIN_KB_COL3_PQ3, "KB_COL3 PQ3"),
428 	PINCTRL_PIN(TEGRA_PIN_KB_COL4_PQ4, "KB_COL4 PQ4"),
429 	PINCTRL_PIN(TEGRA_PIN_KB_COL5_PQ5, "KB_COL5 PQ5"),
430 	PINCTRL_PIN(TEGRA_PIN_KB_COL6_PQ6, "KB_COL6 PQ6"),
431 	PINCTRL_PIN(TEGRA_PIN_KB_COL7_PQ7, "KB_COL7 PQ7"),
432 	PINCTRL_PIN(TEGRA_PIN_KB_ROW0_PR0, "KB_ROW0 PR0"),
433 	PINCTRL_PIN(TEGRA_PIN_KB_ROW1_PR1, "KB_ROW1 PR1"),
434 	PINCTRL_PIN(TEGRA_PIN_KB_ROW2_PR2, "KB_ROW2 PR2"),
435 	PINCTRL_PIN(TEGRA_PIN_KB_ROW3_PR3, "KB_ROW3 PR3"),
436 	PINCTRL_PIN(TEGRA_PIN_KB_ROW4_PR4, "KB_ROW4 PR4"),
437 	PINCTRL_PIN(TEGRA_PIN_KB_ROW5_PR5, "KB_ROW5 PR5"),
438 	PINCTRL_PIN(TEGRA_PIN_KB_ROW6_PR6, "KB_ROW6 PR6"),
439 	PINCTRL_PIN(TEGRA_PIN_KB_ROW7_PR7, "KB_ROW7 PR7"),
440 	PINCTRL_PIN(TEGRA_PIN_KB_ROW8_PS0, "KB_ROW8 PS0"),
441 	PINCTRL_PIN(TEGRA_PIN_KB_ROW9_PS1, "KB_ROW9 PS1"),
442 	PINCTRL_PIN(TEGRA_PIN_KB_ROW10_PS2, "KB_ROW10 PS2"),
443 	PINCTRL_PIN(TEGRA_PIN_KB_ROW11_PS3, "KB_ROW11 PS3"),
444 	PINCTRL_PIN(TEGRA_PIN_KB_ROW12_PS4, "KB_ROW12 PS4"),
445 	PINCTRL_PIN(TEGRA_PIN_KB_ROW13_PS5, "KB_ROW13 PS5"),
446 	PINCTRL_PIN(TEGRA_PIN_KB_ROW14_PS6, "KB_ROW14 PS6"),
447 	PINCTRL_PIN(TEGRA_PIN_KB_ROW15_PS7, "KB_ROW15 PS7"),
448 	PINCTRL_PIN(TEGRA_PIN_VI_PCLK_PT0, "VI_PCLK PT0"),
449 	PINCTRL_PIN(TEGRA_PIN_VI_MCLK_PT1, "VI_MCLK PT1"),
450 	PINCTRL_PIN(TEGRA_PIN_VI_D10_PT2, "VI_D10 PT2"),
451 	PINCTRL_PIN(TEGRA_PIN_VI_D11_PT3, "VI_D11 PT3"),
452 	PINCTRL_PIN(TEGRA_PIN_VI_D0_PT4, "VI_D0 PT4"),
453 	PINCTRL_PIN(TEGRA_PIN_GEN2_I2C_SCL_PT5, "GEN2_I2C_SCL PT5"),
454 	PINCTRL_PIN(TEGRA_PIN_GEN2_I2C_SDA_PT6, "GEN2_I2C_SDA PT6"),
455 	PINCTRL_PIN(TEGRA_PIN_SDMMC4_CMD_PT7, "SDMMC4_CMD PT7"),
456 	PINCTRL_PIN(TEGRA_PIN_PU0, "PU0"),
457 	PINCTRL_PIN(TEGRA_PIN_PU1, "PU1"),
458 	PINCTRL_PIN(TEGRA_PIN_PU2, "PU2"),
459 	PINCTRL_PIN(TEGRA_PIN_PU3, "PU3"),
460 	PINCTRL_PIN(TEGRA_PIN_PU4, "PU4"),
461 	PINCTRL_PIN(TEGRA_PIN_PU5, "PU5"),
462 	PINCTRL_PIN(TEGRA_PIN_PU6, "PU6"),
463 	PINCTRL_PIN(TEGRA_PIN_JTAG_RTCK_PU7, "JTAG_RTCK PU7"),
464 	PINCTRL_PIN(TEGRA_PIN_PV0, "PV0"),
465 	PINCTRL_PIN(TEGRA_PIN_PV1, "PV1"),
466 	PINCTRL_PIN(TEGRA_PIN_PV2, "PV2"),
467 	PINCTRL_PIN(TEGRA_PIN_PV3, "PV3"),
468 	PINCTRL_PIN(TEGRA_PIN_DDC_SCL_PV4, "DDC_SCL PV4"),
469 	PINCTRL_PIN(TEGRA_PIN_DDC_SDA_PV5, "DDC_SDA PV5"),
470 	PINCTRL_PIN(TEGRA_PIN_CRT_HSYNC_PV6, "CRT_HSYNC PV6"),
471 	PINCTRL_PIN(TEGRA_PIN_CRT_VSYNC_PV7, "CRT_VSYNC PV7"),
472 	PINCTRL_PIN(TEGRA_PIN_LCD_CS1_N_PW0, "LCD_CS1_N PW0"),
473 	PINCTRL_PIN(TEGRA_PIN_LCD_M1_PW1, "LCD_M1 PW1"),
474 	PINCTRL_PIN(TEGRA_PIN_SPI2_CS1_N_PW2, "SPI2_CS1_N PW2"),
475 	PINCTRL_PIN(TEGRA_PIN_SPI2_CS2_N_PW3, "SPI2_CS2_N PW3"),
476 	PINCTRL_PIN(TEGRA_PIN_CLK1_OUT_PW4, "CLK1_OUT PW4"),
477 	PINCTRL_PIN(TEGRA_PIN_CLK2_OUT_PW5, "CLK2_OUT PW5"),
478 	PINCTRL_PIN(TEGRA_PIN_UART3_TXD_PW6, "UART3_TXD PW6"),
479 	PINCTRL_PIN(TEGRA_PIN_UART3_RXD_PW7, "UART3_RXD PW7"),
480 	PINCTRL_PIN(TEGRA_PIN_SPI2_MOSI_PX0, "SPI2_MOSI PX0"),
481 	PINCTRL_PIN(TEGRA_PIN_SPI2_MISO_PX1, "SPI2_MISO PX1"),
482 	PINCTRL_PIN(TEGRA_PIN_SPI2_SCK_PX2, "SPI2_SCK PX2"),
483 	PINCTRL_PIN(TEGRA_PIN_SPI2_CS0_N_PX3, "SPI2_CS0_N PX3"),
484 	PINCTRL_PIN(TEGRA_PIN_SPI1_MOSI_PX4, "SPI1_MOSI PX4"),
485 	PINCTRL_PIN(TEGRA_PIN_SPI1_SCK_PX5, "SPI1_SCK PX5"),
486 	PINCTRL_PIN(TEGRA_PIN_SPI1_CS0_N_PX6, "SPI1_CS0_N PX6"),
487 	PINCTRL_PIN(TEGRA_PIN_SPI1_MISO_PX7, "SPI1_MISO PX7"),
488 	PINCTRL_PIN(TEGRA_PIN_ULPI_CLK_PY0, "ULPI_CLK PY0"),
489 	PINCTRL_PIN(TEGRA_PIN_ULPI_DIR_PY1, "ULPI_DIR PY1"),
490 	PINCTRL_PIN(TEGRA_PIN_ULPI_NXT_PY2, "ULPI_NXT PY2"),
491 	PINCTRL_PIN(TEGRA_PIN_ULPI_STP_PY3, "ULPI_STP PY3"),
492 	PINCTRL_PIN(TEGRA_PIN_SDMMC1_DAT3_PY4, "SDMMC1_DAT3 PY4"),
493 	PINCTRL_PIN(TEGRA_PIN_SDMMC1_DAT2_PY5, "SDMMC1_DAT2 PY5"),
494 	PINCTRL_PIN(TEGRA_PIN_SDMMC1_DAT1_PY6, "SDMMC1_DAT1 PY6"),
495 	PINCTRL_PIN(TEGRA_PIN_SDMMC1_DAT0_PY7, "SDMMC1_DAT0 PY7"),
496 	PINCTRL_PIN(TEGRA_PIN_SDMMC1_CLK_PZ0, "SDMMC1_CLK PZ0"),
497 	PINCTRL_PIN(TEGRA_PIN_SDMMC1_CMD_PZ1, "SDMMC1_CMD PZ1"),
498 	PINCTRL_PIN(TEGRA_PIN_LCD_SDIN_PZ2, "LCD_SDIN PZ2"),
499 	PINCTRL_PIN(TEGRA_PIN_LCD_WR_N_PZ3, "LCD_WR_N PZ3"),
500 	PINCTRL_PIN(TEGRA_PIN_LCD_SCK_PZ4, "LCD_SCK PZ4"),
501 	PINCTRL_PIN(TEGRA_PIN_SYS_CLK_REQ_PZ5, "SYS_CLK_REQ PZ5"),
502 	PINCTRL_PIN(TEGRA_PIN_PWR_I2C_SCL_PZ6, "PWR_I2C_SCL PZ6"),
503 	PINCTRL_PIN(TEGRA_PIN_PWR_I2C_SDA_PZ7, "PWR_I2C_SDA PZ7"),
504 	PINCTRL_PIN(TEGRA_PIN_SDMMC4_DAT0_PAA0, "SDMMC4_DAT0 PAA0"),
505 	PINCTRL_PIN(TEGRA_PIN_SDMMC4_DAT1_PAA1, "SDMMC4_DAT1 PAA1"),
506 	PINCTRL_PIN(TEGRA_PIN_SDMMC4_DAT2_PAA2, "SDMMC4_DAT2 PAA2"),
507 	PINCTRL_PIN(TEGRA_PIN_SDMMC4_DAT3_PAA3, "SDMMC4_DAT3 PAA3"),
508 	PINCTRL_PIN(TEGRA_PIN_SDMMC4_DAT4_PAA4, "SDMMC4_DAT4 PAA4"),
509 	PINCTRL_PIN(TEGRA_PIN_SDMMC4_DAT5_PAA5, "SDMMC4_DAT5 PAA5"),
510 	PINCTRL_PIN(TEGRA_PIN_SDMMC4_DAT6_PAA6, "SDMMC4_DAT6 PAA6"),
511 	PINCTRL_PIN(TEGRA_PIN_SDMMC4_DAT7_PAA7, "SDMMC4_DAT7 PAA7"),
512 	PINCTRL_PIN(TEGRA_PIN_PBB0, "PBB0"),
513 	PINCTRL_PIN(TEGRA_PIN_CAM_I2C_SCL_PBB1, "CAM_I2C_SCL PBB1"),
514 	PINCTRL_PIN(TEGRA_PIN_CAM_I2C_SDA_PBB2, "CAM_I2C_SDA PBB2"),
515 	PINCTRL_PIN(TEGRA_PIN_PBB3, "PBB3"),
516 	PINCTRL_PIN(TEGRA_PIN_PBB4, "PBB4"),
517 	PINCTRL_PIN(TEGRA_PIN_PBB5, "PBB5"),
518 	PINCTRL_PIN(TEGRA_PIN_PBB6, "PBB6"),
519 	PINCTRL_PIN(TEGRA_PIN_PBB7, "PBB7"),
520 	PINCTRL_PIN(TEGRA_PIN_CAM_MCLK_PCC0, "CAM_MCLK PCC0"),
521 	PINCTRL_PIN(TEGRA_PIN_PCC1, "PCC1"),
522 	PINCTRL_PIN(TEGRA_PIN_PCC2, "PCC2"),
523 	PINCTRL_PIN(TEGRA_PIN_SDMMC4_RST_N_PCC3, "SDMMC4_RST_N PCC3"),
524 	PINCTRL_PIN(TEGRA_PIN_SDMMC4_CLK_PCC4, "SDMMC4_CLK PCC4"),
525 	PINCTRL_PIN(TEGRA_PIN_CLK2_REQ_PCC5, "CLK2_REQ PCC5"),
526 	PINCTRL_PIN(TEGRA_PIN_PEX_L2_RST_N_PCC6, "PEX_L2_RST_N PCC6"),
527 	PINCTRL_PIN(TEGRA_PIN_PEX_L2_CLKREQ_N_PCC7, "PEX_L2_CLKREQ_N PCC7"),
528 	PINCTRL_PIN(TEGRA_PIN_PEX_L0_PRSNT_N_PDD0, "PEX_L0_PRSNT_N PDD0"),
529 	PINCTRL_PIN(TEGRA_PIN_PEX_L0_RST_N_PDD1, "PEX_L0_RST_N PDD1"),
530 	PINCTRL_PIN(TEGRA_PIN_PEX_L0_CLKREQ_N_PDD2, "PEX_L0_CLKREQ_N PDD2"),
531 	PINCTRL_PIN(TEGRA_PIN_PEX_WAKE_N_PDD3, "PEX_WAKE_N PDD3"),
532 	PINCTRL_PIN(TEGRA_PIN_PEX_L1_PRSNT_N_PDD4, "PEX_L1_PRSNT_N PDD4"),
533 	PINCTRL_PIN(TEGRA_PIN_PEX_L1_RST_N_PDD5, "PEX_L1_RST_N PDD5"),
534 	PINCTRL_PIN(TEGRA_PIN_PEX_L1_CLKREQ_N_PDD6, "PEX_L1_CLKREQ_N PDD6"),
535 	PINCTRL_PIN(TEGRA_PIN_PEX_L2_PRSNT_N_PDD7, "PEX_L2_PRSNT_N PDD7"),
536 	PINCTRL_PIN(TEGRA_PIN_CLK3_OUT_PEE0, "CLK3_OUT PEE0"),
537 	PINCTRL_PIN(TEGRA_PIN_CLK3_REQ_PEE1, "CLK3_REQ PEE1"),
538 	PINCTRL_PIN(TEGRA_PIN_CLK1_REQ_PEE2, "CLK1_REQ PEE2"),
539 	PINCTRL_PIN(TEGRA_PIN_HDMI_CEC_PEE3, "HDMI_CEC PEE3"),
540 	PINCTRL_PIN(TEGRA_PIN_PEE4, "PEE4"),
541 	PINCTRL_PIN(TEGRA_PIN_PEE5, "PEE5"),
542 	PINCTRL_PIN(TEGRA_PIN_PEE6, "PEE6"),
543 	PINCTRL_PIN(TEGRA_PIN_PEE7, "PEE7"),
544 	PINCTRL_PIN(TEGRA_PIN_CLK_32K_IN, "CLK_32K_IN"),
545 	PINCTRL_PIN(TEGRA_PIN_CORE_PWR_REQ, "CORE_PWR_REQ"),
546 	PINCTRL_PIN(TEGRA_PIN_CPU_PWR_REQ, "CPU_PWR_REQ"),
547 	PINCTRL_PIN(TEGRA_PIN_JTAG_TCK, "JTAG_TCK"),
548 	PINCTRL_PIN(TEGRA_PIN_JTAG_TDI, "JTAG_TDI"),
549 	PINCTRL_PIN(TEGRA_PIN_JTAG_TDO, "JTAG_TDO"),
550 	PINCTRL_PIN(TEGRA_PIN_JTAG_TMS, "JTAG_TMS"),
551 	PINCTRL_PIN(TEGRA_PIN_JTAG_TRST_N, "JTAG_TRST_N"),
552 	PINCTRL_PIN(TEGRA_PIN_OWR, "OWR"),
553 	PINCTRL_PIN(TEGRA_PIN_PWR_INT_N, "PWR_INT_N"),
554 	PINCTRL_PIN(TEGRA_PIN_SYS_RESET_N, "SYS_RESET_N"),
555 	PINCTRL_PIN(TEGRA_PIN_TEST_MODE_EN, "TEST_MODE_EN"),
556 };
557 
558 static const unsigned clk_32k_out_pa0_pins[] = {
559 	TEGRA_PIN_CLK_32K_OUT_PA0,
560 };
561 
562 static const unsigned uart3_cts_n_pa1_pins[] = {
563 	TEGRA_PIN_UART3_CTS_N_PA1,
564 };
565 
566 static const unsigned dap2_fs_pa2_pins[] = {
567 	TEGRA_PIN_DAP2_FS_PA2,
568 };
569 
570 static const unsigned dap2_sclk_pa3_pins[] = {
571 	TEGRA_PIN_DAP2_SCLK_PA3,
572 };
573 
574 static const unsigned dap2_din_pa4_pins[] = {
575 	TEGRA_PIN_DAP2_DIN_PA4,
576 };
577 
578 static const unsigned dap2_dout_pa5_pins[] = {
579 	TEGRA_PIN_DAP2_DOUT_PA5,
580 };
581 
582 static const unsigned sdmmc3_clk_pa6_pins[] = {
583 	TEGRA_PIN_SDMMC3_CLK_PA6,
584 };
585 
586 static const unsigned sdmmc3_cmd_pa7_pins[] = {
587 	TEGRA_PIN_SDMMC3_CMD_PA7,
588 };
589 
590 static const unsigned gmi_a17_pb0_pins[] = {
591 	TEGRA_PIN_GMI_A17_PB0,
592 };
593 
594 static const unsigned gmi_a18_pb1_pins[] = {
595 	TEGRA_PIN_GMI_A18_PB1,
596 };
597 
598 static const unsigned lcd_pwr0_pb2_pins[] = {
599 	TEGRA_PIN_LCD_PWR0_PB2,
600 };
601 
602 static const unsigned lcd_pclk_pb3_pins[] = {
603 	TEGRA_PIN_LCD_PCLK_PB3,
604 };
605 
606 static const unsigned sdmmc3_dat3_pb4_pins[] = {
607 	TEGRA_PIN_SDMMC3_DAT3_PB4,
608 };
609 
610 static const unsigned sdmmc3_dat2_pb5_pins[] = {
611 	TEGRA_PIN_SDMMC3_DAT2_PB5,
612 };
613 
614 static const unsigned sdmmc3_dat1_pb6_pins[] = {
615 	TEGRA_PIN_SDMMC3_DAT1_PB6,
616 };
617 
618 static const unsigned sdmmc3_dat0_pb7_pins[] = {
619 	TEGRA_PIN_SDMMC3_DAT0_PB7,
620 };
621 
622 static const unsigned uart3_rts_n_pc0_pins[] = {
623 	TEGRA_PIN_UART3_RTS_N_PC0,
624 };
625 
626 static const unsigned lcd_pwr1_pc1_pins[] = {
627 	TEGRA_PIN_LCD_PWR1_PC1,
628 };
629 
630 static const unsigned uart2_txd_pc2_pins[] = {
631 	TEGRA_PIN_UART2_TXD_PC2,
632 };
633 
634 static const unsigned uart2_rxd_pc3_pins[] = {
635 	TEGRA_PIN_UART2_RXD_PC3,
636 };
637 
638 static const unsigned gen1_i2c_scl_pc4_pins[] = {
639 	TEGRA_PIN_GEN1_I2C_SCL_PC4,
640 };
641 
642 static const unsigned gen1_i2c_sda_pc5_pins[] = {
643 	TEGRA_PIN_GEN1_I2C_SDA_PC5,
644 };
645 
646 static const unsigned lcd_pwr2_pc6_pins[] = {
647 	TEGRA_PIN_LCD_PWR2_PC6,
648 };
649 
650 static const unsigned gmi_wp_n_pc7_pins[] = {
651 	TEGRA_PIN_GMI_WP_N_PC7,
652 };
653 
654 static const unsigned sdmmc3_dat5_pd0_pins[] = {
655 	TEGRA_PIN_SDMMC3_DAT5_PD0,
656 };
657 
658 static const unsigned sdmmc3_dat4_pd1_pins[] = {
659 	TEGRA_PIN_SDMMC3_DAT4_PD1,
660 };
661 
662 static const unsigned lcd_dc1_pd2_pins[] = {
663 	TEGRA_PIN_LCD_DC1_PD2,
664 };
665 
666 static const unsigned sdmmc3_dat6_pd3_pins[] = {
667 	TEGRA_PIN_SDMMC3_DAT6_PD3,
668 };
669 
670 static const unsigned sdmmc3_dat7_pd4_pins[] = {
671 	TEGRA_PIN_SDMMC3_DAT7_PD4,
672 };
673 
674 static const unsigned vi_d1_pd5_pins[] = {
675 	TEGRA_PIN_VI_D1_PD5,
676 };
677 
678 static const unsigned vi_vsync_pd6_pins[] = {
679 	TEGRA_PIN_VI_VSYNC_PD6,
680 };
681 
682 static const unsigned vi_hsync_pd7_pins[] = {
683 	TEGRA_PIN_VI_HSYNC_PD7,
684 };
685 
686 static const unsigned lcd_d0_pe0_pins[] = {
687 	TEGRA_PIN_LCD_D0_PE0,
688 };
689 
690 static const unsigned lcd_d1_pe1_pins[] = {
691 	TEGRA_PIN_LCD_D1_PE1,
692 };
693 
694 static const unsigned lcd_d2_pe2_pins[] = {
695 	TEGRA_PIN_LCD_D2_PE2,
696 };
697 
698 static const unsigned lcd_d3_pe3_pins[] = {
699 	TEGRA_PIN_LCD_D3_PE3,
700 };
701 
702 static const unsigned lcd_d4_pe4_pins[] = {
703 	TEGRA_PIN_LCD_D4_PE4,
704 };
705 
706 static const unsigned lcd_d5_pe5_pins[] = {
707 	TEGRA_PIN_LCD_D5_PE5,
708 };
709 
710 static const unsigned lcd_d6_pe6_pins[] = {
711 	TEGRA_PIN_LCD_D6_PE6,
712 };
713 
714 static const unsigned lcd_d7_pe7_pins[] = {
715 	TEGRA_PIN_LCD_D7_PE7,
716 };
717 
718 static const unsigned lcd_d8_pf0_pins[] = {
719 	TEGRA_PIN_LCD_D8_PF0,
720 };
721 
722 static const unsigned lcd_d9_pf1_pins[] = {
723 	TEGRA_PIN_LCD_D9_PF1,
724 };
725 
726 static const unsigned lcd_d10_pf2_pins[] = {
727 	TEGRA_PIN_LCD_D10_PF2,
728 };
729 
730 static const unsigned lcd_d11_pf3_pins[] = {
731 	TEGRA_PIN_LCD_D11_PF3,
732 };
733 
734 static const unsigned lcd_d12_pf4_pins[] = {
735 	TEGRA_PIN_LCD_D12_PF4,
736 };
737 
738 static const unsigned lcd_d13_pf5_pins[] = {
739 	TEGRA_PIN_LCD_D13_PF5,
740 };
741 
742 static const unsigned lcd_d14_pf6_pins[] = {
743 	TEGRA_PIN_LCD_D14_PF6,
744 };
745 
746 static const unsigned lcd_d15_pf7_pins[] = {
747 	TEGRA_PIN_LCD_D15_PF7,
748 };
749 
750 static const unsigned gmi_ad0_pg0_pins[] = {
751 	TEGRA_PIN_GMI_AD0_PG0,
752 };
753 
754 static const unsigned gmi_ad1_pg1_pins[] = {
755 	TEGRA_PIN_GMI_AD1_PG1,
756 };
757 
758 static const unsigned gmi_ad2_pg2_pins[] = {
759 	TEGRA_PIN_GMI_AD2_PG2,
760 };
761 
762 static const unsigned gmi_ad3_pg3_pins[] = {
763 	TEGRA_PIN_GMI_AD3_PG3,
764 };
765 
766 static const unsigned gmi_ad4_pg4_pins[] = {
767 	TEGRA_PIN_GMI_AD4_PG4,
768 };
769 
770 static const unsigned gmi_ad5_pg5_pins[] = {
771 	TEGRA_PIN_GMI_AD5_PG5,
772 };
773 
774 static const unsigned gmi_ad6_pg6_pins[] = {
775 	TEGRA_PIN_GMI_AD6_PG6,
776 };
777 
778 static const unsigned gmi_ad7_pg7_pins[] = {
779 	TEGRA_PIN_GMI_AD7_PG7,
780 };
781 
782 static const unsigned gmi_ad8_ph0_pins[] = {
783 	TEGRA_PIN_GMI_AD8_PH0,
784 };
785 
786 static const unsigned gmi_ad9_ph1_pins[] = {
787 	TEGRA_PIN_GMI_AD9_PH1,
788 };
789 
790 static const unsigned gmi_ad10_ph2_pins[] = {
791 	TEGRA_PIN_GMI_AD10_PH2,
792 };
793 
794 static const unsigned gmi_ad11_ph3_pins[] = {
795 	TEGRA_PIN_GMI_AD11_PH3,
796 };
797 
798 static const unsigned gmi_ad12_ph4_pins[] = {
799 	TEGRA_PIN_GMI_AD12_PH4,
800 };
801 
802 static const unsigned gmi_ad13_ph5_pins[] = {
803 	TEGRA_PIN_GMI_AD13_PH5,
804 };
805 
806 static const unsigned gmi_ad14_ph6_pins[] = {
807 	TEGRA_PIN_GMI_AD14_PH6,
808 };
809 
810 static const unsigned gmi_ad15_ph7_pins[] = {
811 	TEGRA_PIN_GMI_AD15_PH7,
812 };
813 
814 static const unsigned gmi_wr_n_pi0_pins[] = {
815 	TEGRA_PIN_GMI_WR_N_PI0,
816 };
817 
818 static const unsigned gmi_oe_n_pi1_pins[] = {
819 	TEGRA_PIN_GMI_OE_N_PI1,
820 };
821 
822 static const unsigned gmi_dqs_pi2_pins[] = {
823 	TEGRA_PIN_GMI_DQS_PI2,
824 };
825 
826 static const unsigned gmi_cs6_n_pi3_pins[] = {
827 	TEGRA_PIN_GMI_CS6_N_PI3,
828 };
829 
830 static const unsigned gmi_rst_n_pi4_pins[] = {
831 	TEGRA_PIN_GMI_RST_N_PI4,
832 };
833 
834 static const unsigned gmi_iordy_pi5_pins[] = {
835 	TEGRA_PIN_GMI_IORDY_PI5,
836 };
837 
838 static const unsigned gmi_cs7_n_pi6_pins[] = {
839 	TEGRA_PIN_GMI_CS7_N_PI6,
840 };
841 
842 static const unsigned gmi_wait_pi7_pins[] = {
843 	TEGRA_PIN_GMI_WAIT_PI7,
844 };
845 
846 static const unsigned gmi_cs0_n_pj0_pins[] = {
847 	TEGRA_PIN_GMI_CS0_N_PJ0,
848 };
849 
850 static const unsigned lcd_de_pj1_pins[] = {
851 	TEGRA_PIN_LCD_DE_PJ1,
852 };
853 
854 static const unsigned gmi_cs1_n_pj2_pins[] = {
855 	TEGRA_PIN_GMI_CS1_N_PJ2,
856 };
857 
858 static const unsigned lcd_hsync_pj3_pins[] = {
859 	TEGRA_PIN_LCD_HSYNC_PJ3,
860 };
861 
862 static const unsigned lcd_vsync_pj4_pins[] = {
863 	TEGRA_PIN_LCD_VSYNC_PJ4,
864 };
865 
866 static const unsigned uart2_cts_n_pj5_pins[] = {
867 	TEGRA_PIN_UART2_CTS_N_PJ5,
868 };
869 
870 static const unsigned uart2_rts_n_pj6_pins[] = {
871 	TEGRA_PIN_UART2_RTS_N_PJ6,
872 };
873 
874 static const unsigned gmi_a16_pj7_pins[] = {
875 	TEGRA_PIN_GMI_A16_PJ7,
876 };
877 
878 static const unsigned gmi_adv_n_pk0_pins[] = {
879 	TEGRA_PIN_GMI_ADV_N_PK0,
880 };
881 
882 static const unsigned gmi_clk_pk1_pins[] = {
883 	TEGRA_PIN_GMI_CLK_PK1,
884 };
885 
886 static const unsigned gmi_cs4_n_pk2_pins[] = {
887 	TEGRA_PIN_GMI_CS4_N_PK2,
888 };
889 
890 static const unsigned gmi_cs2_n_pk3_pins[] = {
891 	TEGRA_PIN_GMI_CS2_N_PK3,
892 };
893 
894 static const unsigned gmi_cs3_n_pk4_pins[] = {
895 	TEGRA_PIN_GMI_CS3_N_PK4,
896 };
897 
898 static const unsigned spdif_out_pk5_pins[] = {
899 	TEGRA_PIN_SPDIF_OUT_PK5,
900 };
901 
902 static const unsigned spdif_in_pk6_pins[] = {
903 	TEGRA_PIN_SPDIF_IN_PK6,
904 };
905 
906 static const unsigned gmi_a19_pk7_pins[] = {
907 	TEGRA_PIN_GMI_A19_PK7,
908 };
909 
910 static const unsigned vi_d2_pl0_pins[] = {
911 	TEGRA_PIN_VI_D2_PL0,
912 };
913 
914 static const unsigned vi_d3_pl1_pins[] = {
915 	TEGRA_PIN_VI_D3_PL1,
916 };
917 
918 static const unsigned vi_d4_pl2_pins[] = {
919 	TEGRA_PIN_VI_D4_PL2,
920 };
921 
922 static const unsigned vi_d5_pl3_pins[] = {
923 	TEGRA_PIN_VI_D5_PL3,
924 };
925 
926 static const unsigned vi_d6_pl4_pins[] = {
927 	TEGRA_PIN_VI_D6_PL4,
928 };
929 
930 static const unsigned vi_d7_pl5_pins[] = {
931 	TEGRA_PIN_VI_D7_PL5,
932 };
933 
934 static const unsigned vi_d8_pl6_pins[] = {
935 	TEGRA_PIN_VI_D8_PL6,
936 };
937 
938 static const unsigned vi_d9_pl7_pins[] = {
939 	TEGRA_PIN_VI_D9_PL7,
940 };
941 
942 static const unsigned lcd_d16_pm0_pins[] = {
943 	TEGRA_PIN_LCD_D16_PM0,
944 };
945 
946 static const unsigned lcd_d17_pm1_pins[] = {
947 	TEGRA_PIN_LCD_D17_PM1,
948 };
949 
950 static const unsigned lcd_d18_pm2_pins[] = {
951 	TEGRA_PIN_LCD_D18_PM2,
952 };
953 
954 static const unsigned lcd_d19_pm3_pins[] = {
955 	TEGRA_PIN_LCD_D19_PM3,
956 };
957 
958 static const unsigned lcd_d20_pm4_pins[] = {
959 	TEGRA_PIN_LCD_D20_PM4,
960 };
961 
962 static const unsigned lcd_d21_pm5_pins[] = {
963 	TEGRA_PIN_LCD_D21_PM5,
964 };
965 
966 static const unsigned lcd_d22_pm6_pins[] = {
967 	TEGRA_PIN_LCD_D22_PM6,
968 };
969 
970 static const unsigned lcd_d23_pm7_pins[] = {
971 	TEGRA_PIN_LCD_D23_PM7,
972 };
973 
974 static const unsigned dap1_fs_pn0_pins[] = {
975 	TEGRA_PIN_DAP1_FS_PN0,
976 };
977 
978 static const unsigned dap1_din_pn1_pins[] = {
979 	TEGRA_PIN_DAP1_DIN_PN1,
980 };
981 
982 static const unsigned dap1_dout_pn2_pins[] = {
983 	TEGRA_PIN_DAP1_DOUT_PN2,
984 };
985 
986 static const unsigned dap1_sclk_pn3_pins[] = {
987 	TEGRA_PIN_DAP1_SCLK_PN3,
988 };
989 
990 static const unsigned lcd_cs0_n_pn4_pins[] = {
991 	TEGRA_PIN_LCD_CS0_N_PN4,
992 };
993 
994 static const unsigned lcd_sdout_pn5_pins[] = {
995 	TEGRA_PIN_LCD_SDOUT_PN5,
996 };
997 
998 static const unsigned lcd_dc0_pn6_pins[] = {
999 	TEGRA_PIN_LCD_DC0_PN6,
1000 };
1001 
1002 static const unsigned hdmi_int_pn7_pins[] = {
1003 	TEGRA_PIN_HDMI_INT_PN7,
1004 };
1005 
1006 static const unsigned ulpi_data7_po0_pins[] = {
1007 	TEGRA_PIN_ULPI_DATA7_PO0,
1008 };
1009 
1010 static const unsigned ulpi_data0_po1_pins[] = {
1011 	TEGRA_PIN_ULPI_DATA0_PO1,
1012 };
1013 
1014 static const unsigned ulpi_data1_po2_pins[] = {
1015 	TEGRA_PIN_ULPI_DATA1_PO2,
1016 };
1017 
1018 static const unsigned ulpi_data2_po3_pins[] = {
1019 	TEGRA_PIN_ULPI_DATA2_PO3,
1020 };
1021 
1022 static const unsigned ulpi_data3_po4_pins[] = {
1023 	TEGRA_PIN_ULPI_DATA3_PO4,
1024 };
1025 
1026 static const unsigned ulpi_data4_po5_pins[] = {
1027 	TEGRA_PIN_ULPI_DATA4_PO5,
1028 };
1029 
1030 static const unsigned ulpi_data5_po6_pins[] = {
1031 	TEGRA_PIN_ULPI_DATA5_PO6,
1032 };
1033 
1034 static const unsigned ulpi_data6_po7_pins[] = {
1035 	TEGRA_PIN_ULPI_DATA6_PO7,
1036 };
1037 
1038 static const unsigned dap3_fs_pp0_pins[] = {
1039 	TEGRA_PIN_DAP3_FS_PP0,
1040 };
1041 
1042 static const unsigned dap3_din_pp1_pins[] = {
1043 	TEGRA_PIN_DAP3_DIN_PP1,
1044 };
1045 
1046 static const unsigned dap3_dout_pp2_pins[] = {
1047 	TEGRA_PIN_DAP3_DOUT_PP2,
1048 };
1049 
1050 static const unsigned dap3_sclk_pp3_pins[] = {
1051 	TEGRA_PIN_DAP3_SCLK_PP3,
1052 };
1053 
1054 static const unsigned dap4_fs_pp4_pins[] = {
1055 	TEGRA_PIN_DAP4_FS_PP4,
1056 };
1057 
1058 static const unsigned dap4_din_pp5_pins[] = {
1059 	TEGRA_PIN_DAP4_DIN_PP5,
1060 };
1061 
1062 static const unsigned dap4_dout_pp6_pins[] = {
1063 	TEGRA_PIN_DAP4_DOUT_PP6,
1064 };
1065 
1066 static const unsigned dap4_sclk_pp7_pins[] = {
1067 	TEGRA_PIN_DAP4_SCLK_PP7,
1068 };
1069 
1070 static const unsigned kb_col0_pq0_pins[] = {
1071 	TEGRA_PIN_KB_COL0_PQ0,
1072 };
1073 
1074 static const unsigned kb_col1_pq1_pins[] = {
1075 	TEGRA_PIN_KB_COL1_PQ1,
1076 };
1077 
1078 static const unsigned kb_col2_pq2_pins[] = {
1079 	TEGRA_PIN_KB_COL2_PQ2,
1080 };
1081 
1082 static const unsigned kb_col3_pq3_pins[] = {
1083 	TEGRA_PIN_KB_COL3_PQ3,
1084 };
1085 
1086 static const unsigned kb_col4_pq4_pins[] = {
1087 	TEGRA_PIN_KB_COL4_PQ4,
1088 };
1089 
1090 static const unsigned kb_col5_pq5_pins[] = {
1091 	TEGRA_PIN_KB_COL5_PQ5,
1092 };
1093 
1094 static const unsigned kb_col6_pq6_pins[] = {
1095 	TEGRA_PIN_KB_COL6_PQ6,
1096 };
1097 
1098 static const unsigned kb_col7_pq7_pins[] = {
1099 	TEGRA_PIN_KB_COL7_PQ7,
1100 };
1101 
1102 static const unsigned kb_row0_pr0_pins[] = {
1103 	TEGRA_PIN_KB_ROW0_PR0,
1104 };
1105 
1106 static const unsigned kb_row1_pr1_pins[] = {
1107 	TEGRA_PIN_KB_ROW1_PR1,
1108 };
1109 
1110 static const unsigned kb_row2_pr2_pins[] = {
1111 	TEGRA_PIN_KB_ROW2_PR2,
1112 };
1113 
1114 static const unsigned kb_row3_pr3_pins[] = {
1115 	TEGRA_PIN_KB_ROW3_PR3,
1116 };
1117 
1118 static const unsigned kb_row4_pr4_pins[] = {
1119 	TEGRA_PIN_KB_ROW4_PR4,
1120 };
1121 
1122 static const unsigned kb_row5_pr5_pins[] = {
1123 	TEGRA_PIN_KB_ROW5_PR5,
1124 };
1125 
1126 static const unsigned kb_row6_pr6_pins[] = {
1127 	TEGRA_PIN_KB_ROW6_PR6,
1128 };
1129 
1130 static const unsigned kb_row7_pr7_pins[] = {
1131 	TEGRA_PIN_KB_ROW7_PR7,
1132 };
1133 
1134 static const unsigned kb_row8_ps0_pins[] = {
1135 	TEGRA_PIN_KB_ROW8_PS0,
1136 };
1137 
1138 static const unsigned kb_row9_ps1_pins[] = {
1139 	TEGRA_PIN_KB_ROW9_PS1,
1140 };
1141 
1142 static const unsigned kb_row10_ps2_pins[] = {
1143 	TEGRA_PIN_KB_ROW10_PS2,
1144 };
1145 
1146 static const unsigned kb_row11_ps3_pins[] = {
1147 	TEGRA_PIN_KB_ROW11_PS3,
1148 };
1149 
1150 static const unsigned kb_row12_ps4_pins[] = {
1151 	TEGRA_PIN_KB_ROW12_PS4,
1152 };
1153 
1154 static const unsigned kb_row13_ps5_pins[] = {
1155 	TEGRA_PIN_KB_ROW13_PS5,
1156 };
1157 
1158 static const unsigned kb_row14_ps6_pins[] = {
1159 	TEGRA_PIN_KB_ROW14_PS6,
1160 };
1161 
1162 static const unsigned kb_row15_ps7_pins[] = {
1163 	TEGRA_PIN_KB_ROW15_PS7,
1164 };
1165 
1166 static const unsigned vi_pclk_pt0_pins[] = {
1167 	TEGRA_PIN_VI_PCLK_PT0,
1168 };
1169 
1170 static const unsigned vi_mclk_pt1_pins[] = {
1171 	TEGRA_PIN_VI_MCLK_PT1,
1172 };
1173 
1174 static const unsigned vi_d10_pt2_pins[] = {
1175 	TEGRA_PIN_VI_D10_PT2,
1176 };
1177 
1178 static const unsigned vi_d11_pt3_pins[] = {
1179 	TEGRA_PIN_VI_D11_PT3,
1180 };
1181 
1182 static const unsigned vi_d0_pt4_pins[] = {
1183 	TEGRA_PIN_VI_D0_PT4,
1184 };
1185 
1186 static const unsigned gen2_i2c_scl_pt5_pins[] = {
1187 	TEGRA_PIN_GEN2_I2C_SCL_PT5,
1188 };
1189 
1190 static const unsigned gen2_i2c_sda_pt6_pins[] = {
1191 	TEGRA_PIN_GEN2_I2C_SDA_PT6,
1192 };
1193 
1194 static const unsigned sdmmc4_cmd_pt7_pins[] = {
1195 	TEGRA_PIN_SDMMC4_CMD_PT7,
1196 };
1197 
1198 static const unsigned pu0_pins[] = {
1199 	TEGRA_PIN_PU0,
1200 };
1201 
1202 static const unsigned pu1_pins[] = {
1203 	TEGRA_PIN_PU1,
1204 };
1205 
1206 static const unsigned pu2_pins[] = {
1207 	TEGRA_PIN_PU2,
1208 };
1209 
1210 static const unsigned pu3_pins[] = {
1211 	TEGRA_PIN_PU3,
1212 };
1213 
1214 static const unsigned pu4_pins[] = {
1215 	TEGRA_PIN_PU4,
1216 };
1217 
1218 static const unsigned pu5_pins[] = {
1219 	TEGRA_PIN_PU5,
1220 };
1221 
1222 static const unsigned pu6_pins[] = {
1223 	TEGRA_PIN_PU6,
1224 };
1225 
1226 static const unsigned jtag_rtck_pu7_pins[] = {
1227 	TEGRA_PIN_JTAG_RTCK_PU7,
1228 };
1229 
1230 static const unsigned pv0_pins[] = {
1231 	TEGRA_PIN_PV0,
1232 };
1233 
1234 static const unsigned pv1_pins[] = {
1235 	TEGRA_PIN_PV1,
1236 };
1237 
1238 static const unsigned pv2_pins[] = {
1239 	TEGRA_PIN_PV2,
1240 };
1241 
1242 static const unsigned pv3_pins[] = {
1243 	TEGRA_PIN_PV3,
1244 };
1245 
1246 static const unsigned ddc_scl_pv4_pins[] = {
1247 	TEGRA_PIN_DDC_SCL_PV4,
1248 };
1249 
1250 static const unsigned ddc_sda_pv5_pins[] = {
1251 	TEGRA_PIN_DDC_SDA_PV5,
1252 };
1253 
1254 static const unsigned crt_hsync_pv6_pins[] = {
1255 	TEGRA_PIN_CRT_HSYNC_PV6,
1256 };
1257 
1258 static const unsigned crt_vsync_pv7_pins[] = {
1259 	TEGRA_PIN_CRT_VSYNC_PV7,
1260 };
1261 
1262 static const unsigned lcd_cs1_n_pw0_pins[] = {
1263 	TEGRA_PIN_LCD_CS1_N_PW0,
1264 };
1265 
1266 static const unsigned lcd_m1_pw1_pins[] = {
1267 	TEGRA_PIN_LCD_M1_PW1,
1268 };
1269 
1270 static const unsigned spi2_cs1_n_pw2_pins[] = {
1271 	TEGRA_PIN_SPI2_CS1_N_PW2,
1272 };
1273 
1274 static const unsigned spi2_cs2_n_pw3_pins[] = {
1275 	TEGRA_PIN_SPI2_CS2_N_PW3,
1276 };
1277 
1278 static const unsigned clk1_out_pw4_pins[] = {
1279 	TEGRA_PIN_CLK1_OUT_PW4,
1280 };
1281 
1282 static const unsigned clk2_out_pw5_pins[] = {
1283 	TEGRA_PIN_CLK2_OUT_PW5,
1284 };
1285 
1286 static const unsigned uart3_txd_pw6_pins[] = {
1287 	TEGRA_PIN_UART3_TXD_PW6,
1288 };
1289 
1290 static const unsigned uart3_rxd_pw7_pins[] = {
1291 	TEGRA_PIN_UART3_RXD_PW7,
1292 };
1293 
1294 static const unsigned spi2_mosi_px0_pins[] = {
1295 	TEGRA_PIN_SPI2_MOSI_PX0,
1296 };
1297 
1298 static const unsigned spi2_miso_px1_pins[] = {
1299 	TEGRA_PIN_SPI2_MISO_PX1,
1300 };
1301 
1302 static const unsigned spi2_sck_px2_pins[] = {
1303 	TEGRA_PIN_SPI2_SCK_PX2,
1304 };
1305 
1306 static const unsigned spi2_cs0_n_px3_pins[] = {
1307 	TEGRA_PIN_SPI2_CS0_N_PX3,
1308 };
1309 
1310 static const unsigned spi1_mosi_px4_pins[] = {
1311 	TEGRA_PIN_SPI1_MOSI_PX4,
1312 };
1313 
1314 static const unsigned spi1_sck_px5_pins[] = {
1315 	TEGRA_PIN_SPI1_SCK_PX5,
1316 };
1317 
1318 static const unsigned spi1_cs0_n_px6_pins[] = {
1319 	TEGRA_PIN_SPI1_CS0_N_PX6,
1320 };
1321 
1322 static const unsigned spi1_miso_px7_pins[] = {
1323 	TEGRA_PIN_SPI1_MISO_PX7,
1324 };
1325 
1326 static const unsigned ulpi_clk_py0_pins[] = {
1327 	TEGRA_PIN_ULPI_CLK_PY0,
1328 };
1329 
1330 static const unsigned ulpi_dir_py1_pins[] = {
1331 	TEGRA_PIN_ULPI_DIR_PY1,
1332 };
1333 
1334 static const unsigned ulpi_nxt_py2_pins[] = {
1335 	TEGRA_PIN_ULPI_NXT_PY2,
1336 };
1337 
1338 static const unsigned ulpi_stp_py3_pins[] = {
1339 	TEGRA_PIN_ULPI_STP_PY3,
1340 };
1341 
1342 static const unsigned sdmmc1_dat3_py4_pins[] = {
1343 	TEGRA_PIN_SDMMC1_DAT3_PY4,
1344 };
1345 
1346 static const unsigned sdmmc1_dat2_py5_pins[] = {
1347 	TEGRA_PIN_SDMMC1_DAT2_PY5,
1348 };
1349 
1350 static const unsigned sdmmc1_dat1_py6_pins[] = {
1351 	TEGRA_PIN_SDMMC1_DAT1_PY6,
1352 };
1353 
1354 static const unsigned sdmmc1_dat0_py7_pins[] = {
1355 	TEGRA_PIN_SDMMC1_DAT0_PY7,
1356 };
1357 
1358 static const unsigned sdmmc1_clk_pz0_pins[] = {
1359 	TEGRA_PIN_SDMMC1_CLK_PZ0,
1360 };
1361 
1362 static const unsigned sdmmc1_cmd_pz1_pins[] = {
1363 	TEGRA_PIN_SDMMC1_CMD_PZ1,
1364 };
1365 
1366 static const unsigned lcd_sdin_pz2_pins[] = {
1367 	TEGRA_PIN_LCD_SDIN_PZ2,
1368 };
1369 
1370 static const unsigned lcd_wr_n_pz3_pins[] = {
1371 	TEGRA_PIN_LCD_WR_N_PZ3,
1372 };
1373 
1374 static const unsigned lcd_sck_pz4_pins[] = {
1375 	TEGRA_PIN_LCD_SCK_PZ4,
1376 };
1377 
1378 static const unsigned sys_clk_req_pz5_pins[] = {
1379 	TEGRA_PIN_SYS_CLK_REQ_PZ5,
1380 };
1381 
1382 static const unsigned pwr_i2c_scl_pz6_pins[] = {
1383 	TEGRA_PIN_PWR_I2C_SCL_PZ6,
1384 };
1385 
1386 static const unsigned pwr_i2c_sda_pz7_pins[] = {
1387 	TEGRA_PIN_PWR_I2C_SDA_PZ7,
1388 };
1389 
1390 static const unsigned sdmmc4_dat0_paa0_pins[] = {
1391 	TEGRA_PIN_SDMMC4_DAT0_PAA0,
1392 };
1393 
1394 static const unsigned sdmmc4_dat1_paa1_pins[] = {
1395 	TEGRA_PIN_SDMMC4_DAT1_PAA1,
1396 };
1397 
1398 static const unsigned sdmmc4_dat2_paa2_pins[] = {
1399 	TEGRA_PIN_SDMMC4_DAT2_PAA2,
1400 };
1401 
1402 static const unsigned sdmmc4_dat3_paa3_pins[] = {
1403 	TEGRA_PIN_SDMMC4_DAT3_PAA3,
1404 };
1405 
1406 static const unsigned sdmmc4_dat4_paa4_pins[] = {
1407 	TEGRA_PIN_SDMMC4_DAT4_PAA4,
1408 };
1409 
1410 static const unsigned sdmmc4_dat5_paa5_pins[] = {
1411 	TEGRA_PIN_SDMMC4_DAT5_PAA5,
1412 };
1413 
1414 static const unsigned sdmmc4_dat6_paa6_pins[] = {
1415 	TEGRA_PIN_SDMMC4_DAT6_PAA6,
1416 };
1417 
1418 static const unsigned sdmmc4_dat7_paa7_pins[] = {
1419 	TEGRA_PIN_SDMMC4_DAT7_PAA7,
1420 };
1421 
1422 static const unsigned pbb0_pins[] = {
1423 	TEGRA_PIN_PBB0,
1424 };
1425 
1426 static const unsigned cam_i2c_scl_pbb1_pins[] = {
1427 	TEGRA_PIN_CAM_I2C_SCL_PBB1,
1428 };
1429 
1430 static const unsigned cam_i2c_sda_pbb2_pins[] = {
1431 	TEGRA_PIN_CAM_I2C_SDA_PBB2,
1432 };
1433 
1434 static const unsigned pbb3_pins[] = {
1435 	TEGRA_PIN_PBB3,
1436 };
1437 
1438 static const unsigned pbb4_pins[] = {
1439 	TEGRA_PIN_PBB4,
1440 };
1441 
1442 static const unsigned pbb5_pins[] = {
1443 	TEGRA_PIN_PBB5,
1444 };
1445 
1446 static const unsigned pbb6_pins[] = {
1447 	TEGRA_PIN_PBB6,
1448 };
1449 
1450 static const unsigned pbb7_pins[] = {
1451 	TEGRA_PIN_PBB7,
1452 };
1453 
1454 static const unsigned cam_mclk_pcc0_pins[] = {
1455 	TEGRA_PIN_CAM_MCLK_PCC0,
1456 };
1457 
1458 static const unsigned pcc1_pins[] = {
1459 	TEGRA_PIN_PCC1,
1460 };
1461 
1462 static const unsigned pcc2_pins[] = {
1463 	TEGRA_PIN_PCC2,
1464 };
1465 
1466 static const unsigned sdmmc4_rst_n_pcc3_pins[] = {
1467 	TEGRA_PIN_SDMMC4_RST_N_PCC3,
1468 };
1469 
1470 static const unsigned sdmmc4_clk_pcc4_pins[] = {
1471 	TEGRA_PIN_SDMMC4_CLK_PCC4,
1472 };
1473 
1474 static const unsigned clk2_req_pcc5_pins[] = {
1475 	TEGRA_PIN_CLK2_REQ_PCC5,
1476 };
1477 
1478 static const unsigned pex_l2_rst_n_pcc6_pins[] = {
1479 	TEGRA_PIN_PEX_L2_RST_N_PCC6,
1480 };
1481 
1482 static const unsigned pex_l2_clkreq_n_pcc7_pins[] = {
1483 	TEGRA_PIN_PEX_L2_CLKREQ_N_PCC7,
1484 };
1485 
1486 static const unsigned pex_l0_prsnt_n_pdd0_pins[] = {
1487 	TEGRA_PIN_PEX_L0_PRSNT_N_PDD0,
1488 };
1489 
1490 static const unsigned pex_l0_rst_n_pdd1_pins[] = {
1491 	TEGRA_PIN_PEX_L0_RST_N_PDD1,
1492 };
1493 
1494 static const unsigned pex_l0_clkreq_n_pdd2_pins[] = {
1495 	TEGRA_PIN_PEX_L0_CLKREQ_N_PDD2,
1496 };
1497 
1498 static const unsigned pex_wake_n_pdd3_pins[] = {
1499 	TEGRA_PIN_PEX_WAKE_N_PDD3,
1500 };
1501 
1502 static const unsigned pex_l1_prsnt_n_pdd4_pins[] = {
1503 	TEGRA_PIN_PEX_L1_PRSNT_N_PDD4,
1504 };
1505 
1506 static const unsigned pex_l1_rst_n_pdd5_pins[] = {
1507 	TEGRA_PIN_PEX_L1_RST_N_PDD5,
1508 };
1509 
1510 static const unsigned pex_l1_clkreq_n_pdd6_pins[] = {
1511 	TEGRA_PIN_PEX_L1_CLKREQ_N_PDD6,
1512 };
1513 
1514 static const unsigned pex_l2_prsnt_n_pdd7_pins[] = {
1515 	TEGRA_PIN_PEX_L2_PRSNT_N_PDD7,
1516 };
1517 
1518 static const unsigned clk3_out_pee0_pins[] = {
1519 	TEGRA_PIN_CLK3_OUT_PEE0,
1520 };
1521 
1522 static const unsigned clk3_req_pee1_pins[] = {
1523 	TEGRA_PIN_CLK3_REQ_PEE1,
1524 };
1525 
1526 static const unsigned clk1_req_pee2_pins[] = {
1527 	TEGRA_PIN_CLK1_REQ_PEE2,
1528 };
1529 
1530 static const unsigned hdmi_cec_pee3_pins[] = {
1531 	TEGRA_PIN_HDMI_CEC_PEE3,
1532 };
1533 
1534 static const unsigned clk_32k_in_pins[] = {
1535 	TEGRA_PIN_CLK_32K_IN,
1536 };
1537 
1538 static const unsigned core_pwr_req_pins[] = {
1539 	TEGRA_PIN_CORE_PWR_REQ,
1540 };
1541 
1542 static const unsigned cpu_pwr_req_pins[] = {
1543 	TEGRA_PIN_CPU_PWR_REQ,
1544 };
1545 
1546 static const unsigned owr_pins[] = {
1547 	TEGRA_PIN_OWR,
1548 };
1549 
1550 static const unsigned pwr_int_n_pins[] = {
1551 	TEGRA_PIN_PWR_INT_N,
1552 };
1553 
1554 static const unsigned drive_ao1_pins[] = {
1555 	TEGRA_PIN_KB_ROW0_PR0,
1556 	TEGRA_PIN_KB_ROW1_PR1,
1557 	TEGRA_PIN_KB_ROW2_PR2,
1558 	TEGRA_PIN_KB_ROW3_PR3,
1559 	TEGRA_PIN_KB_ROW4_PR4,
1560 	TEGRA_PIN_KB_ROW5_PR5,
1561 	TEGRA_PIN_KB_ROW6_PR6,
1562 	TEGRA_PIN_KB_ROW7_PR7,
1563 	TEGRA_PIN_PWR_I2C_SCL_PZ6,
1564 	TEGRA_PIN_PWR_I2C_SDA_PZ7,
1565 	TEGRA_PIN_SYS_RESET_N,
1566 };
1567 
1568 static const unsigned drive_ao2_pins[] = {
1569 	TEGRA_PIN_CLK_32K_OUT_PA0,
1570 	TEGRA_PIN_KB_COL0_PQ0,
1571 	TEGRA_PIN_KB_COL1_PQ1,
1572 	TEGRA_PIN_KB_COL2_PQ2,
1573 	TEGRA_PIN_KB_COL3_PQ3,
1574 	TEGRA_PIN_KB_COL4_PQ4,
1575 	TEGRA_PIN_KB_COL5_PQ5,
1576 	TEGRA_PIN_KB_COL6_PQ6,
1577 	TEGRA_PIN_KB_COL7_PQ7,
1578 	TEGRA_PIN_KB_ROW8_PS0,
1579 	TEGRA_PIN_KB_ROW9_PS1,
1580 	TEGRA_PIN_KB_ROW10_PS2,
1581 	TEGRA_PIN_KB_ROW11_PS3,
1582 	TEGRA_PIN_KB_ROW12_PS4,
1583 	TEGRA_PIN_KB_ROW13_PS5,
1584 	TEGRA_PIN_KB_ROW14_PS6,
1585 	TEGRA_PIN_KB_ROW15_PS7,
1586 	TEGRA_PIN_SYS_CLK_REQ_PZ5,
1587 	TEGRA_PIN_CLK_32K_IN,
1588 	TEGRA_PIN_CORE_PWR_REQ,
1589 	TEGRA_PIN_CPU_PWR_REQ,
1590 	TEGRA_PIN_PWR_INT_N,
1591 };
1592 
1593 static const unsigned drive_at1_pins[] = {
1594 	TEGRA_PIN_GMI_AD8_PH0,
1595 	TEGRA_PIN_GMI_AD9_PH1,
1596 	TEGRA_PIN_GMI_AD10_PH2,
1597 	TEGRA_PIN_GMI_AD11_PH3,
1598 	TEGRA_PIN_GMI_AD12_PH4,
1599 	TEGRA_PIN_GMI_AD13_PH5,
1600 	TEGRA_PIN_GMI_AD14_PH6,
1601 	TEGRA_PIN_GMI_AD15_PH7,
1602 	TEGRA_PIN_GMI_IORDY_PI5,
1603 	TEGRA_PIN_GMI_CS7_N_PI6,
1604 };
1605 
1606 static const unsigned drive_at2_pins[] = {
1607 	TEGRA_PIN_GMI_AD0_PG0,
1608 	TEGRA_PIN_GMI_AD1_PG1,
1609 	TEGRA_PIN_GMI_AD2_PG2,
1610 	TEGRA_PIN_GMI_AD3_PG3,
1611 	TEGRA_PIN_GMI_AD4_PG4,
1612 	TEGRA_PIN_GMI_AD5_PG5,
1613 	TEGRA_PIN_GMI_AD6_PG6,
1614 	TEGRA_PIN_GMI_AD7_PG7,
1615 	TEGRA_PIN_GMI_WR_N_PI0,
1616 	TEGRA_PIN_GMI_OE_N_PI1,
1617 	TEGRA_PIN_GMI_DQS_PI2,
1618 	TEGRA_PIN_GMI_CS6_N_PI3,
1619 	TEGRA_PIN_GMI_RST_N_PI4,
1620 	TEGRA_PIN_GMI_WAIT_PI7,
1621 	TEGRA_PIN_GMI_ADV_N_PK0,
1622 	TEGRA_PIN_GMI_CLK_PK1,
1623 	TEGRA_PIN_GMI_CS4_N_PK2,
1624 	TEGRA_PIN_GMI_CS2_N_PK3,
1625 	TEGRA_PIN_GMI_CS3_N_PK4,
1626 };
1627 
1628 static const unsigned drive_at3_pins[] = {
1629 	TEGRA_PIN_GMI_WP_N_PC7,
1630 	TEGRA_PIN_GMI_CS0_N_PJ0,
1631 };
1632 
1633 static const unsigned drive_at4_pins[] = {
1634 	TEGRA_PIN_GMI_A17_PB0,
1635 	TEGRA_PIN_GMI_A18_PB1,
1636 	TEGRA_PIN_GMI_CS1_N_PJ2,
1637 	TEGRA_PIN_GMI_A16_PJ7,
1638 	TEGRA_PIN_GMI_A19_PK7,
1639 };
1640 
1641 static const unsigned drive_at5_pins[] = {
1642 	TEGRA_PIN_GEN2_I2C_SCL_PT5,
1643 	TEGRA_PIN_GEN2_I2C_SDA_PT6,
1644 };
1645 
1646 static const unsigned drive_cdev1_pins[] = {
1647 	TEGRA_PIN_CLK1_OUT_PW4,
1648 	TEGRA_PIN_CLK1_REQ_PEE2,
1649 };
1650 
1651 static const unsigned drive_cdev2_pins[] = {
1652 	TEGRA_PIN_CLK2_OUT_PW5,
1653 	TEGRA_PIN_CLK2_REQ_PCC5,
1654 };
1655 
1656 static const unsigned drive_cec_pins[] = {
1657 	TEGRA_PIN_HDMI_CEC_PEE3,
1658 };
1659 
1660 static const unsigned drive_crt_pins[] = {
1661 	TEGRA_PIN_CRT_HSYNC_PV6,
1662 	TEGRA_PIN_CRT_VSYNC_PV7,
1663 };
1664 
1665 static const unsigned drive_csus_pins[] = {
1666 	TEGRA_PIN_VI_MCLK_PT1,
1667 };
1668 
1669 static const unsigned drive_dap1_pins[] = {
1670 	TEGRA_PIN_SPDIF_OUT_PK5,
1671 	TEGRA_PIN_SPDIF_IN_PK6,
1672 	TEGRA_PIN_DAP1_FS_PN0,
1673 	TEGRA_PIN_DAP1_DIN_PN1,
1674 	TEGRA_PIN_DAP1_DOUT_PN2,
1675 	TEGRA_PIN_DAP1_SCLK_PN3,
1676 };
1677 
1678 static const unsigned drive_dap2_pins[] = {
1679 	TEGRA_PIN_DAP2_FS_PA2,
1680 	TEGRA_PIN_DAP2_SCLK_PA3,
1681 	TEGRA_PIN_DAP2_DIN_PA4,
1682 	TEGRA_PIN_DAP2_DOUT_PA5,
1683 };
1684 
1685 static const unsigned drive_dap3_pins[] = {
1686 	TEGRA_PIN_DAP3_FS_PP0,
1687 	TEGRA_PIN_DAP3_DIN_PP1,
1688 	TEGRA_PIN_DAP3_DOUT_PP2,
1689 	TEGRA_PIN_DAP3_SCLK_PP3,
1690 };
1691 
1692 static const unsigned drive_dap4_pins[] = {
1693 	TEGRA_PIN_DAP4_FS_PP4,
1694 	TEGRA_PIN_DAP4_DIN_PP5,
1695 	TEGRA_PIN_DAP4_DOUT_PP6,
1696 	TEGRA_PIN_DAP4_SCLK_PP7,
1697 };
1698 
1699 static const unsigned drive_dbg_pins[] = {
1700 	TEGRA_PIN_GEN1_I2C_SCL_PC4,
1701 	TEGRA_PIN_GEN1_I2C_SDA_PC5,
1702 	TEGRA_PIN_PU0,
1703 	TEGRA_PIN_PU1,
1704 	TEGRA_PIN_PU2,
1705 	TEGRA_PIN_PU3,
1706 	TEGRA_PIN_PU4,
1707 	TEGRA_PIN_PU5,
1708 	TEGRA_PIN_PU6,
1709 	TEGRA_PIN_JTAG_RTCK_PU7,
1710 	TEGRA_PIN_JTAG_TCK,
1711 	TEGRA_PIN_JTAG_TDI,
1712 	TEGRA_PIN_JTAG_TDO,
1713 	TEGRA_PIN_JTAG_TMS,
1714 	TEGRA_PIN_JTAG_TRST_N,
1715 	TEGRA_PIN_TEST_MODE_EN,
1716 };
1717 
1718 static const unsigned drive_ddc_pins[] = {
1719 	TEGRA_PIN_DDC_SCL_PV4,
1720 	TEGRA_PIN_DDC_SDA_PV5,
1721 };
1722 
1723 static const unsigned drive_dev3_pins[] = {
1724 	TEGRA_PIN_CLK3_OUT_PEE0,
1725 	TEGRA_PIN_CLK3_REQ_PEE1,
1726 };
1727 
1728 static const unsigned drive_gma_pins[] = {
1729 	TEGRA_PIN_SDMMC4_DAT0_PAA0,
1730 	TEGRA_PIN_SDMMC4_DAT1_PAA1,
1731 	TEGRA_PIN_SDMMC4_DAT2_PAA2,
1732 	TEGRA_PIN_SDMMC4_DAT3_PAA3,
1733 	TEGRA_PIN_SDMMC4_RST_N_PCC3,
1734 };
1735 
1736 static const unsigned drive_gmb_pins[] = {
1737 	TEGRA_PIN_SDMMC4_DAT4_PAA4,
1738 	TEGRA_PIN_SDMMC4_DAT5_PAA5,
1739 	TEGRA_PIN_SDMMC4_DAT6_PAA6,
1740 	TEGRA_PIN_SDMMC4_DAT7_PAA7,
1741 };
1742 
1743 static const unsigned drive_gmc_pins[] = {
1744 	TEGRA_PIN_SDMMC4_CLK_PCC4,
1745 };
1746 
1747 static const unsigned drive_gmd_pins[] = {
1748 	TEGRA_PIN_SDMMC4_CMD_PT7,
1749 };
1750 
1751 static const unsigned drive_gme_pins[] = {
1752 	TEGRA_PIN_PBB0,
1753 	TEGRA_PIN_CAM_I2C_SCL_PBB1,
1754 	TEGRA_PIN_CAM_I2C_SDA_PBB2,
1755 	TEGRA_PIN_PBB3,
1756 	TEGRA_PIN_PCC2,
1757 };
1758 
1759 static const unsigned drive_gmf_pins[] = {
1760 	TEGRA_PIN_PBB4,
1761 	TEGRA_PIN_PBB5,
1762 	TEGRA_PIN_PBB6,
1763 	TEGRA_PIN_PBB7,
1764 };
1765 
1766 static const unsigned drive_gmg_pins[] = {
1767 	TEGRA_PIN_CAM_MCLK_PCC0,
1768 };
1769 
1770 static const unsigned drive_gmh_pins[] = {
1771 	TEGRA_PIN_PCC1,
1772 };
1773 
1774 static const unsigned drive_gpv_pins[] = {
1775 	TEGRA_PIN_PEX_L2_RST_N_PCC6,
1776 	TEGRA_PIN_PEX_L2_CLKREQ_N_PCC7,
1777 	TEGRA_PIN_PEX_L0_PRSNT_N_PDD0,
1778 	TEGRA_PIN_PEX_L0_RST_N_PDD1,
1779 	TEGRA_PIN_PEX_L0_CLKREQ_N_PDD2,
1780 	TEGRA_PIN_PEX_WAKE_N_PDD3,
1781 	TEGRA_PIN_PEX_L1_PRSNT_N_PDD4,
1782 	TEGRA_PIN_PEX_L1_RST_N_PDD5,
1783 	TEGRA_PIN_PEX_L1_CLKREQ_N_PDD6,
1784 	TEGRA_PIN_PEX_L2_PRSNT_N_PDD7,
1785 };
1786 
1787 static const unsigned drive_lcd1_pins[] = {
1788 	TEGRA_PIN_LCD_PWR1_PC1,
1789 	TEGRA_PIN_LCD_PWR2_PC6,
1790 	TEGRA_PIN_LCD_CS0_N_PN4,
1791 	TEGRA_PIN_LCD_SDOUT_PN5,
1792 	TEGRA_PIN_LCD_DC0_PN6,
1793 	TEGRA_PIN_LCD_SDIN_PZ2,
1794 	TEGRA_PIN_LCD_WR_N_PZ3,
1795 	TEGRA_PIN_LCD_SCK_PZ4,
1796 };
1797 
1798 static const unsigned drive_lcd2_pins[] = {
1799 	TEGRA_PIN_LCD_PWR0_PB2,
1800 	TEGRA_PIN_LCD_PCLK_PB3,
1801 	TEGRA_PIN_LCD_DC1_PD2,
1802 	TEGRA_PIN_LCD_D0_PE0,
1803 	TEGRA_PIN_LCD_D1_PE1,
1804 	TEGRA_PIN_LCD_D2_PE2,
1805 	TEGRA_PIN_LCD_D3_PE3,
1806 	TEGRA_PIN_LCD_D4_PE4,
1807 	TEGRA_PIN_LCD_D5_PE5,
1808 	TEGRA_PIN_LCD_D6_PE6,
1809 	TEGRA_PIN_LCD_D7_PE7,
1810 	TEGRA_PIN_LCD_D8_PF0,
1811 	TEGRA_PIN_LCD_D9_PF1,
1812 	TEGRA_PIN_LCD_D10_PF2,
1813 	TEGRA_PIN_LCD_D11_PF3,
1814 	TEGRA_PIN_LCD_D12_PF4,
1815 	TEGRA_PIN_LCD_D13_PF5,
1816 	TEGRA_PIN_LCD_D14_PF6,
1817 	TEGRA_PIN_LCD_D15_PF7,
1818 	TEGRA_PIN_LCD_DE_PJ1,
1819 	TEGRA_PIN_LCD_HSYNC_PJ3,
1820 	TEGRA_PIN_LCD_VSYNC_PJ4,
1821 	TEGRA_PIN_LCD_D16_PM0,
1822 	TEGRA_PIN_LCD_D17_PM1,
1823 	TEGRA_PIN_LCD_D18_PM2,
1824 	TEGRA_PIN_LCD_D19_PM3,
1825 	TEGRA_PIN_LCD_D20_PM4,
1826 	TEGRA_PIN_LCD_D21_PM5,
1827 	TEGRA_PIN_LCD_D22_PM6,
1828 	TEGRA_PIN_LCD_D23_PM7,
1829 	TEGRA_PIN_HDMI_INT_PN7,
1830 	TEGRA_PIN_LCD_CS1_N_PW0,
1831 	TEGRA_PIN_LCD_M1_PW1,
1832 };
1833 
1834 static const unsigned drive_owr_pins[] = {
1835 	TEGRA_PIN_OWR,
1836 };
1837 
1838 static const unsigned drive_sdio1_pins[] = {
1839 	TEGRA_PIN_SDMMC1_DAT3_PY4,
1840 	TEGRA_PIN_SDMMC1_DAT2_PY5,
1841 	TEGRA_PIN_SDMMC1_DAT1_PY6,
1842 	TEGRA_PIN_SDMMC1_DAT0_PY7,
1843 	TEGRA_PIN_SDMMC1_CLK_PZ0,
1844 	TEGRA_PIN_SDMMC1_CMD_PZ1,
1845 };
1846 
1847 static const unsigned drive_sdio2_pins[] = {
1848 	TEGRA_PIN_SDMMC3_DAT5_PD0,
1849 	TEGRA_PIN_SDMMC3_DAT4_PD1,
1850 	TEGRA_PIN_SDMMC3_DAT6_PD3,
1851 	TEGRA_PIN_SDMMC3_DAT7_PD4,
1852 };
1853 
1854 static const unsigned drive_sdio3_pins[] = {
1855 	TEGRA_PIN_SDMMC3_CLK_PA6,
1856 	TEGRA_PIN_SDMMC3_CMD_PA7,
1857 	TEGRA_PIN_SDMMC3_DAT3_PB4,
1858 	TEGRA_PIN_SDMMC3_DAT2_PB5,
1859 	TEGRA_PIN_SDMMC3_DAT1_PB6,
1860 	TEGRA_PIN_SDMMC3_DAT0_PB7,
1861 };
1862 
1863 static const unsigned drive_spi_pins[] = {
1864 	TEGRA_PIN_SPI2_CS1_N_PW2,
1865 	TEGRA_PIN_SPI2_CS2_N_PW3,
1866 	TEGRA_PIN_SPI2_MOSI_PX0,
1867 	TEGRA_PIN_SPI2_MISO_PX1,
1868 	TEGRA_PIN_SPI2_SCK_PX2,
1869 	TEGRA_PIN_SPI2_CS0_N_PX3,
1870 	TEGRA_PIN_SPI1_MOSI_PX4,
1871 	TEGRA_PIN_SPI1_SCK_PX5,
1872 	TEGRA_PIN_SPI1_CS0_N_PX6,
1873 	TEGRA_PIN_SPI1_MISO_PX7,
1874 };
1875 
1876 static const unsigned drive_uaa_pins[] = {
1877 	TEGRA_PIN_ULPI_DATA0_PO1,
1878 	TEGRA_PIN_ULPI_DATA1_PO2,
1879 	TEGRA_PIN_ULPI_DATA2_PO3,
1880 	TEGRA_PIN_ULPI_DATA3_PO4,
1881 };
1882 
1883 static const unsigned drive_uab_pins[] = {
1884 	TEGRA_PIN_ULPI_DATA7_PO0,
1885 	TEGRA_PIN_ULPI_DATA4_PO5,
1886 	TEGRA_PIN_ULPI_DATA5_PO6,
1887 	TEGRA_PIN_ULPI_DATA6_PO7,
1888 	TEGRA_PIN_PV0,
1889 	TEGRA_PIN_PV1,
1890 	TEGRA_PIN_PV2,
1891 	TEGRA_PIN_PV3,
1892 };
1893 
1894 static const unsigned drive_uart2_pins[] = {
1895 	TEGRA_PIN_UART2_TXD_PC2,
1896 	TEGRA_PIN_UART2_RXD_PC3,
1897 	TEGRA_PIN_UART2_CTS_N_PJ5,
1898 	TEGRA_PIN_UART2_RTS_N_PJ6,
1899 };
1900 
1901 static const unsigned drive_uart3_pins[] = {
1902 	TEGRA_PIN_UART3_CTS_N_PA1,
1903 	TEGRA_PIN_UART3_RTS_N_PC0,
1904 	TEGRA_PIN_UART3_TXD_PW6,
1905 	TEGRA_PIN_UART3_RXD_PW7,
1906 };
1907 
1908 static const unsigned drive_uda_pins[] = {
1909 	TEGRA_PIN_ULPI_CLK_PY0,
1910 	TEGRA_PIN_ULPI_DIR_PY1,
1911 	TEGRA_PIN_ULPI_NXT_PY2,
1912 	TEGRA_PIN_ULPI_STP_PY3,
1913 };
1914 
1915 static const unsigned drive_vi1_pins[] = {
1916 	TEGRA_PIN_VI_D1_PD5,
1917 	TEGRA_PIN_VI_VSYNC_PD6,
1918 	TEGRA_PIN_VI_HSYNC_PD7,
1919 	TEGRA_PIN_VI_D2_PL0,
1920 	TEGRA_PIN_VI_D3_PL1,
1921 	TEGRA_PIN_VI_D4_PL2,
1922 	TEGRA_PIN_VI_D5_PL3,
1923 	TEGRA_PIN_VI_D6_PL4,
1924 	TEGRA_PIN_VI_D7_PL5,
1925 	TEGRA_PIN_VI_D8_PL6,
1926 	TEGRA_PIN_VI_D9_PL7,
1927 	TEGRA_PIN_VI_PCLK_PT0,
1928 	TEGRA_PIN_VI_D10_PT2,
1929 	TEGRA_PIN_VI_D11_PT3,
1930 	TEGRA_PIN_VI_D0_PT4,
1931 };
1932 
1933 enum tegra_mux {
1934 	TEGRA_MUX_BLINK,
1935 	TEGRA_MUX_CEC,
1936 	TEGRA_MUX_CLK_12M_OUT,
1937 	TEGRA_MUX_CLK_32K_IN,
1938 	TEGRA_MUX_CORE_PWR_REQ,
1939 	TEGRA_MUX_CPU_PWR_REQ,
1940 	TEGRA_MUX_CRT,
1941 	TEGRA_MUX_DAP,
1942 	TEGRA_MUX_DDR,
1943 	TEGRA_MUX_DEV3,
1944 	TEGRA_MUX_DISPLAYA,
1945 	TEGRA_MUX_DISPLAYB,
1946 	TEGRA_MUX_DTV,
1947 	TEGRA_MUX_EXTPERIPH1,
1948 	TEGRA_MUX_EXTPERIPH2,
1949 	TEGRA_MUX_EXTPERIPH3,
1950 	TEGRA_MUX_GMI,
1951 	TEGRA_MUX_GMI_ALT,
1952 	TEGRA_MUX_HDA,
1953 	TEGRA_MUX_HDCP,
1954 	TEGRA_MUX_HDMI,
1955 	TEGRA_MUX_HSI,
1956 	TEGRA_MUX_I2C1,
1957 	TEGRA_MUX_I2C2,
1958 	TEGRA_MUX_I2C3,
1959 	TEGRA_MUX_I2C4,
1960 	TEGRA_MUX_I2CPWR,
1961 	TEGRA_MUX_I2S0,
1962 	TEGRA_MUX_I2S1,
1963 	TEGRA_MUX_I2S2,
1964 	TEGRA_MUX_I2S3,
1965 	TEGRA_MUX_I2S4,
1966 	TEGRA_MUX_INVALID,
1967 	TEGRA_MUX_KBC,
1968 	TEGRA_MUX_MIO,
1969 	TEGRA_MUX_NAND,
1970 	TEGRA_MUX_NAND_ALT,
1971 	TEGRA_MUX_OWR,
1972 	TEGRA_MUX_PCIE,
1973 	TEGRA_MUX_PWM0,
1974 	TEGRA_MUX_PWM1,
1975 	TEGRA_MUX_PWM2,
1976 	TEGRA_MUX_PWM3,
1977 	TEGRA_MUX_PWR_INT_N,
1978 	TEGRA_MUX_RSVD1,
1979 	TEGRA_MUX_RSVD2,
1980 	TEGRA_MUX_RSVD3,
1981 	TEGRA_MUX_RSVD4,
1982 	TEGRA_MUX_RTCK,
1983 	TEGRA_MUX_SATA,
1984 	TEGRA_MUX_SDMMC1,
1985 	TEGRA_MUX_SDMMC2,
1986 	TEGRA_MUX_SDMMC3,
1987 	TEGRA_MUX_SDMMC4,
1988 	TEGRA_MUX_SPDIF,
1989 	TEGRA_MUX_SPI1,
1990 	TEGRA_MUX_SPI2,
1991 	TEGRA_MUX_SPI2_ALT,
1992 	TEGRA_MUX_SPI3,
1993 	TEGRA_MUX_SPI4,
1994 	TEGRA_MUX_SPI5,
1995 	TEGRA_MUX_SPI6,
1996 	TEGRA_MUX_SYSCLK,
1997 	TEGRA_MUX_TEST,
1998 	TEGRA_MUX_TRACE,
1999 	TEGRA_MUX_UARTA,
2000 	TEGRA_MUX_UARTB,
2001 	TEGRA_MUX_UARTC,
2002 	TEGRA_MUX_UARTD,
2003 	TEGRA_MUX_UARTE,
2004 	TEGRA_MUX_ULPI,
2005 	TEGRA_MUX_VGP1,
2006 	TEGRA_MUX_VGP2,
2007 	TEGRA_MUX_VGP3,
2008 	TEGRA_MUX_VGP4,
2009 	TEGRA_MUX_VGP5,
2010 	TEGRA_MUX_VGP6,
2011 	TEGRA_MUX_VI,
2012 	TEGRA_MUX_VI_ALT1,
2013 	TEGRA_MUX_VI_ALT2,
2014 	TEGRA_MUX_VI_ALT3,
2015 };
2016 static const char * const blink_groups[] = {
2017 	"clk_32k_out_pa0",
2018 };
2019 
2020 static const char * const cec_groups[] = {
2021 	"hdmi_cec_pee3",
2022 	"owr",
2023 };
2024 
2025 static const char * const clk_12m_out_groups[] = {
2026 	"pv3",
2027 };
2028 
2029 static const char * const clk_32k_in_groups[] = {
2030 	"clk_32k_in",
2031 };
2032 
2033 static const char * const core_pwr_req_groups[] = {
2034 	"core_pwr_req",
2035 };
2036 
2037 static const char * const cpu_pwr_req_groups[] = {
2038 	"cpu_pwr_req",
2039 };
2040 
2041 static const char * const crt_groups[] = {
2042 	"crt_hsync_pv6",
2043 	"crt_vsync_pv7",
2044 };
2045 
2046 static const char * const dap_groups[] = {
2047 	"clk1_req_pee2",
2048 	"clk2_req_pcc5",
2049 };
2050 
2051 static const char * const ddr_groups[] = {
2052 	"vi_d0_pt4",
2053 	"vi_d1_pd5",
2054 	"vi_d10_pt2",
2055 	"vi_d11_pt3",
2056 	"vi_d2_pl0",
2057 	"vi_d3_pl1",
2058 	"vi_d4_pl2",
2059 	"vi_d5_pl3",
2060 	"vi_d6_pl4",
2061 	"vi_d7_pl5",
2062 	"vi_d8_pl6",
2063 	"vi_d9_pl7",
2064 	"vi_hsync_pd7",
2065 	"vi_vsync_pd6",
2066 };
2067 
2068 static const char * const dev3_groups[] = {
2069 	"clk3_req_pee1",
2070 };
2071 
2072 static const char * const displaya_groups[] = {
2073 	"dap3_din_pp1",
2074 	"dap3_dout_pp2",
2075 	"dap3_fs_pp0",
2076 	"dap3_sclk_pp3",
2077 	"pbb3",
2078 	"pbb4",
2079 	"pbb5",
2080 	"pbb6",
2081 	"lcd_cs0_n_pn4",
2082 	"lcd_cs1_n_pw0",
2083 	"lcd_d0_pe0",
2084 	"lcd_d1_pe1",
2085 	"lcd_d10_pf2",
2086 	"lcd_d11_pf3",
2087 	"lcd_d12_pf4",
2088 	"lcd_d13_pf5",
2089 	"lcd_d14_pf6",
2090 	"lcd_d15_pf7",
2091 	"lcd_d16_pm0",
2092 	"lcd_d17_pm1",
2093 	"lcd_d18_pm2",
2094 	"lcd_d19_pm3",
2095 	"lcd_d2_pe2",
2096 	"lcd_d20_pm4",
2097 	"lcd_d21_pm5",
2098 	"lcd_d22_pm6",
2099 	"lcd_d23_pm7",
2100 	"lcd_d3_pe3",
2101 	"lcd_d4_pe4",
2102 	"lcd_d5_pe5",
2103 	"lcd_d6_pe6",
2104 	"lcd_d7_pe7",
2105 	"lcd_d8_pf0",
2106 	"lcd_d9_pf1",
2107 	"lcd_dc0_pn6",
2108 	"lcd_dc1_pd2",
2109 	"lcd_de_pj1",
2110 	"lcd_hsync_pj3",
2111 	"lcd_m1_pw1",
2112 	"lcd_pclk_pb3",
2113 	"lcd_pwr0_pb2",
2114 	"lcd_pwr1_pc1",
2115 	"lcd_pwr2_pc6",
2116 	"lcd_sck_pz4",
2117 	"lcd_sdin_pz2",
2118 	"lcd_sdout_pn5",
2119 	"lcd_vsync_pj4",
2120 	"lcd_wr_n_pz3",
2121 };
2122 
2123 static const char * const displayb_groups[] = {
2124 	"dap3_din_pp1",
2125 	"dap3_dout_pp2",
2126 	"dap3_fs_pp0",
2127 	"dap3_sclk_pp3",
2128 	"pbb3",
2129 	"pbb4",
2130 	"pbb5",
2131 	"pbb6",
2132 	"lcd_cs0_n_pn4",
2133 	"lcd_cs1_n_pw0",
2134 	"lcd_d0_pe0",
2135 	"lcd_d1_pe1",
2136 	"lcd_d10_pf2",
2137 	"lcd_d11_pf3",
2138 	"lcd_d12_pf4",
2139 	"lcd_d13_pf5",
2140 	"lcd_d14_pf6",
2141 	"lcd_d15_pf7",
2142 	"lcd_d16_pm0",
2143 	"lcd_d17_pm1",
2144 	"lcd_d18_pm2",
2145 	"lcd_d19_pm3",
2146 	"lcd_d2_pe2",
2147 	"lcd_d20_pm4",
2148 	"lcd_d21_pm5",
2149 	"lcd_d22_pm6",
2150 	"lcd_d23_pm7",
2151 	"lcd_d3_pe3",
2152 	"lcd_d4_pe4",
2153 	"lcd_d5_pe5",
2154 	"lcd_d6_pe6",
2155 	"lcd_d7_pe7",
2156 	"lcd_d8_pf0",
2157 	"lcd_d9_pf1",
2158 	"lcd_dc0_pn6",
2159 	"lcd_dc1_pd2",
2160 	"lcd_de_pj1",
2161 	"lcd_hsync_pj3",
2162 	"lcd_m1_pw1",
2163 	"lcd_pclk_pb3",
2164 	"lcd_pwr0_pb2",
2165 	"lcd_pwr1_pc1",
2166 	"lcd_pwr2_pc6",
2167 	"lcd_sck_pz4",
2168 	"lcd_sdin_pz2",
2169 	"lcd_sdout_pn5",
2170 	"lcd_vsync_pj4",
2171 	"lcd_wr_n_pz3",
2172 };
2173 
2174 static const char * const dtv_groups[] = {
2175 	"gmi_a17_pb0",
2176 	"gmi_a18_pb1",
2177 	"gmi_cs0_n_pj0",
2178 	"gmi_cs1_n_pj2",
2179 };
2180 
2181 static const char * const extperiph1_groups[] = {
2182 	"clk1_out_pw4",
2183 };
2184 
2185 static const char * const extperiph2_groups[] = {
2186 	"clk2_out_pw5",
2187 };
2188 
2189 static const char * const extperiph3_groups[] = {
2190 	"clk3_out_pee0",
2191 };
2192 
2193 static const char * const gmi_groups[] = {
2194 	"dap1_din_pn1",
2195 	"dap1_dout_pn2",
2196 	"dap1_fs_pn0",
2197 	"dap1_sclk_pn3",
2198 	"dap2_din_pa4",
2199 	"dap2_dout_pa5",
2200 	"dap2_fs_pa2",
2201 	"dap2_sclk_pa3",
2202 	"dap4_din_pp5",
2203 	"dap4_dout_pp6",
2204 	"dap4_fs_pp4",
2205 	"dap4_sclk_pp7",
2206 	"gen2_i2c_scl_pt5",
2207 	"gen2_i2c_sda_pt6",
2208 	"gmi_a16_pj7",
2209 	"gmi_a17_pb0",
2210 	"gmi_a18_pb1",
2211 	"gmi_a19_pk7",
2212 	"gmi_ad0_pg0",
2213 	"gmi_ad1_pg1",
2214 	"gmi_ad10_ph2",
2215 	"gmi_ad11_ph3",
2216 	"gmi_ad12_ph4",
2217 	"gmi_ad13_ph5",
2218 	"gmi_ad14_ph6",
2219 	"gmi_ad15_ph7",
2220 	"gmi_ad2_pg2",
2221 	"gmi_ad3_pg3",
2222 	"gmi_ad4_pg4",
2223 	"gmi_ad5_pg5",
2224 	"gmi_ad6_pg6",
2225 	"gmi_ad7_pg7",
2226 	"gmi_ad8_ph0",
2227 	"gmi_ad9_ph1",
2228 	"gmi_adv_n_pk0",
2229 	"gmi_clk_pk1",
2230 	"gmi_cs0_n_pj0",
2231 	"gmi_cs1_n_pj2",
2232 	"gmi_cs2_n_pk3",
2233 	"gmi_cs3_n_pk4",
2234 	"gmi_cs4_n_pk2",
2235 	"gmi_cs6_n_pi3",
2236 	"gmi_cs7_n_pi6",
2237 	"gmi_dqs_pi2",
2238 	"gmi_iordy_pi5",
2239 	"gmi_oe_n_pi1",
2240 	"gmi_rst_n_pi4",
2241 	"gmi_wait_pi7",
2242 	"gmi_wp_n_pc7",
2243 	"gmi_wr_n_pi0",
2244 	"pu0",
2245 	"pu1",
2246 	"pu2",
2247 	"pu3",
2248 	"pu4",
2249 	"pu5",
2250 	"pu6",
2251 	"sdmmc4_clk_pcc4",
2252 	"sdmmc4_cmd_pt7",
2253 	"sdmmc4_dat0_paa0",
2254 	"sdmmc4_dat1_paa1",
2255 	"sdmmc4_dat2_paa2",
2256 	"sdmmc4_dat3_paa3",
2257 	"sdmmc4_dat4_paa4",
2258 	"sdmmc4_dat5_paa5",
2259 	"sdmmc4_dat6_paa6",
2260 	"sdmmc4_dat7_paa7",
2261 	"spi1_cs0_n_px6",
2262 	"spi1_mosi_px4",
2263 	"spi1_sck_px5",
2264 	"spi2_cs0_n_px3",
2265 	"spi2_miso_px1",
2266 	"spi2_mosi_px0",
2267 	"spi2_sck_px2",
2268 	"uart2_cts_n_pj5",
2269 	"uart2_rts_n_pj6",
2270 	"uart3_cts_n_pa1",
2271 	"uart3_rts_n_pc0",
2272 	"uart3_rxd_pw7",
2273 	"uart3_txd_pw6",
2274 };
2275 
2276 static const char * const gmi_alt_groups[] = {
2277 	"gmi_a16_pj7",
2278 	"gmi_cs3_n_pk4",
2279 	"gmi_cs7_n_pi6",
2280 	"gmi_wp_n_pc7",
2281 };
2282 
2283 static const char * const hda_groups[] = {
2284 	"clk1_req_pee2",
2285 	"dap1_din_pn1",
2286 	"dap1_dout_pn2",
2287 	"dap1_fs_pn0",
2288 	"dap1_sclk_pn3",
2289 	"dap2_din_pa4",
2290 	"dap2_dout_pa5",
2291 	"dap2_fs_pa2",
2292 	"dap2_sclk_pa3",
2293 	"pex_l0_clkreq_n_pdd2",
2294 	"pex_l0_prsnt_n_pdd0",
2295 	"pex_l0_rst_n_pdd1",
2296 	"pex_l1_clkreq_n_pdd6",
2297 	"pex_l1_prsnt_n_pdd4",
2298 	"pex_l1_rst_n_pdd5",
2299 	"pex_l2_clkreq_n_pcc7",
2300 	"pex_l2_prsnt_n_pdd7",
2301 	"pex_l2_rst_n_pcc6",
2302 	"pex_wake_n_pdd3",
2303 	"spdif_in_pk6",
2304 };
2305 
2306 static const char * const hdcp_groups[] = {
2307 	"gen2_i2c_scl_pt5",
2308 	"gen2_i2c_sda_pt6",
2309 	"lcd_pwr0_pb2",
2310 	"lcd_pwr2_pc6",
2311 	"lcd_sck_pz4",
2312 	"lcd_sdout_pn5",
2313 	"lcd_wr_n_pz3",
2314 };
2315 
2316 static const char * const hdmi_groups[] = {
2317 	"hdmi_int_pn7",
2318 };
2319 
2320 static const char * const hsi_groups[] = {
2321 	"ulpi_data0_po1",
2322 	"ulpi_data1_po2",
2323 	"ulpi_data2_po3",
2324 	"ulpi_data3_po4",
2325 	"ulpi_data4_po5",
2326 	"ulpi_data5_po6",
2327 	"ulpi_data6_po7",
2328 	"ulpi_data7_po0",
2329 };
2330 
2331 static const char * const i2c1_groups[] = {
2332 	"gen1_i2c_scl_pc4",
2333 	"gen1_i2c_sda_pc5",
2334 	"spdif_in_pk6",
2335 	"spdif_out_pk5",
2336 	"spi2_cs1_n_pw2",
2337 	"spi2_cs2_n_pw3",
2338 };
2339 
2340 static const char * const i2c2_groups[] = {
2341 	"gen2_i2c_scl_pt5",
2342 	"gen2_i2c_sda_pt6",
2343 };
2344 
2345 static const char * const i2c3_groups[] = {
2346 	"cam_i2c_scl_pbb1",
2347 	"cam_i2c_sda_pbb2",
2348 	"sdmmc4_cmd_pt7",
2349 	"sdmmc4_dat4_paa4",
2350 };
2351 
2352 static const char * const i2c4_groups[] = {
2353 	"ddc_scl_pv4",
2354 	"ddc_sda_pv5",
2355 };
2356 
2357 static const char * const i2cpwr_groups[] = {
2358 	"pwr_i2c_scl_pz6",
2359 	"pwr_i2c_sda_pz7",
2360 };
2361 
2362 static const char * const i2s0_groups[] = {
2363 	"dap1_din_pn1",
2364 	"dap1_dout_pn2",
2365 	"dap1_fs_pn0",
2366 	"dap1_sclk_pn3",
2367 };
2368 
2369 static const char * const i2s1_groups[] = {
2370 	"dap2_din_pa4",
2371 	"dap2_dout_pa5",
2372 	"dap2_fs_pa2",
2373 	"dap2_sclk_pa3",
2374 };
2375 
2376 static const char * const i2s2_groups[] = {
2377 	"dap3_din_pp1",
2378 	"dap3_dout_pp2",
2379 	"dap3_fs_pp0",
2380 	"dap3_sclk_pp3",
2381 };
2382 
2383 static const char * const i2s3_groups[] = {
2384 	"dap4_din_pp5",
2385 	"dap4_dout_pp6",
2386 	"dap4_fs_pp4",
2387 	"dap4_sclk_pp7",
2388 };
2389 
2390 static const char * const i2s4_groups[] = {
2391 	"pbb0",
2392 	"pbb7",
2393 	"pcc1",
2394 	"pcc2",
2395 	"sdmmc4_dat4_paa4",
2396 	"sdmmc4_dat5_paa5",
2397 	"sdmmc4_dat6_paa6",
2398 	"sdmmc4_dat7_paa7",
2399 };
2400 
2401 static const char * const invalid_groups[] = {
2402 	"kb_row3_pr3",
2403 	"sdmmc4_clk_pcc4",
2404 };
2405 
2406 static const char * const kbc_groups[] = {
2407 	"kb_col0_pq0",
2408 	"kb_col1_pq1",
2409 	"kb_col2_pq2",
2410 	"kb_col3_pq3",
2411 	"kb_col4_pq4",
2412 	"kb_col5_pq5",
2413 	"kb_col6_pq6",
2414 	"kb_col7_pq7",
2415 	"kb_row0_pr0",
2416 	"kb_row1_pr1",
2417 	"kb_row10_ps2",
2418 	"kb_row11_ps3",
2419 	"kb_row12_ps4",
2420 	"kb_row13_ps5",
2421 	"kb_row14_ps6",
2422 	"kb_row15_ps7",
2423 	"kb_row2_pr2",
2424 	"kb_row3_pr3",
2425 	"kb_row4_pr4",
2426 	"kb_row5_pr5",
2427 	"kb_row6_pr6",
2428 	"kb_row7_pr7",
2429 	"kb_row8_ps0",
2430 	"kb_row9_ps1",
2431 };
2432 
2433 static const char * const mio_groups[] = {
2434 	"kb_col6_pq6",
2435 	"kb_col7_pq7",
2436 	"kb_row10_ps2",
2437 	"kb_row11_ps3",
2438 	"kb_row12_ps4",
2439 	"kb_row13_ps5",
2440 	"kb_row14_ps6",
2441 	"kb_row15_ps7",
2442 	"kb_row6_pr6",
2443 	"kb_row7_pr7",
2444 	"kb_row8_ps0",
2445 	"kb_row9_ps1",
2446 };
2447 
2448 static const char * const nand_groups[] = {
2449 	"gmi_ad0_pg0",
2450 	"gmi_ad1_pg1",
2451 	"gmi_ad10_ph2",
2452 	"gmi_ad11_ph3",
2453 	"gmi_ad12_ph4",
2454 	"gmi_ad13_ph5",
2455 	"gmi_ad14_ph6",
2456 	"gmi_ad15_ph7",
2457 	"gmi_ad2_pg2",
2458 	"gmi_ad3_pg3",
2459 	"gmi_ad4_pg4",
2460 	"gmi_ad5_pg5",
2461 	"gmi_ad6_pg6",
2462 	"gmi_ad7_pg7",
2463 	"gmi_ad8_ph0",
2464 	"gmi_ad9_ph1",
2465 	"gmi_adv_n_pk0",
2466 	"gmi_clk_pk1",
2467 	"gmi_cs0_n_pj0",
2468 	"gmi_cs1_n_pj2",
2469 	"gmi_cs2_n_pk3",
2470 	"gmi_cs3_n_pk4",
2471 	"gmi_cs4_n_pk2",
2472 	"gmi_cs6_n_pi3",
2473 	"gmi_cs7_n_pi6",
2474 	"gmi_dqs_pi2",
2475 	"gmi_iordy_pi5",
2476 	"gmi_oe_n_pi1",
2477 	"gmi_rst_n_pi4",
2478 	"gmi_wait_pi7",
2479 	"gmi_wp_n_pc7",
2480 	"gmi_wr_n_pi0",
2481 	"kb_col0_pq0",
2482 	"kb_col1_pq1",
2483 	"kb_col2_pq2",
2484 	"kb_col3_pq3",
2485 	"kb_col4_pq4",
2486 	"kb_col5_pq5",
2487 	"kb_col6_pq6",
2488 	"kb_col7_pq7",
2489 	"kb_row0_pr0",
2490 	"kb_row1_pr1",
2491 	"kb_row10_ps2",
2492 	"kb_row11_ps3",
2493 	"kb_row12_ps4",
2494 	"kb_row13_ps5",
2495 	"kb_row14_ps6",
2496 	"kb_row15_ps7",
2497 	"kb_row2_pr2",
2498 	"kb_row3_pr3",
2499 	"kb_row4_pr4",
2500 	"kb_row5_pr5",
2501 	"kb_row6_pr6",
2502 	"kb_row7_pr7",
2503 	"kb_row8_ps0",
2504 	"kb_row9_ps1",
2505 	"sdmmc4_clk_pcc4",
2506 	"sdmmc4_cmd_pt7",
2507 };
2508 
2509 static const char * const nand_alt_groups[] = {
2510 	"gmi_cs6_n_pi3",
2511 	"gmi_cs7_n_pi6",
2512 	"gmi_rst_n_pi4",
2513 };
2514 
2515 static const char * const owr_groups[] = {
2516 	"pu0",
2517 	"pv2",
2518 	"kb_row5_pr5",
2519 	"owr",
2520 };
2521 
2522 static const char * const pcie_groups[] = {
2523 	"pex_l0_clkreq_n_pdd2",
2524 	"pex_l0_prsnt_n_pdd0",
2525 	"pex_l0_rst_n_pdd1",
2526 	"pex_l1_clkreq_n_pdd6",
2527 	"pex_l1_prsnt_n_pdd4",
2528 	"pex_l1_rst_n_pdd5",
2529 	"pex_l2_clkreq_n_pcc7",
2530 	"pex_l2_prsnt_n_pdd7",
2531 	"pex_l2_rst_n_pcc6",
2532 	"pex_wake_n_pdd3",
2533 };
2534 
2535 static const char * const pwm0_groups[] = {
2536 	"gmi_ad8_ph0",
2537 	"pu3",
2538 	"sdmmc3_dat3_pb4",
2539 	"sdmmc3_dat5_pd0",
2540 	"uart3_rts_n_pc0",
2541 };
2542 
2543 static const char * const pwm1_groups[] = {
2544 	"gmi_ad9_ph1",
2545 	"pu4",
2546 	"sdmmc3_dat2_pb5",
2547 	"sdmmc3_dat4_pd1",
2548 };
2549 
2550 static const char * const pwm2_groups[] = {
2551 	"gmi_ad10_ph2",
2552 	"pu5",
2553 	"sdmmc3_clk_pa6",
2554 };
2555 
2556 static const char * const pwm3_groups[] = {
2557 	"gmi_ad11_ph3",
2558 	"pu6",
2559 	"sdmmc3_cmd_pa7",
2560 };
2561 
2562 static const char * const pwr_int_n_groups[] = {
2563 	"pwr_int_n",
2564 };
2565 
2566 static const char * const rsvd1_groups[] = {
2567 	"gmi_ad0_pg0",
2568 	"gmi_ad1_pg1",
2569 	"gmi_ad12_ph4",
2570 	"gmi_ad13_ph5",
2571 	"gmi_ad14_ph6",
2572 	"gmi_ad15_ph7",
2573 	"gmi_ad2_pg2",
2574 	"gmi_ad3_pg3",
2575 	"gmi_ad4_pg4",
2576 	"gmi_ad5_pg5",
2577 	"gmi_ad6_pg6",
2578 	"gmi_ad7_pg7",
2579 	"gmi_adv_n_pk0",
2580 	"gmi_clk_pk1",
2581 	"gmi_cs0_n_pj0",
2582 	"gmi_cs1_n_pj2",
2583 	"gmi_cs2_n_pk3",
2584 	"gmi_cs3_n_pk4",
2585 	"gmi_cs4_n_pk2",
2586 	"gmi_dqs_pi2",
2587 	"gmi_iordy_pi5",
2588 	"gmi_oe_n_pi1",
2589 	"gmi_wait_pi7",
2590 	"gmi_wp_n_pc7",
2591 	"gmi_wr_n_pi0",
2592 	"pu1",
2593 	"pu2",
2594 	"pv0",
2595 	"pv1",
2596 	"sdmmc3_dat0_pb7",
2597 	"sdmmc3_dat1_pb6",
2598 	"sdmmc3_dat2_pb5",
2599 	"sdmmc3_dat3_pb4",
2600 	"vi_pclk_pt0",
2601 };
2602 
2603 static const char * const rsvd2_groups[] = {
2604 	"clk1_out_pw4",
2605 	"clk2_out_pw5",
2606 	"clk2_req_pcc5",
2607 	"clk3_out_pee0",
2608 	"clk3_req_pee1",
2609 	"clk_32k_in",
2610 	"clk_32k_out_pa0",
2611 	"core_pwr_req",
2612 	"cpu_pwr_req",
2613 	"crt_hsync_pv6",
2614 	"crt_vsync_pv7",
2615 	"dap3_din_pp1",
2616 	"dap3_dout_pp2",
2617 	"dap3_fs_pp0",
2618 	"dap3_sclk_pp3",
2619 	"dap4_din_pp5",
2620 	"dap4_dout_pp6",
2621 	"dap4_fs_pp4",
2622 	"dap4_sclk_pp7",
2623 	"ddc_scl_pv4",
2624 	"ddc_sda_pv5",
2625 	"gen1_i2c_scl_pc4",
2626 	"gen1_i2c_sda_pc5",
2627 	"pbb0",
2628 	"pbb7",
2629 	"pcc1",
2630 	"pcc2",
2631 	"pv0",
2632 	"pv1",
2633 	"pv2",
2634 	"pv3",
2635 	"hdmi_cec_pee3",
2636 	"hdmi_int_pn7",
2637 	"jtag_rtck_pu7",
2638 	"pwr_i2c_scl_pz6",
2639 	"pwr_i2c_sda_pz7",
2640 	"pwr_int_n",
2641 	"sdmmc1_clk_pz0",
2642 	"sdmmc1_cmd_pz1",
2643 	"sdmmc1_dat0_py7",
2644 	"sdmmc1_dat1_py6",
2645 	"sdmmc1_dat2_py5",
2646 	"sdmmc1_dat3_py4",
2647 	"sdmmc3_dat0_pb7",
2648 	"sdmmc3_dat1_pb6",
2649 	"sdmmc4_rst_n_pcc3",
2650 	"spdif_out_pk5",
2651 	"sys_clk_req_pz5",
2652 	"uart3_cts_n_pa1",
2653 	"uart3_rxd_pw7",
2654 	"uart3_txd_pw6",
2655 	"ulpi_clk_py0",
2656 	"ulpi_dir_py1",
2657 	"ulpi_nxt_py2",
2658 	"ulpi_stp_py3",
2659 	"vi_d0_pt4",
2660 	"vi_d10_pt2",
2661 	"vi_d11_pt3",
2662 	"vi_hsync_pd7",
2663 	"vi_vsync_pd6",
2664 };
2665 
2666 static const char * const rsvd3_groups[] = {
2667 	"cam_i2c_scl_pbb1",
2668 	"cam_i2c_sda_pbb2",
2669 	"clk1_out_pw4",
2670 	"clk1_req_pee2",
2671 	"clk2_out_pw5",
2672 	"clk2_req_pcc5",
2673 	"clk3_out_pee0",
2674 	"clk3_req_pee1",
2675 	"clk_32k_in",
2676 	"clk_32k_out_pa0",
2677 	"core_pwr_req",
2678 	"cpu_pwr_req",
2679 	"crt_hsync_pv6",
2680 	"crt_vsync_pv7",
2681 	"dap2_din_pa4",
2682 	"dap2_dout_pa5",
2683 	"dap2_fs_pa2",
2684 	"dap2_sclk_pa3",
2685 	"ddc_scl_pv4",
2686 	"ddc_sda_pv5",
2687 	"gen1_i2c_scl_pc4",
2688 	"gen1_i2c_sda_pc5",
2689 	"pbb0",
2690 	"pbb7",
2691 	"pcc1",
2692 	"pcc2",
2693 	"pv0",
2694 	"pv1",
2695 	"pv2",
2696 	"pv3",
2697 	"hdmi_cec_pee3",
2698 	"hdmi_int_pn7",
2699 	"jtag_rtck_pu7",
2700 	"kb_row0_pr0",
2701 	"kb_row1_pr1",
2702 	"kb_row2_pr2",
2703 	"kb_row3_pr3",
2704 	"lcd_d0_pe0",
2705 	"lcd_d1_pe1",
2706 	"lcd_d10_pf2",
2707 	"lcd_d11_pf3",
2708 	"lcd_d12_pf4",
2709 	"lcd_d13_pf5",
2710 	"lcd_d14_pf6",
2711 	"lcd_d15_pf7",
2712 	"lcd_d16_pm0",
2713 	"lcd_d17_pm1",
2714 	"lcd_d18_pm2",
2715 	"lcd_d19_pm3",
2716 	"lcd_d2_pe2",
2717 	"lcd_d20_pm4",
2718 	"lcd_d21_pm5",
2719 	"lcd_d22_pm6",
2720 	"lcd_d23_pm7",
2721 	"lcd_d3_pe3",
2722 	"lcd_d4_pe4",
2723 	"lcd_d5_pe5",
2724 	"lcd_d6_pe6",
2725 	"lcd_d7_pe7",
2726 	"lcd_d8_pf0",
2727 	"lcd_d9_pf1",
2728 	"lcd_dc0_pn6",
2729 	"lcd_dc1_pd2",
2730 	"lcd_de_pj1",
2731 	"lcd_hsync_pj3",
2732 	"lcd_m1_pw1",
2733 	"lcd_pclk_pb3",
2734 	"lcd_pwr1_pc1",
2735 	"lcd_vsync_pj4",
2736 	"owr",
2737 	"pex_l0_clkreq_n_pdd2",
2738 	"pex_l0_prsnt_n_pdd0",
2739 	"pex_l0_rst_n_pdd1",
2740 	"pex_l1_clkreq_n_pdd6",
2741 	"pex_l1_prsnt_n_pdd4",
2742 	"pex_l1_rst_n_pdd5",
2743 	"pex_l2_clkreq_n_pcc7",
2744 	"pex_l2_prsnt_n_pdd7",
2745 	"pex_l2_rst_n_pcc6",
2746 	"pex_wake_n_pdd3",
2747 	"pwr_i2c_scl_pz6",
2748 	"pwr_i2c_sda_pz7",
2749 	"pwr_int_n",
2750 	"sdmmc1_clk_pz0",
2751 	"sdmmc1_cmd_pz1",
2752 	"sdmmc4_rst_n_pcc3",
2753 	"sys_clk_req_pz5",
2754 };
2755 
2756 static const char * const rsvd4_groups[] = {
2757 	"clk1_out_pw4",
2758 	"clk1_req_pee2",
2759 	"clk2_out_pw5",
2760 	"clk2_req_pcc5",
2761 	"clk3_out_pee0",
2762 	"clk3_req_pee1",
2763 	"clk_32k_in",
2764 	"clk_32k_out_pa0",
2765 	"core_pwr_req",
2766 	"cpu_pwr_req",
2767 	"crt_hsync_pv6",
2768 	"crt_vsync_pv7",
2769 	"dap4_din_pp5",
2770 	"dap4_dout_pp6",
2771 	"dap4_fs_pp4",
2772 	"dap4_sclk_pp7",
2773 	"ddc_scl_pv4",
2774 	"ddc_sda_pv5",
2775 	"gen1_i2c_scl_pc4",
2776 	"gen1_i2c_sda_pc5",
2777 	"gen2_i2c_scl_pt5",
2778 	"gen2_i2c_sda_pt6",
2779 	"gmi_a19_pk7",
2780 	"gmi_ad0_pg0",
2781 	"gmi_ad1_pg1",
2782 	"gmi_ad10_ph2",
2783 	"gmi_ad11_ph3",
2784 	"gmi_ad12_ph4",
2785 	"gmi_ad13_ph5",
2786 	"gmi_ad14_ph6",
2787 	"gmi_ad15_ph7",
2788 	"gmi_ad2_pg2",
2789 	"gmi_ad3_pg3",
2790 	"gmi_ad4_pg4",
2791 	"gmi_ad5_pg5",
2792 	"gmi_ad6_pg6",
2793 	"gmi_ad7_pg7",
2794 	"gmi_ad8_ph0",
2795 	"gmi_ad9_ph1",
2796 	"gmi_adv_n_pk0",
2797 	"gmi_clk_pk1",
2798 	"gmi_cs2_n_pk3",
2799 	"gmi_cs4_n_pk2",
2800 	"gmi_dqs_pi2",
2801 	"gmi_iordy_pi5",
2802 	"gmi_oe_n_pi1",
2803 	"gmi_rst_n_pi4",
2804 	"gmi_wait_pi7",
2805 	"gmi_wr_n_pi0",
2806 	"pcc2",
2807 	"pu0",
2808 	"pu1",
2809 	"pu2",
2810 	"pu3",
2811 	"pu4",
2812 	"pu5",
2813 	"pu6",
2814 	"pv0",
2815 	"pv1",
2816 	"pv2",
2817 	"pv3",
2818 	"hdmi_cec_pee3",
2819 	"hdmi_int_pn7",
2820 	"jtag_rtck_pu7",
2821 	"kb_col2_pq2",
2822 	"kb_col3_pq3",
2823 	"kb_col4_pq4",
2824 	"kb_col5_pq5",
2825 	"kb_row0_pr0",
2826 	"kb_row1_pr1",
2827 	"kb_row2_pr2",
2828 	"kb_row4_pr4",
2829 	"lcd_cs0_n_pn4",
2830 	"lcd_cs1_n_pw0",
2831 	"lcd_d0_pe0",
2832 	"lcd_d1_pe1",
2833 	"lcd_d10_pf2",
2834 	"lcd_d11_pf3",
2835 	"lcd_d12_pf4",
2836 	"lcd_d13_pf5",
2837 	"lcd_d14_pf6",
2838 	"lcd_d15_pf7",
2839 	"lcd_d16_pm0",
2840 	"lcd_d17_pm1",
2841 	"lcd_d18_pm2",
2842 	"lcd_d19_pm3",
2843 	"lcd_d2_pe2",
2844 	"lcd_d20_pm4",
2845 	"lcd_d21_pm5",
2846 	"lcd_d22_pm6",
2847 	"lcd_d23_pm7",
2848 	"lcd_d3_pe3",
2849 	"lcd_d4_pe4",
2850 	"lcd_d5_pe5",
2851 	"lcd_d6_pe6",
2852 	"lcd_d7_pe7",
2853 	"lcd_d8_pf0",
2854 	"lcd_d9_pf1",
2855 	"lcd_dc0_pn6",
2856 	"lcd_dc1_pd2",
2857 	"lcd_de_pj1",
2858 	"lcd_hsync_pj3",
2859 	"lcd_m1_pw1",
2860 	"lcd_pclk_pb3",
2861 	"lcd_pwr1_pc1",
2862 	"lcd_sdin_pz2",
2863 	"lcd_vsync_pj4",
2864 	"owr",
2865 	"pex_l0_clkreq_n_pdd2",
2866 	"pex_l0_prsnt_n_pdd0",
2867 	"pex_l0_rst_n_pdd1",
2868 	"pex_l1_clkreq_n_pdd6",
2869 	"pex_l1_prsnt_n_pdd4",
2870 	"pex_l1_rst_n_pdd5",
2871 	"pex_l2_clkreq_n_pcc7",
2872 	"pex_l2_prsnt_n_pdd7",
2873 	"pex_l2_rst_n_pcc6",
2874 	"pex_wake_n_pdd3",
2875 	"pwr_i2c_scl_pz6",
2876 	"pwr_i2c_sda_pz7",
2877 	"pwr_int_n",
2878 	"spi1_miso_px7",
2879 	"sys_clk_req_pz5",
2880 	"uart3_cts_n_pa1",
2881 	"uart3_rts_n_pc0",
2882 	"uart3_rxd_pw7",
2883 	"uart3_txd_pw6",
2884 	"vi_d0_pt4",
2885 	"vi_d1_pd5",
2886 	"vi_d10_pt2",
2887 	"vi_d11_pt3",
2888 	"vi_d2_pl0",
2889 	"vi_d3_pl1",
2890 	"vi_d4_pl2",
2891 	"vi_d5_pl3",
2892 	"vi_d6_pl4",
2893 	"vi_d7_pl5",
2894 	"vi_d8_pl6",
2895 	"vi_d9_pl7",
2896 	"vi_hsync_pd7",
2897 	"vi_pclk_pt0",
2898 	"vi_vsync_pd6",
2899 };
2900 
2901 static const char * const rtck_groups[] = {
2902 	"jtag_rtck_pu7",
2903 };
2904 
2905 static const char * const sata_groups[] = {
2906 	"gmi_cs6_n_pi3",
2907 };
2908 
2909 static const char * const sdmmc1_groups[] = {
2910 	"sdmmc1_clk_pz0",
2911 	"sdmmc1_cmd_pz1",
2912 	"sdmmc1_dat0_py7",
2913 	"sdmmc1_dat1_py6",
2914 	"sdmmc1_dat2_py5",
2915 	"sdmmc1_dat3_py4",
2916 };
2917 
2918 static const char * const sdmmc2_groups[] = {
2919 	"dap1_din_pn1",
2920 	"dap1_dout_pn2",
2921 	"dap1_fs_pn0",
2922 	"dap1_sclk_pn3",
2923 	"kb_row10_ps2",
2924 	"kb_row11_ps3",
2925 	"kb_row12_ps4",
2926 	"kb_row13_ps5",
2927 	"kb_row14_ps6",
2928 	"kb_row15_ps7",
2929 	"kb_row6_pr6",
2930 	"kb_row7_pr7",
2931 	"kb_row8_ps0",
2932 	"kb_row9_ps1",
2933 	"spdif_in_pk6",
2934 	"spdif_out_pk5",
2935 	"vi_d1_pd5",
2936 	"vi_d2_pl0",
2937 	"vi_d3_pl1",
2938 	"vi_d4_pl2",
2939 	"vi_d5_pl3",
2940 	"vi_d6_pl4",
2941 	"vi_d7_pl5",
2942 	"vi_d8_pl6",
2943 	"vi_d9_pl7",
2944 	"vi_pclk_pt0",
2945 };
2946 
2947 static const char * const sdmmc3_groups[] = {
2948 	"sdmmc3_clk_pa6",
2949 	"sdmmc3_cmd_pa7",
2950 	"sdmmc3_dat0_pb7",
2951 	"sdmmc3_dat1_pb6",
2952 	"sdmmc3_dat2_pb5",
2953 	"sdmmc3_dat3_pb4",
2954 	"sdmmc3_dat4_pd1",
2955 	"sdmmc3_dat5_pd0",
2956 	"sdmmc3_dat6_pd3",
2957 	"sdmmc3_dat7_pd4",
2958 };
2959 
2960 static const char * const sdmmc4_groups[] = {
2961 	"cam_i2c_scl_pbb1",
2962 	"cam_i2c_sda_pbb2",
2963 	"cam_mclk_pcc0",
2964 	"pbb0",
2965 	"pbb3",
2966 	"pbb4",
2967 	"pbb5",
2968 	"pbb6",
2969 	"pbb7",
2970 	"pcc1",
2971 	"sdmmc4_clk_pcc4",
2972 	"sdmmc4_cmd_pt7",
2973 	"sdmmc4_dat0_paa0",
2974 	"sdmmc4_dat1_paa1",
2975 	"sdmmc4_dat2_paa2",
2976 	"sdmmc4_dat3_paa3",
2977 	"sdmmc4_dat4_paa4",
2978 	"sdmmc4_dat5_paa5",
2979 	"sdmmc4_dat6_paa6",
2980 	"sdmmc4_dat7_paa7",
2981 	"sdmmc4_rst_n_pcc3",
2982 };
2983 
2984 static const char * const spdif_groups[] = {
2985 	"sdmmc3_dat6_pd3",
2986 	"sdmmc3_dat7_pd4",
2987 	"spdif_in_pk6",
2988 	"spdif_out_pk5",
2989 	"uart2_rxd_pc3",
2990 	"uart2_txd_pc2",
2991 };
2992 
2993 static const char * const spi1_groups[] = {
2994 	"spi1_cs0_n_px6",
2995 	"spi1_miso_px7",
2996 	"spi1_mosi_px4",
2997 	"spi1_sck_px5",
2998 	"ulpi_clk_py0",
2999 	"ulpi_dir_py1",
3000 	"ulpi_nxt_py2",
3001 	"ulpi_stp_py3",
3002 };
3003 
3004 static const char * const spi2_groups[] = {
3005 	"sdmmc3_cmd_pa7",
3006 	"sdmmc3_dat4_pd1",
3007 	"sdmmc3_dat5_pd0",
3008 	"sdmmc3_dat6_pd3",
3009 	"sdmmc3_dat7_pd4",
3010 	"spi1_cs0_n_px6",
3011 	"spi1_mosi_px4",
3012 	"spi1_sck_px5",
3013 	"spi2_cs0_n_px3",
3014 	"spi2_cs1_n_pw2",
3015 	"spi2_cs2_n_pw3",
3016 	"spi2_miso_px1",
3017 	"spi2_mosi_px0",
3018 	"spi2_sck_px2",
3019 	"ulpi_data4_po5",
3020 	"ulpi_data5_po6",
3021 	"ulpi_data6_po7",
3022 	"ulpi_data7_po0",
3023 };
3024 
3025 static const char * const spi2_alt_groups[] = {
3026 	"spi1_cs0_n_px6",
3027 	"spi1_miso_px7",
3028 	"spi1_mosi_px4",
3029 	"spi1_sck_px5",
3030 	"spi2_cs1_n_pw2",
3031 	"spi2_cs2_n_pw3",
3032 };
3033 
3034 static const char * const spi3_groups[] = {
3035 	"sdmmc3_clk_pa6",
3036 	"sdmmc3_dat0_pb7",
3037 	"sdmmc3_dat1_pb6",
3038 	"sdmmc3_dat2_pb5",
3039 	"sdmmc3_dat3_pb4",
3040 	"sdmmc4_dat0_paa0",
3041 	"sdmmc4_dat1_paa1",
3042 	"sdmmc4_dat2_paa2",
3043 	"sdmmc4_dat3_paa3",
3044 	"spi1_miso_px7",
3045 	"spi2_cs0_n_px3",
3046 	"spi2_cs1_n_pw2",
3047 	"spi2_cs2_n_pw3",
3048 	"spi2_miso_px1",
3049 	"spi2_mosi_px0",
3050 	"spi2_sck_px2",
3051 	"ulpi_data0_po1",
3052 	"ulpi_data1_po2",
3053 	"ulpi_data2_po3",
3054 	"ulpi_data3_po4",
3055 };
3056 
3057 static const char * const spi4_groups[] = {
3058 	"gmi_a16_pj7",
3059 	"gmi_a17_pb0",
3060 	"gmi_a18_pb1",
3061 	"gmi_a19_pk7",
3062 	"sdmmc3_dat4_pd1",
3063 	"sdmmc3_dat5_pd0",
3064 	"sdmmc3_dat6_pd3",
3065 	"sdmmc3_dat7_pd4",
3066 	"uart2_cts_n_pj5",
3067 	"uart2_rts_n_pj6",
3068 	"uart2_rxd_pc3",
3069 	"uart2_txd_pc2",
3070 };
3071 
3072 static const char * const spi5_groups[] = {
3073 	"lcd_cs0_n_pn4",
3074 	"lcd_cs1_n_pw0",
3075 	"lcd_pwr0_pb2",
3076 	"lcd_pwr2_pc6",
3077 	"lcd_sck_pz4",
3078 	"lcd_sdin_pz2",
3079 	"lcd_sdout_pn5",
3080 	"lcd_wr_n_pz3",
3081 };
3082 
3083 static const char * const spi6_groups[] = {
3084 	"spi2_cs0_n_px3",
3085 	"spi2_miso_px1",
3086 	"spi2_mosi_px0",
3087 	"spi2_sck_px2",
3088 };
3089 
3090 static const char * const sysclk_groups[] = {
3091 	"sys_clk_req_pz5",
3092 };
3093 
3094 static const char * const test_groups[] = {
3095 	"kb_col0_pq0",
3096 	"kb_col1_pq1",
3097 };
3098 
3099 static const char * const trace_groups[] = {
3100 	"kb_col0_pq0",
3101 	"kb_col1_pq1",
3102 	"kb_col2_pq2",
3103 	"kb_col3_pq3",
3104 	"kb_col4_pq4",
3105 	"kb_col5_pq5",
3106 	"kb_col6_pq6",
3107 	"kb_col7_pq7",
3108 	"kb_row4_pr4",
3109 	"kb_row5_pr5",
3110 };
3111 
3112 static const char * const uarta_groups[] = {
3113 	"pu0",
3114 	"pu1",
3115 	"pu2",
3116 	"pu3",
3117 	"pu4",
3118 	"pu5",
3119 	"pu6",
3120 	"sdmmc1_clk_pz0",
3121 	"sdmmc1_cmd_pz1",
3122 	"sdmmc1_dat0_py7",
3123 	"sdmmc1_dat1_py6",
3124 	"sdmmc1_dat2_py5",
3125 	"sdmmc1_dat3_py4",
3126 	"sdmmc3_clk_pa6",
3127 	"sdmmc3_cmd_pa7",
3128 	"uart2_cts_n_pj5",
3129 	"uart2_rts_n_pj6",
3130 	"uart2_rxd_pc3",
3131 	"uart2_txd_pc2",
3132 	"ulpi_data0_po1",
3133 	"ulpi_data1_po2",
3134 	"ulpi_data2_po3",
3135 	"ulpi_data3_po4",
3136 	"ulpi_data4_po5",
3137 	"ulpi_data5_po6",
3138 	"ulpi_data6_po7",
3139 	"ulpi_data7_po0",
3140 };
3141 
3142 static const char * const uartb_groups[] = {
3143 	"uart2_cts_n_pj5",
3144 	"uart2_rts_n_pj6",
3145 	"uart2_rxd_pc3",
3146 	"uart2_txd_pc2",
3147 };
3148 
3149 static const char * const uartc_groups[] = {
3150 	"uart3_cts_n_pa1",
3151 	"uart3_rts_n_pc0",
3152 	"uart3_rxd_pw7",
3153 	"uart3_txd_pw6",
3154 };
3155 
3156 static const char * const uartd_groups[] = {
3157 	"gmi_a16_pj7",
3158 	"gmi_a17_pb0",
3159 	"gmi_a18_pb1",
3160 	"gmi_a19_pk7",
3161 	"ulpi_clk_py0",
3162 	"ulpi_dir_py1",
3163 	"ulpi_nxt_py2",
3164 	"ulpi_stp_py3",
3165 };
3166 
3167 static const char * const uarte_groups[] = {
3168 	"sdmmc1_dat0_py7",
3169 	"sdmmc1_dat1_py6",
3170 	"sdmmc1_dat2_py5",
3171 	"sdmmc1_dat3_py4",
3172 	"sdmmc4_dat0_paa0",
3173 	"sdmmc4_dat1_paa1",
3174 	"sdmmc4_dat2_paa2",
3175 	"sdmmc4_dat3_paa3",
3176 };
3177 
3178 static const char * const ulpi_groups[] = {
3179 	"ulpi_clk_py0",
3180 	"ulpi_data0_po1",
3181 	"ulpi_data1_po2",
3182 	"ulpi_data2_po3",
3183 	"ulpi_data3_po4",
3184 	"ulpi_data4_po5",
3185 	"ulpi_data5_po6",
3186 	"ulpi_data6_po7",
3187 	"ulpi_data7_po0",
3188 	"ulpi_dir_py1",
3189 	"ulpi_nxt_py2",
3190 	"ulpi_stp_py3",
3191 };
3192 
3193 static const char * const vgp1_groups[] = {
3194 	"cam_i2c_scl_pbb1",
3195 };
3196 
3197 static const char * const vgp2_groups[] = {
3198 	"cam_i2c_sda_pbb2",
3199 };
3200 
3201 static const char * const vgp3_groups[] = {
3202 	"pbb3",
3203 	"sdmmc4_dat5_paa5",
3204 };
3205 
3206 static const char * const vgp4_groups[] = {
3207 	"pbb4",
3208 	"sdmmc4_dat6_paa6",
3209 };
3210 
3211 static const char * const vgp5_groups[] = {
3212 	"pbb5",
3213 	"sdmmc4_dat7_paa7",
3214 };
3215 
3216 static const char * const vgp6_groups[] = {
3217 	"pbb6",
3218 	"sdmmc4_rst_n_pcc3",
3219 };
3220 
3221 static const char * const vi_groups[] = {
3222 	"cam_mclk_pcc0",
3223 	"vi_d0_pt4",
3224 	"vi_d1_pd5",
3225 	"vi_d10_pt2",
3226 	"vi_d11_pt3",
3227 	"vi_d2_pl0",
3228 	"vi_d3_pl1",
3229 	"vi_d4_pl2",
3230 	"vi_d5_pl3",
3231 	"vi_d6_pl4",
3232 	"vi_d7_pl5",
3233 	"vi_d8_pl6",
3234 	"vi_d9_pl7",
3235 	"vi_hsync_pd7",
3236 	"vi_mclk_pt1",
3237 	"vi_pclk_pt0",
3238 	"vi_vsync_pd6",
3239 };
3240 
3241 static const char * const vi_alt1_groups[] = {
3242 	"cam_mclk_pcc0",
3243 	"vi_mclk_pt1",
3244 };
3245 
3246 static const char * const vi_alt2_groups[] = {
3247 	"vi_mclk_pt1",
3248 };
3249 
3250 static const char * const vi_alt3_groups[] = {
3251 	"cam_mclk_pcc0",
3252 	"vi_mclk_pt1",
3253 };
3254 
3255 #define FUNCTION(fname)					\
3256 	{						\
3257 		.name = #fname,				\
3258 		.groups = fname##_groups,		\
3259 		.ngroups = ARRAY_SIZE(fname##_groups),	\
3260 	}
3261 
3262 static const struct tegra_function tegra30_functions[] = {
3263 	FUNCTION(blink),
3264 	FUNCTION(cec),
3265 	FUNCTION(clk_12m_out),
3266 	FUNCTION(clk_32k_in),
3267 	FUNCTION(core_pwr_req),
3268 	FUNCTION(cpu_pwr_req),
3269 	FUNCTION(crt),
3270 	FUNCTION(dap),
3271 	FUNCTION(ddr),
3272 	FUNCTION(dev3),
3273 	FUNCTION(displaya),
3274 	FUNCTION(displayb),
3275 	FUNCTION(dtv),
3276 	FUNCTION(extperiph1),
3277 	FUNCTION(extperiph2),
3278 	FUNCTION(extperiph3),
3279 	FUNCTION(gmi),
3280 	FUNCTION(gmi_alt),
3281 	FUNCTION(hda),
3282 	FUNCTION(hdcp),
3283 	FUNCTION(hdmi),
3284 	FUNCTION(hsi),
3285 	FUNCTION(i2c1),
3286 	FUNCTION(i2c2),
3287 	FUNCTION(i2c3),
3288 	FUNCTION(i2c4),
3289 	FUNCTION(i2cpwr),
3290 	FUNCTION(i2s0),
3291 	FUNCTION(i2s1),
3292 	FUNCTION(i2s2),
3293 	FUNCTION(i2s3),
3294 	FUNCTION(i2s4),
3295 	FUNCTION(invalid),
3296 	FUNCTION(kbc),
3297 	FUNCTION(mio),
3298 	FUNCTION(nand),
3299 	FUNCTION(nand_alt),
3300 	FUNCTION(owr),
3301 	FUNCTION(pcie),
3302 	FUNCTION(pwm0),
3303 	FUNCTION(pwm1),
3304 	FUNCTION(pwm2),
3305 	FUNCTION(pwm3),
3306 	FUNCTION(pwr_int_n),
3307 	FUNCTION(rsvd1),
3308 	FUNCTION(rsvd2),
3309 	FUNCTION(rsvd3),
3310 	FUNCTION(rsvd4),
3311 	FUNCTION(rtck),
3312 	FUNCTION(sata),
3313 	FUNCTION(sdmmc1),
3314 	FUNCTION(sdmmc2),
3315 	FUNCTION(sdmmc3),
3316 	FUNCTION(sdmmc4),
3317 	FUNCTION(spdif),
3318 	FUNCTION(spi1),
3319 	FUNCTION(spi2),
3320 	FUNCTION(spi2_alt),
3321 	FUNCTION(spi3),
3322 	FUNCTION(spi4),
3323 	FUNCTION(spi5),
3324 	FUNCTION(spi6),
3325 	FUNCTION(sysclk),
3326 	FUNCTION(test),
3327 	FUNCTION(trace),
3328 	FUNCTION(uarta),
3329 	FUNCTION(uartb),
3330 	FUNCTION(uartc),
3331 	FUNCTION(uartd),
3332 	FUNCTION(uarte),
3333 	FUNCTION(ulpi),
3334 	FUNCTION(vgp1),
3335 	FUNCTION(vgp2),
3336 	FUNCTION(vgp3),
3337 	FUNCTION(vgp4),
3338 	FUNCTION(vgp5),
3339 	FUNCTION(vgp6),
3340 	FUNCTION(vi),
3341 	FUNCTION(vi_alt1),
3342 	FUNCTION(vi_alt2),
3343 	FUNCTION(vi_alt3),
3344 };
3345 
3346 #define DRV_PINGROUP_REG_A	0x868	/* bank 0 */
3347 #define PINGROUP_REG_A		0x3000	/* bank 1 */
3348 
3349 #define PINGROUP_REG_Y(r) ((r) - PINGROUP_REG_A)
3350 #define PINGROUP_REG_N(r) -1
3351 
3352 #define PINGROUP(pg_name, f0, f1, f2, f3, f_safe, r, od, ior)	\
3353 	{							\
3354 		.name = #pg_name,				\
3355 		.pins = pg_name##_pins,				\
3356 		.npins = ARRAY_SIZE(pg_name##_pins),		\
3357 		.funcs = {					\
3358 			TEGRA_MUX_ ## f0,			\
3359 			TEGRA_MUX_ ## f1,			\
3360 			TEGRA_MUX_ ## f2,			\
3361 			TEGRA_MUX_ ## f3,			\
3362 		},						\
3363 		.func_safe = TEGRA_MUX_ ## f_safe,		\
3364 		.mux_reg = PINGROUP_REG_Y(r),			\
3365 		.mux_bank = 1,					\
3366 		.mux_bit = 0,					\
3367 		.pupd_reg = PINGROUP_REG_Y(r),			\
3368 		.pupd_bank = 1,					\
3369 		.pupd_bit = 2,					\
3370 		.tri_reg = PINGROUP_REG_Y(r),			\
3371 		.tri_bank = 1,					\
3372 		.tri_bit = 4,					\
3373 		.einput_reg = PINGROUP_REG_Y(r),		\
3374 		.einput_bank = 1,				\
3375 		.einput_bit = 5,				\
3376 		.odrain_reg = PINGROUP_REG_##od(r),		\
3377 		.odrain_bank = 1,				\
3378 		.odrain_bit = 6,				\
3379 		.lock_reg = PINGROUP_REG_Y(r),			\
3380 		.lock_bank = 1,					\
3381 		.lock_bit = 7,					\
3382 		.ioreset_reg = PINGROUP_REG_##ior(r),		\
3383 		.ioreset_bank = 1,				\
3384 		.ioreset_bit = 8,				\
3385 		.drv_reg = -1,					\
3386 	}
3387 
3388 #define DRV_PINGROUP(pg_name, r, hsm_b, schmitt_b, lpmd_b,	\
3389 		     drvdn_b, drvdn_w, drvup_b, drvup_w,	\
3390 		     slwr_b, slwr_w, slwf_b, slwf_w)		\
3391 	{							\
3392 		.name = "drive_" #pg_name,			\
3393 		.pins = drive_##pg_name##_pins,			\
3394 		.npins = ARRAY_SIZE(drive_##pg_name##_pins),	\
3395 		.mux_reg = -1,					\
3396 		.pupd_reg = -1,					\
3397 		.tri_reg = -1,					\
3398 		.einput_reg = -1,				\
3399 		.odrain_reg = -1,				\
3400 		.lock_reg = -1,					\
3401 		.ioreset_reg = -1,				\
3402 		.drv_reg = ((r) - DRV_PINGROUP_REG_A),		\
3403 		.drv_bank = 0,					\
3404 		.hsm_bit = hsm_b,				\
3405 		.schmitt_bit = schmitt_b,			\
3406 		.lpmd_bit = lpmd_b,				\
3407 		.drvdn_bit = drvdn_b,				\
3408 		.drvdn_width = drvdn_w,				\
3409 		.drvup_bit = drvup_b,				\
3410 		.drvup_width = drvup_w,				\
3411 		.slwr_bit = slwr_b,				\
3412 		.slwr_width = slwr_w,				\
3413 		.slwf_bit = slwf_b,				\
3414 		.slwf_width = slwf_w,				\
3415 	}
3416 
3417 static const struct tegra_pingroup tegra30_groups[] = {
3418 	/*       pg_name,              f0,           f1,           f2,           f3,           safe,         r,      od, ior */
3419 	/* FIXME: Fill in correct data in safe column */
3420 	PINGROUP(clk_32k_out_pa0,      BLINK,        RSVD2,        RSVD3,        RSVD4,        RSVD4,        0x331c, N, N),
3421 	PINGROUP(uart3_cts_n_pa1,      UARTC,        RSVD2,        GMI,          RSVD4,        RSVD4,        0x317c, N, N),
3422 	PINGROUP(dap2_fs_pa2,          I2S1,         HDA,          RSVD3,        GMI,          RSVD3,        0x3358, N, N),
3423 	PINGROUP(dap2_sclk_pa3,        I2S1,         HDA,          RSVD3,        GMI,          RSVD3,        0x3364, N, N),
3424 	PINGROUP(dap2_din_pa4,         I2S1,         HDA,          RSVD3,        GMI,          RSVD3,        0x335c, N, N),
3425 	PINGROUP(dap2_dout_pa5,        I2S1,         HDA,          RSVD3,        GMI,          RSVD3,        0x3360, N, N),
3426 	PINGROUP(sdmmc3_clk_pa6,       UARTA,        PWM2,         SDMMC3,       SPI3,         SPI3,         0x3390, N, N),
3427 	PINGROUP(sdmmc3_cmd_pa7,       UARTA,        PWM3,         SDMMC3,       SPI2,         SPI2,         0x3394, N, N),
3428 	PINGROUP(gmi_a17_pb0,          UARTD,        SPI4,         GMI,          DTV,          DTV,          0x3234, N, N),
3429 	PINGROUP(gmi_a18_pb1,          UARTD,        SPI4,         GMI,          DTV,          DTV,          0x3238, N, N),
3430 	PINGROUP(lcd_pwr0_pb2,         DISPLAYA,     DISPLAYB,     SPI5,         HDCP,         HDCP,         0x3090, N, N),
3431 	PINGROUP(lcd_pclk_pb3,         DISPLAYA,     DISPLAYB,     RSVD3,        RSVD4,        RSVD4,        0x3094, N, N),
3432 	PINGROUP(sdmmc3_dat3_pb4,      RSVD1,        PWM0,         SDMMC3,       SPI3,         RSVD1,        0x33a4, N, N),
3433 	PINGROUP(sdmmc3_dat2_pb5,      RSVD1,        PWM1,         SDMMC3,       SPI3,         RSVD1,        0x33a0, N, N),
3434 	PINGROUP(sdmmc3_dat1_pb6,      RSVD1,        RSVD2,        SDMMC3,       SPI3,         RSVD2,        0x339c, N, N),
3435 	PINGROUP(sdmmc3_dat0_pb7,      RSVD1,        RSVD2,        SDMMC3,       SPI3,         RSVD2,        0x3398, N, N),
3436 	PINGROUP(uart3_rts_n_pc0,      UARTC,        PWM0,         GMI,          RSVD4,        RSVD4,        0x3180, N, N),
3437 	PINGROUP(lcd_pwr1_pc1,         DISPLAYA,     DISPLAYB,     RSVD3,        RSVD4,        RSVD4,        0x3070, N, N),
3438 	PINGROUP(uart2_txd_pc2,        UARTB,        SPDIF,        UARTA,        SPI4,         SPI4,         0x3168, N, N),
3439 	PINGROUP(uart2_rxd_pc3,        UARTB,        SPDIF,        UARTA,        SPI4,         SPI4,         0x3164, N, N),
3440 	PINGROUP(gen1_i2c_scl_pc4,     I2C1,         RSVD2,        RSVD3,        RSVD4,        RSVD4,        0x31a4, Y, N),
3441 	PINGROUP(gen1_i2c_sda_pc5,     I2C1,         RSVD2,        RSVD3,        RSVD4,        RSVD4,        0x31a0, Y, N),
3442 	PINGROUP(lcd_pwr2_pc6,         DISPLAYA,     DISPLAYB,     SPI5,         HDCP,         HDCP,         0x3074, N, N),
3443 	PINGROUP(gmi_wp_n_pc7,         RSVD1,        NAND,         GMI,          GMI_ALT,      RSVD1,        0x31c0, N, N),
3444 	PINGROUP(sdmmc3_dat5_pd0,      PWM0,         SPI4,         SDMMC3,       SPI2,         SPI2,         0x33ac, N, N),
3445 	PINGROUP(sdmmc3_dat4_pd1,      PWM1,         SPI4,         SDMMC3,       SPI2,         SPI2,         0x33a8, N, N),
3446 	PINGROUP(lcd_dc1_pd2,          DISPLAYA,     DISPLAYB,     RSVD3,        RSVD4,        RSVD4,        0x310c, N, N),
3447 	PINGROUP(sdmmc3_dat6_pd3,      SPDIF,        SPI4,         SDMMC3,       SPI2,         SPI2,         0x33b0, N, N),
3448 	PINGROUP(sdmmc3_dat7_pd4,      SPDIF,        SPI4,         SDMMC3,       SPI2,         SPI2,         0x33b4, N, N),
3449 	PINGROUP(vi_d1_pd5,            DDR,          SDMMC2,       VI,           RSVD4,        RSVD4,        0x3128, N, Y),
3450 	PINGROUP(vi_vsync_pd6,         DDR,          RSVD2,        VI,           RSVD4,        RSVD4,        0x315c, N, Y),
3451 	PINGROUP(vi_hsync_pd7,         DDR,          RSVD2,        VI,           RSVD4,        RSVD4,        0x3160, N, Y),
3452 	PINGROUP(lcd_d0_pe0,           DISPLAYA,     DISPLAYB,     RSVD3,        RSVD4,        RSVD4,        0x30a4, N, N),
3453 	PINGROUP(lcd_d1_pe1,           DISPLAYA,     DISPLAYB,     RSVD3,        RSVD4,        RSVD4,        0x30a8, N, N),
3454 	PINGROUP(lcd_d2_pe2,           DISPLAYA,     DISPLAYB,     RSVD3,        RSVD4,        RSVD4,        0x30ac, N, N),
3455 	PINGROUP(lcd_d3_pe3,           DISPLAYA,     DISPLAYB,     RSVD3,        RSVD4,        RSVD4,        0x30b0, N, N),
3456 	PINGROUP(lcd_d4_pe4,           DISPLAYA,     DISPLAYB,     RSVD3,        RSVD4,        RSVD4,        0x30b4, N, N),
3457 	PINGROUP(lcd_d5_pe5,           DISPLAYA,     DISPLAYB,     RSVD3,        RSVD4,        RSVD4,        0x30b8, N, N),
3458 	PINGROUP(lcd_d6_pe6,           DISPLAYA,     DISPLAYB,     RSVD3,        RSVD4,        RSVD4,        0x30bc, N, N),
3459 	PINGROUP(lcd_d7_pe7,           DISPLAYA,     DISPLAYB,     RSVD3,        RSVD4,        RSVD4,        0x30c0, N, N),
3460 	PINGROUP(lcd_d8_pf0,           DISPLAYA,     DISPLAYB,     RSVD3,        RSVD4,        RSVD4,        0x30c4, N, N),
3461 	PINGROUP(lcd_d9_pf1,           DISPLAYA,     DISPLAYB,     RSVD3,        RSVD4,        RSVD4,        0x30c8, N, N),
3462 	PINGROUP(lcd_d10_pf2,          DISPLAYA,     DISPLAYB,     RSVD3,        RSVD4,        RSVD4,        0x30cc, N, N),
3463 	PINGROUP(lcd_d11_pf3,          DISPLAYA,     DISPLAYB,     RSVD3,        RSVD4,        RSVD4,        0x30d0, N, N),
3464 	PINGROUP(lcd_d12_pf4,          DISPLAYA,     DISPLAYB,     RSVD3,        RSVD4,        RSVD4,        0x30d4, N, N),
3465 	PINGROUP(lcd_d13_pf5,          DISPLAYA,     DISPLAYB,     RSVD3,        RSVD4,        RSVD4,        0x30d8, N, N),
3466 	PINGROUP(lcd_d14_pf6,          DISPLAYA,     DISPLAYB,     RSVD3,        RSVD4,        RSVD4,        0x30dc, N, N),
3467 	PINGROUP(lcd_d15_pf7,          DISPLAYA,     DISPLAYB,     RSVD3,        RSVD4,        RSVD4,        0x30e0, N, N),
3468 	PINGROUP(gmi_ad0_pg0,          RSVD1,        NAND,         GMI,          RSVD4,        RSVD4,        0x31f0, N, N),
3469 	PINGROUP(gmi_ad1_pg1,          RSVD1,        NAND,         GMI,          RSVD4,        RSVD4,        0x31f4, N, N),
3470 	PINGROUP(gmi_ad2_pg2,          RSVD1,        NAND,         GMI,          RSVD4,        RSVD4,        0x31f8, N, N),
3471 	PINGROUP(gmi_ad3_pg3,          RSVD1,        NAND,         GMI,          RSVD4,        RSVD4,        0x31fc, N, N),
3472 	PINGROUP(gmi_ad4_pg4,          RSVD1,        NAND,         GMI,          RSVD4,        RSVD4,        0x3200, N, N),
3473 	PINGROUP(gmi_ad5_pg5,          RSVD1,        NAND,         GMI,          RSVD4,        RSVD4,        0x3204, N, N),
3474 	PINGROUP(gmi_ad6_pg6,          RSVD1,        NAND,         GMI,          RSVD4,        RSVD4,        0x3208, N, N),
3475 	PINGROUP(gmi_ad7_pg7,          RSVD1,        NAND,         GMI,          RSVD4,        RSVD4,        0x320c, N, N),
3476 	PINGROUP(gmi_ad8_ph0,          PWM0,         NAND,         GMI,          RSVD4,        RSVD4,        0x3210, N, N),
3477 	PINGROUP(gmi_ad9_ph1,          PWM1,         NAND,         GMI,          RSVD4,        RSVD4,        0x3214, N, N),
3478 	PINGROUP(gmi_ad10_ph2,         PWM2,         NAND,         GMI,          RSVD4,        RSVD4,        0x3218, N, N),
3479 	PINGROUP(gmi_ad11_ph3,         PWM3,         NAND,         GMI,          RSVD4,        RSVD4,        0x321c, N, N),
3480 	PINGROUP(gmi_ad12_ph4,         RSVD1,        NAND,         GMI,          RSVD4,        RSVD4,        0x3220, N, N),
3481 	PINGROUP(gmi_ad13_ph5,         RSVD1,        NAND,         GMI,          RSVD4,        RSVD4,        0x3224, N, N),
3482 	PINGROUP(gmi_ad14_ph6,         RSVD1,        NAND,         GMI,          RSVD4,        RSVD4,        0x3228, N, N),
3483 	PINGROUP(gmi_ad15_ph7,         RSVD1,        NAND,         GMI,          RSVD4,        RSVD4,        0x322c, N, N),
3484 	PINGROUP(gmi_wr_n_pi0,         RSVD1,        NAND,         GMI,          RSVD4,        RSVD4,        0x3240, N, N),
3485 	PINGROUP(gmi_oe_n_pi1,         RSVD1,        NAND,         GMI,          RSVD4,        RSVD4,        0x3244, N, N),
3486 	PINGROUP(gmi_dqs_pi2,          RSVD1,        NAND,         GMI,          RSVD4,        RSVD4,        0x3248, N, N),
3487 	PINGROUP(gmi_cs6_n_pi3,        NAND,         NAND_ALT,     GMI,          SATA,         SATA,         0x31e8, N, N),
3488 	PINGROUP(gmi_rst_n_pi4,        NAND,         NAND_ALT,     GMI,          RSVD4,        RSVD4,        0x324c, N, N),
3489 	PINGROUP(gmi_iordy_pi5,        RSVD1,        NAND,         GMI,          RSVD4,        RSVD4,        0x31c4, N, N),
3490 	PINGROUP(gmi_cs7_n_pi6,        NAND,         NAND_ALT,     GMI,          GMI_ALT,      GMI_ALT,      0x31ec, N, N),
3491 	PINGROUP(gmi_wait_pi7,         RSVD1,        NAND,         GMI,          RSVD4,        RSVD4,        0x31c8, N, N),
3492 	PINGROUP(gmi_cs0_n_pj0,        RSVD1,        NAND,         GMI,          DTV,          RSVD1,        0x31d4, N, N),
3493 	PINGROUP(lcd_de_pj1,           DISPLAYA,     DISPLAYB,     RSVD3,        RSVD4,        RSVD4,        0x3098, N, N),
3494 	PINGROUP(gmi_cs1_n_pj2,        RSVD1,        NAND,         GMI,          DTV,          RSVD1,        0x31d8, N, N),
3495 	PINGROUP(lcd_hsync_pj3,        DISPLAYA,     DISPLAYB,     RSVD3,        RSVD4,        RSVD4,        0x309c, N, N),
3496 	PINGROUP(lcd_vsync_pj4,        DISPLAYA,     DISPLAYB,     RSVD3,        RSVD4,        RSVD4,        0x30a0, N, N),
3497 	PINGROUP(uart2_cts_n_pj5,      UARTA,        UARTB,        GMI,          SPI4,         SPI4,         0x3170, N, N),
3498 	PINGROUP(uart2_rts_n_pj6,      UARTA,        UARTB,        GMI,          SPI4,         SPI4,         0x316c, N, N),
3499 	PINGROUP(gmi_a16_pj7,          UARTD,        SPI4,         GMI,          GMI_ALT,      GMI_ALT,      0x3230, N, N),
3500 	PINGROUP(gmi_adv_n_pk0,        RSVD1,        NAND,         GMI,          RSVD4,        RSVD4,        0x31cc, N, N),
3501 	PINGROUP(gmi_clk_pk1,          RSVD1,        NAND,         GMI,          RSVD4,        RSVD4,        0x31d0, N, N),
3502 	PINGROUP(gmi_cs4_n_pk2,        RSVD1,        NAND,         GMI,          RSVD4,        RSVD4,        0x31e4, N, N),
3503 	PINGROUP(gmi_cs2_n_pk3,        RSVD1,        NAND,         GMI,          RSVD4,        RSVD4,        0x31dc, N, N),
3504 	PINGROUP(gmi_cs3_n_pk4,        RSVD1,        NAND,         GMI,          GMI_ALT,      RSVD1,        0x31e0, N, N),
3505 	PINGROUP(spdif_out_pk5,        SPDIF,        RSVD2,        I2C1,         SDMMC2,       RSVD2,        0x3354, N, N),
3506 	PINGROUP(spdif_in_pk6,         SPDIF,        HDA,          I2C1,         SDMMC2,       SDMMC2,       0x3350, N, N),
3507 	PINGROUP(gmi_a19_pk7,          UARTD,        SPI4,         GMI,          RSVD4,        RSVD4,        0x323c, N, N),
3508 	PINGROUP(vi_d2_pl0,            DDR,          SDMMC2,       VI,           RSVD4,        RSVD4,        0x312c, N, Y),
3509 	PINGROUP(vi_d3_pl1,            DDR,          SDMMC2,       VI,           RSVD4,        RSVD4,        0x3130, N, Y),
3510 	PINGROUP(vi_d4_pl2,            DDR,          SDMMC2,       VI,           RSVD4,        RSVD4,        0x3134, N, Y),
3511 	PINGROUP(vi_d5_pl3,            DDR,          SDMMC2,       VI,           RSVD4,        RSVD4,        0x3138, N, Y),
3512 	PINGROUP(vi_d6_pl4,            DDR,          SDMMC2,       VI,           RSVD4,        RSVD4,        0x313c, N, Y),
3513 	PINGROUP(vi_d7_pl5,            DDR,          SDMMC2,       VI,           RSVD4,        RSVD4,        0x3140, N, Y),
3514 	PINGROUP(vi_d8_pl6,            DDR,          SDMMC2,       VI,           RSVD4,        RSVD4,        0x3144, N, Y),
3515 	PINGROUP(vi_d9_pl7,            DDR,          SDMMC2,       VI,           RSVD4,        RSVD4,        0x3148, N, Y),
3516 	PINGROUP(lcd_d16_pm0,          DISPLAYA,     DISPLAYB,     RSVD3,        RSVD4,        RSVD4,        0x30e4, N, N),
3517 	PINGROUP(lcd_d17_pm1,          DISPLAYA,     DISPLAYB,     RSVD3,        RSVD4,        RSVD4,        0x30e8, N, N),
3518 	PINGROUP(lcd_d18_pm2,          DISPLAYA,     DISPLAYB,     RSVD3,        RSVD4,        RSVD4,        0x30ec, N, N),
3519 	PINGROUP(lcd_d19_pm3,          DISPLAYA,     DISPLAYB,     RSVD3,        RSVD4,        RSVD4,        0x30f0, N, N),
3520 	PINGROUP(lcd_d20_pm4,          DISPLAYA,     DISPLAYB,     RSVD3,        RSVD4,        RSVD4,        0x30f4, N, N),
3521 	PINGROUP(lcd_d21_pm5,          DISPLAYA,     DISPLAYB,     RSVD3,        RSVD4,        RSVD4,        0x30f8, N, N),
3522 	PINGROUP(lcd_d22_pm6,          DISPLAYA,     DISPLAYB,     RSVD3,        RSVD4,        RSVD4,        0x30fc, N, N),
3523 	PINGROUP(lcd_d23_pm7,          DISPLAYA,     DISPLAYB,     RSVD3,        RSVD4,        RSVD4,        0x3100, N, N),
3524 	PINGROUP(dap1_fs_pn0,          I2S0,         HDA,          GMI,          SDMMC2,       SDMMC2,       0x3338, N, N),
3525 	PINGROUP(dap1_din_pn1,         I2S0,         HDA,          GMI,          SDMMC2,       SDMMC2,       0x333c, N, N),
3526 	PINGROUP(dap1_dout_pn2,        I2S0,         HDA,          GMI,          SDMMC2,       SDMMC2,       0x3340, N, N),
3527 	PINGROUP(dap1_sclk_pn3,        I2S0,         HDA,          GMI,          SDMMC2,       SDMMC2,       0x3344, N, N),
3528 	PINGROUP(lcd_cs0_n_pn4,        DISPLAYA,     DISPLAYB,     SPI5,         RSVD4,        RSVD4,        0x3084, N, N),
3529 	PINGROUP(lcd_sdout_pn5,        DISPLAYA,     DISPLAYB,     SPI5,         HDCP,         HDCP,         0x307c, N, N),
3530 	PINGROUP(lcd_dc0_pn6,          DISPLAYA,     DISPLAYB,     RSVD3,        RSVD4,        RSVD4,        0x3088, N, N),
3531 	PINGROUP(hdmi_int_pn7,         HDMI,         RSVD2,        RSVD3,        RSVD4,        RSVD4,        0x3110, N, N),
3532 	PINGROUP(ulpi_data7_po0,       SPI2,         HSI,          UARTA,        ULPI,         ULPI,         0x301c, N, N),
3533 	PINGROUP(ulpi_data0_po1,       SPI3,         HSI,          UARTA,        ULPI,         ULPI,         0x3000, N, N),
3534 	PINGROUP(ulpi_data1_po2,       SPI3,         HSI,          UARTA,        ULPI,         ULPI,         0x3004, N, N),
3535 	PINGROUP(ulpi_data2_po3,       SPI3,         HSI,          UARTA,        ULPI,         ULPI,         0x3008, N, N),
3536 	PINGROUP(ulpi_data3_po4,       SPI3,         HSI,          UARTA,        ULPI,         ULPI,         0x300c, N, N),
3537 	PINGROUP(ulpi_data4_po5,       SPI2,         HSI,          UARTA,        ULPI,         ULPI,         0x3010, N, N),
3538 	PINGROUP(ulpi_data5_po6,       SPI2,         HSI,          UARTA,        ULPI,         ULPI,         0x3014, N, N),
3539 	PINGROUP(ulpi_data6_po7,       SPI2,         HSI,          UARTA,        ULPI,         ULPI,         0x3018, N, N),
3540 	PINGROUP(dap3_fs_pp0,          I2S2,         RSVD2,        DISPLAYA,     DISPLAYB,     RSVD2,        0x3030, N, N),
3541 	PINGROUP(dap3_din_pp1,         I2S2,         RSVD2,        DISPLAYA,     DISPLAYB,     RSVD2,        0x3034, N, N),
3542 	PINGROUP(dap3_dout_pp2,        I2S2,         RSVD2,        DISPLAYA,     DISPLAYB,     RSVD2,        0x3038, N, N),
3543 	PINGROUP(dap3_sclk_pp3,        I2S2,         RSVD2,        DISPLAYA,     DISPLAYB,     RSVD2,        0x303c, N, N),
3544 	PINGROUP(dap4_fs_pp4,          I2S3,         RSVD2,        GMI,          RSVD4,        RSVD4,        0x31a8, N, N),
3545 	PINGROUP(dap4_din_pp5,         I2S3,         RSVD2,        GMI,          RSVD4,        RSVD4,        0x31ac, N, N),
3546 	PINGROUP(dap4_dout_pp6,        I2S3,         RSVD2,        GMI,          RSVD4,        RSVD4,        0x31b0, N, N),
3547 	PINGROUP(dap4_sclk_pp7,        I2S3,         RSVD2,        GMI,          RSVD4,        RSVD4,        0x31b4, N, N),
3548 	PINGROUP(kb_col0_pq0,          KBC,          NAND,         TRACE,        TEST,         TEST,         0x32fc, N, N),
3549 	PINGROUP(kb_col1_pq1,          KBC,          NAND,         TRACE,        TEST,         TEST,         0x3300, N, N),
3550 	PINGROUP(kb_col2_pq2,          KBC,          NAND,         TRACE,        RSVD4,        RSVD4,        0x3304, N, N),
3551 	PINGROUP(kb_col3_pq3,          KBC,          NAND,         TRACE,        RSVD4,        RSVD4,        0x3308, N, N),
3552 	PINGROUP(kb_col4_pq4,          KBC,          NAND,         TRACE,        RSVD4,        RSVD4,        0x330c, N, N),
3553 	PINGROUP(kb_col5_pq5,          KBC,          NAND,         TRACE,        RSVD4,        RSVD4,        0x3310, N, N),
3554 	PINGROUP(kb_col6_pq6,          KBC,          NAND,         TRACE,        MIO,          MIO,          0x3314, N, N),
3555 	PINGROUP(kb_col7_pq7,          KBC,          NAND,         TRACE,        MIO,          MIO,          0x3318, N, N),
3556 	PINGROUP(kb_row0_pr0,          KBC,          NAND,         RSVD3,        RSVD4,        RSVD4,        0x32bc, N, N),
3557 	PINGROUP(kb_row1_pr1,          KBC,          NAND,         RSVD3,        RSVD4,        RSVD4,        0x32c0, N, N),
3558 	PINGROUP(kb_row2_pr2,          KBC,          NAND,         RSVD3,        RSVD4,        RSVD4,        0x32c4, N, N),
3559 	PINGROUP(kb_row3_pr3,          KBC,          NAND,         RSVD3,        INVALID,      RSVD3,        0x32c8, N, N),
3560 	PINGROUP(kb_row4_pr4,          KBC,          NAND,         TRACE,        RSVD4,        RSVD4,        0x32cc, N, N),
3561 	PINGROUP(kb_row5_pr5,          KBC,          NAND,         TRACE,        OWR,          OWR,          0x32d0, N, N),
3562 	PINGROUP(kb_row6_pr6,          KBC,          NAND,         SDMMC2,       MIO,          MIO,          0x32d4, N, N),
3563 	PINGROUP(kb_row7_pr7,          KBC,          NAND,         SDMMC2,       MIO,          MIO,          0x32d8, N, N),
3564 	PINGROUP(kb_row8_ps0,          KBC,          NAND,         SDMMC2,       MIO,          MIO,          0x32dc, N, N),
3565 	PINGROUP(kb_row9_ps1,          KBC,          NAND,         SDMMC2,       MIO,          MIO,          0x32e0, N, N),
3566 	PINGROUP(kb_row10_ps2,         KBC,          NAND,         SDMMC2,       MIO,          MIO,          0x32e4, N, N),
3567 	PINGROUP(kb_row11_ps3,         KBC,          NAND,         SDMMC2,       MIO,          MIO,          0x32e8, N, N),
3568 	PINGROUP(kb_row12_ps4,         KBC,          NAND,         SDMMC2,       MIO,          MIO,          0x32ec, N, N),
3569 	PINGROUP(kb_row13_ps5,         KBC,          NAND,         SDMMC2,       MIO,          MIO,          0x32f0, N, N),
3570 	PINGROUP(kb_row14_ps6,         KBC,          NAND,         SDMMC2,       MIO,          MIO,          0x32f4, N, N),
3571 	PINGROUP(kb_row15_ps7,         KBC,          NAND,         SDMMC2,       MIO,          MIO,          0x32f8, N, N),
3572 	PINGROUP(vi_pclk_pt0,          RSVD1,        SDMMC2,       VI,           RSVD4,        RSVD4,        0x3154, N, Y),
3573 	PINGROUP(vi_mclk_pt1,          VI,           VI_ALT1,      VI_ALT2,      VI_ALT3,      VI_ALT3,      0x3158, N, Y),
3574 	PINGROUP(vi_d10_pt2,           DDR,          RSVD2,        VI,           RSVD4,        RSVD4,        0x314c, N, Y),
3575 	PINGROUP(vi_d11_pt3,           DDR,          RSVD2,        VI,           RSVD4,        RSVD4,        0x3150, N, Y),
3576 	PINGROUP(vi_d0_pt4,            DDR,          RSVD2,        VI,           RSVD4,        RSVD4,        0x3124, N, Y),
3577 	PINGROUP(gen2_i2c_scl_pt5,     I2C2,         HDCP,         GMI,          RSVD4,        RSVD4,        0x3250, Y, N),
3578 	PINGROUP(gen2_i2c_sda_pt6,     I2C2,         HDCP,         GMI,          RSVD4,        RSVD4,        0x3254, Y, N),
3579 	PINGROUP(sdmmc4_cmd_pt7,       I2C3,         NAND,         GMI,          SDMMC4,       SDMMC4,       0x325c, N, Y),
3580 	PINGROUP(pu0,                  OWR,          UARTA,        GMI,          RSVD4,        RSVD4,        0x3184, N, N),
3581 	PINGROUP(pu1,                  RSVD1,        UARTA,        GMI,          RSVD4,        RSVD4,        0x3188, N, N),
3582 	PINGROUP(pu2,                  RSVD1,        UARTA,        GMI,          RSVD4,        RSVD4,        0x318c, N, N),
3583 	PINGROUP(pu3,                  PWM0,         UARTA,        GMI,          RSVD4,        RSVD4,        0x3190, N, N),
3584 	PINGROUP(pu4,                  PWM1,         UARTA,        GMI,          RSVD4,        RSVD4,        0x3194, N, N),
3585 	PINGROUP(pu5,                  PWM2,         UARTA,        GMI,          RSVD4,        RSVD4,        0x3198, N, N),
3586 	PINGROUP(pu6,                  PWM3,         UARTA,        GMI,          RSVD4,        RSVD4,        0x319c, N, N),
3587 	PINGROUP(jtag_rtck_pu7,        RTCK,         RSVD2,        RSVD3,        RSVD4,        RSVD4,        0x32b0, N, N),
3588 	PINGROUP(pv0,                  RSVD1,        RSVD2,        RSVD3,        RSVD4,        RSVD4,        0x3040, N, N),
3589 	PINGROUP(pv1,                  RSVD1,        RSVD2,        RSVD3,        RSVD4,        RSVD4,        0x3044, N, N),
3590 	PINGROUP(pv2,                  OWR,          RSVD2,        RSVD3,        RSVD4,        RSVD4,        0x3060, N, N),
3591 	PINGROUP(pv3,                  CLK_12M_OUT,  RSVD2,        RSVD3,        RSVD4,        RSVD4,        0x3064, N, N),
3592 	PINGROUP(ddc_scl_pv4,          I2C4,         RSVD2,        RSVD3,        RSVD4,        RSVD4,        0x3114, N, N),
3593 	PINGROUP(ddc_sda_pv5,          I2C4,         RSVD2,        RSVD3,        RSVD4,        RSVD4,        0x3118, N, N),
3594 	PINGROUP(crt_hsync_pv6,        CRT,          RSVD2,        RSVD3,        RSVD4,        RSVD4,        0x311c, N, N),
3595 	PINGROUP(crt_vsync_pv7,        CRT,          RSVD2,        RSVD3,        RSVD4,        RSVD4,        0x3120, N, N),
3596 	PINGROUP(lcd_cs1_n_pw0,        DISPLAYA,     DISPLAYB,     SPI5,         RSVD4,        RSVD4,        0x3104, N, N),
3597 	PINGROUP(lcd_m1_pw1,           DISPLAYA,     DISPLAYB,     RSVD3,        RSVD4,        RSVD4,        0x3108, N, N),
3598 	PINGROUP(spi2_cs1_n_pw2,       SPI3,         SPI2,         SPI2_ALT,     I2C1,         I2C1,         0x3388, N, N),
3599 	PINGROUP(spi2_cs2_n_pw3,       SPI3,         SPI2,         SPI2_ALT,     I2C1,         I2C1,         0x338c, N, N),
3600 	PINGROUP(clk1_out_pw4,         EXTPERIPH1,   RSVD2,        RSVD3,        RSVD4,        RSVD4,        0x334c, N, N),
3601 	PINGROUP(clk2_out_pw5,         EXTPERIPH2,   RSVD2,        RSVD3,        RSVD4,        RSVD4,        0x3068, N, N),
3602 	PINGROUP(uart3_txd_pw6,        UARTC,        RSVD2,        GMI,          RSVD4,        RSVD4,        0x3174, N, N),
3603 	PINGROUP(uart3_rxd_pw7,        UARTC,        RSVD2,        GMI,          RSVD4,        RSVD4,        0x3178, N, N),
3604 	PINGROUP(spi2_mosi_px0,        SPI6,         SPI2,         SPI3,         GMI,          GMI,          0x3368, N, N),
3605 	PINGROUP(spi2_miso_px1,        SPI6,         SPI2,         SPI3,         GMI,          GMI,          0x336c, N, N),
3606 	PINGROUP(spi2_sck_px2,         SPI6,         SPI2,         SPI3,         GMI,          GMI,          0x3374, N, N),
3607 	PINGROUP(spi2_cs0_n_px3,       SPI6,         SPI2,         SPI3,         GMI,          GMI,          0x3370, N, N),
3608 	PINGROUP(spi1_mosi_px4,        SPI2,         SPI1,         SPI2_ALT,     GMI,          GMI,          0x3378, N, N),
3609 	PINGROUP(spi1_sck_px5,         SPI2,         SPI1,         SPI2_ALT,     GMI,          GMI,          0x337c, N, N),
3610 	PINGROUP(spi1_cs0_n_px6,       SPI2,         SPI1,         SPI2_ALT,     GMI,          GMI,          0x3380, N, N),
3611 	PINGROUP(spi1_miso_px7,        SPI3,         SPI1,         SPI2_ALT,     RSVD4,        RSVD4,        0x3384, N, N),
3612 	PINGROUP(ulpi_clk_py0,         SPI1,         RSVD2,        UARTD,        ULPI,         RSVD2,        0x3020, N, N),
3613 	PINGROUP(ulpi_dir_py1,         SPI1,         RSVD2,        UARTD,        ULPI,         RSVD2,        0x3024, N, N),
3614 	PINGROUP(ulpi_nxt_py2,         SPI1,         RSVD2,        UARTD,        ULPI,         RSVD2,        0x3028, N, N),
3615 	PINGROUP(ulpi_stp_py3,         SPI1,         RSVD2,        UARTD,        ULPI,         RSVD2,        0x302c, N, N),
3616 	PINGROUP(sdmmc1_dat3_py4,      SDMMC1,       RSVD2,        UARTE,        UARTA,        RSVD2,        0x3050, N, N),
3617 	PINGROUP(sdmmc1_dat2_py5,      SDMMC1,       RSVD2,        UARTE,        UARTA,        RSVD2,        0x3054, N, N),
3618 	PINGROUP(sdmmc1_dat1_py6,      SDMMC1,       RSVD2,        UARTE,        UARTA,        RSVD2,        0x3058, N, N),
3619 	PINGROUP(sdmmc1_dat0_py7,      SDMMC1,       RSVD2,        UARTE,        UARTA,        RSVD2,        0x305c, N, N),
3620 	PINGROUP(sdmmc1_clk_pz0,       SDMMC1,       RSVD2,        RSVD3,        UARTA,        RSVD3,        0x3048, N, N),
3621 	PINGROUP(sdmmc1_cmd_pz1,       SDMMC1,       RSVD2,        RSVD3,        UARTA,        RSVD3,        0x304c, N, N),
3622 	PINGROUP(lcd_sdin_pz2,         DISPLAYA,     DISPLAYB,     SPI5,         RSVD4,        RSVD4,        0x3078, N, N),
3623 	PINGROUP(lcd_wr_n_pz3,         DISPLAYA,     DISPLAYB,     SPI5,         HDCP,         HDCP,         0x3080, N, N),
3624 	PINGROUP(lcd_sck_pz4,          DISPLAYA,     DISPLAYB,     SPI5,         HDCP,         HDCP,         0x308c, N, N),
3625 	PINGROUP(sys_clk_req_pz5,      SYSCLK,       RSVD2,        RSVD3,        RSVD4,        RSVD4,        0x3320, N, N),
3626 	PINGROUP(pwr_i2c_scl_pz6,      I2CPWR,       RSVD2,        RSVD3,        RSVD4,        RSVD4,        0x32b4, Y, N),
3627 	PINGROUP(pwr_i2c_sda_pz7,      I2CPWR,       RSVD2,        RSVD3,        RSVD4,        RSVD4,        0x32b8, Y, N),
3628 	PINGROUP(sdmmc4_dat0_paa0,     UARTE,        SPI3,         GMI,          SDMMC4,       SDMMC4,       0x3260, N, Y),
3629 	PINGROUP(sdmmc4_dat1_paa1,     UARTE,        SPI3,         GMI,          SDMMC4,       SDMMC4,       0x3264, N, Y),
3630 	PINGROUP(sdmmc4_dat2_paa2,     UARTE,        SPI3,         GMI,          SDMMC4,       SDMMC4,       0x3268, N, Y),
3631 	PINGROUP(sdmmc4_dat3_paa3,     UARTE,        SPI3,         GMI,          SDMMC4,       SDMMC4,       0x326c, N, Y),
3632 	PINGROUP(sdmmc4_dat4_paa4,     I2C3,         I2S4,         GMI,          SDMMC4,       SDMMC4,       0x3270, N, Y),
3633 	PINGROUP(sdmmc4_dat5_paa5,     VGP3,         I2S4,         GMI,          SDMMC4,       SDMMC4,       0x3274, N, Y),
3634 	PINGROUP(sdmmc4_dat6_paa6,     VGP4,         I2S4,         GMI,          SDMMC4,       SDMMC4,       0x3278, N, Y),
3635 	PINGROUP(sdmmc4_dat7_paa7,     VGP5,         I2S4,         GMI,          SDMMC4,       SDMMC4,       0x327c, N, Y),
3636 	PINGROUP(pbb0,                 I2S4,         RSVD2,        RSVD3,        SDMMC4,       RSVD3,        0x328c, N, N),
3637 	PINGROUP(cam_i2c_scl_pbb1,     VGP1,         I2C3,         RSVD3,        SDMMC4,       RSVD3,        0x3290, Y, N),
3638 	PINGROUP(cam_i2c_sda_pbb2,     VGP2,         I2C3,         RSVD3,        SDMMC4,       RSVD3,        0x3294, Y, N),
3639 	PINGROUP(pbb3,                 VGP3,         DISPLAYA,     DISPLAYB,     SDMMC4,       SDMMC4,       0x3298, N, N),
3640 	PINGROUP(pbb4,                 VGP4,         DISPLAYA,     DISPLAYB,     SDMMC4,       SDMMC4,       0x329c, N, N),
3641 	PINGROUP(pbb5,                 VGP5,         DISPLAYA,     DISPLAYB,     SDMMC4,       SDMMC4,       0x32a0, N, N),
3642 	PINGROUP(pbb6,                 VGP6,         DISPLAYA,     DISPLAYB,     SDMMC4,       SDMMC4,       0x32a4, N, N),
3643 	PINGROUP(pbb7,                 I2S4,         RSVD2,        RSVD3,        SDMMC4,       RSVD3,        0x32a8, N, N),
3644 	PINGROUP(cam_mclk_pcc0,        VI,           VI_ALT1,      VI_ALT3,      SDMMC4,       SDMMC4,       0x3284, N, N),
3645 	PINGROUP(pcc1,                 I2S4,         RSVD2,        RSVD3,        SDMMC4,       RSVD3,        0x3288, N, N),
3646 	PINGROUP(pcc2,                 I2S4,         RSVD2,        RSVD3,        RSVD4,        RSVD4,        0x32ac, N, N),
3647 	PINGROUP(sdmmc4_rst_n_pcc3,    VGP6,         RSVD2,        RSVD3,        SDMMC4,       RSVD3,        0x3280, N, Y),
3648 	PINGROUP(sdmmc4_clk_pcc4,      INVALID,      NAND,         GMI,          SDMMC4,       SDMMC4,       0x3258, N, Y),
3649 	PINGROUP(clk2_req_pcc5,        DAP,          RSVD2,        RSVD3,        RSVD4,        RSVD4,        0x306c, N, N),
3650 	PINGROUP(pex_l2_rst_n_pcc6,    PCIE,         HDA,          RSVD3,        RSVD4,        RSVD4,        0x33d8, N, N),
3651 	PINGROUP(pex_l2_clkreq_n_pcc7, PCIE,         HDA,          RSVD3,        RSVD4,        RSVD4,        0x33dc, N, N),
3652 	PINGROUP(pex_l0_prsnt_n_pdd0,  PCIE,         HDA,          RSVD3,        RSVD4,        RSVD4,        0x33b8, N, N),
3653 	PINGROUP(pex_l0_rst_n_pdd1,    PCIE,         HDA,          RSVD3,        RSVD4,        RSVD4,        0x33bc, N, N),
3654 	PINGROUP(pex_l0_clkreq_n_pdd2, PCIE,         HDA,          RSVD3,        RSVD4,        RSVD4,        0x33c0, N, N),
3655 	PINGROUP(pex_wake_n_pdd3,      PCIE,         HDA,          RSVD3,        RSVD4,        RSVD4,        0x33c4, N, N),
3656 	PINGROUP(pex_l1_prsnt_n_pdd4,  PCIE,         HDA,          RSVD3,        RSVD4,        RSVD4,        0x33c8, N, N),
3657 	PINGROUP(pex_l1_rst_n_pdd5,    PCIE,         HDA,          RSVD3,        RSVD4,        RSVD4,        0x33cc, N, N),
3658 	PINGROUP(pex_l1_clkreq_n_pdd6, PCIE,         HDA,          RSVD3,        RSVD4,        RSVD4,        0x33d0, N, N),
3659 	PINGROUP(pex_l2_prsnt_n_pdd7,  PCIE,         HDA,          RSVD3,        RSVD4,        RSVD4,        0x33d4, N, N),
3660 	PINGROUP(clk3_out_pee0,        EXTPERIPH3,   RSVD2,        RSVD3,        RSVD4,        RSVD4,        0x31b8, N, N),
3661 	PINGROUP(clk3_req_pee1,        DEV3,         RSVD2,        RSVD3,        RSVD4,        RSVD4,        0x31bc, N, N),
3662 	PINGROUP(clk1_req_pee2,        DAP,          HDA,          RSVD3,        RSVD4,        RSVD4,        0x3348, N, N),
3663 	PINGROUP(hdmi_cec_pee3,        CEC,          RSVD2,        RSVD3,        RSVD4,        RSVD4,        0x33e0, Y, N),
3664 	PINGROUP(clk_32k_in,           CLK_32K_IN,   RSVD2,        RSVD3,        RSVD4,        RSVD4,        0x3330, N, N),
3665 	PINGROUP(core_pwr_req,         CORE_PWR_REQ, RSVD2,        RSVD3,        RSVD4,        RSVD4,        0x3324, N, N),
3666 	PINGROUP(cpu_pwr_req,          CPU_PWR_REQ,  RSVD2,        RSVD3,        RSVD4,        RSVD4,        0x3328, N, N),
3667 	PINGROUP(owr,                  OWR,          CEC,          RSVD3,        RSVD4,        RSVD4,        0x3334, N, N),
3668 	PINGROUP(pwr_int_n,            PWR_INT_N,    RSVD2,        RSVD3,        RSVD4,        RSVD4,        0x332c, N, N),
3669 	/* pg_name, r, hsm_b, schmitt_b, lpmd_b, drvdn_b, drvdn_w, drvup_b, drvup_w, slwr_b, slwr_w, slwf_b, slwf_w */
3670 	DRV_PINGROUP(ao1,   0x868,  2,  3,  4,  12,  5,  20,  5,  28,  2,  30,  2),
3671 	DRV_PINGROUP(ao2,   0x86c,  2,  3,  4,  12,  5,  20,  5,  28,  2,  30,  2),
3672 	DRV_PINGROUP(at1,   0x870,  2,  3,  4,  14,  5,  19,  5,  24,  2,  28,  2),
3673 	DRV_PINGROUP(at2,   0x874,  2,  3,  4,  14,  5,  19,  5,  24,  2,  28,  2),
3674 	DRV_PINGROUP(at3,   0x878,  2,  3,  4,  14,  5,  19,  5,  28,  2,  30,  2),
3675 	DRV_PINGROUP(at4,   0x87c,  2,  3,  4,  14,  5,  19,  5,  28,  2,  30,  2),
3676 	DRV_PINGROUP(at5,   0x880,  2,  3,  4,  14,  5,  19,  5,  28,  2,  30,  2),
3677 	DRV_PINGROUP(cdev1, 0x884,  2,  3,  4,  12,  5,  20,  5,  28,  2,  30,  2),
3678 	DRV_PINGROUP(cdev2, 0x888,  2,  3,  4,  12,  5,  20,  5,  28,  2,  30,  2),
3679 	DRV_PINGROUP(cec,   0x938,  2,  3,  4,  12,  5,  20,  5,  28,  2,  30,  2),
3680 	DRV_PINGROUP(crt,   0x8f8,  2,  3,  4,  12,  5,  20,  5,  28,  2,  30,  2),
3681 	DRV_PINGROUP(csus,  0x88c, -1, -1, -1,  12,  5,  19,  5,  24,  4,  28,  4),
3682 	DRV_PINGROUP(dap1,  0x890,  2,  3,  4,  12,  5,  20,  5,  28,  2,  30,  2),
3683 	DRV_PINGROUP(dap2,  0x894,  2,  3,  4,  12,  5,  20,  5,  28,  2,  30,  2),
3684 	DRV_PINGROUP(dap3,  0x898,  2,  3,  4,  12,  5,  20,  5,  28,  2,  30,  2),
3685 	DRV_PINGROUP(dap4,  0x89c,  2,  3,  4,  12,  5,  20,  5,  28,  2,  30,  2),
3686 	DRV_PINGROUP(dbg,   0x8a0,  2,  3,  4,  12,  5,  20,  5,  28,  2,  30,  2),
3687 	DRV_PINGROUP(ddc,   0x8fc,  2,  3,  4,  12,  5,  20,  5,  28,  2,  30,  2),
3688 	DRV_PINGROUP(dev3,  0x92c,  2,  3,  4,  12,  5,  20,  5,  28,  2,  30,  2),
3689 	DRV_PINGROUP(gma,   0x900, -1, -1, -1,  14,  5,  19,  5,  24,  4,  28,  4),
3690 	DRV_PINGROUP(gmb,   0x904, -1, -1, -1,  14,  5,  19,  5,  24,  4,  28,  4),
3691 	DRV_PINGROUP(gmc,   0x908, -1, -1, -1,  14,  5,  19,  5,  24,  4,  28,  4),
3692 	DRV_PINGROUP(gmd,   0x90c, -1, -1, -1,  14,  5,  19,  5,  24,  4,  28,  4),
3693 	DRV_PINGROUP(gme,   0x910,  2,  3,  4,  14,  5,  19,  5,  28,  2,  30,  2),
3694 	DRV_PINGROUP(gmf,   0x914,  2,  3,  4,  14,  5,  19,  5,  28,  2,  30,  2),
3695 	DRV_PINGROUP(gmg,   0x918,  2,  3,  4,  14,  5,  19,  5,  28,  2,  30,  2),
3696 	DRV_PINGROUP(gmh,   0x91c,  2,  3,  4,  14,  5,  19,  5,  28,  2,  30,  2),
3697 	DRV_PINGROUP(gpv,   0x928,  2,  3,  4,  12,  5,  20,  5,  28,  2,  30,  2),
3698 	DRV_PINGROUP(lcd1,  0x8a4,  2,  3,  4,  12,  5,  20,  5,  28,  2,  30,  2),
3699 	DRV_PINGROUP(lcd2,  0x8a8,  2,  3,  4,  12,  5,  20,  5,  28,  2,  30,  2),
3700 	DRV_PINGROUP(owr,   0x920,  2,  3,  4,  12,  5,  20,  5,  28,  2,  30,  2),
3701 	DRV_PINGROUP(sdio1, 0x8ec,  2,  3, -1,  12,  7,  20,  7,  28,  2,  30,  2),
3702 	DRV_PINGROUP(sdio2, 0x8ac,  2,  3, -1,  12,  7,  20,  7,  28,  2,  30,  2),
3703 	DRV_PINGROUP(sdio3, 0x8b0,  2,  3, -1,  12,  7,  20,  7,  28,  2,  30,  2),
3704 	DRV_PINGROUP(spi,   0x8b4,  2,  3,  4,  12,  5,  20,  5,  28,  2,  30,  2),
3705 	DRV_PINGROUP(uaa,   0x8b8,  2,  3,  4,  12,  5,  20,  5,  28,  2,  30,  2),
3706 	DRV_PINGROUP(uab,   0x8bc,  2,  3,  4,  12,  5,  20,  5,  28,  2,  30,  2),
3707 	DRV_PINGROUP(uart2, 0x8c0,  2,  3,  4,  12,  5,  20,  5,  28,  2,  30,  2),
3708 	DRV_PINGROUP(uart3, 0x8c4,  2,  3,  4,  12,  5,  20,  5,  28,  2,  30,  2),
3709 	DRV_PINGROUP(uda,   0x924,  2,  3,  4,  12,  5,  20,  5,  28,  2,  30,  2),
3710 	DRV_PINGROUP(vi1,   0x8c8, -1, -1, -1,  14,  5,  19,  5,  24,  4,  28,  4),
3711 };
3712 
3713 static const struct tegra_pinctrl_soc_data tegra30_pinctrl = {
3714 	.ngpios = NUM_GPIOS,
3715 	.pins = tegra30_pins,
3716 	.npins = ARRAY_SIZE(tegra30_pins),
3717 	.functions = tegra30_functions,
3718 	.nfunctions = ARRAY_SIZE(tegra30_functions),
3719 	.groups = tegra30_groups,
3720 	.ngroups = ARRAY_SIZE(tegra30_groups),
3721 };
3722 
tegra30_pinctrl_init(const struct tegra_pinctrl_soc_data ** soc)3723 void __devinit tegra30_pinctrl_init(const struct tegra_pinctrl_soc_data **soc)
3724 {
3725 	*soc = &tegra30_pinctrl;
3726 }
3727