brintos

brintos / linux-shallow public Read only

0
0
Text · 64.1 KiB · 3d425b2 Raw
1866 lines · c
1// SPDX-License-Identifier: GPL-2.0-only2/*3 * Pinctrl data for the NVIDIA Tegra114 pinmux4 *5 * Author: Pritesh Raithatha <praithatha@nvidia.com>6 *7 * Copyright (c) 2012-2013, NVIDIA CORPORATION.  All rights reserved.8 */9 10#include <linux/init.h>11#include <linux/of.h>12#include <linux/platform_device.h>13#include <linux/pinctrl/pinctrl.h>14#include <linux/pinctrl/pinmux.h>15 16#include "pinctrl-tegra.h"17 18/*19 * Most pins affected by the pinmux can also be GPIOs. Define these first.20 * These must match how the GPIO driver names/numbers its pins.21 */22#define _GPIO(offset)				(offset)23 24#define TEGRA_PIN_CLK_32K_OUT_PA0		_GPIO(0)25#define TEGRA_PIN_UART3_CTS_N_PA1		_GPIO(1)26#define TEGRA_PIN_DAP2_FS_PA2			_GPIO(2)27#define TEGRA_PIN_DAP2_SCLK_PA3			_GPIO(3)28#define TEGRA_PIN_DAP2_DIN_PA4			_GPIO(4)29#define TEGRA_PIN_DAP2_DOUT_PA5			_GPIO(5)30#define TEGRA_PIN_SDMMC3_CLK_PA6		_GPIO(6)31#define TEGRA_PIN_SDMMC3_CMD_PA7		_GPIO(7)32#define TEGRA_PIN_GMI_A17_PB0			_GPIO(8)33#define TEGRA_PIN_GMI_A18_PB1			_GPIO(9)34#define TEGRA_PIN_SDMMC3_DAT3_PB4		_GPIO(12)35#define TEGRA_PIN_SDMMC3_DAT2_PB5		_GPIO(13)36#define TEGRA_PIN_SDMMC3_DAT1_PB6		_GPIO(14)37#define TEGRA_PIN_SDMMC3_DAT0_PB7		_GPIO(15)38#define TEGRA_PIN_UART3_RTS_N_PC0		_GPIO(16)39#define TEGRA_PIN_UART2_TXD_PC2			_GPIO(18)40#define TEGRA_PIN_UART2_RXD_PC3			_GPIO(19)41#define TEGRA_PIN_GEN1_I2C_SCL_PC4		_GPIO(20)42#define TEGRA_PIN_GEN1_I2C_SDA_PC5		_GPIO(21)43#define TEGRA_PIN_GMI_WP_N_PC7			_GPIO(23)44#define TEGRA_PIN_GMI_AD0_PG0			_GPIO(48)45#define TEGRA_PIN_GMI_AD1_PG1			_GPIO(49)46#define TEGRA_PIN_GMI_AD2_PG2			_GPIO(50)47#define TEGRA_PIN_GMI_AD3_PG3			_GPIO(51)48#define TEGRA_PIN_GMI_AD4_PG4			_GPIO(52)49#define TEGRA_PIN_GMI_AD5_PG5			_GPIO(53)50#define TEGRA_PIN_GMI_AD6_PG6			_GPIO(54)51#define TEGRA_PIN_GMI_AD7_PG7			_GPIO(55)52#define TEGRA_PIN_GMI_AD8_PH0			_GPIO(56)53#define TEGRA_PIN_GMI_AD9_PH1			_GPIO(57)54#define TEGRA_PIN_GMI_AD10_PH2			_GPIO(58)55#define TEGRA_PIN_GMI_AD11_PH3			_GPIO(59)56#define TEGRA_PIN_GMI_AD12_PH4			_GPIO(60)57#define TEGRA_PIN_GMI_AD13_PH5			_GPIO(61)58#define TEGRA_PIN_GMI_AD14_PH6			_GPIO(62)59#define TEGRA_PIN_GMI_AD15_PH7			_GPIO(63)60#define TEGRA_PIN_GMI_WR_N_PI0			_GPIO(64)61#define TEGRA_PIN_GMI_OE_N_PI1			_GPIO(65)62#define TEGRA_PIN_GMI_CS6_N_PI3			_GPIO(67)63#define TEGRA_PIN_GMI_RST_N_PI4			_GPIO(68)64#define TEGRA_PIN_GMI_IORDY_PI5			_GPIO(69)65#define TEGRA_PIN_GMI_CS7_N_PI6			_GPIO(70)66#define TEGRA_PIN_GMI_WAIT_PI7			_GPIO(71)67#define TEGRA_PIN_GMI_CS0_N_PJ0			_GPIO(72)68#define TEGRA_PIN_GMI_CS1_N_PJ2			_GPIO(74)69#define TEGRA_PIN_GMI_DQS_P_PJ3			_GPIO(75)70#define TEGRA_PIN_UART2_CTS_N_PJ5		_GPIO(77)71#define TEGRA_PIN_UART2_RTS_N_PJ6		_GPIO(78)72#define TEGRA_PIN_GMI_A16_PJ7			_GPIO(79)73#define TEGRA_PIN_GMI_ADV_N_PK0			_GPIO(80)74#define TEGRA_PIN_GMI_CLK_PK1			_GPIO(81)75#define TEGRA_PIN_GMI_CS4_N_PK2			_GPIO(82)76#define TEGRA_PIN_GMI_CS2_N_PK3			_GPIO(83)77#define TEGRA_PIN_GMI_CS3_N_PK4			_GPIO(84)78#define TEGRA_PIN_SPDIF_OUT_PK5			_GPIO(85)79#define TEGRA_PIN_SPDIF_IN_PK6			_GPIO(86)80#define TEGRA_PIN_GMI_A19_PK7			_GPIO(87)81#define TEGRA_PIN_DAP1_FS_PN0			_GPIO(104)82#define TEGRA_PIN_DAP1_DIN_PN1			_GPIO(105)83#define TEGRA_PIN_DAP1_DOUT_PN2			_GPIO(106)84#define TEGRA_PIN_DAP1_SCLK_PN3			_GPIO(107)85#define TEGRA_PIN_USB_VBUS_EN0_PN4		_GPIO(108)86#define TEGRA_PIN_USB_VBUS_EN1_PN5		_GPIO(109)87#define TEGRA_PIN_HDMI_INT_PN7			_GPIO(111)88#define TEGRA_PIN_ULPI_DATA7_PO0		_GPIO(112)89#define TEGRA_PIN_ULPI_DATA0_PO1		_GPIO(113)90#define TEGRA_PIN_ULPI_DATA1_PO2		_GPIO(114)91#define TEGRA_PIN_ULPI_DATA2_PO3		_GPIO(115)92#define TEGRA_PIN_ULPI_DATA3_PO4		_GPIO(116)93#define TEGRA_PIN_ULPI_DATA4_PO5		_GPIO(117)94#define TEGRA_PIN_ULPI_DATA5_PO6		_GPIO(118)95#define TEGRA_PIN_ULPI_DATA6_PO7		_GPIO(119)96#define TEGRA_PIN_DAP3_FS_PP0			_GPIO(120)97#define TEGRA_PIN_DAP3_DIN_PP1			_GPIO(121)98#define TEGRA_PIN_DAP3_DOUT_PP2			_GPIO(122)99#define TEGRA_PIN_DAP3_SCLK_PP3			_GPIO(123)100#define TEGRA_PIN_DAP4_FS_PP4			_GPIO(124)101#define TEGRA_PIN_DAP4_DIN_PP5			_GPIO(125)102#define TEGRA_PIN_DAP4_DOUT_PP6			_GPIO(126)103#define TEGRA_PIN_DAP4_SCLK_PP7			_GPIO(127)104#define TEGRA_PIN_KB_COL0_PQ0			_GPIO(128)105#define TEGRA_PIN_KB_COL1_PQ1			_GPIO(129)106#define TEGRA_PIN_KB_COL2_PQ2			_GPIO(130)107#define TEGRA_PIN_KB_COL3_PQ3			_GPIO(131)108#define TEGRA_PIN_KB_COL4_PQ4			_GPIO(132)109#define TEGRA_PIN_KB_COL5_PQ5			_GPIO(133)110#define TEGRA_PIN_KB_COL6_PQ6			_GPIO(134)111#define TEGRA_PIN_KB_COL7_PQ7			_GPIO(135)112#define TEGRA_PIN_KB_ROW0_PR0			_GPIO(136)113#define TEGRA_PIN_KB_ROW1_PR1			_GPIO(137)114#define TEGRA_PIN_KB_ROW2_PR2			_GPIO(138)115#define TEGRA_PIN_KB_ROW3_PR3			_GPIO(139)116#define TEGRA_PIN_KB_ROW4_PR4			_GPIO(140)117#define TEGRA_PIN_KB_ROW5_PR5			_GPIO(141)118#define TEGRA_PIN_KB_ROW6_PR6			_GPIO(142)119#define TEGRA_PIN_KB_ROW7_PR7			_GPIO(143)120#define TEGRA_PIN_KB_ROW8_PS0			_GPIO(144)121#define TEGRA_PIN_KB_ROW9_PS1			_GPIO(145)122#define TEGRA_PIN_KB_ROW10_PS2			_GPIO(146)123#define TEGRA_PIN_GEN2_I2C_SCL_PT5		_GPIO(157)124#define TEGRA_PIN_GEN2_I2C_SDA_PT6		_GPIO(158)125#define TEGRA_PIN_SDMMC4_CMD_PT7		_GPIO(159)126#define TEGRA_PIN_PU0				_GPIO(160)127#define TEGRA_PIN_PU1				_GPIO(161)128#define TEGRA_PIN_PU2				_GPIO(162)129#define TEGRA_PIN_PU3				_GPIO(163)130#define TEGRA_PIN_PU4				_GPIO(164)131#define TEGRA_PIN_PU5				_GPIO(165)132#define TEGRA_PIN_PU6				_GPIO(166)133#define TEGRA_PIN_PV0				_GPIO(168)134#define TEGRA_PIN_PV1				_GPIO(169)135#define TEGRA_PIN_SDMMC3_CD_N_PV2		_GPIO(170)136#define TEGRA_PIN_SDMMC1_WP_N_PV3		_GPIO(171)137#define TEGRA_PIN_DDC_SCL_PV4			_GPIO(172)138#define TEGRA_PIN_DDC_SDA_PV5			_GPIO(173)139#define TEGRA_PIN_GPIO_W2_AUD_PW2		_GPIO(178)140#define TEGRA_PIN_GPIO_W3_AUD_PW3		_GPIO(179)141#define TEGRA_PIN_CLK1_OUT_PW4			_GPIO(180)142#define TEGRA_PIN_CLK2_OUT_PW5			_GPIO(181)143#define TEGRA_PIN_UART3_TXD_PW6			_GPIO(182)144#define TEGRA_PIN_UART3_RXD_PW7			_GPIO(183)145#define TEGRA_PIN_DVFS_PWM_PX0			_GPIO(184)146#define TEGRA_PIN_GPIO_X1_AUD_PX1		_GPIO(185)147#define TEGRA_PIN_DVFS_CLK_PX2			_GPIO(186)148#define TEGRA_PIN_GPIO_X3_AUD_PX3		_GPIO(187)149#define TEGRA_PIN_GPIO_X4_AUD_PX4		_GPIO(188)150#define TEGRA_PIN_GPIO_X5_AUD_PX5		_GPIO(189)151#define TEGRA_PIN_GPIO_X6_AUD_PX6		_GPIO(190)152#define TEGRA_PIN_GPIO_X7_AUD_PX7		_GPIO(191)153#define TEGRA_PIN_ULPI_CLK_PY0			_GPIO(192)154#define TEGRA_PIN_ULPI_DIR_PY1			_GPIO(193)155#define TEGRA_PIN_ULPI_NXT_PY2			_GPIO(194)156#define TEGRA_PIN_ULPI_STP_PY3			_GPIO(195)157#define TEGRA_PIN_SDMMC1_DAT3_PY4		_GPIO(196)158#define TEGRA_PIN_SDMMC1_DAT2_PY5		_GPIO(197)159#define TEGRA_PIN_SDMMC1_DAT1_PY6		_GPIO(198)160#define TEGRA_PIN_SDMMC1_DAT0_PY7		_GPIO(199)161#define TEGRA_PIN_SDMMC1_CLK_PZ0		_GPIO(200)162#define TEGRA_PIN_SDMMC1_CMD_PZ1		_GPIO(201)163#define TEGRA_PIN_SYS_CLK_REQ_PZ5		_GPIO(205)164#define TEGRA_PIN_PWR_I2C_SCL_PZ6		_GPIO(206)165#define TEGRA_PIN_PWR_I2C_SDA_PZ7		_GPIO(207)166#define TEGRA_PIN_SDMMC4_DAT0_PAA0		_GPIO(208)167#define TEGRA_PIN_SDMMC4_DAT1_PAA1		_GPIO(209)168#define TEGRA_PIN_SDMMC4_DAT2_PAA2		_GPIO(210)169#define TEGRA_PIN_SDMMC4_DAT3_PAA3		_GPIO(211)170#define TEGRA_PIN_SDMMC4_DAT4_PAA4		_GPIO(212)171#define TEGRA_PIN_SDMMC4_DAT5_PAA5		_GPIO(213)172#define TEGRA_PIN_SDMMC4_DAT6_PAA6		_GPIO(214)173#define TEGRA_PIN_SDMMC4_DAT7_PAA7		_GPIO(215)174#define TEGRA_PIN_PBB0				_GPIO(216)175#define TEGRA_PIN_CAM_I2C_SCL_PBB1		_GPIO(217)176#define TEGRA_PIN_CAM_I2C_SDA_PBB2		_GPIO(218)177#define TEGRA_PIN_PBB3				_GPIO(219)178#define TEGRA_PIN_PBB4				_GPIO(220)179#define TEGRA_PIN_PBB5				_GPIO(221)180#define TEGRA_PIN_PBB6				_GPIO(222)181#define TEGRA_PIN_PBB7				_GPIO(223)182#define TEGRA_PIN_CAM_MCLK_PCC0			_GPIO(224)183#define TEGRA_PIN_PCC1				_GPIO(225)184#define TEGRA_PIN_PCC2				_GPIO(226)185#define TEGRA_PIN_SDMMC4_CLK_PCC4		_GPIO(228)186#define TEGRA_PIN_CLK2_REQ_PCC5			_GPIO(229)187#define TEGRA_PIN_CLK3_OUT_PEE0			_GPIO(240)188#define TEGRA_PIN_CLK3_REQ_PEE1			_GPIO(241)189#define TEGRA_PIN_CLK1_REQ_PEE2			_GPIO(242)190#define TEGRA_PIN_HDMI_CEC_PEE3			_GPIO(243)191#define TEGRA_PIN_SDMMC3_CLK_LB_OUT_PEE4	_GPIO(244)192#define TEGRA_PIN_SDMMC3_CLK_LB_IN_PEE5		_GPIO(245)193 194/* All non-GPIO pins follow */195#define NUM_GPIOS				(TEGRA_PIN_SDMMC3_CLK_LB_IN_PEE5 + 1)196#define _PIN(offset)				(NUM_GPIOS + (offset))197 198/* Non-GPIO pins */199#define TEGRA_PIN_CORE_PWR_REQ			_PIN(0)200#define TEGRA_PIN_CPU_PWR_REQ			_PIN(1)201#define TEGRA_PIN_PWR_INT_N			_PIN(2)202#define TEGRA_PIN_RESET_OUT_N			_PIN(3)203#define TEGRA_PIN_OWR				_PIN(4)204#define TEGRA_PIN_JTAG_RTCK			_PIN(5)205#define TEGRA_PIN_CLK_32K_IN			_PIN(6)206#define TEGRA_PIN_GMI_CLK_LB			_PIN(7)207 208static const struct pinctrl_pin_desc tegra114_pins[] = {209	PINCTRL_PIN(TEGRA_PIN_CLK_32K_OUT_PA0, "CLK_32K_OUT PA0"),210	PINCTRL_PIN(TEGRA_PIN_UART3_CTS_N_PA1, "UART3_CTS_N PA1"),211	PINCTRL_PIN(TEGRA_PIN_DAP2_FS_PA2, "DAP2_FS PA2"),212	PINCTRL_PIN(TEGRA_PIN_DAP2_SCLK_PA3, "DAP2_SCLK PA3"),213	PINCTRL_PIN(TEGRA_PIN_DAP2_DIN_PA4, "DAP2_DIN PA4"),214	PINCTRL_PIN(TEGRA_PIN_DAP2_DOUT_PA5, "DAP2_DOUT PA5"),215	PINCTRL_PIN(TEGRA_PIN_SDMMC3_CLK_PA6, "SDMMC3_CLK PA6"),216	PINCTRL_PIN(TEGRA_PIN_SDMMC3_CMD_PA7, "SDMMC3_CMD PA7"),217	PINCTRL_PIN(TEGRA_PIN_GMI_A17_PB0, "GMI_A17 PB0"),218	PINCTRL_PIN(TEGRA_PIN_GMI_A18_PB1, "GMI_A18 PB1"),219	PINCTRL_PIN(TEGRA_PIN_SDMMC3_DAT3_PB4, "SDMMC3_DAT3 PB4"),220	PINCTRL_PIN(TEGRA_PIN_SDMMC3_DAT2_PB5, "SDMMC3_DAT2 PB5"),221	PINCTRL_PIN(TEGRA_PIN_SDMMC3_DAT1_PB6, "SDMMC3_DAT1 PB6"),222	PINCTRL_PIN(TEGRA_PIN_SDMMC3_DAT0_PB7, "SDMMC3_DAT0 PB7"),223	PINCTRL_PIN(TEGRA_PIN_UART3_RTS_N_PC0, "UART3_RTS_N PC0"),224	PINCTRL_PIN(TEGRA_PIN_UART2_TXD_PC2, "UART2_TXD PC2"),225	PINCTRL_PIN(TEGRA_PIN_UART2_RXD_PC3, "UART2_RXD PC3"),226	PINCTRL_PIN(TEGRA_PIN_GEN1_I2C_SCL_PC4, "GEN1_I2C_SCL PC4"),227	PINCTRL_PIN(TEGRA_PIN_GEN1_I2C_SDA_PC5, "GEN1_I2C_SDA PC5"),228	PINCTRL_PIN(TEGRA_PIN_GMI_WP_N_PC7, "GMI_WP_N PC7"),229	PINCTRL_PIN(TEGRA_PIN_GMI_AD0_PG0, "GMI_AD0 PG0"),230	PINCTRL_PIN(TEGRA_PIN_GMI_AD1_PG1, "GMI_AD1 PG1"),231	PINCTRL_PIN(TEGRA_PIN_GMI_AD2_PG2, "GMI_AD2 PG2"),232	PINCTRL_PIN(TEGRA_PIN_GMI_AD3_PG3, "GMI_AD3 PG3"),233	PINCTRL_PIN(TEGRA_PIN_GMI_AD4_PG4, "GMI_AD4 PG4"),234	PINCTRL_PIN(TEGRA_PIN_GMI_AD5_PG5, "GMI_AD5 PG5"),235	PINCTRL_PIN(TEGRA_PIN_GMI_AD6_PG6, "GMI_AD6 PG6"),236	PINCTRL_PIN(TEGRA_PIN_GMI_AD7_PG7, "GMI_AD7 PG7"),237	PINCTRL_PIN(TEGRA_PIN_GMI_AD8_PH0, "GMI_AD8 PH0"),238	PINCTRL_PIN(TEGRA_PIN_GMI_AD9_PH1, "GMI_AD9 PH1"),239	PINCTRL_PIN(TEGRA_PIN_GMI_AD10_PH2, "GMI_AD10 PH2"),240	PINCTRL_PIN(TEGRA_PIN_GMI_AD11_PH3, "GMI_AD11 PH3"),241	PINCTRL_PIN(TEGRA_PIN_GMI_AD12_PH4, "GMI_AD12 PH4"),242	PINCTRL_PIN(TEGRA_PIN_GMI_AD13_PH5, "GMI_AD13 PH5"),243	PINCTRL_PIN(TEGRA_PIN_GMI_AD14_PH6, "GMI_AD14 PH6"),244	PINCTRL_PIN(TEGRA_PIN_GMI_AD15_PH7, "GMI_AD15 PH7"),245	PINCTRL_PIN(TEGRA_PIN_GMI_WR_N_PI0, "GMI_WR_N PI0"),246	PINCTRL_PIN(TEGRA_PIN_GMI_OE_N_PI1, "GMI_OE_N PI1"),247	PINCTRL_PIN(TEGRA_PIN_GMI_CS6_N_PI3, "GMI_CS6_N PI3"),248	PINCTRL_PIN(TEGRA_PIN_GMI_RST_N_PI4, "GMI_RST_N PI4"),249	PINCTRL_PIN(TEGRA_PIN_GMI_IORDY_PI5, "GMI_IORDY PI5"),250	PINCTRL_PIN(TEGRA_PIN_GMI_CS7_N_PI6, "GMI_CS7_N PI6"),251	PINCTRL_PIN(TEGRA_PIN_GMI_WAIT_PI7, "GMI_WAIT PI7"),252	PINCTRL_PIN(TEGRA_PIN_GMI_CS0_N_PJ0, "GMI_CS0_N PJ0"),253	PINCTRL_PIN(TEGRA_PIN_GMI_CS1_N_PJ2, "GMI_CS1_N PJ2"),254	PINCTRL_PIN(TEGRA_PIN_GMI_DQS_P_PJ3, "GMI_DQS_P PJ3"),255	PINCTRL_PIN(TEGRA_PIN_UART2_CTS_N_PJ5, "UART2_CTS_N PJ5"),256	PINCTRL_PIN(TEGRA_PIN_UART2_RTS_N_PJ6, "UART2_RTS_N PJ6"),257	PINCTRL_PIN(TEGRA_PIN_GMI_A16_PJ7, "GMI_A16 PJ7"),258	PINCTRL_PIN(TEGRA_PIN_GMI_ADV_N_PK0, "GMI_ADV_N PK0"),259	PINCTRL_PIN(TEGRA_PIN_GMI_CLK_PK1, "GMI_CLK PK1"),260	PINCTRL_PIN(TEGRA_PIN_GMI_CS4_N_PK2, "GMI_CS4_N PK2"),261	PINCTRL_PIN(TEGRA_PIN_GMI_CS2_N_PK3, "GMI_CS2_N PK3"),262	PINCTRL_PIN(TEGRA_PIN_GMI_CS3_N_PK4, "GMI_CS3_N PK4"),263	PINCTRL_PIN(TEGRA_PIN_SPDIF_OUT_PK5, "SPDIF_OUT PK5"),264	PINCTRL_PIN(TEGRA_PIN_SPDIF_IN_PK6, "SPDIF_IN PK6"),265	PINCTRL_PIN(TEGRA_PIN_GMI_A19_PK7, "GMI_A19 PK7"),266	PINCTRL_PIN(TEGRA_PIN_DAP1_FS_PN0, "DAP1_FS PN0"),267	PINCTRL_PIN(TEGRA_PIN_DAP1_DIN_PN1, "DAP1_DIN PN1"),268	PINCTRL_PIN(TEGRA_PIN_DAP1_DOUT_PN2, "DAP1_DOUT PN2"),269	PINCTRL_PIN(TEGRA_PIN_DAP1_SCLK_PN3, "DAP1_SCLK PN3"),270	PINCTRL_PIN(TEGRA_PIN_USB_VBUS_EN0_PN4, "USB_VBUS_EN0 PN4"),271	PINCTRL_PIN(TEGRA_PIN_USB_VBUS_EN1_PN5, "USB_VBUS_EN1 PN5"),272	PINCTRL_PIN(TEGRA_PIN_HDMI_INT_PN7, "HDMI_INT PN7"),273	PINCTRL_PIN(TEGRA_PIN_ULPI_DATA7_PO0, "ULPI_DATA7 PO0"),274	PINCTRL_PIN(TEGRA_PIN_ULPI_DATA0_PO1, "ULPI_DATA0 PO1"),275	PINCTRL_PIN(TEGRA_PIN_ULPI_DATA1_PO2, "ULPI_DATA1 PO2"),276	PINCTRL_PIN(TEGRA_PIN_ULPI_DATA2_PO3, "ULPI_DATA2 PO3"),277	PINCTRL_PIN(TEGRA_PIN_ULPI_DATA3_PO4, "ULPI_DATA3 PO4"),278	PINCTRL_PIN(TEGRA_PIN_ULPI_DATA4_PO5, "ULPI_DATA4 PO5"),279	PINCTRL_PIN(TEGRA_PIN_ULPI_DATA5_PO6, "ULPI_DATA5 PO6"),280	PINCTRL_PIN(TEGRA_PIN_ULPI_DATA6_PO7, "ULPI_DATA6 PO7"),281	PINCTRL_PIN(TEGRA_PIN_DAP3_FS_PP0, "DAP3_FS PP0"),282	PINCTRL_PIN(TEGRA_PIN_DAP3_DIN_PP1, "DAP3_DIN PP1"),283	PINCTRL_PIN(TEGRA_PIN_DAP3_DOUT_PP2, "DAP3_DOUT PP2"),284	PINCTRL_PIN(TEGRA_PIN_DAP3_SCLK_PP3, "DAP3_SCLK PP3"),285	PINCTRL_PIN(TEGRA_PIN_DAP4_FS_PP4, "DAP4_FS PP4"),286	PINCTRL_PIN(TEGRA_PIN_DAP4_DIN_PP5, "DAP4_DIN PP5"),287	PINCTRL_PIN(TEGRA_PIN_DAP4_DOUT_PP6, "DAP4_DOUT PP6"),288	PINCTRL_PIN(TEGRA_PIN_DAP4_SCLK_PP7, "DAP4_SCLK PP7"),289	PINCTRL_PIN(TEGRA_PIN_KB_COL0_PQ0, "KB_COL0 PQ0"),290	PINCTRL_PIN(TEGRA_PIN_KB_COL1_PQ1, "KB_COL1 PQ1"),291	PINCTRL_PIN(TEGRA_PIN_KB_COL2_PQ2, "KB_COL2 PQ2"),292	PINCTRL_PIN(TEGRA_PIN_KB_COL3_PQ3, "KB_COL3 PQ3"),293	PINCTRL_PIN(TEGRA_PIN_KB_COL4_PQ4, "KB_COL4 PQ4"),294	PINCTRL_PIN(TEGRA_PIN_KB_COL5_PQ5, "KB_COL5 PQ5"),295	PINCTRL_PIN(TEGRA_PIN_KB_COL6_PQ6, "KB_COL6 PQ6"),296	PINCTRL_PIN(TEGRA_PIN_KB_COL7_PQ7, "KB_COL7 PQ7"),297	PINCTRL_PIN(TEGRA_PIN_KB_ROW0_PR0, "KB_ROW0 PR0"),298	PINCTRL_PIN(TEGRA_PIN_KB_ROW1_PR1, "KB_ROW1 PR1"),299	PINCTRL_PIN(TEGRA_PIN_KB_ROW2_PR2, "KB_ROW2 PR2"),300	PINCTRL_PIN(TEGRA_PIN_KB_ROW3_PR3, "KB_ROW3 PR3"),301	PINCTRL_PIN(TEGRA_PIN_KB_ROW4_PR4, "KB_ROW4 PR4"),302	PINCTRL_PIN(TEGRA_PIN_KB_ROW5_PR5, "KB_ROW5 PR5"),303	PINCTRL_PIN(TEGRA_PIN_KB_ROW6_PR6, "KB_ROW6 PR6"),304	PINCTRL_PIN(TEGRA_PIN_KB_ROW7_PR7, "KB_ROW7 PR7"),305	PINCTRL_PIN(TEGRA_PIN_KB_ROW8_PS0, "KB_ROW8 PS0"),306	PINCTRL_PIN(TEGRA_PIN_KB_ROW9_PS1, "KB_ROW9 PS1"),307	PINCTRL_PIN(TEGRA_PIN_KB_ROW10_PS2, "KB_ROW10 PS2"),308	PINCTRL_PIN(TEGRA_PIN_GEN2_I2C_SCL_PT5, "GEN2_I2C_SCL PT5"),309	PINCTRL_PIN(TEGRA_PIN_GEN2_I2C_SDA_PT6, "GEN2_I2C_SDA PT6"),310	PINCTRL_PIN(TEGRA_PIN_SDMMC4_CMD_PT7, "SDMMC4_CMD PT7"),311	PINCTRL_PIN(TEGRA_PIN_PU0, "PU0"),312	PINCTRL_PIN(TEGRA_PIN_PU1, "PU1"),313	PINCTRL_PIN(TEGRA_PIN_PU2, "PU2"),314	PINCTRL_PIN(TEGRA_PIN_PU3, "PU3"),315	PINCTRL_PIN(TEGRA_PIN_PU4, "PU4"),316	PINCTRL_PIN(TEGRA_PIN_PU5, "PU5"),317	PINCTRL_PIN(TEGRA_PIN_PU6, "PU6"),318	PINCTRL_PIN(TEGRA_PIN_PV0, "PV0"),319	PINCTRL_PIN(TEGRA_PIN_PV1, "PV1"),320	PINCTRL_PIN(TEGRA_PIN_SDMMC3_CD_N_PV2, "SDMMC3_CD_N PV2"),321	PINCTRL_PIN(TEGRA_PIN_SDMMC1_WP_N_PV3, "SDMMC1_WP_N PV3"),322	PINCTRL_PIN(TEGRA_PIN_DDC_SCL_PV4, "DDC_SCL PV4"),323	PINCTRL_PIN(TEGRA_PIN_DDC_SDA_PV5, "DDC_SDA PV5"),324	PINCTRL_PIN(TEGRA_PIN_GPIO_W2_AUD_PW2, "GPIO_W2_AUD PW2"),325	PINCTRL_PIN(TEGRA_PIN_GPIO_W3_AUD_PW3, "GPIO_W3_AUD PW3"),326	PINCTRL_PIN(TEGRA_PIN_CLK1_OUT_PW4, "CLK1_OUT PW4"),327	PINCTRL_PIN(TEGRA_PIN_CLK2_OUT_PW5, "CLK2_OUT PW5"),328	PINCTRL_PIN(TEGRA_PIN_UART3_TXD_PW6, "UART3_TXD PW6"),329	PINCTRL_PIN(TEGRA_PIN_UART3_RXD_PW7, "UART3_RXD PW7"),330	PINCTRL_PIN(TEGRA_PIN_DVFS_PWM_PX0, "DVFS_PWM PX0"),331	PINCTRL_PIN(TEGRA_PIN_GPIO_X1_AUD_PX1, "GPIO_X1_AUD PX1"),332	PINCTRL_PIN(TEGRA_PIN_DVFS_CLK_PX2, "DVFS_CLK PX2"),333	PINCTRL_PIN(TEGRA_PIN_GPIO_X3_AUD_PX3, "GPIO_X3_AUD PX3"),334	PINCTRL_PIN(TEGRA_PIN_GPIO_X4_AUD_PX4, "GPIO_X4_AUD PX4"),335	PINCTRL_PIN(TEGRA_PIN_GPIO_X5_AUD_PX5, "GPIO_X5_AUD PX5"),336	PINCTRL_PIN(TEGRA_PIN_GPIO_X6_AUD_PX6, "GPIO_X6_AUD PX6"),337	PINCTRL_PIN(TEGRA_PIN_GPIO_X7_AUD_PX7, "GPIO_X7_AUD PX7"),338	PINCTRL_PIN(TEGRA_PIN_ULPI_CLK_PY0, "ULPI_CLK PY0"),339	PINCTRL_PIN(TEGRA_PIN_ULPI_DIR_PY1, "ULPI_DIR PY1"),340	PINCTRL_PIN(TEGRA_PIN_ULPI_NXT_PY2, "ULPI_NXT PY2"),341	PINCTRL_PIN(TEGRA_PIN_ULPI_STP_PY3, "ULPI_STP PY3"),342	PINCTRL_PIN(TEGRA_PIN_SDMMC1_DAT3_PY4, "SDMMC1_DAT3 PY4"),343	PINCTRL_PIN(TEGRA_PIN_SDMMC1_DAT2_PY5, "SDMMC1_DAT2 PY5"),344	PINCTRL_PIN(TEGRA_PIN_SDMMC1_DAT1_PY6, "SDMMC1_DAT1 PY6"),345	PINCTRL_PIN(TEGRA_PIN_SDMMC1_DAT0_PY7, "SDMMC1_DAT0 PY7"),346	PINCTRL_PIN(TEGRA_PIN_SDMMC1_CLK_PZ0, "SDMMC1_CLK PZ0"),347	PINCTRL_PIN(TEGRA_PIN_SDMMC1_CMD_PZ1, "SDMMC1_CMD PZ1"),348	PINCTRL_PIN(TEGRA_PIN_SYS_CLK_REQ_PZ5, "SYS_CLK_REQ PZ5"),349	PINCTRL_PIN(TEGRA_PIN_PWR_I2C_SCL_PZ6, "PWR_I2C_SCL PZ6"),350	PINCTRL_PIN(TEGRA_PIN_PWR_I2C_SDA_PZ7, "PWR_I2C_SDA PZ7"),351	PINCTRL_PIN(TEGRA_PIN_SDMMC4_DAT0_PAA0, "SDMMC4_DAT0 PAA0"),352	PINCTRL_PIN(TEGRA_PIN_SDMMC4_DAT1_PAA1, "SDMMC4_DAT1 PAA1"),353	PINCTRL_PIN(TEGRA_PIN_SDMMC4_DAT2_PAA2, "SDMMC4_DAT2 PAA2"),354	PINCTRL_PIN(TEGRA_PIN_SDMMC4_DAT3_PAA3, "SDMMC4_DAT3 PAA3"),355	PINCTRL_PIN(TEGRA_PIN_SDMMC4_DAT4_PAA4, "SDMMC4_DAT4 PAA4"),356	PINCTRL_PIN(TEGRA_PIN_SDMMC4_DAT5_PAA5, "SDMMC4_DAT5 PAA5"),357	PINCTRL_PIN(TEGRA_PIN_SDMMC4_DAT6_PAA6, "SDMMC4_DAT6 PAA6"),358	PINCTRL_PIN(TEGRA_PIN_SDMMC4_DAT7_PAA7, "SDMMC4_DAT7 PAA7"),359	PINCTRL_PIN(TEGRA_PIN_PBB0, "PBB0"),360	PINCTRL_PIN(TEGRA_PIN_CAM_I2C_SCL_PBB1, "CAM_I2C_SCL PBB1"),361	PINCTRL_PIN(TEGRA_PIN_CAM_I2C_SDA_PBB2, "CAM_I2C_SDA PBB2"),362	PINCTRL_PIN(TEGRA_PIN_PBB3, "PBB3"),363	PINCTRL_PIN(TEGRA_PIN_PBB4, "PBB4"),364	PINCTRL_PIN(TEGRA_PIN_PBB5, "PBB5"),365	PINCTRL_PIN(TEGRA_PIN_PBB6, "PBB6"),366	PINCTRL_PIN(TEGRA_PIN_PBB7, "PBB7"),367	PINCTRL_PIN(TEGRA_PIN_CAM_MCLK_PCC0, "CAM_MCLK PCC0"),368	PINCTRL_PIN(TEGRA_PIN_PCC1, "PCC1"),369	PINCTRL_PIN(TEGRA_PIN_PCC2, "PCC2"),370	PINCTRL_PIN(TEGRA_PIN_SDMMC4_CLK_PCC4, "SDMMC4_CLK PCC4"),371	PINCTRL_PIN(TEGRA_PIN_CLK2_REQ_PCC5, "CLK2_REQ PCC5"),372	PINCTRL_PIN(TEGRA_PIN_CLK3_OUT_PEE0, "CLK3_OUT PEE0"),373	PINCTRL_PIN(TEGRA_PIN_CLK3_REQ_PEE1, "CLK3_REQ PEE1"),374	PINCTRL_PIN(TEGRA_PIN_CLK1_REQ_PEE2, "CLK1_REQ PEE2"),375	PINCTRL_PIN(TEGRA_PIN_HDMI_CEC_PEE3, "HDMI_CEC PEE3"),376	PINCTRL_PIN(TEGRA_PIN_SDMMC3_CLK_LB_OUT_PEE4, "SDMMC3_CLK_LB_OUT PEE4"),377	PINCTRL_PIN(TEGRA_PIN_SDMMC3_CLK_LB_IN_PEE5, "SDMMC3_CLK_LB_IN PEE5"),378	PINCTRL_PIN(TEGRA_PIN_CORE_PWR_REQ, "CORE_PWR_REQ"),379	PINCTRL_PIN(TEGRA_PIN_CPU_PWR_REQ, "CPU_PWR_REQ"),380	PINCTRL_PIN(TEGRA_PIN_PWR_INT_N, "PWR_INT_N"),381	PINCTRL_PIN(TEGRA_PIN_RESET_OUT_N, "RESET_OUT_N"),382	PINCTRL_PIN(TEGRA_PIN_OWR, "OWR"),383	PINCTRL_PIN(TEGRA_PIN_JTAG_RTCK, "JTAG_RTCK"),384	PINCTRL_PIN(TEGRA_PIN_CLK_32K_IN, "CLK_32K_IN"),385	PINCTRL_PIN(TEGRA_PIN_GMI_CLK_LB, "GMI_CLK_LB"),386};387 388static const unsigned clk_32k_out_pa0_pins[] = {389	TEGRA_PIN_CLK_32K_OUT_PA0,390};391 392static const unsigned uart3_cts_n_pa1_pins[] = {393	TEGRA_PIN_UART3_CTS_N_PA1,394};395 396static const unsigned dap2_fs_pa2_pins[] = {397	TEGRA_PIN_DAP2_FS_PA2,398};399 400static const unsigned dap2_sclk_pa3_pins[] = {401	TEGRA_PIN_DAP2_SCLK_PA3,402};403 404static const unsigned dap2_din_pa4_pins[] = {405	TEGRA_PIN_DAP2_DIN_PA4,406};407 408static const unsigned dap2_dout_pa5_pins[] = {409	TEGRA_PIN_DAP2_DOUT_PA5,410};411 412static const unsigned sdmmc3_clk_pa6_pins[] = {413	TEGRA_PIN_SDMMC3_CLK_PA6,414};415 416static const unsigned sdmmc3_cmd_pa7_pins[] = {417	TEGRA_PIN_SDMMC3_CMD_PA7,418};419 420static const unsigned gmi_a17_pb0_pins[] = {421	TEGRA_PIN_GMI_A17_PB0,422};423 424static const unsigned gmi_a18_pb1_pins[] = {425	TEGRA_PIN_GMI_A18_PB1,426};427 428static const unsigned sdmmc3_dat3_pb4_pins[] = {429	TEGRA_PIN_SDMMC3_DAT3_PB4,430};431 432static const unsigned sdmmc3_dat2_pb5_pins[] = {433	TEGRA_PIN_SDMMC3_DAT2_PB5,434};435 436static const unsigned sdmmc3_dat1_pb6_pins[] = {437	TEGRA_PIN_SDMMC3_DAT1_PB6,438};439 440static const unsigned sdmmc3_dat0_pb7_pins[] = {441	TEGRA_PIN_SDMMC3_DAT0_PB7,442};443 444static const unsigned uart3_rts_n_pc0_pins[] = {445	TEGRA_PIN_UART3_RTS_N_PC0,446};447 448static const unsigned uart2_txd_pc2_pins[] = {449	TEGRA_PIN_UART2_TXD_PC2,450};451 452static const unsigned uart2_rxd_pc3_pins[] = {453	TEGRA_PIN_UART2_RXD_PC3,454};455 456static const unsigned gen1_i2c_scl_pc4_pins[] = {457	TEGRA_PIN_GEN1_I2C_SCL_PC4,458};459 460static const unsigned gen1_i2c_sda_pc5_pins[] = {461	TEGRA_PIN_GEN1_I2C_SDA_PC5,462};463 464static const unsigned gmi_wp_n_pc7_pins[] = {465	TEGRA_PIN_GMI_WP_N_PC7,466};467 468static const unsigned gmi_ad0_pg0_pins[] = {469	TEGRA_PIN_GMI_AD0_PG0,470};471 472static const unsigned gmi_ad1_pg1_pins[] = {473	TEGRA_PIN_GMI_AD1_PG1,474};475 476static const unsigned gmi_ad2_pg2_pins[] = {477	TEGRA_PIN_GMI_AD2_PG2,478};479 480static const unsigned gmi_ad3_pg3_pins[] = {481	TEGRA_PIN_GMI_AD3_PG3,482};483 484static const unsigned gmi_ad4_pg4_pins[] = {485	TEGRA_PIN_GMI_AD4_PG4,486};487 488static const unsigned gmi_ad5_pg5_pins[] = {489	TEGRA_PIN_GMI_AD5_PG5,490};491 492static const unsigned gmi_ad6_pg6_pins[] = {493	TEGRA_PIN_GMI_AD6_PG6,494};495 496static const unsigned gmi_ad7_pg7_pins[] = {497	TEGRA_PIN_GMI_AD7_PG7,498};499 500static const unsigned gmi_ad8_ph0_pins[] = {501	TEGRA_PIN_GMI_AD8_PH0,502};503 504static const unsigned gmi_ad9_ph1_pins[] = {505	TEGRA_PIN_GMI_AD9_PH1,506};507 508static const unsigned gmi_ad10_ph2_pins[] = {509	TEGRA_PIN_GMI_AD10_PH2,510};511 512static const unsigned gmi_ad11_ph3_pins[] = {513	TEGRA_PIN_GMI_AD11_PH3,514};515 516static const unsigned gmi_ad12_ph4_pins[] = {517	TEGRA_PIN_GMI_AD12_PH4,518};519 520static const unsigned gmi_ad13_ph5_pins[] = {521	TEGRA_PIN_GMI_AD13_PH5,522};523 524static const unsigned gmi_ad14_ph6_pins[] = {525	TEGRA_PIN_GMI_AD14_PH6,526};527 528static const unsigned gmi_ad15_ph7_pins[] = {529	TEGRA_PIN_GMI_AD15_PH7,530};531 532static const unsigned gmi_wr_n_pi0_pins[] = {533	TEGRA_PIN_GMI_WR_N_PI0,534};535 536static const unsigned gmi_oe_n_pi1_pins[] = {537	TEGRA_PIN_GMI_OE_N_PI1,538};539 540static const unsigned gmi_cs6_n_pi3_pins[] = {541	TEGRA_PIN_GMI_CS6_N_PI3,542};543 544static const unsigned gmi_rst_n_pi4_pins[] = {545	TEGRA_PIN_GMI_RST_N_PI4,546};547 548static const unsigned gmi_iordy_pi5_pins[] = {549	TEGRA_PIN_GMI_IORDY_PI5,550};551 552static const unsigned gmi_cs7_n_pi6_pins[] = {553	TEGRA_PIN_GMI_CS7_N_PI6,554};555 556static const unsigned gmi_wait_pi7_pins[] = {557	TEGRA_PIN_GMI_WAIT_PI7,558};559 560static const unsigned gmi_cs0_n_pj0_pins[] = {561	TEGRA_PIN_GMI_CS0_N_PJ0,562};563 564static const unsigned gmi_cs1_n_pj2_pins[] = {565	TEGRA_PIN_GMI_CS1_N_PJ2,566};567 568static const unsigned gmi_dqs_p_pj3_pins[] = {569	TEGRA_PIN_GMI_DQS_P_PJ3,570};571 572static const unsigned uart2_cts_n_pj5_pins[] = {573	TEGRA_PIN_UART2_CTS_N_PJ5,574};575 576static const unsigned uart2_rts_n_pj6_pins[] = {577	TEGRA_PIN_UART2_RTS_N_PJ6,578};579 580static const unsigned gmi_a16_pj7_pins[] = {581	TEGRA_PIN_GMI_A16_PJ7,582};583 584static const unsigned gmi_adv_n_pk0_pins[] = {585	TEGRA_PIN_GMI_ADV_N_PK0,586};587 588static const unsigned gmi_clk_pk1_pins[] = {589	TEGRA_PIN_GMI_CLK_PK1,590};591 592static const unsigned gmi_cs4_n_pk2_pins[] = {593	TEGRA_PIN_GMI_CS4_N_PK2,594};595 596static const unsigned gmi_cs2_n_pk3_pins[] = {597	TEGRA_PIN_GMI_CS2_N_PK3,598};599 600static const unsigned gmi_cs3_n_pk4_pins[] = {601	TEGRA_PIN_GMI_CS3_N_PK4,602};603 604static const unsigned spdif_out_pk5_pins[] = {605	TEGRA_PIN_SPDIF_OUT_PK5,606};607 608static const unsigned spdif_in_pk6_pins[] = {609	TEGRA_PIN_SPDIF_IN_PK6,610};611 612static const unsigned gmi_a19_pk7_pins[] = {613	TEGRA_PIN_GMI_A19_PK7,614};615 616static const unsigned dap1_fs_pn0_pins[] = {617	TEGRA_PIN_DAP1_FS_PN0,618};619 620static const unsigned dap1_din_pn1_pins[] = {621	TEGRA_PIN_DAP1_DIN_PN1,622};623 624static const unsigned dap1_dout_pn2_pins[] = {625	TEGRA_PIN_DAP1_DOUT_PN2,626};627 628static const unsigned dap1_sclk_pn3_pins[] = {629	TEGRA_PIN_DAP1_SCLK_PN3,630};631 632static const unsigned usb_vbus_en0_pn4_pins[] = {633	TEGRA_PIN_USB_VBUS_EN0_PN4,634};635 636static const unsigned usb_vbus_en1_pn5_pins[] = {637	TEGRA_PIN_USB_VBUS_EN1_PN5,638};639 640static const unsigned hdmi_int_pn7_pins[] = {641	TEGRA_PIN_HDMI_INT_PN7,642};643 644static const unsigned ulpi_data7_po0_pins[] = {645	TEGRA_PIN_ULPI_DATA7_PO0,646};647 648static const unsigned ulpi_data0_po1_pins[] = {649	TEGRA_PIN_ULPI_DATA0_PO1,650};651 652static const unsigned ulpi_data1_po2_pins[] = {653	TEGRA_PIN_ULPI_DATA1_PO2,654};655 656static const unsigned ulpi_data2_po3_pins[] = {657	TEGRA_PIN_ULPI_DATA2_PO3,658};659 660static const unsigned ulpi_data3_po4_pins[] = {661	TEGRA_PIN_ULPI_DATA3_PO4,662};663 664static const unsigned ulpi_data4_po5_pins[] = {665	TEGRA_PIN_ULPI_DATA4_PO5,666};667 668static const unsigned ulpi_data5_po6_pins[] = {669	TEGRA_PIN_ULPI_DATA5_PO6,670};671 672static const unsigned ulpi_data6_po7_pins[] = {673	TEGRA_PIN_ULPI_DATA6_PO7,674};675 676static const unsigned dap3_fs_pp0_pins[] = {677	TEGRA_PIN_DAP3_FS_PP0,678};679 680static const unsigned dap3_din_pp1_pins[] = {681	TEGRA_PIN_DAP3_DIN_PP1,682};683 684static const unsigned dap3_dout_pp2_pins[] = {685	TEGRA_PIN_DAP3_DOUT_PP2,686};687 688static const unsigned dap3_sclk_pp3_pins[] = {689	TEGRA_PIN_DAP3_SCLK_PP3,690};691 692static const unsigned dap4_fs_pp4_pins[] = {693	TEGRA_PIN_DAP4_FS_PP4,694};695 696static const unsigned dap4_din_pp5_pins[] = {697	TEGRA_PIN_DAP4_DIN_PP5,698};699 700static const unsigned dap4_dout_pp6_pins[] = {701	TEGRA_PIN_DAP4_DOUT_PP6,702};703 704static const unsigned dap4_sclk_pp7_pins[] = {705	TEGRA_PIN_DAP4_SCLK_PP7,706};707 708static const unsigned kb_col0_pq0_pins[] = {709	TEGRA_PIN_KB_COL0_PQ0,710};711 712static const unsigned kb_col1_pq1_pins[] = {713	TEGRA_PIN_KB_COL1_PQ1,714};715 716static const unsigned kb_col2_pq2_pins[] = {717	TEGRA_PIN_KB_COL2_PQ2,718};719 720static const unsigned kb_col3_pq3_pins[] = {721	TEGRA_PIN_KB_COL3_PQ3,722};723 724static const unsigned kb_col4_pq4_pins[] = {725	TEGRA_PIN_KB_COL4_PQ4,726};727 728static const unsigned kb_col5_pq5_pins[] = {729	TEGRA_PIN_KB_COL5_PQ5,730};731 732static const unsigned kb_col6_pq6_pins[] = {733	TEGRA_PIN_KB_COL6_PQ6,734};735 736static const unsigned kb_col7_pq7_pins[] = {737	TEGRA_PIN_KB_COL7_PQ7,738};739 740static const unsigned kb_row0_pr0_pins[] = {741	TEGRA_PIN_KB_ROW0_PR0,742};743 744static const unsigned kb_row1_pr1_pins[] = {745	TEGRA_PIN_KB_ROW1_PR1,746};747 748static const unsigned kb_row2_pr2_pins[] = {749	TEGRA_PIN_KB_ROW2_PR2,750};751 752static const unsigned kb_row3_pr3_pins[] = {753	TEGRA_PIN_KB_ROW3_PR3,754};755 756static const unsigned kb_row4_pr4_pins[] = {757	TEGRA_PIN_KB_ROW4_PR4,758};759 760static const unsigned kb_row5_pr5_pins[] = {761	TEGRA_PIN_KB_ROW5_PR5,762};763 764static const unsigned kb_row6_pr6_pins[] = {765	TEGRA_PIN_KB_ROW6_PR6,766};767 768static const unsigned kb_row7_pr7_pins[] = {769	TEGRA_PIN_KB_ROW7_PR7,770};771 772static const unsigned kb_row8_ps0_pins[] = {773	TEGRA_PIN_KB_ROW8_PS0,774};775 776static const unsigned kb_row9_ps1_pins[] = {777	TEGRA_PIN_KB_ROW9_PS1,778};779 780static const unsigned kb_row10_ps2_pins[] = {781	TEGRA_PIN_KB_ROW10_PS2,782};783 784static const unsigned gen2_i2c_scl_pt5_pins[] = {785	TEGRA_PIN_GEN2_I2C_SCL_PT5,786};787 788static const unsigned gen2_i2c_sda_pt6_pins[] = {789	TEGRA_PIN_GEN2_I2C_SDA_PT6,790};791 792static const unsigned sdmmc4_cmd_pt7_pins[] = {793	TEGRA_PIN_SDMMC4_CMD_PT7,794};795 796static const unsigned pu0_pins[] = {797	TEGRA_PIN_PU0,798};799 800static const unsigned pu1_pins[] = {801	TEGRA_PIN_PU1,802};803 804static const unsigned pu2_pins[] = {805	TEGRA_PIN_PU2,806};807 808static const unsigned pu3_pins[] = {809	TEGRA_PIN_PU3,810};811 812static const unsigned pu4_pins[] = {813	TEGRA_PIN_PU4,814};815 816static const unsigned pu5_pins[] = {817	TEGRA_PIN_PU5,818};819 820static const unsigned pu6_pins[] = {821	TEGRA_PIN_PU6,822};823 824static const unsigned pv0_pins[] = {825	TEGRA_PIN_PV0,826};827 828static const unsigned pv1_pins[] = {829	TEGRA_PIN_PV1,830};831 832static const unsigned sdmmc3_cd_n_pv2_pins[] = {833	TEGRA_PIN_SDMMC3_CD_N_PV2,834};835 836static const unsigned sdmmc1_wp_n_pv3_pins[] = {837	TEGRA_PIN_SDMMC1_WP_N_PV3,838};839 840static const unsigned ddc_scl_pv4_pins[] = {841	TEGRA_PIN_DDC_SCL_PV4,842};843 844static const unsigned ddc_sda_pv5_pins[] = {845	TEGRA_PIN_DDC_SDA_PV5,846};847 848static const unsigned gpio_w2_aud_pw2_pins[] = {849	TEGRA_PIN_GPIO_W2_AUD_PW2,850};851 852static const unsigned gpio_w3_aud_pw3_pins[] = {853	TEGRA_PIN_GPIO_W3_AUD_PW3,854};855 856static const unsigned clk1_out_pw4_pins[] = {857	TEGRA_PIN_CLK1_OUT_PW4,858};859 860static const unsigned clk2_out_pw5_pins[] = {861	TEGRA_PIN_CLK2_OUT_PW5,862};863 864static const unsigned uart3_txd_pw6_pins[] = {865	TEGRA_PIN_UART3_TXD_PW6,866};867 868static const unsigned uart3_rxd_pw7_pins[] = {869	TEGRA_PIN_UART3_RXD_PW7,870};871 872static const unsigned dvfs_pwm_px0_pins[] = {873	TEGRA_PIN_DVFS_PWM_PX0,874};875 876static const unsigned gpio_x1_aud_px1_pins[] = {877	TEGRA_PIN_GPIO_X1_AUD_PX1,878};879 880static const unsigned dvfs_clk_px2_pins[] = {881	TEGRA_PIN_DVFS_CLK_PX2,882};883 884static const unsigned gpio_x3_aud_px3_pins[] = {885	TEGRA_PIN_GPIO_X3_AUD_PX3,886};887 888static const unsigned gpio_x4_aud_px4_pins[] = {889	TEGRA_PIN_GPIO_X4_AUD_PX4,890};891 892static const unsigned gpio_x5_aud_px5_pins[] = {893	TEGRA_PIN_GPIO_X5_AUD_PX5,894};895 896static const unsigned gpio_x6_aud_px6_pins[] = {897	TEGRA_PIN_GPIO_X6_AUD_PX6,898};899 900static const unsigned gpio_x7_aud_px7_pins[] = {901	TEGRA_PIN_GPIO_X7_AUD_PX7,902};903 904static const unsigned ulpi_clk_py0_pins[] = {905	TEGRA_PIN_ULPI_CLK_PY0,906};907 908static const unsigned ulpi_dir_py1_pins[] = {909	TEGRA_PIN_ULPI_DIR_PY1,910};911 912static const unsigned ulpi_nxt_py2_pins[] = {913	TEGRA_PIN_ULPI_NXT_PY2,914};915 916static const unsigned ulpi_stp_py3_pins[] = {917	TEGRA_PIN_ULPI_STP_PY3,918};919 920static const unsigned sdmmc1_dat3_py4_pins[] = {921	TEGRA_PIN_SDMMC1_DAT3_PY4,922};923 924static const unsigned sdmmc1_dat2_py5_pins[] = {925	TEGRA_PIN_SDMMC1_DAT2_PY5,926};927 928static const unsigned sdmmc1_dat1_py6_pins[] = {929	TEGRA_PIN_SDMMC1_DAT1_PY6,930};931 932static const unsigned sdmmc1_dat0_py7_pins[] = {933	TEGRA_PIN_SDMMC1_DAT0_PY7,934};935 936static const unsigned sdmmc1_clk_pz0_pins[] = {937	TEGRA_PIN_SDMMC1_CLK_PZ0,938};939 940static const unsigned sdmmc1_cmd_pz1_pins[] = {941	TEGRA_PIN_SDMMC1_CMD_PZ1,942};943 944static const unsigned sys_clk_req_pz5_pins[] = {945	TEGRA_PIN_SYS_CLK_REQ_PZ5,946};947 948static const unsigned pwr_i2c_scl_pz6_pins[] = {949	TEGRA_PIN_PWR_I2C_SCL_PZ6,950};951 952static const unsigned pwr_i2c_sda_pz7_pins[] = {953	TEGRA_PIN_PWR_I2C_SDA_PZ7,954};955 956static const unsigned sdmmc4_dat0_paa0_pins[] = {957	TEGRA_PIN_SDMMC4_DAT0_PAA0,958};959 960static const unsigned sdmmc4_dat1_paa1_pins[] = {961	TEGRA_PIN_SDMMC4_DAT1_PAA1,962};963 964static const unsigned sdmmc4_dat2_paa2_pins[] = {965	TEGRA_PIN_SDMMC4_DAT2_PAA2,966};967 968static const unsigned sdmmc4_dat3_paa3_pins[] = {969	TEGRA_PIN_SDMMC4_DAT3_PAA3,970};971 972static const unsigned sdmmc4_dat4_paa4_pins[] = {973	TEGRA_PIN_SDMMC4_DAT4_PAA4,974};975 976static const unsigned sdmmc4_dat5_paa5_pins[] = {977	TEGRA_PIN_SDMMC4_DAT5_PAA5,978};979 980static const unsigned sdmmc4_dat6_paa6_pins[] = {981	TEGRA_PIN_SDMMC4_DAT6_PAA6,982};983 984static const unsigned sdmmc4_dat7_paa7_pins[] = {985	TEGRA_PIN_SDMMC4_DAT7_PAA7,986};987 988static const unsigned pbb0_pins[] = {989	TEGRA_PIN_PBB0,990};991 992static const unsigned cam_i2c_scl_pbb1_pins[] = {993	TEGRA_PIN_CAM_I2C_SCL_PBB1,994};995 996static const unsigned cam_i2c_sda_pbb2_pins[] = {997	TEGRA_PIN_CAM_I2C_SDA_PBB2,998};999 1000static const unsigned pbb3_pins[] = {1001	TEGRA_PIN_PBB3,1002};1003 1004static const unsigned pbb4_pins[] = {1005	TEGRA_PIN_PBB4,1006};1007 1008static const unsigned pbb5_pins[] = {1009	TEGRA_PIN_PBB5,1010};1011 1012static const unsigned pbb6_pins[] = {1013	TEGRA_PIN_PBB6,1014};1015 1016static const unsigned pbb7_pins[] = {1017	TEGRA_PIN_PBB7,1018};1019 1020static const unsigned cam_mclk_pcc0_pins[] = {1021	TEGRA_PIN_CAM_MCLK_PCC0,1022};1023 1024static const unsigned pcc1_pins[] = {1025	TEGRA_PIN_PCC1,1026};1027 1028static const unsigned pcc2_pins[] = {1029	TEGRA_PIN_PCC2,1030};1031 1032static const unsigned sdmmc4_clk_pcc4_pins[] = {1033	TEGRA_PIN_SDMMC4_CLK_PCC4,1034};1035 1036static const unsigned clk2_req_pcc5_pins[] = {1037	TEGRA_PIN_CLK2_REQ_PCC5,1038};1039 1040static const unsigned clk3_out_pee0_pins[] = {1041	TEGRA_PIN_CLK3_OUT_PEE0,1042};1043 1044static const unsigned clk3_req_pee1_pins[] = {1045	TEGRA_PIN_CLK3_REQ_PEE1,1046};1047 1048static const unsigned clk1_req_pee2_pins[] = {1049	TEGRA_PIN_CLK1_REQ_PEE2,1050};1051 1052static const unsigned hdmi_cec_pee3_pins[] = {1053	TEGRA_PIN_HDMI_CEC_PEE3,1054};1055 1056static const unsigned sdmmc3_clk_lb_out_pee4_pins[] = {1057	TEGRA_PIN_SDMMC3_CLK_LB_OUT_PEE4,1058};1059 1060static const unsigned sdmmc3_clk_lb_in_pee5_pins[] = {1061	TEGRA_PIN_SDMMC3_CLK_LB_IN_PEE5,1062};1063 1064static const unsigned core_pwr_req_pins[] = {1065	TEGRA_PIN_CORE_PWR_REQ,1066};1067 1068static const unsigned cpu_pwr_req_pins[] = {1069	TEGRA_PIN_CPU_PWR_REQ,1070};1071 1072static const unsigned pwr_int_n_pins[] = {1073	TEGRA_PIN_PWR_INT_N,1074};1075 1076static const unsigned reset_out_n_pins[] = {1077	TEGRA_PIN_RESET_OUT_N,1078};1079 1080static const unsigned owr_pins[] = {1081	TEGRA_PIN_OWR,1082};1083 1084static const unsigned jtag_rtck_pins[] = {1085	TEGRA_PIN_JTAG_RTCK,1086};1087 1088static const unsigned clk_32k_in_pins[] = {1089	TEGRA_PIN_CLK_32K_IN,1090};1091 1092static const unsigned gmi_clk_lb_pins[] = {1093	TEGRA_PIN_GMI_CLK_LB,1094};1095 1096static const unsigned drive_ao1_pins[] = {1097	TEGRA_PIN_KB_ROW0_PR0,1098	TEGRA_PIN_KB_ROW1_PR1,1099	TEGRA_PIN_KB_ROW2_PR2,1100	TEGRA_PIN_KB_ROW3_PR3,1101	TEGRA_PIN_KB_ROW4_PR4,1102	TEGRA_PIN_KB_ROW5_PR5,1103	TEGRA_PIN_KB_ROW6_PR6,1104	TEGRA_PIN_KB_ROW7_PR7,1105	TEGRA_PIN_PWR_I2C_SCL_PZ6,1106	TEGRA_PIN_PWR_I2C_SDA_PZ7,1107};1108 1109static const unsigned drive_ao2_pins[] = {1110	TEGRA_PIN_CLK_32K_OUT_PA0,1111	TEGRA_PIN_KB_COL0_PQ0,1112	TEGRA_PIN_KB_COL1_PQ1,1113	TEGRA_PIN_KB_COL2_PQ2,1114	TEGRA_PIN_KB_COL3_PQ3,1115	TEGRA_PIN_KB_COL4_PQ4,1116	TEGRA_PIN_KB_COL5_PQ5,1117	TEGRA_PIN_KB_COL6_PQ6,1118	TEGRA_PIN_KB_COL7_PQ7,1119	TEGRA_PIN_KB_ROW8_PS0,1120	TEGRA_PIN_KB_ROW9_PS1,1121	TEGRA_PIN_KB_ROW10_PS2,1122	TEGRA_PIN_SYS_CLK_REQ_PZ5,1123	TEGRA_PIN_CORE_PWR_REQ,1124	TEGRA_PIN_CPU_PWR_REQ,1125	TEGRA_PIN_RESET_OUT_N,1126};1127 1128static const unsigned drive_at1_pins[] = {1129	TEGRA_PIN_GMI_AD8_PH0,1130	TEGRA_PIN_GMI_AD9_PH1,1131	TEGRA_PIN_GMI_AD10_PH2,1132	TEGRA_PIN_GMI_AD11_PH3,1133	TEGRA_PIN_GMI_AD12_PH4,1134	TEGRA_PIN_GMI_AD13_PH5,1135	TEGRA_PIN_GMI_AD14_PH6,1136	TEGRA_PIN_GMI_AD15_PH7,1137	TEGRA_PIN_GMI_IORDY_PI5,1138	TEGRA_PIN_GMI_CS7_N_PI6,1139};1140 1141static const unsigned drive_at2_pins[] = {1142	TEGRA_PIN_GMI_AD0_PG0,1143	TEGRA_PIN_GMI_AD1_PG1,1144	TEGRA_PIN_GMI_AD2_PG2,1145	TEGRA_PIN_GMI_AD3_PG3,1146	TEGRA_PIN_GMI_AD4_PG4,1147	TEGRA_PIN_GMI_AD5_PG5,1148	TEGRA_PIN_GMI_AD6_PG6,1149	TEGRA_PIN_GMI_AD7_PG7,1150	TEGRA_PIN_GMI_WR_N_PI0,1151	TEGRA_PIN_GMI_OE_N_PI1,1152	TEGRA_PIN_GMI_CS6_N_PI3,1153	TEGRA_PIN_GMI_RST_N_PI4,1154	TEGRA_PIN_GMI_WAIT_PI7,1155	TEGRA_PIN_GMI_DQS_P_PJ3,1156	TEGRA_PIN_GMI_ADV_N_PK0,1157	TEGRA_PIN_GMI_CLK_PK1,1158	TEGRA_PIN_GMI_CS4_N_PK2,1159	TEGRA_PIN_GMI_CS2_N_PK3,1160	TEGRA_PIN_GMI_CS3_N_PK4,1161};1162 1163static const unsigned drive_at3_pins[] = {1164	TEGRA_PIN_GMI_WP_N_PC7,1165	TEGRA_PIN_GMI_CS0_N_PJ0,1166};1167 1168static const unsigned drive_at4_pins[] = {1169	TEGRA_PIN_GMI_A17_PB0,1170	TEGRA_PIN_GMI_A18_PB1,1171	TEGRA_PIN_GMI_CS1_N_PJ2,1172	TEGRA_PIN_GMI_A16_PJ7,1173	TEGRA_PIN_GMI_A19_PK7,1174};1175 1176static const unsigned drive_at5_pins[] = {1177	TEGRA_PIN_GEN2_I2C_SCL_PT5,1178	TEGRA_PIN_GEN2_I2C_SDA_PT6,1179};1180 1181static const unsigned drive_cdev1_pins[] = {1182	TEGRA_PIN_CLK1_OUT_PW4,1183	TEGRA_PIN_CLK1_REQ_PEE2,1184};1185 1186static const unsigned drive_cdev2_pins[] = {1187	TEGRA_PIN_CLK2_OUT_PW5,1188	TEGRA_PIN_CLK2_REQ_PCC5,1189	TEGRA_PIN_SDMMC1_WP_N_PV3,1190};1191 1192static const unsigned drive_dap1_pins[] = {1193	TEGRA_PIN_DAP1_FS_PN0,1194	TEGRA_PIN_DAP1_DIN_PN1,1195	TEGRA_PIN_DAP1_DOUT_PN2,1196	TEGRA_PIN_DAP1_SCLK_PN3,1197};1198 1199static const unsigned drive_dap2_pins[] = {1200	TEGRA_PIN_DAP2_FS_PA2,1201	TEGRA_PIN_DAP2_SCLK_PA3,1202	TEGRA_PIN_DAP2_DIN_PA4,1203	TEGRA_PIN_DAP2_DOUT_PA5,1204};1205 1206static const unsigned drive_dap3_pins[] = {1207	TEGRA_PIN_DAP3_FS_PP0,1208	TEGRA_PIN_DAP3_DIN_PP1,1209	TEGRA_PIN_DAP3_DOUT_PP2,1210	TEGRA_PIN_DAP3_SCLK_PP3,1211};1212 1213static const unsigned drive_dap4_pins[] = {1214	TEGRA_PIN_DAP4_FS_PP4,1215	TEGRA_PIN_DAP4_DIN_PP5,1216	TEGRA_PIN_DAP4_DOUT_PP6,1217	TEGRA_PIN_DAP4_SCLK_PP7,1218};1219 1220static const unsigned drive_dbg_pins[] = {1221	TEGRA_PIN_GEN1_I2C_SCL_PC4,1222	TEGRA_PIN_GEN1_I2C_SDA_PC5,1223	TEGRA_PIN_PU0,1224	TEGRA_PIN_PU1,1225	TEGRA_PIN_PU2,1226	TEGRA_PIN_PU3,1227	TEGRA_PIN_PU4,1228	TEGRA_PIN_PU5,1229	TEGRA_PIN_PU6,1230};1231 1232static const unsigned drive_sdio3_pins[] = {1233	TEGRA_PIN_SDMMC3_CLK_PA6,1234	TEGRA_PIN_SDMMC3_CMD_PA7,1235	TEGRA_PIN_SDMMC3_DAT3_PB4,1236	TEGRA_PIN_SDMMC3_DAT2_PB5,1237	TEGRA_PIN_SDMMC3_DAT1_PB6,1238	TEGRA_PIN_SDMMC3_DAT0_PB7,1239	TEGRA_PIN_SDMMC3_CLK_LB_OUT_PEE4,1240	TEGRA_PIN_SDMMC3_CLK_LB_IN_PEE5,1241};1242 1243static const unsigned drive_spi_pins[] = {1244	TEGRA_PIN_DVFS_PWM_PX0,1245	TEGRA_PIN_GPIO_X1_AUD_PX1,1246	TEGRA_PIN_DVFS_CLK_PX2,1247	TEGRA_PIN_GPIO_X3_AUD_PX3,1248	TEGRA_PIN_GPIO_X4_AUD_PX4,1249	TEGRA_PIN_GPIO_X5_AUD_PX5,1250	TEGRA_PIN_GPIO_X6_AUD_PX6,1251	TEGRA_PIN_GPIO_X7_AUD_PX7,1252	TEGRA_PIN_GPIO_W2_AUD_PW2,1253	TEGRA_PIN_GPIO_W3_AUD_PW3,1254};1255 1256static const unsigned drive_uaa_pins[] = {1257	TEGRA_PIN_ULPI_DATA0_PO1,1258	TEGRA_PIN_ULPI_DATA1_PO2,1259	TEGRA_PIN_ULPI_DATA2_PO3,1260	TEGRA_PIN_ULPI_DATA3_PO4,1261};1262 1263static const unsigned drive_uab_pins[] = {1264	TEGRA_PIN_ULPI_DATA7_PO0,1265	TEGRA_PIN_ULPI_DATA4_PO5,1266	TEGRA_PIN_ULPI_DATA5_PO6,1267	TEGRA_PIN_ULPI_DATA6_PO7,1268	TEGRA_PIN_PV0,1269	TEGRA_PIN_PV1,1270};1271 1272static const unsigned drive_uart2_pins[] = {1273	TEGRA_PIN_UART2_TXD_PC2,1274	TEGRA_PIN_UART2_RXD_PC3,1275	TEGRA_PIN_UART2_CTS_N_PJ5,1276	TEGRA_PIN_UART2_RTS_N_PJ6,1277};1278 1279static const unsigned drive_uart3_pins[] = {1280	TEGRA_PIN_UART3_CTS_N_PA1,1281	TEGRA_PIN_UART3_RTS_N_PC0,1282	TEGRA_PIN_UART3_TXD_PW6,1283	TEGRA_PIN_UART3_RXD_PW7,1284};1285 1286static const unsigned drive_sdio1_pins[] = {1287	TEGRA_PIN_SDMMC1_DAT3_PY4,1288	TEGRA_PIN_SDMMC1_DAT2_PY5,1289	TEGRA_PIN_SDMMC1_DAT1_PY6,1290	TEGRA_PIN_SDMMC1_DAT0_PY7,1291	TEGRA_PIN_SDMMC1_CLK_PZ0,1292	TEGRA_PIN_SDMMC1_CMD_PZ1,1293};1294 1295static const unsigned drive_ddc_pins[] = {1296	TEGRA_PIN_DDC_SCL_PV4,1297	TEGRA_PIN_DDC_SDA_PV5,1298};1299 1300static const unsigned drive_gma_pins[] = {1301	TEGRA_PIN_SDMMC4_CLK_PCC4,1302	TEGRA_PIN_SDMMC4_CMD_PT7,1303	TEGRA_PIN_SDMMC4_DAT0_PAA0,1304	TEGRA_PIN_SDMMC4_DAT1_PAA1,1305	TEGRA_PIN_SDMMC4_DAT2_PAA2,1306	TEGRA_PIN_SDMMC4_DAT3_PAA3,1307	TEGRA_PIN_SDMMC4_DAT4_PAA4,1308	TEGRA_PIN_SDMMC4_DAT5_PAA5,1309	TEGRA_PIN_SDMMC4_DAT6_PAA6,1310	TEGRA_PIN_SDMMC4_DAT7_PAA7,1311};1312 1313static const unsigned drive_gme_pins[] = {1314	TEGRA_PIN_PBB0,1315	TEGRA_PIN_CAM_I2C_SCL_PBB1,1316	TEGRA_PIN_CAM_I2C_SDA_PBB2,1317	TEGRA_PIN_PBB3,1318	TEGRA_PIN_PCC2,1319};1320 1321static const unsigned drive_gmf_pins[] = {1322	TEGRA_PIN_PBB4,1323	TEGRA_PIN_PBB5,1324	TEGRA_PIN_PBB6,1325	TEGRA_PIN_PBB7,1326};1327 1328static const unsigned drive_gmg_pins[] = {1329	TEGRA_PIN_CAM_MCLK_PCC0,1330};1331 1332static const unsigned drive_gmh_pins[] = {1333	TEGRA_PIN_PCC1,1334};1335 1336static const unsigned drive_owr_pins[] = {1337	TEGRA_PIN_SDMMC3_CD_N_PV2,1338};1339 1340static const unsigned drive_uda_pins[] = {1341	TEGRA_PIN_ULPI_CLK_PY0,1342	TEGRA_PIN_ULPI_DIR_PY1,1343	TEGRA_PIN_ULPI_NXT_PY2,1344	TEGRA_PIN_ULPI_STP_PY3,1345};1346 1347static const unsigned drive_dev3_pins[] = {1348};1349 1350static const unsigned drive_cec_pins[] = {1351};1352 1353static const unsigned drive_at6_pins[] = {1354};1355 1356static const unsigned drive_dap5_pins[] = {1357};1358 1359static const unsigned drive_usb_vbus_en_pins[] = {1360};1361 1362static const unsigned drive_ao3_pins[] = {1363};1364 1365static const unsigned drive_hv0_pins[] = {1366};1367 1368static const unsigned drive_sdio4_pins[] = {1369};1370 1371static const unsigned drive_ao0_pins[] = {1372};1373 1374enum tegra_mux {1375	TEGRA_MUX_BLINK,1376	TEGRA_MUX_CEC,1377	TEGRA_MUX_CLDVFS,1378	TEGRA_MUX_CLK,1379	TEGRA_MUX_CLK12,1380	TEGRA_MUX_CPU,1381	TEGRA_MUX_DAP,1382	TEGRA_MUX_DAP1,1383	TEGRA_MUX_DAP2,1384	TEGRA_MUX_DEV3,1385	TEGRA_MUX_DISPLAYA,1386	TEGRA_MUX_DISPLAYA_ALT,1387	TEGRA_MUX_DISPLAYB,1388	TEGRA_MUX_DTV,1389	TEGRA_MUX_EMC_DLL,1390	TEGRA_MUX_EXTPERIPH1,1391	TEGRA_MUX_EXTPERIPH2,1392	TEGRA_MUX_EXTPERIPH3,1393	TEGRA_MUX_GMI,1394	TEGRA_MUX_GMI_ALT,1395	TEGRA_MUX_HDA,1396	TEGRA_MUX_HSI,1397	TEGRA_MUX_I2C1,1398	TEGRA_MUX_I2C2,1399	TEGRA_MUX_I2C3,1400	TEGRA_MUX_I2C4,1401	TEGRA_MUX_I2CPWR,1402	TEGRA_MUX_I2S0,1403	TEGRA_MUX_I2S1,1404	TEGRA_MUX_I2S2,1405	TEGRA_MUX_I2S3,1406	TEGRA_MUX_I2S4,1407	TEGRA_MUX_IRDA,1408	TEGRA_MUX_KBC,1409	TEGRA_MUX_NAND,1410	TEGRA_MUX_NAND_ALT,1411	TEGRA_MUX_OWR,1412	TEGRA_MUX_PMI,1413	TEGRA_MUX_PWM0,1414	TEGRA_MUX_PWM1,1415	TEGRA_MUX_PWM2,1416	TEGRA_MUX_PWM3,1417	TEGRA_MUX_PWRON,1418	TEGRA_MUX_RESET_OUT_N,1419	TEGRA_MUX_RSVD1,1420	TEGRA_MUX_RSVD2,1421	TEGRA_MUX_RSVD3,1422	TEGRA_MUX_RSVD4,1423	TEGRA_MUX_RTCK,1424	TEGRA_MUX_SDMMC1,1425	TEGRA_MUX_SDMMC2,1426	TEGRA_MUX_SDMMC3,1427	TEGRA_MUX_SDMMC4,1428	TEGRA_MUX_SOC,1429	TEGRA_MUX_SPDIF,1430	TEGRA_MUX_SPI1,1431	TEGRA_MUX_SPI2,1432	TEGRA_MUX_SPI3,1433	TEGRA_MUX_SPI4,1434	TEGRA_MUX_SPI5,1435	TEGRA_MUX_SPI6,1436	TEGRA_MUX_SYSCLK,1437	TEGRA_MUX_TRACE,1438	TEGRA_MUX_UARTA,1439	TEGRA_MUX_UARTB,1440	TEGRA_MUX_UARTC,1441	TEGRA_MUX_UARTD,1442	TEGRA_MUX_ULPI,1443	TEGRA_MUX_USB,1444	TEGRA_MUX_VGP1,1445	TEGRA_MUX_VGP2,1446	TEGRA_MUX_VGP3,1447	TEGRA_MUX_VGP4,1448	TEGRA_MUX_VGP5,1449	TEGRA_MUX_VGP6,1450	TEGRA_MUX_VI,1451	TEGRA_MUX_VI_ALT1,1452	TEGRA_MUX_VI_ALT3,1453};1454 1455#define FUNCTION(fname) #fname1456 1457static const char * const tegra114_functions[] = {1458	FUNCTION(blink),1459	FUNCTION(cec),1460	FUNCTION(cldvfs),1461	FUNCTION(clk),1462	FUNCTION(clk12),1463	FUNCTION(cpu),1464	FUNCTION(dap),1465	FUNCTION(dap1),1466	FUNCTION(dap2),1467	FUNCTION(dev3),1468	FUNCTION(displaya),1469	FUNCTION(displaya_alt),1470	FUNCTION(displayb),1471	FUNCTION(dtv),1472	FUNCTION(emc_dll),1473	FUNCTION(extperiph1),1474	FUNCTION(extperiph2),1475	FUNCTION(extperiph3),1476	FUNCTION(gmi),1477	FUNCTION(gmi_alt),1478	FUNCTION(hda),1479	FUNCTION(hsi),1480	FUNCTION(i2c1),1481	FUNCTION(i2c2),1482	FUNCTION(i2c3),1483	FUNCTION(i2c4),1484	FUNCTION(i2cpwr),1485	FUNCTION(i2s0),1486	FUNCTION(i2s1),1487	FUNCTION(i2s2),1488	FUNCTION(i2s3),1489	FUNCTION(i2s4),1490	FUNCTION(irda),1491	FUNCTION(kbc),1492	FUNCTION(nand),1493	FUNCTION(nand_alt),1494	FUNCTION(owr),1495	FUNCTION(pmi),1496	FUNCTION(pwm0),1497	FUNCTION(pwm1),1498	FUNCTION(pwm2),1499	FUNCTION(pwm3),1500	FUNCTION(pwron),1501	FUNCTION(reset_out_n),1502	FUNCTION(rsvd1),1503	FUNCTION(rsvd2),1504	FUNCTION(rsvd3),1505	FUNCTION(rsvd4),1506	FUNCTION(rtck),1507	FUNCTION(sdmmc1),1508	FUNCTION(sdmmc2),1509	FUNCTION(sdmmc3),1510	FUNCTION(sdmmc4),1511	FUNCTION(soc),1512	FUNCTION(spdif),1513	FUNCTION(spi1),1514	FUNCTION(spi2),1515	FUNCTION(spi3),1516	FUNCTION(spi4),1517	FUNCTION(spi5),1518	FUNCTION(spi6),1519	FUNCTION(sysclk),1520	FUNCTION(trace),1521	FUNCTION(uarta),1522	FUNCTION(uartb),1523	FUNCTION(uartc),1524	FUNCTION(uartd),1525	FUNCTION(ulpi),1526	FUNCTION(usb),1527	FUNCTION(vgp1),1528	FUNCTION(vgp2),1529	FUNCTION(vgp3),1530	FUNCTION(vgp4),1531	FUNCTION(vgp5),1532	FUNCTION(vgp6),1533	FUNCTION(vi),1534	FUNCTION(vi_alt1),1535	FUNCTION(vi_alt3),1536};1537 1538#define DRV_PINGROUP_REG_A		0x868	/* bank 0 */1539#define PINGROUP_REG_A			0x3000	/* bank 1 */1540 1541#define DRV_PINGROUP_REG(r)		((r) - DRV_PINGROUP_REG_A)1542#define PINGROUP_REG(r)			((r) - PINGROUP_REG_A)1543 1544#define PINGROUP_BIT_Y(b)		(b)1545#define PINGROUP_BIT_N(b)		(-1)1546 1547#define PINGROUP(pg_name, f0, f1, f2, f3, r, od, ior, rcv_sel)		\1548	{								\1549		.name = #pg_name,					\1550		.pins = pg_name##_pins,					\1551		.npins = ARRAY_SIZE(pg_name##_pins),			\1552		.funcs = {						\1553			TEGRA_MUX_##f0,					\1554			TEGRA_MUX_##f1,					\1555			TEGRA_MUX_##f2,					\1556			TEGRA_MUX_##f3,					\1557		},							\1558		.mux_reg = PINGROUP_REG(r),				\1559		.mux_bank = 1,						\1560		.mux_bit = 0,						\1561		.pupd_reg = PINGROUP_REG(r),				\1562		.pupd_bank = 1,						\1563		.pupd_bit = 2,						\1564		.tri_reg = PINGROUP_REG(r),				\1565		.tri_bank = 1,						\1566		.tri_bit = 4,						\1567		.einput_bit = 5,					\1568		.odrain_bit = PINGROUP_BIT_##od(6),			\1569		.lock_bit = 7,						\1570		.ioreset_bit = PINGROUP_BIT_##ior(8),			\1571		.rcv_sel_bit = PINGROUP_BIT_##rcv_sel(9),		\1572		.drv_reg = -1,						\1573		.parked_bitmask = 0,					\1574	}1575 1576#define DRV_PINGROUP(pg_name, r, hsm_b, schmitt_b, lpmd_b, drvdn_b,	\1577		     drvdn_w, drvup_b, drvup_w, slwr_b, slwr_w,		\1578		     slwf_b, slwf_w, drvtype)				\1579	{								\1580		.name = "drive_" #pg_name,				\1581		.pins = drive_##pg_name##_pins,				\1582		.npins = ARRAY_SIZE(drive_##pg_name##_pins),		\1583		.mux_reg = -1,						\1584		.pupd_reg = -1,						\1585		.tri_reg = -1,						\1586		.einput_bit = -1,					\1587		.odrain_bit = -1,					\1588		.lock_bit = -1,						\1589		.ioreset_bit = -1,					\1590		.rcv_sel_bit = -1,					\1591		.drv_reg = DRV_PINGROUP_REG(r),				\1592		.drv_bank = 0,						\1593		.hsm_bit = hsm_b,					\1594		.schmitt_bit = schmitt_b,				\1595		.lpmd_bit = lpmd_b,					\1596		.drvdn_bit = drvdn_b,					\1597		.drvdn_width = drvdn_w,					\1598		.drvup_bit = drvup_b,					\1599		.drvup_width = drvup_w,					\1600		.slwr_bit = slwr_b,					\1601		.slwr_width = slwr_w,					\1602		.slwf_bit = slwf_b,					\1603		.slwf_width = slwf_w,					\1604		.drvtype_bit = PINGROUP_BIT_##drvtype(6),		\1605		.parked_bitmask = 0,					\1606	}1607 1608static const struct tegra_pingroup tegra114_groups[] = {1609	/*       pg_name,                f0,         f1,         f2,           f3,          r,      od, ior, rcv_sel */1610	PINGROUP(ulpi_data0_po1,         SPI3,       HSI,        UARTA,        ULPI,        0x3000, N,   N,  N),1611	PINGROUP(ulpi_data1_po2,         SPI3,       HSI,        UARTA,        ULPI,        0x3004, N,   N,  N),1612	PINGROUP(ulpi_data2_po3,         SPI3,       HSI,        UARTA,        ULPI,        0x3008, N,   N,  N),1613	PINGROUP(ulpi_data3_po4,         SPI3,       HSI,        UARTA,        ULPI,        0x300c, N,   N,  N),1614	PINGROUP(ulpi_data4_po5,         SPI2,       HSI,        UARTA,        ULPI,        0x3010, N,   N,  N),1615	PINGROUP(ulpi_data5_po6,         SPI2,       HSI,        UARTA,        ULPI,        0x3014, N,   N,  N),1616	PINGROUP(ulpi_data6_po7,         SPI2,       HSI,        UARTA,        ULPI,        0x3018, N,   N,  N),1617	PINGROUP(ulpi_data7_po0,         SPI2,       HSI,        UARTA,        ULPI,        0x301c, N,   N,  N),1618	PINGROUP(ulpi_clk_py0,           SPI1,       SPI5,       UARTD,        ULPI,        0x3020, N,   N,  N),1619	PINGROUP(ulpi_dir_py1,           SPI1,       SPI5,       UARTD,        ULPI,        0x3024, N,   N,  N),1620	PINGROUP(ulpi_nxt_py2,           SPI1,       SPI5,       UARTD,        ULPI,        0x3028, N,   N,  N),1621	PINGROUP(ulpi_stp_py3,           SPI1,       SPI5,       UARTD,        ULPI,        0x302c, N,   N,  N),1622	PINGROUP(dap3_fs_pp0,            I2S2,       SPI5,       DISPLAYA,     DISPLAYB,    0x3030, N,   N,  N),1623	PINGROUP(dap3_din_pp1,           I2S2,       SPI5,       DISPLAYA,     DISPLAYB,    0x3034, N,   N,  N),1624	PINGROUP(dap3_dout_pp2,          I2S2,       SPI5,       DISPLAYA,     DISPLAYB,    0x3038, N,   N,  N),1625	PINGROUP(dap3_sclk_pp3,          I2S2,       SPI5,       DISPLAYA,     DISPLAYB,    0x303c, N,   N,  N),1626	PINGROUP(pv0,                    USB,        RSVD2,      RSVD3,        RSVD4,       0x3040, N,   N,  N),1627	PINGROUP(pv1,                    RSVD1,      RSVD2,      RSVD3,        RSVD4,       0x3044, N,   N,  N),1628	PINGROUP(sdmmc1_clk_pz0,         SDMMC1,     CLK12,      RSVD3,        RSVD4,       0x3048, N,   N,  N),1629	PINGROUP(sdmmc1_cmd_pz1,         SDMMC1,     SPDIF,      SPI4,         UARTA,       0x304c, N,   N,  N),1630	PINGROUP(sdmmc1_dat3_py4,        SDMMC1,     SPDIF,      SPI4,         UARTA,       0x3050, N,   N,  N),1631	PINGROUP(sdmmc1_dat2_py5,        SDMMC1,     PWM0,       SPI4,         UARTA,       0x3054, N,   N,  N),1632	PINGROUP(sdmmc1_dat1_py6,        SDMMC1,     PWM1,       SPI4,         UARTA,       0x3058, N,   N,  N),1633	PINGROUP(sdmmc1_dat0_py7,        SDMMC1,     RSVD2,      SPI4,         UARTA,       0x305c, N,   N,  N),1634	PINGROUP(clk2_out_pw5,           EXTPERIPH2, RSVD2,      RSVD3,        RSVD4,       0x3068, N,   N,  N),1635	PINGROUP(clk2_req_pcc5,          DAP,        RSVD2,      RSVD3,        RSVD4,       0x306c, N,   N,  N),1636	PINGROUP(hdmi_int_pn7,           RSVD1,      RSVD2,      RSVD3,        RSVD4,       0x3110, N,   N,  Y),1637	PINGROUP(ddc_scl_pv4,            I2C4,       RSVD2,      RSVD3,        RSVD4,       0x3114, N,   N,  Y),1638	PINGROUP(ddc_sda_pv5,            I2C4,       RSVD2,      RSVD3,        RSVD4,       0x3118, N,   N,  Y),1639	PINGROUP(uart2_rxd_pc3,          IRDA,       SPDIF,      UARTA,        SPI4,        0x3164, N,   N,  N),1640	PINGROUP(uart2_txd_pc2,          IRDA,       SPDIF,      UARTA,        SPI4,        0x3168, N,   N,  N),1641	PINGROUP(uart2_rts_n_pj6,        UARTA,      UARTB,      RSVD3,        SPI4,        0x316c, N,   N,  N),1642	PINGROUP(uart2_cts_n_pj5,        UARTA,      UARTB,      RSVD3,        SPI4,        0x3170, N,   N,  N),1643	PINGROUP(uart3_txd_pw6,          UARTC,      RSVD2,      RSVD3,        SPI4,        0x3174, N,   N,  N),1644	PINGROUP(uart3_rxd_pw7,          UARTC,      RSVD2,      RSVD3,        SPI4,        0x3178, N,   N,  N),1645	PINGROUP(uart3_cts_n_pa1,        UARTC,      SDMMC1,     DTV,          SPI4,        0x317c, N,   N,  N),1646	PINGROUP(uart3_rts_n_pc0,        UARTC,      PWM0,       DTV,          DISPLAYA,    0x3180, N,   N,  N),1647	PINGROUP(pu0,                    OWR,        UARTA,      RSVD3,        RSVD4,       0x3184, N,   N,  N),1648	PINGROUP(pu1,                    RSVD1,      UARTA,      RSVD3,        RSVD4,       0x3188, N,   N,  N),1649	PINGROUP(pu2,                    RSVD1,      UARTA,      RSVD3,        RSVD4,       0x318c, N,   N,  N),1650	PINGROUP(pu3,                    PWM0,       UARTA,      DISPLAYA,     DISPLAYB,    0x3190, N,   N,  N),1651	PINGROUP(pu4,                    PWM1,       UARTA,      DISPLAYA,     DISPLAYB,    0x3194, N,   N,  N),1652	PINGROUP(pu5,                    PWM2,       UARTA,      DISPLAYA,     DISPLAYB,    0x3198, N,   N,  N),1653	PINGROUP(pu6,                    PWM3,       UARTA,      USB,          DISPLAYB,    0x319c, N,   N,  N),1654	PINGROUP(gen1_i2c_sda_pc5,       I2C1,       RSVD2,      RSVD3,        RSVD4,       0x31a0, Y,   N,  N),1655	PINGROUP(gen1_i2c_scl_pc4,       I2C1,       RSVD2,      RSVD3,        RSVD4,       0x31a4, Y,   N,  N),1656	PINGROUP(dap4_fs_pp4,            I2S3,       RSVD2,      DTV,          RSVD4,       0x31a8, N,   N,  N),1657	PINGROUP(dap4_din_pp5,           I2S3,       RSVD2,      RSVD3,        RSVD4,       0x31ac, N,   N,  N),1658	PINGROUP(dap4_dout_pp6,          I2S3,       RSVD2,      DTV,          RSVD4,       0x31b0, N,   N,  N),1659	PINGROUP(dap4_sclk_pp7,          I2S3,       RSVD2,      RSVD3,        RSVD4,       0x31b4, N,   N,  N),1660	PINGROUP(clk3_out_pee0,          EXTPERIPH3, RSVD2,      RSVD3,        RSVD4,       0x31b8, N,   N,  N),1661	PINGROUP(clk3_req_pee1,          DEV3,       RSVD2,      RSVD3,        RSVD4,       0x31bc, N,   N,  N),1662	PINGROUP(gmi_wp_n_pc7,           RSVD1,      NAND,       GMI,          GMI_ALT,     0x31c0, N,   N,  N),1663	PINGROUP(gmi_iordy_pi5,          SDMMC2,     RSVD2,      GMI,          TRACE,       0x31c4, N,   N,  N),1664	PINGROUP(gmi_wait_pi7,           SPI4,       NAND,       GMI,          DTV,         0x31c8, N,   N,  N),1665	PINGROUP(gmi_adv_n_pk0,          RSVD1,      NAND,       GMI,          TRACE,       0x31cc, N,   N,  N),1666	PINGROUP(gmi_clk_pk1,            SDMMC2,     NAND,       GMI,          TRACE,       0x31d0, N,   N,  N),1667	PINGROUP(gmi_cs0_n_pj0,          RSVD1,      NAND,       GMI,          USB,         0x31d4, N,   N,  N),1668	PINGROUP(gmi_cs1_n_pj2,          RSVD1,      NAND,       GMI,          SOC,         0x31d8, N,   N,  N),1669	PINGROUP(gmi_cs2_n_pk3,          SDMMC2,     NAND,       GMI,          TRACE,       0x31dc, N,   N,  N),1670	PINGROUP(gmi_cs3_n_pk4,          SDMMC2,     NAND,       GMI,          GMI_ALT,     0x31e0, N,   N,  N),1671	PINGROUP(gmi_cs4_n_pk2,          USB,        NAND,       GMI,          TRACE,       0x31e4, N,   N,  N),1672	PINGROUP(gmi_cs6_n_pi3,          NAND,       NAND_ALT,   GMI,          SPI4,        0x31e8, N,   N,  N),1673	PINGROUP(gmi_cs7_n_pi6,          NAND,       NAND_ALT,   GMI,          SDMMC2,      0x31ec, N,   N,  N),1674	PINGROUP(gmi_ad0_pg0,            RSVD1,      NAND,       GMI,          RSVD4,       0x31f0, N,   N,  N),1675	PINGROUP(gmi_ad1_pg1,            RSVD1,      NAND,       GMI,          RSVD4,       0x31f4, N,   N,  N),1676	PINGROUP(gmi_ad2_pg2,            RSVD1,      NAND,       GMI,          RSVD4,       0x31f8, N,   N,  N),1677	PINGROUP(gmi_ad3_pg3,            RSVD1,      NAND,       GMI,          RSVD4,       0x31fc, N,   N,  N),1678	PINGROUP(gmi_ad4_pg4,            RSVD1,      NAND,       GMI,          RSVD4,       0x3200, N,   N,  N),1679	PINGROUP(gmi_ad5_pg5,            RSVD1,      NAND,       GMI,          SPI4,        0x3204, N,   N,  N),1680	PINGROUP(gmi_ad6_pg6,            RSVD1,      NAND,       GMI,          SPI4,        0x3208, N,   N,  N),1681	PINGROUP(gmi_ad7_pg7,            RSVD1,      NAND,       GMI,          SPI4,        0x320c, N,   N,  N),1682	PINGROUP(gmi_ad8_ph0,            PWM0,       NAND,       GMI,          DTV,         0x3210, N,   N,  N),1683	PINGROUP(gmi_ad9_ph1,            PWM1,       NAND,       GMI,          CLDVFS,      0x3214, N,   N,  N),1684	PINGROUP(gmi_ad10_ph2,           PWM2,       NAND,       GMI,          CLDVFS,      0x3218, N,   N,  N),1685	PINGROUP(gmi_ad11_ph3,           PWM3,       NAND,       GMI,          USB,         0x321c, N,   N,  N),1686	PINGROUP(gmi_ad12_ph4,           SDMMC2,     NAND,       GMI,          RSVD4,       0x3220, N,   N,  N),1687	PINGROUP(gmi_ad13_ph5,           SDMMC2,     NAND,       GMI,          RSVD4,       0x3224, N,   N,  N),1688	PINGROUP(gmi_ad14_ph6,           SDMMC2,     NAND,       GMI,          DTV,         0x3228, N,   N,  N),1689	PINGROUP(gmi_ad15_ph7,           SDMMC2,     NAND,       GMI,          DTV,         0x322c, N,   N,  N),1690	PINGROUP(gmi_a16_pj7,            UARTD,      TRACE,      GMI,          GMI_ALT,     0x3230, N,   N,  N),1691	PINGROUP(gmi_a17_pb0,            UARTD,      RSVD2,      GMI,          TRACE,       0x3234, N,   N,  N),1692	PINGROUP(gmi_a18_pb1,            UARTD,      RSVD2,      GMI,          TRACE,       0x3238, N,   N,  N),1693	PINGROUP(gmi_a19_pk7,            UARTD,      SPI4,       GMI,          TRACE,       0x323c, N,   N,  N),1694	PINGROUP(gmi_wr_n_pi0,           RSVD1,      NAND,       GMI,          SPI4,        0x3240, N,   N,  N),1695	PINGROUP(gmi_oe_n_pi1,           RSVD1,      NAND,       GMI,          SOC,         0x3244, N,   N,  N),1696	PINGROUP(gmi_dqs_p_pj3,          SDMMC2,     NAND,       GMI,          TRACE,       0x3248, N,   N,  N),1697	PINGROUP(gmi_rst_n_pi4,          NAND,       NAND_ALT,   GMI,          RSVD4,       0x324c, N,   N,  N),1698	PINGROUP(gen2_i2c_scl_pt5,       I2C2,       RSVD2,      GMI,          RSVD4,       0x3250, Y,   N,  N),1699	PINGROUP(gen2_i2c_sda_pt6,       I2C2,       RSVD2,      GMI,          RSVD4,       0x3254, Y,   N,  N),1700	PINGROUP(sdmmc4_clk_pcc4,        SDMMC4,     RSVD2,      GMI,          RSVD4,       0x3258, N,   Y,  N),1701	PINGROUP(sdmmc4_cmd_pt7,         SDMMC4,     RSVD2,      GMI,          RSVD4,       0x325c, N,   Y,  N),1702	PINGROUP(sdmmc4_dat0_paa0,       SDMMC4,     SPI3,       GMI,          RSVD4,       0x3260, N,   Y,  N),1703	PINGROUP(sdmmc4_dat1_paa1,       SDMMC4,     SPI3,       GMI,          RSVD4,       0x3264, N,   Y,  N),1704	PINGROUP(sdmmc4_dat2_paa2,       SDMMC4,     SPI3,       GMI,          RSVD4,       0x3268, N,   Y,  N),1705	PINGROUP(sdmmc4_dat3_paa3,       SDMMC4,     SPI3,       GMI,          RSVD4,       0x326c, N,   Y,  N),1706	PINGROUP(sdmmc4_dat4_paa4,       SDMMC4,     SPI3,       GMI,          RSVD4,       0x3270, N,   Y,  N),1707	PINGROUP(sdmmc4_dat5_paa5,       SDMMC4,     SPI3,       GMI,          RSVD4,       0x3274, N,   Y,  N),1708	PINGROUP(sdmmc4_dat6_paa6,       SDMMC4,     SPI3,       GMI,          RSVD4,       0x3278, N,   Y,  N),1709	PINGROUP(sdmmc4_dat7_paa7,       SDMMC4,     RSVD2,      GMI,          RSVD4,       0x327c, N,   Y,  N),1710	PINGROUP(cam_mclk_pcc0,          VI,         VI_ALT1,    VI_ALT3,      RSVD4,       0x3284, N,   N,  N),1711	PINGROUP(pcc1,                   I2S4,       RSVD2,      RSVD3,        RSVD4,       0x3288, N,   N,  N),1712	PINGROUP(pbb0,                   I2S4,       VI,         VI_ALT1,      VI_ALT3,     0x328c, N,   N,  N),1713	PINGROUP(cam_i2c_scl_pbb1,       VGP1,       I2C3,       RSVD3,        RSVD4,       0x3290, Y,   N,  N),1714	PINGROUP(cam_i2c_sda_pbb2,       VGP2,       I2C3,       RSVD3,        RSVD4,       0x3294, Y,   N,  N),1715	PINGROUP(pbb3,                   VGP3,       DISPLAYA,   DISPLAYB,     RSVD4,       0x3298, N,   N,  N),1716	PINGROUP(pbb4,                   VGP4,       DISPLAYA,   DISPLAYB,     RSVD4,       0x329c, N,   N,  N),1717	PINGROUP(pbb5,                   VGP5,       DISPLAYA,   DISPLAYB,     RSVD4,       0x32a0, N,   N,  N),1718	PINGROUP(pbb6,                   VGP6,       DISPLAYA,   DISPLAYB,     RSVD4,       0x32a4, N,   N,  N),1719	PINGROUP(pbb7,                   I2S4,       RSVD2,      RSVD3,        RSVD4,       0x32a8, N,   N,  N),1720	PINGROUP(pcc2,                   I2S4,       RSVD2,      RSVD3,        RSVD4,       0x32ac, N,   N,  N),1721	PINGROUP(jtag_rtck,              RTCK,       RSVD2,      RSVD3,        RSVD4,       0x32b0, N,   N,  N),1722	PINGROUP(pwr_i2c_scl_pz6,        I2CPWR,     RSVD2,      RSVD3,        RSVD4,       0x32b4, Y,   N,  N),1723	PINGROUP(pwr_i2c_sda_pz7,        I2CPWR,     RSVD2,      RSVD3,        RSVD4,       0x32b8, Y,   N,  N),1724	PINGROUP(kb_row0_pr0,            KBC,        RSVD2,      RSVD3,        RSVD4,       0x32bc, N,   N,  N),1725	PINGROUP(kb_row1_pr1,            KBC,        RSVD2,      RSVD3,        RSVD4,       0x32c0, N,   N,  N),1726	PINGROUP(kb_row2_pr2,            KBC,        RSVD2,      RSVD3,        RSVD4,       0x32c4, N,   N,  N),1727	PINGROUP(kb_row3_pr3,            KBC,        DISPLAYA,   RSVD3,        DISPLAYB,    0x32c8, N,   N,  N),1728	PINGROUP(kb_row4_pr4,            KBC,        DISPLAYA,   SPI2,         DISPLAYB,    0x32cc, N,   N,  N),1729	PINGROUP(kb_row5_pr5,            KBC,        DISPLAYA,   SPI2,         DISPLAYB,    0x32d0, N,   N,  N),1730	PINGROUP(kb_row6_pr6,            KBC,        DISPLAYA,   DISPLAYA_ALT, DISPLAYB,    0x32d4, N,   N,  N),1731	PINGROUP(kb_row7_pr7,            KBC,        RSVD2,      CLDVFS,       UARTA,       0x32d8, N,   N,  N),1732	PINGROUP(kb_row8_ps0,            KBC,        RSVD2,      CLDVFS,       UARTA,       0x32dc, N,   N,  N),1733	PINGROUP(kb_row9_ps1,            KBC,        RSVD2,      RSVD3,        UARTA,       0x32e0, N,   N,  N),1734	PINGROUP(kb_row10_ps2,           KBC,        RSVD2,      RSVD3,        UARTA,       0x32e4, N,   N,  N),1735	PINGROUP(kb_col0_pq0,            KBC,        USB,        SPI2,         EMC_DLL,     0x32fc, N,   N,  N),1736	PINGROUP(kb_col1_pq1,            KBC,        RSVD2,      SPI2,         EMC_DLL,     0x3300, N,   N,  N),1737	PINGROUP(kb_col2_pq2,            KBC,        RSVD2,      SPI2,         RSVD4,       0x3304, N,   N,  N),1738	PINGROUP(kb_col3_pq3,            KBC,        DISPLAYA,   PWM2,         UARTA,       0x3308, N,   N,  N),1739	PINGROUP(kb_col4_pq4,            KBC,        OWR,        SDMMC3,       UARTA,       0x330c, N,   N,  N),1740	PINGROUP(kb_col5_pq5,            KBC,        RSVD2,      SDMMC1,       RSVD4,       0x3310, N,   N,  N),1741	PINGROUP(kb_col6_pq6,            KBC,        RSVD2,      SPI2,         RSVD4,       0x3314, N,   N,  N),1742	PINGROUP(kb_col7_pq7,            KBC,        RSVD2,      SPI2,         RSVD4,       0x3318, N,   N,  N),1743	PINGROUP(clk_32k_out_pa0,        BLINK,      SOC,        RSVD3,        RSVD4,       0x331c, N,   N,  N),1744	PINGROUP(sys_clk_req_pz5,        SYSCLK,     RSVD2,      RSVD3,        RSVD4,       0x3320, N,   N,  N),1745	PINGROUP(core_pwr_req,           PWRON,      RSVD2,      RSVD3,        RSVD4,       0x3324, N,   N,  N),1746	PINGROUP(cpu_pwr_req,            CPU,        RSVD2,      RSVD3,        RSVD4,       0x3328, N,   N,  N),1747	PINGROUP(pwr_int_n,              PMI,        RSVD2,      RSVD3,        RSVD4,       0x332c, N,   N,  N),1748	PINGROUP(clk_32k_in,             CLK,        RSVD2,      RSVD3,        RSVD4,       0x3330, N,   N,  N),1749	PINGROUP(owr,                    OWR,        RSVD2,      RSVD3,        RSVD4,       0x3334, N,   N,  Y),1750	PINGROUP(dap1_fs_pn0,            I2S0,       HDA,        GMI,          RSVD4,       0x3338, N,   N,  N),1751	PINGROUP(dap1_din_pn1,           I2S0,       HDA,        GMI,          RSVD4,       0x333c, N,   N,  N),1752	PINGROUP(dap1_dout_pn2,          I2S0,       HDA,        GMI,          RSVD4,       0x3340, N,   N,  N),1753	PINGROUP(dap1_sclk_pn3,          I2S0,       HDA,        GMI,          RSVD4,       0x3344, N,   N,  N),1754	PINGROUP(clk1_req_pee2,          DAP,        DAP1,       RSVD3,        RSVD4,       0x3348, N,   N,  N),1755	PINGROUP(clk1_out_pw4,           EXTPERIPH1, DAP2,       RSVD3,        RSVD4,       0x334c, N,   N,  N),1756	PINGROUP(spdif_in_pk6,           SPDIF,      USB,        RSVD3,        RSVD4,       0x3350, N,   N,  N),1757	PINGROUP(spdif_out_pk5,          SPDIF,      RSVD2,      RSVD3,        RSVD4,       0x3354, N,   N,  N),1758	PINGROUP(dap2_fs_pa2,            I2S1,       HDA,        RSVD3,        RSVD4,       0x3358, N,   N,  N),1759	PINGROUP(dap2_din_pa4,           I2S1,       HDA,        RSVD3,        RSVD4,       0x335c, N,   N,  N),1760	PINGROUP(dap2_dout_pa5,          I2S1,       HDA,        RSVD3,        RSVD4,       0x3360, N,   N,  N),1761	PINGROUP(dap2_sclk_pa3,          I2S1,       HDA,        RSVD3,        RSVD4,       0x3364, N,   N,  N),1762	PINGROUP(dvfs_pwm_px0,           SPI6,       CLDVFS,     RSVD3,        RSVD4,       0x3368, N,   N,  N),1763	PINGROUP(gpio_x1_aud_px1,        SPI6,       RSVD2,      RSVD3,        RSVD4,       0x336c, N,   N,  N),1764	PINGROUP(gpio_x3_aud_px3,        SPI6,       SPI1,       RSVD3,        RSVD4,       0x3370, N,   N,  N),1765	PINGROUP(dvfs_clk_px2,           SPI6,       CLDVFS,     RSVD3,        RSVD4,       0x3374, N,   N,  N),1766	PINGROUP(gpio_x4_aud_px4,        RSVD1,      SPI1,       SPI2,         DAP2,        0x3378, N,   N,  N),1767	PINGROUP(gpio_x5_aud_px5,        RSVD1,      SPI1,       SPI2,         RSVD4,       0x337c, N,   N,  N),1768	PINGROUP(gpio_x6_aud_px6,        SPI6,       SPI1,       SPI2,         RSVD4,       0x3380, N,   N,  N),1769	PINGROUP(gpio_x7_aud_px7,        RSVD1,      SPI1,       SPI2,         RSVD4,       0x3384, N,   N,  N),1770	PINGROUP(sdmmc3_clk_pa6,         SDMMC3,     RSVD2,      RSVD3,        SPI3,        0x3390, N,   N,  N),1771	PINGROUP(sdmmc3_cmd_pa7,         SDMMC3,     PWM3,       UARTA,        SPI3,        0x3394, N,   N,  N),1772	PINGROUP(sdmmc3_dat0_pb7,        SDMMC3,     RSVD2,      RSVD3,        SPI3,        0x3398, N,   N,  N),1773	PINGROUP(sdmmc3_dat1_pb6,        SDMMC3,     PWM2,       UARTA,        SPI3,        0x339c, N,   N,  N),1774	PINGROUP(sdmmc3_dat2_pb5,        SDMMC3,     PWM1,       DISPLAYA,     SPI3,        0x33a0, N,   N,  N),1775	PINGROUP(sdmmc3_dat3_pb4,        SDMMC3,     PWM0,       DISPLAYB,     SPI3,        0x33a4, N,   N,  N),1776	PINGROUP(hdmi_cec_pee3,          CEC,        SDMMC3,     RSVD3,        SOC,         0x33e0, Y,   N,  N),1777	PINGROUP(sdmmc1_wp_n_pv3,        SDMMC1,     CLK12,      SPI4,         UARTA,       0x33e4, N,   N,  N),1778	PINGROUP(sdmmc3_cd_n_pv2,        SDMMC3,     OWR,        RSVD3,        RSVD4,       0x33e8, N,   N,  N),1779	PINGROUP(gpio_w2_aud_pw2,        SPI6,       RSVD2,      SPI2,         I2C1,        0x33ec, N,   N,  N),1780	PINGROUP(gpio_w3_aud_pw3,        SPI6,       SPI1,       SPI2,         I2C1,        0x33f0, N,   N,  N),1781	PINGROUP(usb_vbus_en0_pn4,       USB,        RSVD2,      RSVD3,        RSVD4,       0x33f4, Y,   N,  N),1782	PINGROUP(usb_vbus_en1_pn5,       USB,        RSVD2,      RSVD3,        RSVD4,       0x33f8, Y,   N,  N),1783	PINGROUP(sdmmc3_clk_lb_in_pee5,  SDMMC3,     RSVD2,      RSVD3,        RSVD4,       0x33fc, N,   N,  N),1784	PINGROUP(sdmmc3_clk_lb_out_pee4, SDMMC3,     RSVD2,      RSVD3,        RSVD4,       0x3400, N,   N,  N),1785	PINGROUP(gmi_clk_lb,             SDMMC2,     NAND,       GMI,          RSVD4,       0x3404, N,   N,  N),1786	PINGROUP(reset_out_n,            RSVD1,      RSVD2,      RSVD3,        RESET_OUT_N, 0x3408, N,   N,  N),1787 1788	/* 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, drvtype */1789	DRV_PINGROUP(ao1,         0x868,  2,  3,  4,  12,  5,  20,  5,  28,  2,  30,  2,  N),1790	DRV_PINGROUP(ao2,         0x86c,  2,  3,  4,  12,  5,  20,  5,  28,  2,  30,  2,  N),1791	DRV_PINGROUP(at1,         0x870,  2,  3, -1,  12,  7,  20,  7,  28,  2,  30,  2,  Y),1792	DRV_PINGROUP(at2,         0x874,  2,  3, -1,  12,  7,  20,  7,  28,  2,  30,  2,  Y),1793	DRV_PINGROUP(at3,         0x878,  2,  3, -1,  12,  7,  20,  7,  28,  2,  30,  2,  Y),1794	DRV_PINGROUP(at4,         0x87c,  2,  3, -1,  12,  7,  20,  7,  28,  2,  30,  2,  Y),1795	DRV_PINGROUP(at5,         0x880,  2,  3,  4,  14,  5,  19,  5,  28,  2,  30,  2,  N),1796	DRV_PINGROUP(cdev1,       0x884,  2,  3,  4,  12,  5,  20,  5,  28,  2,  30,  2,  N),1797	DRV_PINGROUP(cdev2,       0x888,  2,  3,  4,  12,  5,  20,  5,  28,  2,  30,  2,  N),1798	DRV_PINGROUP(dap1,        0x890,  2,  3,  4,  12,  5,  20,  5,  28,  2,  30,  2,  N),1799	DRV_PINGROUP(dap2,        0x894,  2,  3,  4,  12,  5,  20,  5,  28,  2,  30,  2,  N),1800	DRV_PINGROUP(dap3,        0x898,  2,  3,  4,  12,  5,  20,  5,  28,  2,  30,  2,  N),1801	DRV_PINGROUP(dap4,        0x89c,  2,  3,  4,  12,  5,  20,  5,  28,  2,  30,  2,  N),1802	DRV_PINGROUP(dbg,         0x8a0,  2,  3,  4,  12,  5,  20,  5,  28,  2,  30,  2,  N),1803	DRV_PINGROUP(sdio3,       0x8b0,  2,  3, -1,  12,  7,  20,  7,  28,  2,  30,  2,  N),1804	DRV_PINGROUP(spi,         0x8b4,  2,  3,  4,  12,  5,  20,  5,  28,  2,  30,  2,  N),1805	DRV_PINGROUP(uaa,         0x8b8,  2,  3,  4,  12,  5,  20,  5,  28,  2,  30,  2,  N),1806	DRV_PINGROUP(uab,         0x8bc,  2,  3,  4,  12,  5,  20,  5,  28,  2,  30,  2,  N),1807	DRV_PINGROUP(uart2,       0x8c0,  2,  3,  4,  12,  5,  20,  5,  28,  2,  30,  2,  N),1808	DRV_PINGROUP(uart3,       0x8c4,  2,  3,  4,  12,  5,  20,  5,  28,  2,  30,  2,  N),1809	DRV_PINGROUP(sdio1,       0x8ec,  2,  3, -1,  12,  7,  20,  7,  28,  2,  30,  2,  N),1810	DRV_PINGROUP(ddc,         0x8fc,  2,  3, -1,  12,  5,  20,  5,  28,  2,  30,  2,  N),1811	DRV_PINGROUP(gma,         0x900,  2,  3, -1,  14,  5,  20,  5,  28,  2,  30,  2,  N),1812	DRV_PINGROUP(gme,         0x910,  2,  3,  4,  14,  5,  19,  5,  28,  2,  30,  2,  N),1813	DRV_PINGROUP(gmf,         0x914,  2,  3,  4,  14,  5,  19,  5,  28,  2,  30,  2,  N),1814	DRV_PINGROUP(gmg,         0x918,  2,  3,  4,  14,  5,  19,  5,  28,  2,  30,  2,  N),1815	DRV_PINGROUP(gmh,         0x91c,  2,  3,  4,  14,  5,  19,  5,  28,  2,  30,  2,  N),1816	DRV_PINGROUP(owr,         0x920,  2,  3,  4,  12,  5,  20,  5,  28,  2,  30,  2,  N),1817	DRV_PINGROUP(uda,         0x924,  2,  3,  4,  12,  5,  20,  5,  28,  2,  30,  2,  N),1818	DRV_PINGROUP(dev3,        0x92c,  2,  3,  4,  12,  5,  20,  5,  28,  2,  30,  2,  N),1819	DRV_PINGROUP(cec,         0x938,  2,  3,  4,  12,  5,  20,  5,  28,  2,  30,  2,  N),1820	DRV_PINGROUP(at6,         0x994,  2,  3,  4,  12,  5,  20,  5,  28,  2,  30,  2,  Y),1821	DRV_PINGROUP(dap5,        0x998,  2,  3,  4,  12,  5,  20,  5,  28,  2,  30,  2,  N),1822	DRV_PINGROUP(usb_vbus_en, 0x99c,  2,  3,  4,  12,  5,  20,  5,  28,  2,  30,  2,  N),1823	DRV_PINGROUP(ao3,         0x9a0,  2,  3,  4,  12,  5,  -1, -1,  28,  2,  -1, -1,  N),1824	DRV_PINGROUP(hv0,         0x9a4,  2,  3,  4,  12,  5,  -1, -1,  28,  2,  -1, -1,  N),1825	DRV_PINGROUP(sdio4,       0x9a8,  2,  3,  4,  12,  5,  20,  5,  28,  2,  30,  2,  N),1826	DRV_PINGROUP(ao0,         0x9ac,  2,  3,  4,  12,  5,  20,  5,  28,  2,  30,  2,  N),1827};1828 1829static const struct tegra_pinctrl_soc_data tegra114_pinctrl = {1830	.ngpios = NUM_GPIOS,1831	.gpio_compatible = "nvidia,tegra114-gpio",1832	.pins = tegra114_pins,1833	.npins = ARRAY_SIZE(tegra114_pins),1834	.functions = tegra114_functions,1835	.nfunctions = ARRAY_SIZE(tegra114_functions),1836	.groups = tegra114_groups,1837	.ngroups = ARRAY_SIZE(tegra114_groups),1838	.hsm_in_mux = false,1839	.schmitt_in_mux = false,1840	.drvtype_in_mux = false,1841};1842 1843static int tegra114_pinctrl_probe(struct platform_device *pdev)1844{1845	return tegra_pinctrl_probe(pdev, &tegra114_pinctrl);1846}1847 1848static const struct of_device_id tegra114_pinctrl_of_match[] = {1849	{ .compatible = "nvidia,tegra114-pinmux", },1850	{ },1851};1852 1853static struct platform_driver tegra114_pinctrl_driver = {1854	.driver = {1855		.name = "tegra114-pinctrl",1856		.of_match_table = tegra114_pinctrl_of_match,1857	},1858	.probe = tegra114_pinctrl_probe,1859};1860 1861static int __init tegra114_pinctrl_init(void)1862{1863	return platform_driver_register(&tegra114_pinctrl_driver);1864}1865arch_initcall(tegra114_pinctrl_init);1866