1*fff65226SJesse Taube // SPDX-License-Identifier: GPL-2.0 2*fff65226SJesse Taube /* 3*fff65226SJesse Taube * Copyright (C) 2022 4*fff65226SJesse Taube * Author(s): Jesse Taube <Mr.Bossman075@gmail.com> 5*fff65226SJesse Taube */ 6*fff65226SJesse Taube 7*fff65226SJesse Taube #include <linux/err.h> 8*fff65226SJesse Taube #include <linux/init.h> 9*fff65226SJesse Taube #include <linux/of_device.h> 10*fff65226SJesse Taube #include <linux/pinctrl/pinctrl.h> 11*fff65226SJesse Taube #include <linux/platform_device.h> 12*fff65226SJesse Taube 13*fff65226SJesse Taube #include "pinctrl-imx.h" 14*fff65226SJesse Taube 15*fff65226SJesse Taube enum imxrt1170_pads { 16*fff65226SJesse Taube IMXRT1170_PAD_RESERVE0, 17*fff65226SJesse Taube IMXRT1170_PAD_RESERVE1, 18*fff65226SJesse Taube IMXRT1170_PAD_RESERVE2, 19*fff65226SJesse Taube IMXRT1170_PAD_RESERVE3, 20*fff65226SJesse Taube IMXRT1170_PAD_EMC_B1_00, 21*fff65226SJesse Taube IMXRT1170_PAD_EMC_B1_01, 22*fff65226SJesse Taube IMXRT1170_PAD_EMC_B1_02, 23*fff65226SJesse Taube IMXRT1170_PAD_EMC_B1_03, 24*fff65226SJesse Taube IMXRT1170_PAD_EMC_B1_04, 25*fff65226SJesse Taube IMXRT1170_PAD_EMC_B1_05, 26*fff65226SJesse Taube IMXRT1170_PAD_EMC_B1_06, 27*fff65226SJesse Taube IMXRT1170_PAD_EMC_B1_07, 28*fff65226SJesse Taube IMXRT1170_PAD_EMC_B1_08, 29*fff65226SJesse Taube IMXRT1170_PAD_EMC_B1_09, 30*fff65226SJesse Taube IMXRT1170_PAD_EMC_B1_10, 31*fff65226SJesse Taube IMXRT1170_PAD_EMC_B1_11, 32*fff65226SJesse Taube IMXRT1170_PAD_EMC_B1_12, 33*fff65226SJesse Taube IMXRT1170_PAD_EMC_B1_13, 34*fff65226SJesse Taube IMXRT1170_PAD_EMC_B1_14, 35*fff65226SJesse Taube IMXRT1170_PAD_EMC_B1_15, 36*fff65226SJesse Taube IMXRT1170_PAD_EMC_B1_16, 37*fff65226SJesse Taube IMXRT1170_PAD_EMC_B1_17, 38*fff65226SJesse Taube IMXRT1170_PAD_EMC_B1_18, 39*fff65226SJesse Taube IMXRT1170_PAD_EMC_B1_19, 40*fff65226SJesse Taube IMXRT1170_PAD_EMC_B1_20, 41*fff65226SJesse Taube IMXRT1170_PAD_EMC_B1_21, 42*fff65226SJesse Taube IMXRT1170_PAD_EMC_B1_22, 43*fff65226SJesse Taube IMXRT1170_PAD_EMC_B1_23, 44*fff65226SJesse Taube IMXRT1170_PAD_EMC_B1_24, 45*fff65226SJesse Taube IMXRT1170_PAD_EMC_B1_25, 46*fff65226SJesse Taube IMXRT1170_PAD_EMC_B1_26, 47*fff65226SJesse Taube IMXRT1170_PAD_EMC_B1_27, 48*fff65226SJesse Taube IMXRT1170_PAD_EMC_B1_28, 49*fff65226SJesse Taube IMXRT1170_PAD_EMC_B1_29, 50*fff65226SJesse Taube IMXRT1170_PAD_EMC_B1_30, 51*fff65226SJesse Taube IMXRT1170_PAD_EMC_B1_31, 52*fff65226SJesse Taube IMXRT1170_PAD_EMC_B1_32, 53*fff65226SJesse Taube IMXRT1170_PAD_EMC_B1_33, 54*fff65226SJesse Taube IMXRT1170_PAD_EMC_B1_34, 55*fff65226SJesse Taube IMXRT1170_PAD_EMC_B1_35, 56*fff65226SJesse Taube IMXRT1170_PAD_EMC_B1_36, 57*fff65226SJesse Taube IMXRT1170_PAD_EMC_B1_37, 58*fff65226SJesse Taube IMXRT1170_PAD_EMC_B1_38, 59*fff65226SJesse Taube IMXRT1170_PAD_EMC_B1_39, 60*fff65226SJesse Taube IMXRT1170_PAD_EMC_B1_40, 61*fff65226SJesse Taube IMXRT1170_PAD_EMC_B1_41, 62*fff65226SJesse Taube IMXRT1170_PAD_EMC_B2_00, 63*fff65226SJesse Taube IMXRT1170_PAD_EMC_B2_01, 64*fff65226SJesse Taube IMXRT1170_PAD_EMC_B2_02, 65*fff65226SJesse Taube IMXRT1170_PAD_EMC_B2_03, 66*fff65226SJesse Taube IMXRT1170_PAD_EMC_B2_04, 67*fff65226SJesse Taube IMXRT1170_PAD_EMC_B2_05, 68*fff65226SJesse Taube IMXRT1170_PAD_EMC_B2_06, 69*fff65226SJesse Taube IMXRT1170_PAD_EMC_B2_07, 70*fff65226SJesse Taube IMXRT1170_PAD_EMC_B2_08, 71*fff65226SJesse Taube IMXRT1170_PAD_EMC_B2_09, 72*fff65226SJesse Taube IMXRT1170_PAD_EMC_B2_10, 73*fff65226SJesse Taube IMXRT1170_PAD_EMC_B2_11, 74*fff65226SJesse Taube IMXRT1170_PAD_EMC_B2_12, 75*fff65226SJesse Taube IMXRT1170_PAD_EMC_B2_13, 76*fff65226SJesse Taube IMXRT1170_PAD_EMC_B2_14, 77*fff65226SJesse Taube IMXRT1170_PAD_EMC_B2_15, 78*fff65226SJesse Taube IMXRT1170_PAD_EMC_B2_16, 79*fff65226SJesse Taube IMXRT1170_PAD_EMC_B2_17, 80*fff65226SJesse Taube IMXRT1170_PAD_EMC_B2_18, 81*fff65226SJesse Taube IMXRT1170_PAD_EMC_B2_19, 82*fff65226SJesse Taube IMXRT1170_PAD_EMC_B2_20, 83*fff65226SJesse Taube IMXRT1170_PAD_AD_00, 84*fff65226SJesse Taube IMXRT1170_PAD_AD_01, 85*fff65226SJesse Taube IMXRT1170_PAD_AD_02, 86*fff65226SJesse Taube IMXRT1170_PAD_AD_03, 87*fff65226SJesse Taube IMXRT1170_PAD_AD_04, 88*fff65226SJesse Taube IMXRT1170_PAD_AD_05, 89*fff65226SJesse Taube IMXRT1170_PAD_AD_06, 90*fff65226SJesse Taube IMXRT1170_PAD_AD_07, 91*fff65226SJesse Taube IMXRT1170_PAD_AD_08, 92*fff65226SJesse Taube IMXRT1170_PAD_AD_09, 93*fff65226SJesse Taube IMXRT1170_PAD_AD_10, 94*fff65226SJesse Taube IMXRT1170_PAD_AD_11, 95*fff65226SJesse Taube IMXRT1170_PAD_AD_12, 96*fff65226SJesse Taube IMXRT1170_PAD_AD_13, 97*fff65226SJesse Taube IMXRT1170_PAD_AD_14, 98*fff65226SJesse Taube IMXRT1170_PAD_AD_15, 99*fff65226SJesse Taube IMXRT1170_PAD_AD_16, 100*fff65226SJesse Taube IMXRT1170_PAD_AD_17, 101*fff65226SJesse Taube IMXRT1170_PAD_AD_18, 102*fff65226SJesse Taube IMXRT1170_PAD_AD_19, 103*fff65226SJesse Taube IMXRT1170_PAD_AD_20, 104*fff65226SJesse Taube IMXRT1170_PAD_AD_21, 105*fff65226SJesse Taube IMXRT1170_PAD_AD_22, 106*fff65226SJesse Taube IMXRT1170_PAD_AD_23, 107*fff65226SJesse Taube IMXRT1170_PAD_AD_24, 108*fff65226SJesse Taube IMXRT1170_PAD_AD_25, 109*fff65226SJesse Taube IMXRT1170_PAD_AD_26, 110*fff65226SJesse Taube IMXRT1170_PAD_AD_27, 111*fff65226SJesse Taube IMXRT1170_PAD_AD_28, 112*fff65226SJesse Taube IMXRT1170_PAD_AD_29, 113*fff65226SJesse Taube IMXRT1170_PAD_AD_30, 114*fff65226SJesse Taube IMXRT1170_PAD_AD_31, 115*fff65226SJesse Taube IMXRT1170_PAD_AD_32, 116*fff65226SJesse Taube IMXRT1170_PAD_AD_33, 117*fff65226SJesse Taube IMXRT1170_PAD_AD_34, 118*fff65226SJesse Taube IMXRT1170_PAD_AD_35, 119*fff65226SJesse Taube IMXRT1170_PAD_SD_B1_00, 120*fff65226SJesse Taube IMXRT1170_PAD_SD_B1_01, 121*fff65226SJesse Taube IMXRT1170_PAD_SD_B1_02, 122*fff65226SJesse Taube IMXRT1170_PAD_SD_B1_03, 123*fff65226SJesse Taube IMXRT1170_PAD_SD_B1_04, 124*fff65226SJesse Taube IMXRT1170_PAD_SD_B1_05, 125*fff65226SJesse Taube IMXRT1170_PAD_SD_B2_00, 126*fff65226SJesse Taube IMXRT1170_PAD_SD_B2_01, 127*fff65226SJesse Taube IMXRT1170_PAD_SD_B2_02, 128*fff65226SJesse Taube IMXRT1170_PAD_SD_B2_03, 129*fff65226SJesse Taube IMXRT1170_PAD_SD_B2_04, 130*fff65226SJesse Taube IMXRT1170_PAD_SD_B2_05, 131*fff65226SJesse Taube IMXRT1170_PAD_SD_B2_06, 132*fff65226SJesse Taube IMXRT1170_PAD_SD_B2_07, 133*fff65226SJesse Taube IMXRT1170_PAD_SD_B2_08, 134*fff65226SJesse Taube IMXRT1170_PAD_SD_B2_09, 135*fff65226SJesse Taube IMXRT1170_PAD_SD_B2_10, 136*fff65226SJesse Taube IMXRT1170_PAD_SD_B2_11, 137*fff65226SJesse Taube IMXRT1170_PAD_DISP_B1_00, 138*fff65226SJesse Taube IMXRT1170_PAD_DISP_B1_01, 139*fff65226SJesse Taube IMXRT1170_PAD_DISP_B1_02, 140*fff65226SJesse Taube IMXRT1170_PAD_DISP_B1_03, 141*fff65226SJesse Taube IMXRT1170_PAD_DISP_B1_04, 142*fff65226SJesse Taube IMXRT1170_PAD_DISP_B1_05, 143*fff65226SJesse Taube IMXRT1170_PAD_DISP_B1_06, 144*fff65226SJesse Taube IMXRT1170_PAD_DISP_B1_07, 145*fff65226SJesse Taube IMXRT1170_PAD_DISP_B1_08, 146*fff65226SJesse Taube IMXRT1170_PAD_DISP_B1_09, 147*fff65226SJesse Taube IMXRT1170_PAD_DISP_B1_10, 148*fff65226SJesse Taube IMXRT1170_PAD_DISP_B1_11, 149*fff65226SJesse Taube IMXRT1170_PAD_DISP_B2_00, 150*fff65226SJesse Taube IMXRT1170_PAD_DISP_B2_01, 151*fff65226SJesse Taube IMXRT1170_PAD_DISP_B2_02, 152*fff65226SJesse Taube IMXRT1170_PAD_DISP_B2_03, 153*fff65226SJesse Taube IMXRT1170_PAD_DISP_B2_04, 154*fff65226SJesse Taube IMXRT1170_PAD_DISP_B2_05, 155*fff65226SJesse Taube IMXRT1170_PAD_DISP_B2_06, 156*fff65226SJesse Taube IMXRT1170_PAD_DISP_B2_07, 157*fff65226SJesse Taube IMXRT1170_PAD_DISP_B2_08, 158*fff65226SJesse Taube IMXRT1170_PAD_DISP_B2_09, 159*fff65226SJesse Taube IMXRT1170_PAD_DISP_B2_10, 160*fff65226SJesse Taube IMXRT1170_PAD_DISP_B2_11, 161*fff65226SJesse Taube IMXRT1170_PAD_DISP_B2_12, 162*fff65226SJesse Taube IMXRT1170_PAD_DISP_B2_13, 163*fff65226SJesse Taube IMXRT1170_PAD_DISP_B2_14, 164*fff65226SJesse Taube IMXRT1170_PAD_DISP_B2_15, 165*fff65226SJesse Taube }; 166*fff65226SJesse Taube 167*fff65226SJesse Taube /* Pad names for the pinmux subsystem */ 168*fff65226SJesse Taube static const struct pinctrl_pin_desc imxrt1170_pinctrl_pads[] = { 169*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_RESERVE0), 170*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_RESERVE1), 171*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_RESERVE2), 172*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_RESERVE3), 173*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B1_00), 174*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B1_01), 175*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B1_02), 176*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B1_03), 177*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B1_04), 178*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B1_05), 179*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B1_06), 180*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B1_07), 181*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B1_08), 182*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B1_09), 183*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B1_10), 184*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B1_11), 185*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B1_12), 186*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B1_13), 187*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B1_14), 188*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B1_15), 189*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B1_16), 190*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B1_17), 191*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B1_18), 192*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B1_19), 193*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B1_20), 194*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B1_21), 195*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B1_22), 196*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B1_23), 197*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B1_24), 198*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B1_25), 199*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B1_26), 200*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B1_27), 201*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B1_28), 202*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B1_29), 203*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B1_30), 204*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B1_31), 205*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B1_32), 206*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B1_33), 207*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B1_34), 208*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B1_35), 209*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B1_36), 210*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B1_37), 211*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B1_38), 212*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B1_39), 213*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B1_40), 214*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B1_41), 215*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B2_00), 216*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B2_01), 217*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B2_02), 218*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B2_03), 219*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B2_04), 220*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B2_05), 221*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B2_06), 222*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B2_07), 223*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B2_08), 224*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B2_09), 225*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B2_10), 226*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B2_11), 227*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B2_12), 228*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B2_13), 229*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B2_14), 230*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B2_15), 231*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B2_16), 232*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B2_17), 233*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B2_18), 234*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B2_19), 235*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_EMC_B2_20), 236*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_AD_00), 237*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_AD_01), 238*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_AD_02), 239*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_AD_03), 240*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_AD_04), 241*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_AD_05), 242*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_AD_06), 243*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_AD_07), 244*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_AD_08), 245*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_AD_09), 246*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_AD_10), 247*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_AD_11), 248*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_AD_12), 249*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_AD_13), 250*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_AD_14), 251*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_AD_15), 252*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_AD_16), 253*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_AD_17), 254*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_AD_18), 255*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_AD_19), 256*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_AD_20), 257*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_AD_21), 258*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_AD_22), 259*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_AD_23), 260*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_AD_24), 261*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_AD_25), 262*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_AD_26), 263*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_AD_27), 264*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_AD_28), 265*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_AD_29), 266*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_AD_30), 267*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_AD_31), 268*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_AD_32), 269*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_AD_33), 270*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_AD_34), 271*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_AD_35), 272*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_SD_B1_00), 273*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_SD_B1_01), 274*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_SD_B1_02), 275*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_SD_B1_03), 276*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_SD_B1_04), 277*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_SD_B1_05), 278*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_SD_B2_00), 279*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_SD_B2_01), 280*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_SD_B2_02), 281*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_SD_B2_03), 282*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_SD_B2_04), 283*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_SD_B2_05), 284*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_SD_B2_06), 285*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_SD_B2_07), 286*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_SD_B2_08), 287*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_SD_B2_09), 288*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_SD_B2_10), 289*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_SD_B2_11), 290*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_DISP_B1_00), 291*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_DISP_B1_01), 292*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_DISP_B1_02), 293*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_DISP_B1_03), 294*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_DISP_B1_04), 295*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_DISP_B1_05), 296*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_DISP_B1_06), 297*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_DISP_B1_07), 298*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_DISP_B1_08), 299*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_DISP_B1_09), 300*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_DISP_B1_10), 301*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_DISP_B1_11), 302*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_DISP_B2_00), 303*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_DISP_B2_01), 304*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_DISP_B2_02), 305*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_DISP_B2_03), 306*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_DISP_B2_04), 307*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_DISP_B2_05), 308*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_DISP_B2_06), 309*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_DISP_B2_07), 310*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_DISP_B2_08), 311*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_DISP_B2_09), 312*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_DISP_B2_10), 313*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_DISP_B2_11), 314*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_DISP_B2_12), 315*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_DISP_B2_13), 316*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_DISP_B2_14), 317*fff65226SJesse Taube IMX_PINCTRL_PIN(IMXRT1170_PAD_DISP_B2_15), 318*fff65226SJesse Taube }; 319*fff65226SJesse Taube 320*fff65226SJesse Taube static const struct imx_pinctrl_soc_info imxrt1170_pinctrl_info = { 321*fff65226SJesse Taube .pins = imxrt1170_pinctrl_pads, 322*fff65226SJesse Taube .npins = ARRAY_SIZE(imxrt1170_pinctrl_pads), 323*fff65226SJesse Taube .gpr_compatible = "fsl,imxrt1170-iomuxc-gpr", 324*fff65226SJesse Taube }; 325*fff65226SJesse Taube 326*fff65226SJesse Taube static const struct of_device_id imxrt1170_pinctrl_of_match[] = { 327*fff65226SJesse Taube { .compatible = "fsl,imxrt1170-iomuxc", .data = &imxrt1170_pinctrl_info, }, 328*fff65226SJesse Taube { /* sentinel */ } 329*fff65226SJesse Taube }; 330*fff65226SJesse Taube 331*fff65226SJesse Taube static int imxrt1170_pinctrl_probe(struct platform_device *pdev) 332*fff65226SJesse Taube { 333*fff65226SJesse Taube return imx_pinctrl_probe(pdev, &imxrt1170_pinctrl_info); 334*fff65226SJesse Taube } 335*fff65226SJesse Taube 336*fff65226SJesse Taube static struct platform_driver imxrt1170_pinctrl_driver = { 337*fff65226SJesse Taube .driver = { 338*fff65226SJesse Taube .name = "imxrt1170-pinctrl", 339*fff65226SJesse Taube .of_match_table = of_match_ptr(imxrt1170_pinctrl_of_match), 340*fff65226SJesse Taube .suppress_bind_attrs = true, 341*fff65226SJesse Taube }, 342*fff65226SJesse Taube .probe = imxrt1170_pinctrl_probe, 343*fff65226SJesse Taube }; 344*fff65226SJesse Taube 345*fff65226SJesse Taube static int __init imxrt1170_pinctrl_init(void) 346*fff65226SJesse Taube { 347*fff65226SJesse Taube return platform_driver_register(&imxrt1170_pinctrl_driver); 348*fff65226SJesse Taube } 349*fff65226SJesse Taube arch_initcall(imxrt1170_pinctrl_init); 350