0001 // SPDX-License-Identifier: GPL-2.0-or-later
0002 /*
0003 * Copyright 2014 Linaro Ltd.
0004 */
0005
0006 #include "ste-ab8500.dtsi"
0007
0008 / {
0009 soc {
0010 prcmu@80157000 {
0011 ab8500 {
0012 gpio {
0013 /* Hog a few default settings */
0014 pinctrl-names = "default";
0015 pinctrl-0 = <&gpio2_default_mode>,
0016 <&gpio4_default_mode>,
0017 <&gpio10_default_mode>,
0018 <&gpio11_default_mode>,
0019 <&gpio12_default_mode>,
0020 <&gpio13_default_mode>,
0021 <&gpio16_default_mode>,
0022 <&gpio24_default_mode>,
0023 <&gpio25_default_mode>,
0024 <&gpio36_default_mode>,
0025 <&gpio37_default_mode>,
0026 <&gpio38_default_mode>,
0027 <&gpio39_default_mode>,
0028 <&gpio42_default_mode>,
0029 <&gpio26_default_mode>,
0030 <&gpio35_default_mode>,
0031 <&ycbcr_default_mode>,
0032 <&pwm_default_mode>,
0033 <&adi1_default_mode>,
0034 <&usbuicc_default_mode>,
0035 <&dmic_default_mode>,
0036 <&extcpena_default_mode>,
0037 <&modsclsda_default_mode>;
0038
0039 /*
0040 * Pins 2, 4, 10, 11, 12, 13, 16, 24, 25, 36, 37, 38, 39 and 42
0041 * are muxed in as GPIO, and configured as INPUT PULL DOWN
0042 */
0043 gpio2 {
0044 gpio2_default_mode: gpio2_default {
0045 default_mux {
0046 function = "gpio";
0047 groups = "gpio2_a_1";
0048 };
0049 default_cfg {
0050 pins = "GPIO2_T9";
0051 input-enable;
0052 bias-pull-down;
0053 };
0054 };
0055 };
0056 gpio4 {
0057 gpio4_default_mode: gpio4_default {
0058 default_mux {
0059 function = "gpio";
0060 groups = "gpio4_a_1";
0061 };
0062 default_cfg {
0063 pins = "GPIO4_W2";
0064 input-enable;
0065 bias-pull-down;
0066 };
0067 };
0068 };
0069 gpio10 {
0070 gpio10_default_mode: gpio10_default {
0071 default_mux {
0072 function = "gpio";
0073 groups = "gpio10_d_1";
0074 };
0075 default_cfg {
0076 pins = "GPIO10_U17";
0077 input-enable;
0078 bias-pull-down;
0079 };
0080 };
0081 };
0082 gpio11 {
0083 gpio11_default_mode: gpio11_default {
0084 default_mux {
0085 function = "gpio";
0086 groups = "gpio11_d_1";
0087 };
0088 default_cfg {
0089 pins = "GPIO11_AA18";
0090 input-enable;
0091 bias-pull-down;
0092 };
0093 };
0094 };
0095 gpio12 {
0096 gpio12_default_mode: gpio12_default {
0097 default_mux {
0098 function = "gpio";
0099 groups = "gpio12_d_1";
0100 };
0101 default_cfg {
0102 pins = "GPIO12_U16";
0103 input-enable;
0104 bias-pull-down;
0105 };
0106 };
0107 };
0108 gpio13 {
0109 gpio13_default_mode: gpio13_default {
0110 default_mux {
0111 function = "gpio";
0112 groups = "gpio13_d_1";
0113 };
0114 default_cfg {
0115 pins = "GPIO13_W17";
0116 input-enable;
0117 bias-pull-down;
0118 };
0119 };
0120 };
0121 gpio16 {
0122 gpio16_default_mode: gpio16_default {
0123 default_mux {
0124 function = "gpio";
0125 groups = "gpio16_a_1";
0126 };
0127 default_cfg {
0128 pins = "GPIO16_F15";
0129 input-enable;
0130 bias-pull-down;
0131 };
0132 };
0133 };
0134 gpio24 {
0135 gpio24_default_mode: gpio24_default {
0136 default_mux {
0137 function = "gpio";
0138 groups = "gpio24_a_1";
0139 };
0140 default_cfg {
0141 pins = "GPIO24_T14";
0142 input-enable;
0143 bias-pull-down;
0144 };
0145 };
0146 };
0147 gpio25 {
0148 gpio25_default_mode: gpio25_default {
0149 default_mux {
0150 function = "gpio";
0151 groups = "gpio25_a_1";
0152 };
0153 default_cfg {
0154 pins = "GPIO25_R16";
0155 input-enable;
0156 bias-pull-down;
0157 };
0158 };
0159 };
0160 gpio36 {
0161 gpio36_default_mode: gpio36_default {
0162 default_mux {
0163 function = "gpio";
0164 groups = "gpio36_a_1";
0165 };
0166 default_cfg {
0167 pins = "GPIO36_A17";
0168 input-enable;
0169 bias-pull-down;
0170 };
0171 };
0172 };
0173 gpio37 {
0174 gpio37_default_mode: gpio37_default {
0175 default_mux {
0176 function = "gpio";
0177 groups = "gpio37_a_1";
0178 };
0179 default_cfg {
0180 pins = "GPIO37_E15";
0181 input-enable;
0182 bias-pull-down;
0183 };
0184 };
0185 };
0186 gpio38 {
0187 gpio38_default_mode: gpio38_default {
0188 default_mux {
0189 function = "gpio";
0190 groups = "gpio38_a_1";
0191 };
0192 default_cfg {
0193 pins = "GPIO38_C17";
0194 input-enable;
0195 bias-pull-down;
0196 };
0197 };
0198 };
0199 gpio39 {
0200 gpio39_default_mode: gpio39_default {
0201 default_mux {
0202 function = "gpio";
0203 groups = "gpio39_a_1";
0204 };
0205 default_cfg {
0206 pins = "GPIO39_E16";
0207 input-enable;
0208 bias-pull-down;
0209 };
0210 };
0211 };
0212 gpio42 {
0213 gpio42_default_mode: gpio42_default {
0214 default_mux {
0215 function = "gpio";
0216 groups = "gpio42_a_1";
0217 };
0218 default_cfg {
0219 pins = "GPIO42_U2";
0220 input-enable;
0221 bias-pull-down;
0222 };
0223 };
0224 };
0225 /*
0226 * Pins 26 and 35 muxed in as GPIO, and configured as OUTPUT LOW
0227 */
0228 gpio26 {
0229 gpio26_default_mode: gpio26_default {
0230 default_mux {
0231 function = "gpio";
0232 groups = "gpio26_d_1";
0233 };
0234 default_cfg {
0235 pins = "GPIO26_M16";
0236 output-low;
0237 };
0238 };
0239 };
0240 gpio35 {
0241 gpio35_default_mode: gpio35_default {
0242 default_mux {
0243 function = "gpio";
0244 groups = "gpio35_d_1";
0245 };
0246 default_cfg {
0247 pins = "GPIO35_W15";
0248 output-low;
0249 };
0250 };
0251 };
0252 /*
0253 * This sets up the YCBCR connector pins, i.e. analog video out.
0254 * Set as input with no bias.
0255 */
0256 ycbcr {
0257 ycbcr_default_mode: ycbcr_default {
0258 default_mux {
0259 function = "ycbcr";
0260 groups = "ycbcr0123_d_1";
0261 };
0262 default_cfg {
0263 pins = "GPIO6_Y18",
0264 "GPIO7_AA20",
0265 "GPIO8_W18",
0266 "GPIO9_AA19";
0267 input-enable;
0268 bias-disable;
0269 };
0270 };
0271 };
0272 /* This sets up the PWM pins 14 and 15 */
0273 pwm {
0274 pwm_default_mode: pwm_default {
0275 default_mux {
0276 function = "pwmout";
0277 groups = "pwmout1_d_1", "pwmout2_d_1";
0278 };
0279 default_cfg {
0280 pins = "GPIO14_F14",
0281 "GPIO15_B17";
0282 input-enable;
0283 bias-pull-down;
0284 };
0285 };
0286 };
0287 /* This sets up audio interface 1 */
0288 adi1 {
0289 adi1_default_mode: adi1_default {
0290 default_mux {
0291 function = "adi1";
0292 groups = "adi1_d_1";
0293 };
0294 default_cfg {
0295 pins = "GPIO17_P5",
0296 "GPIO18_R5",
0297 "GPIO19_U5",
0298 "GPIO20_T5";
0299 input-enable;
0300 bias-pull-down;
0301 };
0302 };
0303 };
0304 /* This sets up the USB UICC pins */
0305 usbuicc {
0306 usbuicc_default_mode: usbuicc_default {
0307 default_mux {
0308 function = "usbuicc";
0309 groups = "usbuicc_d_1";
0310 };
0311 default_cfg {
0312 pins = "GPIO21_H19",
0313 "GPIO22_G20",
0314 "GPIO23_G19";
0315 input-enable;
0316 bias-pull-down;
0317 };
0318 };
0319 };
0320 /* This sets up the microphone pins */
0321 dmic {
0322 dmic_default_mode: dmic_default {
0323 default_mux {
0324 function = "dmic";
0325 groups = "dmic12_d_1",
0326 "dmic34_d_1",
0327 "dmic56_d_1";
0328 };
0329 default_cfg {
0330 pins = "GPIO27_J6",
0331 "GPIO28_K6",
0332 "GPIO29_G6",
0333 "GPIO30_H6",
0334 "GPIO31_F5",
0335 "GPIO32_G5";
0336 input-enable;
0337 bias-pull-down;
0338 };
0339 };
0340 };
0341 extcpena {
0342 extcpena_default_mode: extcpena_default {
0343 default_mux {
0344 function = "extcpena";
0345 groups = "extcpena_d_1";
0346 };
0347 default_cfg {
0348 pins = "GPIO34_R17";
0349 input-enable;
0350 bias-pull-down;
0351 };
0352 };
0353 };
0354 /* Modem I2C setup (SCL and SDA pins) */
0355 modsclsda {
0356 modsclsda_default_mode: modsclsda_default {
0357 default_mux {
0358 function = "modsclsda";
0359 groups = "modsclsda_d_1";
0360 };
0361 default_cfg {
0362 pins = "GPIO40_T19",
0363 "GPIO41_U19";
0364 input-enable;
0365 bias-pull-down;
0366 };
0367 };
0368 };
0369 /*
0370 * Clock output pins associated with regulators.
0371 */
0372 sysclkreq2 {
0373 sysclkreq2_default_mode: sysclkreq2_default {
0374 default_mux {
0375 function = "sysclkreq";
0376 groups = "sysclkreq2_d_1";
0377 };
0378 default_cfg {
0379 pins = "GPIO1_T10";
0380 input-enable;
0381 bias-disable;
0382 };
0383 };
0384 sysclkreq2_sleep_mode: sysclkreq2_sleep {
0385 default_mux {
0386 function = "gpio";
0387 groups = "gpio1_a_1";
0388 };
0389 default_cfg {
0390 pins = "GPIO1_T10";
0391 input-enable;
0392 bias-pull-down;
0393 };
0394 };
0395 };
0396 sysclkreq4 {
0397 sysclkreq4_default_mode: sysclkreq4_default {
0398 default_mux {
0399 function = "sysclkreq";
0400 groups = "sysclkreq4_d_1";
0401 };
0402 default_cfg {
0403 pins = "GPIO3_U9";
0404 input-enable;
0405 bias-disable;
0406 };
0407 };
0408 sysclkreq4_sleep_mode: sysclkreq4_sleep {
0409 default_mux {
0410 function = "gpio";
0411 groups = "gpio3_a_1";
0412 };
0413 default_cfg {
0414 pins = "GPIO3_U9";
0415 input-enable;
0416 bias-pull-down;
0417 };
0418 };
0419 };
0420 };
0421 };
0422 };
0423 };
0424 };