Back to home page

OSCL-LXR

 
 

    


0001 // SPDX-License-Identifier: GPL-2.0
0002 //
0003 // imx35 pinctrl driver.
0004 //
0005 // This driver was mostly copied from the imx51 pinctrl driver which has:
0006 //
0007 // Copyright (C) 2012 Freescale Semiconductor, Inc.
0008 // Copyright (C) 2012 Linaro, Inc.
0009 //
0010 // Author: Dong Aisheng <dong.aisheng@linaro.org>
0011 
0012 #include <linux/err.h>
0013 #include <linux/init.h>
0014 #include <linux/io.h>
0015 #include <linux/of.h>
0016 #include <linux/of_device.h>
0017 #include <linux/pinctrl/pinctrl.h>
0018 
0019 #include "pinctrl-imx.h"
0020 
0021 enum imx35_pads {
0022     MX35_PAD_RESERVE0 = 0,
0023     MX35_PAD_CAPTURE = 1,
0024     MX35_PAD_COMPARE = 2,
0025     MX35_PAD_WDOG_RST = 3,
0026     MX35_PAD_GPIO1_0 = 4,
0027     MX35_PAD_GPIO1_1 = 5,
0028     MX35_PAD_GPIO2_0 = 6,
0029     MX35_PAD_GPIO3_0 = 7,
0030     MX35_PAD_CLKO = 8,
0031     MX35_PAD_VSTBY = 9,
0032     MX35_PAD_A0 = 10,
0033     MX35_PAD_A1 = 11,
0034     MX35_PAD_A2 = 12,
0035     MX35_PAD_A3 = 13,
0036     MX35_PAD_A4 = 14,
0037     MX35_PAD_A5 = 15,
0038     MX35_PAD_A6 = 16,
0039     MX35_PAD_A7 = 17,
0040     MX35_PAD_A8 = 18,
0041     MX35_PAD_A9 = 19,
0042     MX35_PAD_A10 = 20,
0043     MX35_PAD_MA10 = 21,
0044     MX35_PAD_A11 = 22,
0045     MX35_PAD_A12 = 23,
0046     MX35_PAD_A13 = 24,
0047     MX35_PAD_A14 = 25,
0048     MX35_PAD_A15 = 26,
0049     MX35_PAD_A16 = 27,
0050     MX35_PAD_A17 = 28,
0051     MX35_PAD_A18 = 29,
0052     MX35_PAD_A19 = 30,
0053     MX35_PAD_A20 = 31,
0054     MX35_PAD_A21 = 32,
0055     MX35_PAD_A22 = 33,
0056     MX35_PAD_A23 = 34,
0057     MX35_PAD_A24 = 35,
0058     MX35_PAD_A25 = 36,
0059     MX35_PAD_EB0 = 37,
0060     MX35_PAD_EB1 = 38,
0061     MX35_PAD_OE = 39,
0062     MX35_PAD_CS0 = 40,
0063     MX35_PAD_CS1 = 41,
0064     MX35_PAD_CS2 = 42,
0065     MX35_PAD_CS3 = 43,
0066     MX35_PAD_CS4 = 44,
0067     MX35_PAD_CS5 = 45,
0068     MX35_PAD_NF_CE0 = 46,
0069     MX35_PAD_LBA = 47,
0070     MX35_PAD_BCLK = 48,
0071     MX35_PAD_RW = 49,
0072     MX35_PAD_NFWE_B = 50,
0073     MX35_PAD_NFRE_B = 51,
0074     MX35_PAD_NFALE = 52,
0075     MX35_PAD_NFCLE = 53,
0076     MX35_PAD_NFWP_B = 54,
0077     MX35_PAD_NFRB = 55,
0078     MX35_PAD_CSI_D8 = 56,
0079     MX35_PAD_CSI_D9 = 57,
0080     MX35_PAD_CSI_D10 = 58,
0081     MX35_PAD_CSI_D11 = 59,
0082     MX35_PAD_CSI_D12 = 60,
0083     MX35_PAD_CSI_D13 = 61,
0084     MX35_PAD_CSI_D14 = 62,
0085     MX35_PAD_CSI_D15 = 63,
0086     MX35_PAD_CSI_MCLK = 64,
0087     MX35_PAD_CSI_VSYNC = 65,
0088     MX35_PAD_CSI_HSYNC = 66,
0089     MX35_PAD_CSI_PIXCLK = 67,
0090     MX35_PAD_I2C1_CLK = 68,
0091     MX35_PAD_I2C1_DAT = 69,
0092     MX35_PAD_I2C2_CLK = 70,
0093     MX35_PAD_I2C2_DAT = 71,
0094     MX35_PAD_STXD4 = 72,
0095     MX35_PAD_SRXD4 = 73,
0096     MX35_PAD_SCK4 = 74,
0097     MX35_PAD_STXFS4 = 75,
0098     MX35_PAD_STXD5 = 76,
0099     MX35_PAD_SRXD5 = 77,
0100     MX35_PAD_SCK5 = 78,
0101     MX35_PAD_STXFS5 = 79,
0102     MX35_PAD_SCKR = 80,
0103     MX35_PAD_FSR = 81,
0104     MX35_PAD_HCKR = 82,
0105     MX35_PAD_SCKT = 83,
0106     MX35_PAD_FST = 84,
0107     MX35_PAD_HCKT = 85,
0108     MX35_PAD_TX5_RX0 = 86,
0109     MX35_PAD_TX4_RX1 = 87,
0110     MX35_PAD_TX3_RX2 = 88,
0111     MX35_PAD_TX2_RX3 = 89,
0112     MX35_PAD_TX1 = 90,
0113     MX35_PAD_TX0 = 91,
0114     MX35_PAD_CSPI1_MOSI = 92,
0115     MX35_PAD_CSPI1_MISO = 93,
0116     MX35_PAD_CSPI1_SS0 = 94,
0117     MX35_PAD_CSPI1_SS1 = 95,
0118     MX35_PAD_CSPI1_SCLK = 96,
0119     MX35_PAD_CSPI1_SPI_RDY = 97,
0120     MX35_PAD_RXD1 = 98,
0121     MX35_PAD_TXD1 = 99,
0122     MX35_PAD_RTS1 = 100,
0123     MX35_PAD_CTS1 = 101,
0124     MX35_PAD_RXD2 = 102,
0125     MX35_PAD_TXD2 = 103,
0126     MX35_PAD_RTS2 = 104,
0127     MX35_PAD_CTS2 = 105,
0128     MX35_PAD_USBOTG_PWR = 106,
0129     MX35_PAD_USBOTG_OC = 107,
0130     MX35_PAD_LD0 = 108,
0131     MX35_PAD_LD1 = 109,
0132     MX35_PAD_LD2 = 110,
0133     MX35_PAD_LD3 = 111,
0134     MX35_PAD_LD4 = 112,
0135     MX35_PAD_LD5 = 113,
0136     MX35_PAD_LD6 = 114,
0137     MX35_PAD_LD7 = 115,
0138     MX35_PAD_LD8 = 116,
0139     MX35_PAD_LD9 = 117,
0140     MX35_PAD_LD10 = 118,
0141     MX35_PAD_LD11 = 119,
0142     MX35_PAD_LD12 = 120,
0143     MX35_PAD_LD13 = 121,
0144     MX35_PAD_LD14 = 122,
0145     MX35_PAD_LD15 = 123,
0146     MX35_PAD_LD16 = 124,
0147     MX35_PAD_LD17 = 125,
0148     MX35_PAD_LD18 = 126,
0149     MX35_PAD_LD19 = 127,
0150     MX35_PAD_LD20 = 128,
0151     MX35_PAD_LD21 = 129,
0152     MX35_PAD_LD22 = 130,
0153     MX35_PAD_LD23 = 131,
0154     MX35_PAD_D3_HSYNC = 132,
0155     MX35_PAD_D3_FPSHIFT = 133,
0156     MX35_PAD_D3_DRDY = 134,
0157     MX35_PAD_CONTRAST = 135,
0158     MX35_PAD_D3_VSYNC = 136,
0159     MX35_PAD_D3_REV = 137,
0160     MX35_PAD_D3_CLS = 138,
0161     MX35_PAD_D3_SPL = 139,
0162     MX35_PAD_SD1_CMD = 140,
0163     MX35_PAD_SD1_CLK = 141,
0164     MX35_PAD_SD1_DATA0 = 142,
0165     MX35_PAD_SD1_DATA1 = 143,
0166     MX35_PAD_SD1_DATA2 = 144,
0167     MX35_PAD_SD1_DATA3 = 145,
0168     MX35_PAD_SD2_CMD = 146,
0169     MX35_PAD_SD2_CLK = 147,
0170     MX35_PAD_SD2_DATA0 = 148,
0171     MX35_PAD_SD2_DATA1 = 149,
0172     MX35_PAD_SD2_DATA2 = 150,
0173     MX35_PAD_SD2_DATA3 = 151,
0174     MX35_PAD_ATA_CS0 = 152,
0175     MX35_PAD_ATA_CS1 = 153,
0176     MX35_PAD_ATA_DIOR = 154,
0177     MX35_PAD_ATA_DIOW = 155,
0178     MX35_PAD_ATA_DMACK = 156,
0179     MX35_PAD_ATA_RESET_B = 157,
0180     MX35_PAD_ATA_IORDY = 158,
0181     MX35_PAD_ATA_DATA0 = 159,
0182     MX35_PAD_ATA_DATA1 = 160,
0183     MX35_PAD_ATA_DATA2 = 161,
0184     MX35_PAD_ATA_DATA3 = 162,
0185     MX35_PAD_ATA_DATA4 = 163,
0186     MX35_PAD_ATA_DATA5 = 164,
0187     MX35_PAD_ATA_DATA6 = 165,
0188     MX35_PAD_ATA_DATA7 = 166,
0189     MX35_PAD_ATA_DATA8 = 167,
0190     MX35_PAD_ATA_DATA9 = 168,
0191     MX35_PAD_ATA_DATA10 = 169,
0192     MX35_PAD_ATA_DATA11 = 170,
0193     MX35_PAD_ATA_DATA12 = 171,
0194     MX35_PAD_ATA_DATA13 = 172,
0195     MX35_PAD_ATA_DATA14 = 173,
0196     MX35_PAD_ATA_DATA15 = 174,
0197     MX35_PAD_ATA_INTRQ = 175,
0198     MX35_PAD_ATA_BUFF_EN = 176,
0199     MX35_PAD_ATA_DMARQ = 177,
0200     MX35_PAD_ATA_DA0 = 178,
0201     MX35_PAD_ATA_DA1 = 179,
0202     MX35_PAD_ATA_DA2 = 180,
0203     MX35_PAD_MLB_CLK = 181,
0204     MX35_PAD_MLB_DAT = 182,
0205     MX35_PAD_MLB_SIG = 183,
0206     MX35_PAD_FEC_TX_CLK = 184,
0207     MX35_PAD_FEC_RX_CLK = 185,
0208     MX35_PAD_FEC_RX_DV = 186,
0209     MX35_PAD_FEC_COL = 187,
0210     MX35_PAD_FEC_RDATA0 = 188,
0211     MX35_PAD_FEC_TDATA0 = 189,
0212     MX35_PAD_FEC_TX_EN = 190,
0213     MX35_PAD_FEC_MDC = 191,
0214     MX35_PAD_FEC_MDIO = 192,
0215     MX35_PAD_FEC_TX_ERR = 193,
0216     MX35_PAD_FEC_RX_ERR = 194,
0217     MX35_PAD_FEC_CRS = 195,
0218     MX35_PAD_FEC_RDATA1 = 196,
0219     MX35_PAD_FEC_TDATA1 = 197,
0220     MX35_PAD_FEC_RDATA2 = 198,
0221     MX35_PAD_FEC_TDATA2 = 199,
0222     MX35_PAD_FEC_RDATA3 = 200,
0223     MX35_PAD_FEC_TDATA3 = 201,
0224     MX35_PAD_RESERVE1 = 202,
0225     MX35_PAD_RESERVE2 = 203,
0226     MX35_PAD_RESERVE3 = 204,
0227     MX35_PAD_RESERVE4 = 205,
0228     MX35_PAD_RESERVE5 = 206,
0229     MX35_PAD_RESERVE6 = 207,
0230     MX35_PAD_RESERVE7 = 208,
0231     MX35_PAD_RESET_IN_B = 209,
0232     MX35_PAD_POR_B = 210,
0233     MX35_PAD_RESERVE8 = 211,
0234     MX35_PAD_BOOT_MODE0 = 212,
0235     MX35_PAD_BOOT_MODE1 = 213,
0236     MX35_PAD_CLK_MODE0 = 214,
0237     MX35_PAD_CLK_MODE1 = 215,
0238     MX35_PAD_POWER_FAIL = 216,
0239     MX35_PAD_RESERVE9 = 217,
0240     MX35_PAD_RESERVE10 = 218,
0241     MX35_PAD_RESERVE11 = 219,
0242     MX35_PAD_RESERVE12 = 220,
0243     MX35_PAD_RESERVE13 = 221,
0244     MX35_PAD_RESERVE14 = 222,
0245     MX35_PAD_RESERVE15 = 223,
0246     MX35_PAD_RESERVE16 = 224,
0247     MX35_PAD_RESERVE17 = 225,
0248     MX35_PAD_RESERVE18 = 226,
0249     MX35_PAD_RESERVE19 = 227,
0250     MX35_PAD_RESERVE20 = 228,
0251     MX35_PAD_RESERVE21 = 229,
0252     MX35_PAD_RESERVE22 = 230,
0253     MX35_PAD_RESERVE23 = 231,
0254     MX35_PAD_RESERVE24 = 232,
0255     MX35_PAD_RESERVE25 = 233,
0256     MX35_PAD_RESERVE26 = 234,
0257     MX35_PAD_RESERVE27 = 235,
0258     MX35_PAD_RESERVE28 = 236,
0259     MX35_PAD_RESERVE29 = 237,
0260     MX35_PAD_RESERVE30 = 238,
0261     MX35_PAD_RESERVE31 = 239,
0262     MX35_PAD_RESERVE32 = 240,
0263     MX35_PAD_RESERVE33 = 241,
0264     MX35_PAD_RESERVE34 = 242,
0265     MX35_PAD_RESERVE35 = 243,
0266     MX35_PAD_RESERVE36 = 244,
0267     MX35_PAD_SDBA1 = 245,
0268     MX35_PAD_SDBA0 = 246,
0269     MX35_PAD_SD0 = 247,
0270     MX35_PAD_SD1 = 248,
0271     MX35_PAD_SD2 = 249,
0272     MX35_PAD_SD3 = 250,
0273     MX35_PAD_SD4 = 251,
0274     MX35_PAD_SD5 = 252,
0275     MX35_PAD_SD6 = 253,
0276     MX35_PAD_SD7 = 254,
0277     MX35_PAD_SD8 = 255,
0278     MX35_PAD_SD9 = 256,
0279     MX35_PAD_SD10 = 257,
0280     MX35_PAD_SD11 = 258,
0281     MX35_PAD_SD12 = 259,
0282     MX35_PAD_SD13 = 260,
0283     MX35_PAD_SD14 = 261,
0284     MX35_PAD_SD15 = 262,
0285     MX35_PAD_SD16 = 263,
0286     MX35_PAD_SD17 = 264,
0287     MX35_PAD_SD18 = 265,
0288     MX35_PAD_SD19 = 266,
0289     MX35_PAD_SD20 = 267,
0290     MX35_PAD_SD21 = 268,
0291     MX35_PAD_SD22 = 269,
0292     MX35_PAD_SD23 = 270,
0293     MX35_PAD_SD24 = 271,
0294     MX35_PAD_SD25 = 272,
0295     MX35_PAD_SD26 = 273,
0296     MX35_PAD_SD27 = 274,
0297     MX35_PAD_SD28 = 275,
0298     MX35_PAD_SD29 = 276,
0299     MX35_PAD_SD30 = 277,
0300     MX35_PAD_SD31 = 278,
0301     MX35_PAD_DQM0 = 279,
0302     MX35_PAD_DQM1 = 280,
0303     MX35_PAD_DQM2 = 281,
0304     MX35_PAD_DQM3 = 282,
0305     MX35_PAD_RESERVE37 = 283,
0306     MX35_PAD_RESERVE38 = 284,
0307     MX35_PAD_RESERVE39 = 285,
0308     MX35_PAD_RESERVE40 = 286,
0309     MX35_PAD_RESERVE41 = 287,
0310     MX35_PAD_RESERVE42 = 288,
0311     MX35_PAD_RESERVE43 = 289,
0312     MX35_PAD_RESERVE44 = 290,
0313     MX35_PAD_RESERVE45 = 291,
0314     MX35_PAD_RESERVE46 = 292,
0315     MX35_PAD_ECB = 293,
0316     MX35_PAD_RESERVE47 = 294,
0317     MX35_PAD_RESERVE48 = 295,
0318     MX35_PAD_RESERVE49 = 296,
0319     MX35_PAD_RAS = 297,
0320     MX35_PAD_CAS = 298,
0321     MX35_PAD_SDWE = 299,
0322     MX35_PAD_SDCKE0 = 300,
0323     MX35_PAD_SDCKE1 = 301,
0324     MX35_PAD_SDCLK = 302,
0325     MX35_PAD_SDQS0 = 303,
0326     MX35_PAD_SDQS1 = 304,
0327     MX35_PAD_SDQS2 = 305,
0328     MX35_PAD_SDQS3 = 306,
0329     MX35_PAD_RESERVE50 = 307,
0330     MX35_PAD_RESERVE51 = 308,
0331     MX35_PAD_RESERVE52 = 309,
0332     MX35_PAD_RESERVE53 = 310,
0333     MX35_PAD_RESERVE54 = 311,
0334     MX35_PAD_RESERVE55 = 312,
0335     MX35_PAD_D15 = 313,
0336     MX35_PAD_D14 = 314,
0337     MX35_PAD_D13 = 315,
0338     MX35_PAD_D12 = 316,
0339     MX35_PAD_D11 = 317,
0340     MX35_PAD_D10 = 318,
0341     MX35_PAD_D9 = 319,
0342     MX35_PAD_D8 = 320,
0343     MX35_PAD_D7 = 321,
0344     MX35_PAD_D6 = 322,
0345     MX35_PAD_D5 = 323,
0346     MX35_PAD_D4 = 324,
0347     MX35_PAD_D3 = 325,
0348     MX35_PAD_D2 = 326,
0349     MX35_PAD_D1 = 327,
0350     MX35_PAD_D0 = 328,
0351     MX35_PAD_RESERVE56 = 329,
0352     MX35_PAD_RESERVE57 = 330,
0353     MX35_PAD_RESERVE58 = 331,
0354     MX35_PAD_RESERVE59 = 332,
0355     MX35_PAD_RESERVE60 = 333,
0356     MX35_PAD_RESERVE61 = 334,
0357     MX35_PAD_RESERVE62 = 335,
0358     MX35_PAD_RESERVE63 = 336,
0359     MX35_PAD_RESERVE64 = 337,
0360     MX35_PAD_RESERVE65 = 338,
0361     MX35_PAD_RESERVE66 = 339,
0362     MX35_PAD_RESERVE67 = 340,
0363     MX35_PAD_RESERVE68 = 341,
0364     MX35_PAD_RESERVE69 = 342,
0365     MX35_PAD_RESERVE70 = 343,
0366     MX35_PAD_RESERVE71 = 344,
0367     MX35_PAD_RESERVE72 = 345,
0368     MX35_PAD_RESERVE73 = 346,
0369     MX35_PAD_RESERVE74 = 347,
0370     MX35_PAD_RESERVE75 = 348,
0371     MX35_PAD_RESERVE76 = 349,
0372     MX35_PAD_RESERVE77 = 350,
0373     MX35_PAD_RESERVE78 = 351,
0374     MX35_PAD_RESERVE79 = 352,
0375     MX35_PAD_RESERVE80 = 353,
0376     MX35_PAD_RESERVE81 = 354,
0377     MX35_PAD_RESERVE82 = 355,
0378     MX35_PAD_RESERVE83 = 356,
0379     MX35_PAD_RESERVE84 = 357,
0380     MX35_PAD_RESERVE85 = 358,
0381     MX35_PAD_RESERVE86 = 359,
0382     MX35_PAD_RESERVE87 = 360,
0383     MX35_PAD_RESERVE88 = 361,
0384     MX35_PAD_RESERVE89 = 362,
0385     MX35_PAD_RESERVE90 = 363,
0386     MX35_PAD_RESERVE91 = 364,
0387     MX35_PAD_RESERVE92 = 365,
0388     MX35_PAD_RESERVE93 = 366,
0389     MX35_PAD_RESERVE94 = 367,
0390     MX35_PAD_RESERVE95 = 368,
0391     MX35_PAD_RESERVE96 = 369,
0392     MX35_PAD_RESERVE97 = 370,
0393     MX35_PAD_RESERVE98 = 371,
0394     MX35_PAD_RESERVE99 = 372,
0395     MX35_PAD_RESERVE100 = 373,
0396     MX35_PAD_RESERVE101 = 374,
0397     MX35_PAD_RESERVE102 = 375,
0398     MX35_PAD_RESERVE103 = 376,
0399     MX35_PAD_RESERVE104 = 377,
0400     MX35_PAD_RESERVE105 = 378,
0401     MX35_PAD_RTCK = 379,
0402     MX35_PAD_TCK = 380,
0403     MX35_PAD_TMS = 381,
0404     MX35_PAD_TDI = 382,
0405     MX35_PAD_TDO = 383,
0406     MX35_PAD_TRSTB = 384,
0407     MX35_PAD_DE_B = 385,
0408     MX35_PAD_SJC_MOD = 386,
0409     MX35_PAD_RESERVE106 = 387,
0410     MX35_PAD_RESERVE107 = 388,
0411     MX35_PAD_RESERVE108 = 389,
0412     MX35_PAD_RESERVE109 = 390,
0413     MX35_PAD_RESERVE110 = 391,
0414     MX35_PAD_RESERVE111 = 392,
0415     MX35_PAD_RESERVE112 = 393,
0416     MX35_PAD_RESERVE113 = 394,
0417     MX35_PAD_RESERVE114 = 395,
0418     MX35_PAD_RESERVE115 = 396,
0419     MX35_PAD_RESERVE116 = 397,
0420     MX35_PAD_RESERVE117 = 398,
0421     MX35_PAD_RESERVE118 = 399,
0422     MX35_PAD_RESERVE119 = 400,
0423     MX35_PAD_RESERVE120 = 401,
0424     MX35_PAD_RESERVE121 = 402,
0425     MX35_PAD_RESERVE122 = 403,
0426     MX35_PAD_RESERVE123 = 404,
0427     MX35_PAD_RESERVE124 = 405,
0428     MX35_PAD_RESERVE125 = 406,
0429     MX35_PAD_RESERVE126 = 407,
0430     MX35_PAD_RESERVE127 = 408,
0431     MX35_PAD_RESERVE128 = 409,
0432     MX35_PAD_RESERVE129 = 410,
0433     MX35_PAD_RESERVE130 = 411,
0434     MX35_PAD_RESERVE131 = 412,
0435     MX35_PAD_RESERVE132 = 413,
0436     MX35_PAD_RESERVE133 = 414,
0437     MX35_PAD_RESERVE134 = 415,
0438     MX35_PAD_RESERVE135 = 416,
0439     MX35_PAD_RESERVE136 = 417,
0440     MX35_PAD_RESERVE137 = 418,
0441     MX35_PAD_RESERVE138 = 419,
0442     MX35_PAD_RESERVE139 = 420,
0443     MX35_PAD_RESERVE140 = 421,
0444     MX35_PAD_RESERVE141 = 422,
0445     MX35_PAD_RESERVE142 = 423,
0446     MX35_PAD_RESERVE143 = 424,
0447     MX35_PAD_RESERVE144 = 425,
0448     MX35_PAD_RESERVE145 = 426,
0449     MX35_PAD_RESERVE146 = 427,
0450     MX35_PAD_RESERVE147 = 428,
0451     MX35_PAD_RESERVE148 = 429,
0452     MX35_PAD_RESERVE149 = 430,
0453     MX35_PAD_RESERVE150 = 431,
0454     MX35_PAD_RESERVE151 = 432,
0455     MX35_PAD_RESERVE152 = 433,
0456     MX35_PAD_RESERVE153 = 434,
0457     MX35_PAD_RESERVE154 = 435,
0458     MX35_PAD_RESERVE155 = 436,
0459     MX35_PAD_RESERVE156 = 437,
0460     MX35_PAD_RESERVE157 = 438,
0461     MX35_PAD_RESERVE158 = 439,
0462     MX35_PAD_RESERVE159 = 440,
0463     MX35_PAD_RESERVE160 = 441,
0464     MX35_PAD_RESERVE161 = 442,
0465     MX35_PAD_RESERVE162 = 443,
0466     MX35_PAD_RESERVE163 = 444,
0467     MX35_PAD_RESERVE164 = 445,
0468     MX35_PAD_RESERVE165 = 446,
0469     MX35_PAD_RESERVE166 = 447,
0470     MX35_PAD_RESERVE167 = 448,
0471     MX35_PAD_RESERVE168 = 449,
0472     MX35_PAD_RESERVE169 = 450,
0473     MX35_PAD_RESERVE170 = 451,
0474     MX35_PAD_RESERVE171 = 452,
0475     MX35_PAD_RESERVE172 = 453,
0476     MX35_PAD_RESERVE173 = 454,
0477     MX35_PAD_RESERVE174 = 455,
0478     MX35_PAD_RESERVE175 = 456,
0479     MX35_PAD_RESERVE176 = 457,
0480     MX35_PAD_RESERVE177 = 458,
0481     MX35_PAD_RESERVE178 = 459,
0482     MX35_PAD_RESERVE179 = 460,
0483     MX35_PAD_RESERVE180 = 461,
0484     MX35_PAD_RESERVE181 = 462,
0485     MX35_PAD_RESERVE182 = 463,
0486     MX35_PAD_RESERVE183 = 464,
0487     MX35_PAD_RESERVE184 = 465,
0488     MX35_PAD_RESERVE185 = 466,
0489     MX35_PAD_RESERVE186 = 467,
0490     MX35_PAD_RESERVE187 = 468,
0491     MX35_PAD_RESERVE188 = 469,
0492     MX35_PAD_RESERVE189 = 470,
0493     MX35_PAD_RESERVE190 = 471,
0494     MX35_PAD_RESERVE191 = 472,
0495     MX35_PAD_RESERVE192 = 473,
0496     MX35_PAD_RESERVE193 = 474,
0497     MX35_PAD_RESERVE194 = 475,
0498     MX35_PAD_RESERVE195 = 476,
0499     MX35_PAD_RESERVE196 = 477,
0500     MX35_PAD_RESERVE197 = 478,
0501     MX35_PAD_RESERVE198 = 479,
0502     MX35_PAD_RESERVE199 = 480,
0503     MX35_PAD_RESERVE200 = 481,
0504     MX35_PAD_RESERVE201 = 482,
0505     MX35_PAD_EXT_ARMCLK = 483,
0506     MX35_PAD_TEST_MODE = 484,
0507 };
0508 
0509 /* Pad names for the pinmux subsystem */
0510 static const struct pinctrl_pin_desc imx35_pinctrl_pads[] = {
0511     IMX_PINCTRL_PIN(MX35_PAD_RESERVE0),
0512     IMX_PINCTRL_PIN(MX35_PAD_CAPTURE),
0513     IMX_PINCTRL_PIN(MX35_PAD_COMPARE),
0514     IMX_PINCTRL_PIN(MX35_PAD_WDOG_RST),
0515     IMX_PINCTRL_PIN(MX35_PAD_GPIO1_0),
0516     IMX_PINCTRL_PIN(MX35_PAD_GPIO1_1),
0517     IMX_PINCTRL_PIN(MX35_PAD_GPIO2_0),
0518     IMX_PINCTRL_PIN(MX35_PAD_GPIO3_0),
0519     IMX_PINCTRL_PIN(MX35_PAD_CLKO),
0520     IMX_PINCTRL_PIN(MX35_PAD_VSTBY),
0521     IMX_PINCTRL_PIN(MX35_PAD_A0),
0522     IMX_PINCTRL_PIN(MX35_PAD_A1),
0523     IMX_PINCTRL_PIN(MX35_PAD_A2),
0524     IMX_PINCTRL_PIN(MX35_PAD_A3),
0525     IMX_PINCTRL_PIN(MX35_PAD_A4),
0526     IMX_PINCTRL_PIN(MX35_PAD_A5),
0527     IMX_PINCTRL_PIN(MX35_PAD_A6),
0528     IMX_PINCTRL_PIN(MX35_PAD_A7),
0529     IMX_PINCTRL_PIN(MX35_PAD_A8),
0530     IMX_PINCTRL_PIN(MX35_PAD_A9),
0531     IMX_PINCTRL_PIN(MX35_PAD_A10),
0532     IMX_PINCTRL_PIN(MX35_PAD_MA10),
0533     IMX_PINCTRL_PIN(MX35_PAD_A11),
0534     IMX_PINCTRL_PIN(MX35_PAD_A12),
0535     IMX_PINCTRL_PIN(MX35_PAD_A13),
0536     IMX_PINCTRL_PIN(MX35_PAD_A14),
0537     IMX_PINCTRL_PIN(MX35_PAD_A15),
0538     IMX_PINCTRL_PIN(MX35_PAD_A16),
0539     IMX_PINCTRL_PIN(MX35_PAD_A17),
0540     IMX_PINCTRL_PIN(MX35_PAD_A18),
0541     IMX_PINCTRL_PIN(MX35_PAD_A19),
0542     IMX_PINCTRL_PIN(MX35_PAD_A20),
0543     IMX_PINCTRL_PIN(MX35_PAD_A21),
0544     IMX_PINCTRL_PIN(MX35_PAD_A22),
0545     IMX_PINCTRL_PIN(MX35_PAD_A23),
0546     IMX_PINCTRL_PIN(MX35_PAD_A24),
0547     IMX_PINCTRL_PIN(MX35_PAD_A25),
0548     IMX_PINCTRL_PIN(MX35_PAD_EB0),
0549     IMX_PINCTRL_PIN(MX35_PAD_EB1),
0550     IMX_PINCTRL_PIN(MX35_PAD_OE),
0551     IMX_PINCTRL_PIN(MX35_PAD_CS0),
0552     IMX_PINCTRL_PIN(MX35_PAD_CS1),
0553     IMX_PINCTRL_PIN(MX35_PAD_CS2),
0554     IMX_PINCTRL_PIN(MX35_PAD_CS3),
0555     IMX_PINCTRL_PIN(MX35_PAD_CS4),
0556     IMX_PINCTRL_PIN(MX35_PAD_CS5),
0557     IMX_PINCTRL_PIN(MX35_PAD_NF_CE0),
0558     IMX_PINCTRL_PIN(MX35_PAD_LBA),
0559     IMX_PINCTRL_PIN(MX35_PAD_BCLK),
0560     IMX_PINCTRL_PIN(MX35_PAD_RW),
0561     IMX_PINCTRL_PIN(MX35_PAD_NFWE_B),
0562     IMX_PINCTRL_PIN(MX35_PAD_NFRE_B),
0563     IMX_PINCTRL_PIN(MX35_PAD_NFALE),
0564     IMX_PINCTRL_PIN(MX35_PAD_NFCLE),
0565     IMX_PINCTRL_PIN(MX35_PAD_NFWP_B),
0566     IMX_PINCTRL_PIN(MX35_PAD_NFRB),
0567     IMX_PINCTRL_PIN(MX35_PAD_CSI_D8),
0568     IMX_PINCTRL_PIN(MX35_PAD_CSI_D9),
0569     IMX_PINCTRL_PIN(MX35_PAD_CSI_D10),
0570     IMX_PINCTRL_PIN(MX35_PAD_CSI_D11),
0571     IMX_PINCTRL_PIN(MX35_PAD_CSI_D12),
0572     IMX_PINCTRL_PIN(MX35_PAD_CSI_D13),
0573     IMX_PINCTRL_PIN(MX35_PAD_CSI_D14),
0574     IMX_PINCTRL_PIN(MX35_PAD_CSI_D15),
0575     IMX_PINCTRL_PIN(MX35_PAD_CSI_MCLK),
0576     IMX_PINCTRL_PIN(MX35_PAD_CSI_VSYNC),
0577     IMX_PINCTRL_PIN(MX35_PAD_CSI_HSYNC),
0578     IMX_PINCTRL_PIN(MX35_PAD_CSI_PIXCLK),
0579     IMX_PINCTRL_PIN(MX35_PAD_I2C1_CLK),
0580     IMX_PINCTRL_PIN(MX35_PAD_I2C1_DAT),
0581     IMX_PINCTRL_PIN(MX35_PAD_I2C2_CLK),
0582     IMX_PINCTRL_PIN(MX35_PAD_I2C2_DAT),
0583     IMX_PINCTRL_PIN(MX35_PAD_STXD4),
0584     IMX_PINCTRL_PIN(MX35_PAD_SRXD4),
0585     IMX_PINCTRL_PIN(MX35_PAD_SCK4),
0586     IMX_PINCTRL_PIN(MX35_PAD_STXFS4),
0587     IMX_PINCTRL_PIN(MX35_PAD_STXD5),
0588     IMX_PINCTRL_PIN(MX35_PAD_SRXD5),
0589     IMX_PINCTRL_PIN(MX35_PAD_SCK5),
0590     IMX_PINCTRL_PIN(MX35_PAD_STXFS5),
0591     IMX_PINCTRL_PIN(MX35_PAD_SCKR),
0592     IMX_PINCTRL_PIN(MX35_PAD_FSR),
0593     IMX_PINCTRL_PIN(MX35_PAD_HCKR),
0594     IMX_PINCTRL_PIN(MX35_PAD_SCKT),
0595     IMX_PINCTRL_PIN(MX35_PAD_FST),
0596     IMX_PINCTRL_PIN(MX35_PAD_HCKT),
0597     IMX_PINCTRL_PIN(MX35_PAD_TX5_RX0),
0598     IMX_PINCTRL_PIN(MX35_PAD_TX4_RX1),
0599     IMX_PINCTRL_PIN(MX35_PAD_TX3_RX2),
0600     IMX_PINCTRL_PIN(MX35_PAD_TX2_RX3),
0601     IMX_PINCTRL_PIN(MX35_PAD_TX1),
0602     IMX_PINCTRL_PIN(MX35_PAD_TX0),
0603     IMX_PINCTRL_PIN(MX35_PAD_CSPI1_MOSI),
0604     IMX_PINCTRL_PIN(MX35_PAD_CSPI1_MISO),
0605     IMX_PINCTRL_PIN(MX35_PAD_CSPI1_SS0),
0606     IMX_PINCTRL_PIN(MX35_PAD_CSPI1_SS1),
0607     IMX_PINCTRL_PIN(MX35_PAD_CSPI1_SCLK),
0608     IMX_PINCTRL_PIN(MX35_PAD_CSPI1_SPI_RDY),
0609     IMX_PINCTRL_PIN(MX35_PAD_RXD1),
0610     IMX_PINCTRL_PIN(MX35_PAD_TXD1),
0611     IMX_PINCTRL_PIN(MX35_PAD_RTS1),
0612     IMX_PINCTRL_PIN(MX35_PAD_CTS1),
0613     IMX_PINCTRL_PIN(MX35_PAD_RXD2),
0614     IMX_PINCTRL_PIN(MX35_PAD_TXD2),
0615     IMX_PINCTRL_PIN(MX35_PAD_RTS2),
0616     IMX_PINCTRL_PIN(MX35_PAD_CTS2),
0617     IMX_PINCTRL_PIN(MX35_PAD_USBOTG_PWR),
0618     IMX_PINCTRL_PIN(MX35_PAD_USBOTG_OC),
0619     IMX_PINCTRL_PIN(MX35_PAD_LD0),
0620     IMX_PINCTRL_PIN(MX35_PAD_LD1),
0621     IMX_PINCTRL_PIN(MX35_PAD_LD2),
0622     IMX_PINCTRL_PIN(MX35_PAD_LD3),
0623     IMX_PINCTRL_PIN(MX35_PAD_LD4),
0624     IMX_PINCTRL_PIN(MX35_PAD_LD5),
0625     IMX_PINCTRL_PIN(MX35_PAD_LD6),
0626     IMX_PINCTRL_PIN(MX35_PAD_LD7),
0627     IMX_PINCTRL_PIN(MX35_PAD_LD8),
0628     IMX_PINCTRL_PIN(MX35_PAD_LD9),
0629     IMX_PINCTRL_PIN(MX35_PAD_LD10),
0630     IMX_PINCTRL_PIN(MX35_PAD_LD11),
0631     IMX_PINCTRL_PIN(MX35_PAD_LD12),
0632     IMX_PINCTRL_PIN(MX35_PAD_LD13),
0633     IMX_PINCTRL_PIN(MX35_PAD_LD14),
0634     IMX_PINCTRL_PIN(MX35_PAD_LD15),
0635     IMX_PINCTRL_PIN(MX35_PAD_LD16),
0636     IMX_PINCTRL_PIN(MX35_PAD_LD17),
0637     IMX_PINCTRL_PIN(MX35_PAD_LD18),
0638     IMX_PINCTRL_PIN(MX35_PAD_LD19),
0639     IMX_PINCTRL_PIN(MX35_PAD_LD20),
0640     IMX_PINCTRL_PIN(MX35_PAD_LD21),
0641     IMX_PINCTRL_PIN(MX35_PAD_LD22),
0642     IMX_PINCTRL_PIN(MX35_PAD_LD23),
0643     IMX_PINCTRL_PIN(MX35_PAD_D3_HSYNC),
0644     IMX_PINCTRL_PIN(MX35_PAD_D3_FPSHIFT),
0645     IMX_PINCTRL_PIN(MX35_PAD_D3_DRDY),
0646     IMX_PINCTRL_PIN(MX35_PAD_CONTRAST),
0647     IMX_PINCTRL_PIN(MX35_PAD_D3_VSYNC),
0648     IMX_PINCTRL_PIN(MX35_PAD_D3_REV),
0649     IMX_PINCTRL_PIN(MX35_PAD_D3_CLS),
0650     IMX_PINCTRL_PIN(MX35_PAD_D3_SPL),
0651     IMX_PINCTRL_PIN(MX35_PAD_SD1_CMD),
0652     IMX_PINCTRL_PIN(MX35_PAD_SD1_CLK),
0653     IMX_PINCTRL_PIN(MX35_PAD_SD1_DATA0),
0654     IMX_PINCTRL_PIN(MX35_PAD_SD1_DATA1),
0655     IMX_PINCTRL_PIN(MX35_PAD_SD1_DATA2),
0656     IMX_PINCTRL_PIN(MX35_PAD_SD1_DATA3),
0657     IMX_PINCTRL_PIN(MX35_PAD_SD2_CMD),
0658     IMX_PINCTRL_PIN(MX35_PAD_SD2_CLK),
0659     IMX_PINCTRL_PIN(MX35_PAD_SD2_DATA0),
0660     IMX_PINCTRL_PIN(MX35_PAD_SD2_DATA1),
0661     IMX_PINCTRL_PIN(MX35_PAD_SD2_DATA2),
0662     IMX_PINCTRL_PIN(MX35_PAD_SD2_DATA3),
0663     IMX_PINCTRL_PIN(MX35_PAD_ATA_CS0),
0664     IMX_PINCTRL_PIN(MX35_PAD_ATA_CS1),
0665     IMX_PINCTRL_PIN(MX35_PAD_ATA_DIOR),
0666     IMX_PINCTRL_PIN(MX35_PAD_ATA_DIOW),
0667     IMX_PINCTRL_PIN(MX35_PAD_ATA_DMACK),
0668     IMX_PINCTRL_PIN(MX35_PAD_ATA_RESET_B),
0669     IMX_PINCTRL_PIN(MX35_PAD_ATA_IORDY),
0670     IMX_PINCTRL_PIN(MX35_PAD_ATA_DATA0),
0671     IMX_PINCTRL_PIN(MX35_PAD_ATA_DATA1),
0672     IMX_PINCTRL_PIN(MX35_PAD_ATA_DATA2),
0673     IMX_PINCTRL_PIN(MX35_PAD_ATA_DATA3),
0674     IMX_PINCTRL_PIN(MX35_PAD_ATA_DATA4),
0675     IMX_PINCTRL_PIN(MX35_PAD_ATA_DATA5),
0676     IMX_PINCTRL_PIN(MX35_PAD_ATA_DATA6),
0677     IMX_PINCTRL_PIN(MX35_PAD_ATA_DATA7),
0678     IMX_PINCTRL_PIN(MX35_PAD_ATA_DATA8),
0679     IMX_PINCTRL_PIN(MX35_PAD_ATA_DATA9),
0680     IMX_PINCTRL_PIN(MX35_PAD_ATA_DATA10),
0681     IMX_PINCTRL_PIN(MX35_PAD_ATA_DATA11),
0682     IMX_PINCTRL_PIN(MX35_PAD_ATA_DATA12),
0683     IMX_PINCTRL_PIN(MX35_PAD_ATA_DATA13),
0684     IMX_PINCTRL_PIN(MX35_PAD_ATA_DATA14),
0685     IMX_PINCTRL_PIN(MX35_PAD_ATA_DATA15),
0686     IMX_PINCTRL_PIN(MX35_PAD_ATA_INTRQ),
0687     IMX_PINCTRL_PIN(MX35_PAD_ATA_BUFF_EN),
0688     IMX_PINCTRL_PIN(MX35_PAD_ATA_DMARQ),
0689     IMX_PINCTRL_PIN(MX35_PAD_ATA_DA0),
0690     IMX_PINCTRL_PIN(MX35_PAD_ATA_DA1),
0691     IMX_PINCTRL_PIN(MX35_PAD_ATA_DA2),
0692     IMX_PINCTRL_PIN(MX35_PAD_MLB_CLK),
0693     IMX_PINCTRL_PIN(MX35_PAD_MLB_DAT),
0694     IMX_PINCTRL_PIN(MX35_PAD_MLB_SIG),
0695     IMX_PINCTRL_PIN(MX35_PAD_FEC_TX_CLK),
0696     IMX_PINCTRL_PIN(MX35_PAD_FEC_RX_CLK),
0697     IMX_PINCTRL_PIN(MX35_PAD_FEC_RX_DV),
0698     IMX_PINCTRL_PIN(MX35_PAD_FEC_COL),
0699     IMX_PINCTRL_PIN(MX35_PAD_FEC_RDATA0),
0700     IMX_PINCTRL_PIN(MX35_PAD_FEC_TDATA0),
0701     IMX_PINCTRL_PIN(MX35_PAD_FEC_TX_EN),
0702     IMX_PINCTRL_PIN(MX35_PAD_FEC_MDC),
0703     IMX_PINCTRL_PIN(MX35_PAD_FEC_MDIO),
0704     IMX_PINCTRL_PIN(MX35_PAD_FEC_TX_ERR),
0705     IMX_PINCTRL_PIN(MX35_PAD_FEC_RX_ERR),
0706     IMX_PINCTRL_PIN(MX35_PAD_FEC_CRS),
0707     IMX_PINCTRL_PIN(MX35_PAD_FEC_RDATA1),
0708     IMX_PINCTRL_PIN(MX35_PAD_FEC_TDATA1),
0709     IMX_PINCTRL_PIN(MX35_PAD_FEC_RDATA2),
0710     IMX_PINCTRL_PIN(MX35_PAD_FEC_TDATA2),
0711     IMX_PINCTRL_PIN(MX35_PAD_FEC_RDATA3),
0712     IMX_PINCTRL_PIN(MX35_PAD_FEC_TDATA3),
0713     IMX_PINCTRL_PIN(MX35_PAD_RESERVE1),
0714     IMX_PINCTRL_PIN(MX35_PAD_RESERVE2),
0715     IMX_PINCTRL_PIN(MX35_PAD_RESERVE3),
0716     IMX_PINCTRL_PIN(MX35_PAD_RESERVE4),
0717     IMX_PINCTRL_PIN(MX35_PAD_RESERVE5),
0718     IMX_PINCTRL_PIN(MX35_PAD_RESERVE6),
0719     IMX_PINCTRL_PIN(MX35_PAD_RESERVE7),
0720     IMX_PINCTRL_PIN(MX35_PAD_RESET_IN_B),
0721     IMX_PINCTRL_PIN(MX35_PAD_POR_B),
0722     IMX_PINCTRL_PIN(MX35_PAD_RESERVE8),
0723     IMX_PINCTRL_PIN(MX35_PAD_BOOT_MODE0),
0724     IMX_PINCTRL_PIN(MX35_PAD_BOOT_MODE1),
0725     IMX_PINCTRL_PIN(MX35_PAD_CLK_MODE0),
0726     IMX_PINCTRL_PIN(MX35_PAD_CLK_MODE1),
0727     IMX_PINCTRL_PIN(MX35_PAD_POWER_FAIL),
0728     IMX_PINCTRL_PIN(MX35_PAD_RESERVE9),
0729     IMX_PINCTRL_PIN(MX35_PAD_RESERVE10),
0730     IMX_PINCTRL_PIN(MX35_PAD_RESERVE11),
0731     IMX_PINCTRL_PIN(MX35_PAD_RESERVE12),
0732     IMX_PINCTRL_PIN(MX35_PAD_RESERVE13),
0733     IMX_PINCTRL_PIN(MX35_PAD_RESERVE14),
0734     IMX_PINCTRL_PIN(MX35_PAD_RESERVE15),
0735     IMX_PINCTRL_PIN(MX35_PAD_RESERVE16),
0736     IMX_PINCTRL_PIN(MX35_PAD_RESERVE17),
0737     IMX_PINCTRL_PIN(MX35_PAD_RESERVE18),
0738     IMX_PINCTRL_PIN(MX35_PAD_RESERVE19),
0739     IMX_PINCTRL_PIN(MX35_PAD_RESERVE20),
0740     IMX_PINCTRL_PIN(MX35_PAD_RESERVE21),
0741     IMX_PINCTRL_PIN(MX35_PAD_RESERVE22),
0742     IMX_PINCTRL_PIN(MX35_PAD_RESERVE23),
0743     IMX_PINCTRL_PIN(MX35_PAD_RESERVE24),
0744     IMX_PINCTRL_PIN(MX35_PAD_RESERVE25),
0745     IMX_PINCTRL_PIN(MX35_PAD_RESERVE26),
0746     IMX_PINCTRL_PIN(MX35_PAD_RESERVE27),
0747     IMX_PINCTRL_PIN(MX35_PAD_RESERVE28),
0748     IMX_PINCTRL_PIN(MX35_PAD_RESERVE29),
0749     IMX_PINCTRL_PIN(MX35_PAD_RESERVE30),
0750     IMX_PINCTRL_PIN(MX35_PAD_RESERVE31),
0751     IMX_PINCTRL_PIN(MX35_PAD_RESERVE32),
0752     IMX_PINCTRL_PIN(MX35_PAD_RESERVE33),
0753     IMX_PINCTRL_PIN(MX35_PAD_RESERVE34),
0754     IMX_PINCTRL_PIN(MX35_PAD_RESERVE35),
0755     IMX_PINCTRL_PIN(MX35_PAD_RESERVE36),
0756     IMX_PINCTRL_PIN(MX35_PAD_SDBA1),
0757     IMX_PINCTRL_PIN(MX35_PAD_SDBA0),
0758     IMX_PINCTRL_PIN(MX35_PAD_SD0),
0759     IMX_PINCTRL_PIN(MX35_PAD_SD1),
0760     IMX_PINCTRL_PIN(MX35_PAD_SD2),
0761     IMX_PINCTRL_PIN(MX35_PAD_SD3),
0762     IMX_PINCTRL_PIN(MX35_PAD_SD4),
0763     IMX_PINCTRL_PIN(MX35_PAD_SD5),
0764     IMX_PINCTRL_PIN(MX35_PAD_SD6),
0765     IMX_PINCTRL_PIN(MX35_PAD_SD7),
0766     IMX_PINCTRL_PIN(MX35_PAD_SD8),
0767     IMX_PINCTRL_PIN(MX35_PAD_SD9),
0768     IMX_PINCTRL_PIN(MX35_PAD_SD10),
0769     IMX_PINCTRL_PIN(MX35_PAD_SD11),
0770     IMX_PINCTRL_PIN(MX35_PAD_SD12),
0771     IMX_PINCTRL_PIN(MX35_PAD_SD13),
0772     IMX_PINCTRL_PIN(MX35_PAD_SD14),
0773     IMX_PINCTRL_PIN(MX35_PAD_SD15),
0774     IMX_PINCTRL_PIN(MX35_PAD_SD16),
0775     IMX_PINCTRL_PIN(MX35_PAD_SD17),
0776     IMX_PINCTRL_PIN(MX35_PAD_SD18),
0777     IMX_PINCTRL_PIN(MX35_PAD_SD19),
0778     IMX_PINCTRL_PIN(MX35_PAD_SD20),
0779     IMX_PINCTRL_PIN(MX35_PAD_SD21),
0780     IMX_PINCTRL_PIN(MX35_PAD_SD22),
0781     IMX_PINCTRL_PIN(MX35_PAD_SD23),
0782     IMX_PINCTRL_PIN(MX35_PAD_SD24),
0783     IMX_PINCTRL_PIN(MX35_PAD_SD25),
0784     IMX_PINCTRL_PIN(MX35_PAD_SD26),
0785     IMX_PINCTRL_PIN(MX35_PAD_SD27),
0786     IMX_PINCTRL_PIN(MX35_PAD_SD28),
0787     IMX_PINCTRL_PIN(MX35_PAD_SD29),
0788     IMX_PINCTRL_PIN(MX35_PAD_SD30),
0789     IMX_PINCTRL_PIN(MX35_PAD_SD31),
0790     IMX_PINCTRL_PIN(MX35_PAD_DQM0),
0791     IMX_PINCTRL_PIN(MX35_PAD_DQM1),
0792     IMX_PINCTRL_PIN(MX35_PAD_DQM2),
0793     IMX_PINCTRL_PIN(MX35_PAD_DQM3),
0794     IMX_PINCTRL_PIN(MX35_PAD_RESERVE37),
0795     IMX_PINCTRL_PIN(MX35_PAD_RESERVE38),
0796     IMX_PINCTRL_PIN(MX35_PAD_RESERVE39),
0797     IMX_PINCTRL_PIN(MX35_PAD_RESERVE40),
0798     IMX_PINCTRL_PIN(MX35_PAD_RESERVE41),
0799     IMX_PINCTRL_PIN(MX35_PAD_RESERVE42),
0800     IMX_PINCTRL_PIN(MX35_PAD_RESERVE43),
0801     IMX_PINCTRL_PIN(MX35_PAD_RESERVE44),
0802     IMX_PINCTRL_PIN(MX35_PAD_RESERVE45),
0803     IMX_PINCTRL_PIN(MX35_PAD_RESERVE46),
0804     IMX_PINCTRL_PIN(MX35_PAD_ECB),
0805     IMX_PINCTRL_PIN(MX35_PAD_RESERVE47),
0806     IMX_PINCTRL_PIN(MX35_PAD_RESERVE48),
0807     IMX_PINCTRL_PIN(MX35_PAD_RESERVE49),
0808     IMX_PINCTRL_PIN(MX35_PAD_RAS),
0809     IMX_PINCTRL_PIN(MX35_PAD_CAS),
0810     IMX_PINCTRL_PIN(MX35_PAD_SDWE),
0811     IMX_PINCTRL_PIN(MX35_PAD_SDCKE0),
0812     IMX_PINCTRL_PIN(MX35_PAD_SDCKE1),
0813     IMX_PINCTRL_PIN(MX35_PAD_SDCLK),
0814     IMX_PINCTRL_PIN(MX35_PAD_SDQS0),
0815     IMX_PINCTRL_PIN(MX35_PAD_SDQS1),
0816     IMX_PINCTRL_PIN(MX35_PAD_SDQS2),
0817     IMX_PINCTRL_PIN(MX35_PAD_SDQS3),
0818     IMX_PINCTRL_PIN(MX35_PAD_RESERVE50),
0819     IMX_PINCTRL_PIN(MX35_PAD_RESERVE51),
0820     IMX_PINCTRL_PIN(MX35_PAD_RESERVE52),
0821     IMX_PINCTRL_PIN(MX35_PAD_RESERVE53),
0822     IMX_PINCTRL_PIN(MX35_PAD_RESERVE54),
0823     IMX_PINCTRL_PIN(MX35_PAD_RESERVE55),
0824     IMX_PINCTRL_PIN(MX35_PAD_D15),
0825     IMX_PINCTRL_PIN(MX35_PAD_D14),
0826     IMX_PINCTRL_PIN(MX35_PAD_D13),
0827     IMX_PINCTRL_PIN(MX35_PAD_D12),
0828     IMX_PINCTRL_PIN(MX35_PAD_D11),
0829     IMX_PINCTRL_PIN(MX35_PAD_D10),
0830     IMX_PINCTRL_PIN(MX35_PAD_D9),
0831     IMX_PINCTRL_PIN(MX35_PAD_D8),
0832     IMX_PINCTRL_PIN(MX35_PAD_D7),
0833     IMX_PINCTRL_PIN(MX35_PAD_D6),
0834     IMX_PINCTRL_PIN(MX35_PAD_D5),
0835     IMX_PINCTRL_PIN(MX35_PAD_D4),
0836     IMX_PINCTRL_PIN(MX35_PAD_D3),
0837     IMX_PINCTRL_PIN(MX35_PAD_D2),
0838     IMX_PINCTRL_PIN(MX35_PAD_D1),
0839     IMX_PINCTRL_PIN(MX35_PAD_D0),
0840     IMX_PINCTRL_PIN(MX35_PAD_RESERVE56),
0841     IMX_PINCTRL_PIN(MX35_PAD_RESERVE57),
0842     IMX_PINCTRL_PIN(MX35_PAD_RESERVE58),
0843     IMX_PINCTRL_PIN(MX35_PAD_RESERVE59),
0844     IMX_PINCTRL_PIN(MX35_PAD_RESERVE60),
0845     IMX_PINCTRL_PIN(MX35_PAD_RESERVE61),
0846     IMX_PINCTRL_PIN(MX35_PAD_RESERVE62),
0847     IMX_PINCTRL_PIN(MX35_PAD_RESERVE63),
0848     IMX_PINCTRL_PIN(MX35_PAD_RESERVE64),
0849     IMX_PINCTRL_PIN(MX35_PAD_RESERVE65),
0850     IMX_PINCTRL_PIN(MX35_PAD_RESERVE66),
0851     IMX_PINCTRL_PIN(MX35_PAD_RESERVE67),
0852     IMX_PINCTRL_PIN(MX35_PAD_RESERVE68),
0853     IMX_PINCTRL_PIN(MX35_PAD_RESERVE69),
0854     IMX_PINCTRL_PIN(MX35_PAD_RESERVE70),
0855     IMX_PINCTRL_PIN(MX35_PAD_RESERVE71),
0856     IMX_PINCTRL_PIN(MX35_PAD_RESERVE72),
0857     IMX_PINCTRL_PIN(MX35_PAD_RESERVE73),
0858     IMX_PINCTRL_PIN(MX35_PAD_RESERVE74),
0859     IMX_PINCTRL_PIN(MX35_PAD_RESERVE75),
0860     IMX_PINCTRL_PIN(MX35_PAD_RESERVE76),
0861     IMX_PINCTRL_PIN(MX35_PAD_RESERVE77),
0862     IMX_PINCTRL_PIN(MX35_PAD_RESERVE78),
0863     IMX_PINCTRL_PIN(MX35_PAD_RESERVE79),
0864     IMX_PINCTRL_PIN(MX35_PAD_RESERVE80),
0865     IMX_PINCTRL_PIN(MX35_PAD_RESERVE81),
0866     IMX_PINCTRL_PIN(MX35_PAD_RESERVE82),
0867     IMX_PINCTRL_PIN(MX35_PAD_RESERVE83),
0868     IMX_PINCTRL_PIN(MX35_PAD_RESERVE84),
0869     IMX_PINCTRL_PIN(MX35_PAD_RESERVE85),
0870     IMX_PINCTRL_PIN(MX35_PAD_RESERVE86),
0871     IMX_PINCTRL_PIN(MX35_PAD_RESERVE87),
0872     IMX_PINCTRL_PIN(MX35_PAD_RESERVE88),
0873     IMX_PINCTRL_PIN(MX35_PAD_RESERVE89),
0874     IMX_PINCTRL_PIN(MX35_PAD_RESERVE90),
0875     IMX_PINCTRL_PIN(MX35_PAD_RESERVE91),
0876     IMX_PINCTRL_PIN(MX35_PAD_RESERVE92),
0877     IMX_PINCTRL_PIN(MX35_PAD_RESERVE93),
0878     IMX_PINCTRL_PIN(MX35_PAD_RESERVE94),
0879     IMX_PINCTRL_PIN(MX35_PAD_RESERVE95),
0880     IMX_PINCTRL_PIN(MX35_PAD_RESERVE96),
0881     IMX_PINCTRL_PIN(MX35_PAD_RESERVE97),
0882     IMX_PINCTRL_PIN(MX35_PAD_RESERVE98),
0883     IMX_PINCTRL_PIN(MX35_PAD_RESERVE99),
0884     IMX_PINCTRL_PIN(MX35_PAD_RESERVE100),
0885     IMX_PINCTRL_PIN(MX35_PAD_RESERVE101),
0886     IMX_PINCTRL_PIN(MX35_PAD_RESERVE102),
0887     IMX_PINCTRL_PIN(MX35_PAD_RESERVE103),
0888     IMX_PINCTRL_PIN(MX35_PAD_RESERVE104),
0889     IMX_PINCTRL_PIN(MX35_PAD_RESERVE105),
0890     IMX_PINCTRL_PIN(MX35_PAD_RTCK),
0891     IMX_PINCTRL_PIN(MX35_PAD_TCK),
0892     IMX_PINCTRL_PIN(MX35_PAD_TMS),
0893     IMX_PINCTRL_PIN(MX35_PAD_TDI),
0894     IMX_PINCTRL_PIN(MX35_PAD_TDO),
0895     IMX_PINCTRL_PIN(MX35_PAD_TRSTB),
0896     IMX_PINCTRL_PIN(MX35_PAD_DE_B),
0897     IMX_PINCTRL_PIN(MX35_PAD_SJC_MOD),
0898     IMX_PINCTRL_PIN(MX35_PAD_RESERVE106),
0899     IMX_PINCTRL_PIN(MX35_PAD_RESERVE107),
0900     IMX_PINCTRL_PIN(MX35_PAD_RESERVE108),
0901     IMX_PINCTRL_PIN(MX35_PAD_RESERVE109),
0902     IMX_PINCTRL_PIN(MX35_PAD_RESERVE110),
0903     IMX_PINCTRL_PIN(MX35_PAD_RESERVE111),
0904     IMX_PINCTRL_PIN(MX35_PAD_RESERVE112),
0905     IMX_PINCTRL_PIN(MX35_PAD_RESERVE113),
0906     IMX_PINCTRL_PIN(MX35_PAD_RESERVE114),
0907     IMX_PINCTRL_PIN(MX35_PAD_RESERVE115),
0908     IMX_PINCTRL_PIN(MX35_PAD_RESERVE116),
0909     IMX_PINCTRL_PIN(MX35_PAD_RESERVE117),
0910     IMX_PINCTRL_PIN(MX35_PAD_RESERVE118),
0911     IMX_PINCTRL_PIN(MX35_PAD_RESERVE119),
0912     IMX_PINCTRL_PIN(MX35_PAD_RESERVE120),
0913     IMX_PINCTRL_PIN(MX35_PAD_RESERVE121),
0914     IMX_PINCTRL_PIN(MX35_PAD_RESERVE122),
0915     IMX_PINCTRL_PIN(MX35_PAD_RESERVE123),
0916     IMX_PINCTRL_PIN(MX35_PAD_RESERVE124),
0917     IMX_PINCTRL_PIN(MX35_PAD_RESERVE125),
0918     IMX_PINCTRL_PIN(MX35_PAD_RESERVE126),
0919     IMX_PINCTRL_PIN(MX35_PAD_RESERVE127),
0920     IMX_PINCTRL_PIN(MX35_PAD_RESERVE128),
0921     IMX_PINCTRL_PIN(MX35_PAD_RESERVE129),
0922     IMX_PINCTRL_PIN(MX35_PAD_RESERVE130),
0923     IMX_PINCTRL_PIN(MX35_PAD_RESERVE131),
0924     IMX_PINCTRL_PIN(MX35_PAD_RESERVE132),
0925     IMX_PINCTRL_PIN(MX35_PAD_RESERVE133),
0926     IMX_PINCTRL_PIN(MX35_PAD_RESERVE134),
0927     IMX_PINCTRL_PIN(MX35_PAD_RESERVE135),
0928     IMX_PINCTRL_PIN(MX35_PAD_RESERVE136),
0929     IMX_PINCTRL_PIN(MX35_PAD_RESERVE137),
0930     IMX_PINCTRL_PIN(MX35_PAD_RESERVE138),
0931     IMX_PINCTRL_PIN(MX35_PAD_RESERVE139),
0932     IMX_PINCTRL_PIN(MX35_PAD_RESERVE140),
0933     IMX_PINCTRL_PIN(MX35_PAD_RESERVE141),
0934     IMX_PINCTRL_PIN(MX35_PAD_RESERVE142),
0935     IMX_PINCTRL_PIN(MX35_PAD_RESERVE143),
0936     IMX_PINCTRL_PIN(MX35_PAD_RESERVE144),
0937     IMX_PINCTRL_PIN(MX35_PAD_RESERVE145),
0938     IMX_PINCTRL_PIN(MX35_PAD_RESERVE146),
0939     IMX_PINCTRL_PIN(MX35_PAD_RESERVE147),
0940     IMX_PINCTRL_PIN(MX35_PAD_RESERVE148),
0941     IMX_PINCTRL_PIN(MX35_PAD_RESERVE149),
0942     IMX_PINCTRL_PIN(MX35_PAD_RESERVE150),
0943     IMX_PINCTRL_PIN(MX35_PAD_RESERVE151),
0944     IMX_PINCTRL_PIN(MX35_PAD_RESERVE152),
0945     IMX_PINCTRL_PIN(MX35_PAD_RESERVE153),
0946     IMX_PINCTRL_PIN(MX35_PAD_RESERVE154),
0947     IMX_PINCTRL_PIN(MX35_PAD_RESERVE155),
0948     IMX_PINCTRL_PIN(MX35_PAD_RESERVE156),
0949     IMX_PINCTRL_PIN(MX35_PAD_RESERVE157),
0950     IMX_PINCTRL_PIN(MX35_PAD_RESERVE158),
0951     IMX_PINCTRL_PIN(MX35_PAD_RESERVE159),
0952     IMX_PINCTRL_PIN(MX35_PAD_RESERVE160),
0953     IMX_PINCTRL_PIN(MX35_PAD_RESERVE161),
0954     IMX_PINCTRL_PIN(MX35_PAD_RESERVE162),
0955     IMX_PINCTRL_PIN(MX35_PAD_RESERVE163),
0956     IMX_PINCTRL_PIN(MX35_PAD_RESERVE164),
0957     IMX_PINCTRL_PIN(MX35_PAD_RESERVE165),
0958     IMX_PINCTRL_PIN(MX35_PAD_RESERVE166),
0959     IMX_PINCTRL_PIN(MX35_PAD_RESERVE167),
0960     IMX_PINCTRL_PIN(MX35_PAD_RESERVE168),
0961     IMX_PINCTRL_PIN(MX35_PAD_RESERVE169),
0962     IMX_PINCTRL_PIN(MX35_PAD_RESERVE170),
0963     IMX_PINCTRL_PIN(MX35_PAD_RESERVE171),
0964     IMX_PINCTRL_PIN(MX35_PAD_RESERVE172),
0965     IMX_PINCTRL_PIN(MX35_PAD_RESERVE173),
0966     IMX_PINCTRL_PIN(MX35_PAD_RESERVE174),
0967     IMX_PINCTRL_PIN(MX35_PAD_RESERVE175),
0968     IMX_PINCTRL_PIN(MX35_PAD_RESERVE176),
0969     IMX_PINCTRL_PIN(MX35_PAD_RESERVE177),
0970     IMX_PINCTRL_PIN(MX35_PAD_RESERVE178),
0971     IMX_PINCTRL_PIN(MX35_PAD_RESERVE179),
0972     IMX_PINCTRL_PIN(MX35_PAD_RESERVE180),
0973     IMX_PINCTRL_PIN(MX35_PAD_RESERVE181),
0974     IMX_PINCTRL_PIN(MX35_PAD_RESERVE182),
0975     IMX_PINCTRL_PIN(MX35_PAD_RESERVE183),
0976     IMX_PINCTRL_PIN(MX35_PAD_RESERVE184),
0977     IMX_PINCTRL_PIN(MX35_PAD_RESERVE185),
0978     IMX_PINCTRL_PIN(MX35_PAD_RESERVE186),
0979     IMX_PINCTRL_PIN(MX35_PAD_RESERVE187),
0980     IMX_PINCTRL_PIN(MX35_PAD_RESERVE188),
0981     IMX_PINCTRL_PIN(MX35_PAD_RESERVE189),
0982     IMX_PINCTRL_PIN(MX35_PAD_RESERVE190),
0983     IMX_PINCTRL_PIN(MX35_PAD_RESERVE191),
0984     IMX_PINCTRL_PIN(MX35_PAD_RESERVE192),
0985     IMX_PINCTRL_PIN(MX35_PAD_RESERVE193),
0986     IMX_PINCTRL_PIN(MX35_PAD_RESERVE194),
0987     IMX_PINCTRL_PIN(MX35_PAD_RESERVE195),
0988     IMX_PINCTRL_PIN(MX35_PAD_RESERVE196),
0989     IMX_PINCTRL_PIN(MX35_PAD_RESERVE197),
0990     IMX_PINCTRL_PIN(MX35_PAD_RESERVE198),
0991     IMX_PINCTRL_PIN(MX35_PAD_RESERVE199),
0992     IMX_PINCTRL_PIN(MX35_PAD_RESERVE200),
0993     IMX_PINCTRL_PIN(MX35_PAD_RESERVE201),
0994     IMX_PINCTRL_PIN(MX35_PAD_EXT_ARMCLK),
0995     IMX_PINCTRL_PIN(MX35_PAD_TEST_MODE),
0996 };
0997 
0998 static const struct imx_pinctrl_soc_info imx35_pinctrl_info = {
0999     .pins = imx35_pinctrl_pads,
1000     .npins = ARRAY_SIZE(imx35_pinctrl_pads),
1001 };
1002 
1003 static const struct of_device_id imx35_pinctrl_of_match[] = {
1004     { .compatible = "fsl,imx35-iomuxc", },
1005     { /* sentinel */ }
1006 };
1007 
1008 static int imx35_pinctrl_probe(struct platform_device *pdev)
1009 {
1010     return imx_pinctrl_probe(pdev, &imx35_pinctrl_info);
1011 }
1012 
1013 static struct platform_driver imx35_pinctrl_driver = {
1014     .driver = {
1015         .name = "imx35-pinctrl",
1016         .of_match_table = imx35_pinctrl_of_match,
1017         .suppress_bind_attrs = true,
1018     },
1019     .probe = imx35_pinctrl_probe,
1020 };
1021 
1022 static int __init imx35_pinctrl_init(void)
1023 {
1024     return platform_driver_register(&imx35_pinctrl_driver);
1025 }
1026 arch_initcall(imx35_pinctrl_init);