/* * Copyright 2014 Linaro Ltd. * * The code contained herein is licensed under the GNU General Public * License. You may obtain a copy of the GNU General Public License * Version 2 or later at the following locations: * * http://www.opensource.org/licenses/gpl-license.html * http://www.gnu.org/copyleft/gpl.html */ / { soc { prcmu@80157000 { ab8500 { ab8500-gpio { /* Hog a few default settings */ pinctrl-names = "default"; pinctrl-0 = <&gpio2_default_mode>, <&gpio4_default_mode>, <&gpio10_default_mode>, <&gpio11_default_mode>, <&gpio12_default_mode>, <&gpio13_default_mode>, <&gpio16_default_mode>, <&gpio24_default_mode>, <&gpio25_default_mode>, <&gpio36_default_mode>, <&gpio37_default_mode>, <&gpio38_default_mode>, <&gpio39_default_mode>, <&gpio42_default_mode>, <&gpio26_default_mode>, <&gpio35_default_mode>, <&ycbcr_default_mode>, <&pwm_default_mode>, <&adi1_default_mode>, <&usbuicc_default_mode>, <&dmic_default_mode>, <&extcpena_default_mode>, <&modsclsda_default_mode>; /* * Pins 2, 4, 10, 11, 12, 13, 16, 24, 25, 36, 37, 38, 39 and 42 * are muxed in as GPIO, and configured as INPUT PULL DOWN */ gpio2 { gpio2_default_mode: gpio2_default { default_mux { function = "gpio"; groups = "gpio2_a_1"; }; default_cfg { pins = "GPIO2_T9"; input-enable; bias-pull-down; }; }; }; gpio4 { gpio4_default_mode: gpio4_default { default_mux { function = "gpio"; groups = "gpio4_a_1"; }; default_cfg { pins = "GPIO4_W2"; input-enable; bias-pull-down; }; }; }; gpio10 { gpio10_default_mode: gpio10_default { default_mux { function = "gpio"; groups = "gpio10_d_1"; }; default_cfg { pins = "GPIO10_U17"; input-enable; bias-pull-down; }; }; }; gpio11 { gpio11_default_mode: gpio11_default { default_mux { function = "gpio"; groups = "gpio11_d_1"; }; default_cfg { pins = "GPIO11_AA18"; input-enable; bias-pull-down; }; }; }; gpio12 { gpio12_default_mode: gpio12_default { default_mux { function = "gpio"; groups = "gpio12_d_1"; }; default_cfg { pins = "GPIO12_U16"; input-enable; bias-pull-down; }; }; }; gpio13 { gpio13_default_mode: gpio13_default { default_mux { function = "gpio"; groups = "gpio13_d_1"; }; default_cfg { pins = "GPIO13_W17"; input-enable; bias-pull-down; }; }; }; gpio16 { gpio16_default_mode: gpio16_default { default_mux { function = "gpio"; groups = "gpio16_a_1"; }; default_cfg { pins = "GPIO16_F15"; input-enable; bias-pull-down; }; }; }; gpio24 { gpio24_default_mode: gpio24_default { default_mux { function = "gpio"; groups = "gpio24_a_1"; }; default_cfg { pins = "GPIO24_T14"; input-enable; bias-pull-down; }; }; }; gpio25 { gpio25_default_mode: gpio25_default { default_mux { function = "gpio"; groups = "gpio25_a_1"; }; default_cfg { pins = "GPIO25_R16"; input-enable; bias-pull-down; }; }; }; gpio36 { gpio36_default_mode: gpio36_default { default_mux { function = "gpio"; groups = "gpio36_a_1"; }; default_cfg { pins = "GPIO36_A17"; input-enable; bias-pull-down; }; }; }; gpio37 { gpio37_default_mode: gpio37_default { default_mux { function = "gpio"; groups = "gpio37_a_1"; }; default_cfg { pins = "GPIO37_E15"; input-enable; bias-pull-down; }; }; }; gpio38 { gpio38_default_mode: gpio38_default { default_mux { function = "gpio"; groups = "gpio38_a_1"; }; default_cfg { pins = "GPIO38_C17"; input-enable; bias-pull-down; }; }; }; gpio39 { gpio39_default_mode: gpio39_default { default_mux { function = "gpio"; groups = "gpio39_a_1"; }; default_cfg { pins = "GPIO39_E16"; input-enable; bias-pull-down; }; }; }; gpio42 { gpio42_default_mode: gpio42_default { default_mux { function = "gpio"; groups = "gpio42_a_1"; }; default_cfg { pins = "GPIO42_U2"; input-enable; bias-pull-down; }; }; }; /* * Pins 26 and 35 muxed in as GPIO, and configured as OUTPUT LOW */ gpio26 { gpio26_default_mode: gpio26_default { default_mux { function = "gpio"; groups = "gpio26_d_1"; }; default_cfg { pins = "GPIO26_M16"; output-low; }; }; }; gpio35 { gpio35_default_mode: gpio35_default { default_mux { function = "gpio"; groups = "gpio35_d_1"; }; default_cfg { pins = "GPIO35_W15"; output-low; }; }; }; /* * This sets up the YCBCR connector pins, i.e. analog video out. * Set as input with no bias. */ ycbcr { ycbcr_default_mode: ycbcr_default { default_mux { function = "ycbcr"; groups = "ycbcr0123_d_1"; }; default_cfg { pins = "GPIO6_Y18", "GPIO7_AA20", "GPIO8_W18", "GPIO9_AA19"; input-enable; bias-disable; }; }; }; /* This sets up the PWM pins 14 and 15 */ pwm { pwm_default_mode: pwm_default { default_mux { function = "pwmout"; groups = "pwmout1_d_1", "pwmout2_d_1"; }; default_cfg { pins = "GPIO14_F14", "GPIO15_B17"; input-enable; bias-pull-down; }; }; }; /* This sets up audio interface 1 */ adi1 { adi1_default_mode: adi1_default { default_mux { function = "adi1"; groups = "adi1_d_1"; }; default_cfg { pins = "GPIO17_P5", "GPIO18_R5", "GPIO19_U5", "GPIO20_T5"; input-enable; bias-pull-down; }; }; }; /* This sets up the USB UICC pins */ usbuicc { usbuicc_default_mode: usbuicc_default { default_mux { function = "usbuicc"; groups = "usbuicc_d_1"; }; default_cfg { pins = "GPIO21_H19", "GPIO22_G20", "GPIO23_G19"; input-enable; bias-pull-down; }; }; }; /* This sets up the microphone pins */ dmic { dmic_default_mode: dmic_default { default_mux { function = "dmic"; groups = "dmic12_d_1", "dmic34_d_1", "dmic56_d_1"; }; default_cfg { pins = "GPIO27_J6", "GPIO28_K6", "GPIO29_G6", "GPIO30_H6", "GPIO31_F5", "GPIO32_G5"; input-enable; bias-pull-down; }; }; }; extcpena { extcpena_default_mode: extcpena_default { default_mux { function = "extcpena"; groups = "extcpena_d_1"; }; default_cfg { pins = "GPIO34_R17"; input-enable; bias-pull-down; }; }; }; /* Modem I2C setup (SCL and SDA pins) */ modsclsda { modsclsda_default_mode: modsclsda_default { default_mux { function = "modsclsda"; groups = "modsclsda_d_1"; }; default_cfg { pins = "GPIO40_T19", "GPIO41_U19"; input-enable; bias-pull-down; }; }; }; /* * Clock output pins associated with regulators. */ sysclkreq2 { sysclkreq2_default_mode: sysclkreq2_default { default_mux { function = "sysclkreq"; groups = "sysclkreq2_d_1"; }; default_cfg { pins = "GPIO1_T10"; input-enable; bias-disable; }; }; sysclkreq2_sleep_mode: sysclkreq2_sleep { default_mux { function = "gpio"; groups = "gpio1_a_1"; }; default_cfg { pins = "GPIO1_T10"; input-enable; bias-pull-down; }; }; }; sysclkreq4 { sysclkreq4_default_mode: sysclkreq4_default { default_mux { function = "sysclkreq"; groups = "sysclkreq4_d_1"; }; default_cfg { pins = "GPIO3_U9"; input-enable; bias-disable; }; }; sysclkreq4_sleep_mode: sysclkreq4_sleep { default_mux { function = "gpio"; groups = "gpio3_a_1"; }; default_cfg { pins = "GPIO3_U9"; input-enable; bias-pull-down; }; }; }; }; }; }; }; };