forked from Minki/linux
0564f7d946
This converts the ABx500 pin controller and all associated device trees to use the standard, generic config bindings for pin controllers. There are no such device trees deployed in the wild so this is safe to do to set a good example. Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
241 lines
5.2 KiB
Plaintext
241 lines
5.2 KiB
Plaintext
/*
|
|
* 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 {
|
|
ab8505 {
|
|
ab8505-gpio {
|
|
/* Hog a few default settings */
|
|
pinctrl-names = "default";
|
|
pinctrl-0 = <&gpio2_default_mode>,
|
|
<&gpio10_default_mode>,
|
|
<&gpio11_default_mode>,
|
|
<&gpio13_default_mode>,
|
|
<&gpio34_default_mode>,
|
|
<&gpio50_default_mode>,
|
|
<&pwm_default_mode>,
|
|
<&adi2_default_mode>,
|
|
<&modsclsda_default_mode>,
|
|
<&resethw_default_mode>,
|
|
<&service_default_mode>;
|
|
|
|
/*
|
|
* Pins 2, 10, 11, 13, 34 and 50
|
|
* 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_R5";
|
|
input-enable;
|
|
bias-pull-down;
|
|
};
|
|
};
|
|
};
|
|
gpio10 {
|
|
gpio10_default_mode: gpio10_default {
|
|
default_mux {
|
|
function = "gpio";
|
|
groups = "gpio10_d_1";
|
|
};
|
|
default_cfg {
|
|
pins = "GPIO10_B16";
|
|
input-enable;
|
|
bias-pull-down;
|
|
};
|
|
};
|
|
};
|
|
gpio11 {
|
|
gpio11_default_mode: gpio11_default {
|
|
default_mux {
|
|
function = "gpio";
|
|
groups = "gpio11_d_1";
|
|
};
|
|
default_cfg {
|
|
pins = "GPIO11_B17";
|
|
input-enable;
|
|
bias-pull-down;
|
|
};
|
|
};
|
|
};
|
|
gpio13 {
|
|
gpio13_default_mode: gpio13_default {
|
|
default_mux {
|
|
function = "gpio";
|
|
groups = "gpio13_d_1";
|
|
};
|
|
default_cfg {
|
|
pins = "GPIO13_D17";
|
|
input-enable;
|
|
bias-disable;
|
|
};
|
|
};
|
|
};
|
|
gpio34 {
|
|
gpio34_default_mode: gpio34_default {
|
|
default_mux {
|
|
function = "gpio";
|
|
groups = "gpio34_a_1";
|
|
};
|
|
default_cfg {
|
|
pins = "GPIO34_H14";
|
|
input-enable;
|
|
bias-pull-down;
|
|
};
|
|
};
|
|
};
|
|
gpio50 {
|
|
gpio50_default_mode: gpio50_default {
|
|
default_mux {
|
|
function = "gpio";
|
|
groups = "gpio50_d_1";
|
|
};
|
|
default_cfg {
|
|
pins = "GPIO50_L4";
|
|
input-enable;
|
|
bias-disable;
|
|
};
|
|
};
|
|
};
|
|
/* This sets up the PWM pin 14 */
|
|
pwm {
|
|
pwm_default_mode: pwm_default {
|
|
default_mux {
|
|
function = "pwmout";
|
|
groups = "pwmout1_d_1";
|
|
};
|
|
default_cfg {
|
|
pins = "GPIO14_C16";
|
|
input-enable;
|
|
bias-pull-down;
|
|
};
|
|
};
|
|
};
|
|
/* This sets up audio interface 2 */
|
|
adi2 {
|
|
adi2_default_mode: adi2_default {
|
|
default_mux {
|
|
function = "adi2";
|
|
groups = "adi2_d_1";
|
|
};
|
|
default_cfg {
|
|
pins = "GPIO17_P2",
|
|
"GPIO18_N3",
|
|
"GPIO19_T1",
|
|
"GPIO20_P3";
|
|
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_J15",
|
|
"GPIO41_J14";
|
|
input-enable;
|
|
bias-pull-down;
|
|
};
|
|
};
|
|
};
|
|
resethw {
|
|
resethw_default_mode: resethw_default {
|
|
default_mux {
|
|
function = "resethw";
|
|
groups = "resethw_d_1";
|
|
};
|
|
default_cfg {
|
|
pins = "GPIO52_D16";
|
|
input-enable;
|
|
bias-pull-down;
|
|
};
|
|
};
|
|
};
|
|
service {
|
|
service_default_mode: service_default {
|
|
default_mux {
|
|
function = "service";
|
|
groups = "service_d_1";
|
|
};
|
|
default_cfg {
|
|
pins = "GPIO53_D15";
|
|
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_N4";
|
|
input-enable;
|
|
bias-disable;
|
|
};
|
|
};
|
|
sysclkreq2_sleep_mode: sysclkreq2_sleep {
|
|
default_mux {
|
|
function = "gpio";
|
|
groups = "gpio1_a_1";
|
|
};
|
|
default_cfg {
|
|
pins = "GPIO1_N4";
|
|
input-enable;
|
|
bias-pull-down;
|
|
};
|
|
};
|
|
};
|
|
sysclkreq4 {
|
|
sysclkreq4_default_mode: sysclkreq4_default {
|
|
default_mux {
|
|
function = "sysclkreq";
|
|
groups = "sysclkreq4_d_1";
|
|
};
|
|
default_cfg {
|
|
pins = "GPIO3_P5";
|
|
input-enable;
|
|
bias-disable;
|
|
};
|
|
};
|
|
sysclkreq4_sleep_mode: sysclkreq4_sleep {
|
|
default_mux {
|
|
function = "gpio";
|
|
groups = "gpio3_a_1";
|
|
};
|
|
default_cfg {
|
|
pins = "GPIO3_P5";
|
|
input-enable;
|
|
bias-pull-down;
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|
|
};
|