blob: 2bf00fbb320fec3ca971a32dabb3e103f5aa45bc [file] [log] [blame]
/* Copyright (c) 2017, The Linux Foundation. All rights reserved.
*
* This program is free software; you can redistribute it and/or modify
* it under the terms of the GNU General Public License version 2 and
* only version 2 as published by the Free Software Foundation.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*/
&soc {
tlmm: pinctrl@03400000 {
compatible = "qcom,sdm670-pinctrl";
reg = <0x03400000 0xc00000>;
interrupts = <0 208 0>;
gpio-controller;
#gpio-cells = <2>;
interrupt-controller;
#interrupt-cells = <2>;
interrupt-parent = <&pdc>;
/* QUPv3 South SE mappings */
/* SE 0 pin mappings */
qupv3_se0_i2c_pins: qupv3_se0_i2c_pins {
qupv3_se0_i2c_active: qupv3_se0_i2c_active {
mux {
pins = "gpio0", "gpio1";
function = "qup0";
};
config {
pins = "gpio0", "gpio1";
drive-strength = <2>;
bias-disable;
};
};
qupv3_se0_i2c_sleep: qupv3_se0_i2c_sleep {
mux {
pins = "gpio0", "gpio1";
function = "gpio";
};
config {
pins = "gpio0", "gpio1";
drive-strength = <2>;
bias-pull-up;
};
};
};
qupv3_se0_spi_pins: qupv3_se0_spi_pins {
qupv3_se0_spi_active: qupv3_se0_spi_active {
mux {
pins = "gpio0", "gpio1", "gpio2",
"gpio3";
function = "qup0";
};
config {
pins = "gpio0", "gpio1", "gpio2",
"gpio3";
drive-strength = <6>;
bias-disable;
};
};
qupv3_se0_spi_sleep: qupv3_se0_spi_sleep {
mux {
pins = "gpio0", "gpio1", "gpio2",
"gpio3";
function = "gpio";
};
config {
pins = "gpio0", "gpio1", "gpio2",
"gpio3";
drive-strength = <6>;
bias-disable;
};
};
};
/* SE 1 pin mappings */
qupv3_se1_i2c_pins: qupv3_se1_i2c_pins {
qupv3_se1_i2c_active: qupv3_se1_i2c_active {
mux {
pins = "gpio17", "gpio18";
function = "qup1";
};
config {
pins = "gpio17", "gpio18";
drive-strength = <2>;
bias-disable;
};
};
qupv3_se1_i2c_sleep: qupv3_se1_i2c_sleep {
mux {
pins = "gpio17", "gpio18";
function = "gpio";
};
config {
pins = "gpio17", "gpio18";
drive-strength = <2>;
bias-pull-up;
};
};
};
qupv3_se1_spi_pins: qupv3_se1_spi_pins {
qupv3_se1_spi_active: qupv3_se1_spi_active {
mux {
pins = "gpio17", "gpio18", "gpio19",
"gpio20";
function = "qup1";
};
config {
pins = "gpio17", "gpio18", "gpio19",
"gpio20";
drive-strength = <6>;
bias-disable;
};
};
qupv3_se1_spi_sleep: qupv3_se1_spi_sleep {
mux {
pins = "gpio17", "gpio18", "gpio19",
"gpio20";
function = "gpio";
};
config {
pins = "gpio17", "gpio18", "gpio19",
"gpio20";
drive-strength = <6>;
bias-disable;
};
};
};
/* SE 2 pin mappings */
qupv3_se2_i2c_pins: qupv3_se2_i2c_pins {
qupv3_se2_i2c_active: qupv3_se2_i2c_active {
mux {
pins = "gpio27", "gpio28";
function = "qup2";
};
config {
pins = "gpio27", "gpio28";
drive-strength = <2>;
bias-disable;
};
};
qupv3_se2_i2c_sleep: qupv3_se2_i2c_sleep {
mux {
pins = "gpio27", "gpio28";
function = "gpio";
};
config {
pins = "gpio27", "gpio28";
drive-strength = <2>;
bias-pull-up;
};
};
};
qupv3_se2_spi_pins: qupv3_se2_spi_pins {
qupv3_se2_spi_active: qupv3_se2_spi_active {
mux {
pins = "gpio27", "gpio28", "gpio29",
"gpio30";
function = "qup2";
};
config {
pins = "gpio27", "gpio28", "gpio29",
"gpio30";
drive-strength = <6>;
bias-disable;
};
};
qupv3_se2_spi_sleep: qupv3_se2_spi_sleep {
mux {
pins = "gpio27", "gpio28", "gpio29",
"gpio30";
function = "gpio";
};
config {
pins = "gpio27", "gpio28", "gpio29",
"gpio30";
drive-strength = <6>;
bias-disable;
};
};
};
/* SE 3 pin mappings */
qupv3_se3_i2c_pins: qupv3_se3_i2c_pins {
qupv3_se3_i2c_active: qupv3_se3_i2c_active {
mux {
pins = "gpio41", "gpio42";
function = "qup3";
};
config {
pins = "gpio41", "gpio42";
drive-strength = <2>;
bias-disable;
};
};
qupv3_se3_i2c_sleep: qupv3_se3_i2c_sleep {
mux {
pins = "gpio41", "gpio42";
function = "gpio";
};
config {
pins = "gpio41", "gpio42";
drive-strength = <2>;
bias-pull-up;
};
};
};
qupv3_se3_spi_pins: qupv3_se3_spi_pins {
qupv3_se3_spi_active: qupv3_se3_spi_active {
mux {
pins = "gpio41", "gpio42", "gpio43",
"gpio44";
function = "qup3";
};
config {
pins = "gpio41", "gpio42", "gpio43",
"gpio44";
drive-strength = <6>;
bias-disable;
};
};
qupv3_se3_spi_sleep: qupv3_se3_spi_sleep {
mux {
pins = "gpio41", "gpio42", "gpio43",
"gpio44";
function = "gpio";
};
config {
pins = "gpio41", "gpio42", "gpio43",
"gpio44";
drive-strength = <6>;
bias-disable;
};
};
};
/* SE 4 pin mappings */
qupv3_se4_i2c_pins: qupv3_se4_i2c_pins {
qupv3_se4_i2c_active: qupv3_se4_i2c_active {
mux {
pins = "gpio89", "gpio90";
function = "qup4";
};
config {
pins = "gpio89", "gpio90";
drive-strength = <2>;
bias-disable;
};
};
qupv3_se4_i2c_sleep: qupv3_se4_i2c_sleep {
mux {
pins = "gpio89", "gpio90";
function = "gpio";
};
config {
pins = "gpio89", "gpio90";
drive-strength = <2>;
bias-pull-up;
};
};
};
qupv3_se4_spi_pins: qupv3_se4_spi_pins {
qupv3_se4_spi_active: qupv3_se4_spi_active {
mux {
pins = "gpio89", "gpio90", "gpio91",
"gpio92";
function = "qup4";
};
config {
pins = "gpio89", "gpio90", "gpio91",
"gpio92";
drive-strength = <6>;
bias-disable;
};
};
qupv3_se4_spi_sleep: qupv3_se4_spi_sleep {
mux {
pins = "gpio89", "gpio90", "gpio91",
"gpio92";
function = "gpio";
};
config {
pins = "gpio89", "gpio90", "gpio91",
"gpio92";
drive-strength = <6>;
bias-disable;
};
};
};
/* SE 5 pin mappings */
qupv3_se5_i2c_pins: qupv3_se5_i2c_pins {
qupv3_se5_i2c_active: qupv3_se5_i2c_active {
mux {
pins = "gpio85", "gpio86";
function = "qup5";
};
config {
pins = "gpio85", "gpio86";
drive-strength = <2>;
bias-disable;
};
};
qupv3_se5_i2c_sleep: qupv3_se5_i2c_sleep {
mux {
pins = "gpio85", "gpio86";
function = "gpio";
};
config {
pins = "gpio85", "gpio86";
drive-strength = <2>;
bias-pull-up;
};
};
};
qupv3_se5_spi_pins: qupv3_se5_spi_pins {
qupv3_se5_spi_active: qupv3_se5_spi_active {
mux {
pins = "gpio85", "gpio86", "gpio87",
"gpio88";
function = "qup5";
};
config {
pins = "gpio85", "gpio86", "gpio87",
"gpio88";
drive-strength = <6>;
bias-disable;
};
};
qupv3_se5_spi_sleep: qupv3_se5_spi_sleep {
mux {
pins = "gpio85", "gpio86", "gpio87",
"gpio88";
function = "gpio";
};
config {
pins = "gpio85", "gpio86", "gpio87",
"gpio88";
drive-strength = <6>;
bias-disable;
};
};
};
/* SE 6 pin mappings */
qupv3_se6_i2c_pins: qupv3_se6_i2c_pins {
qupv3_se6_i2c_active: qupv3_se6_i2c_active {
mux {
pins = "gpio45", "gpio46";
function = "qup6";
};
config {
pins = "gpio45", "gpio46";
drive-strength = <2>;
bias-disable;
};
};
qupv3_se6_i2c_sleep: qupv3_se6_i2c_sleep {
mux {
pins = "gpio45", "gpio46";
function = "gpio";
};
config {
pins = "gpio45", "gpio46";
drive-strength = <2>;
bias-pull-up;
};
};
};
qupv3_se6_4uart_pins: qupv3_se6_4uart_pins {
qupv3_se6_4uart_active: qupv3_se6_4uart_active {
mux {
pins = "gpio45", "gpio46", "gpio47",
"gpio48";
function = "qup6";
};
config {
pins = "gpio45", "gpio46", "gpio47",
"gpio48";
drive-strength = <2>;
bias-disable;
};
};
qupv3_se6_4uart_sleep: qupv3_se6_4uart_sleep {
mux {
pins = "gpio45", "gpio46", "gpio47",
"gpio48";
function = "gpio";
};
config {
pins = "gpio45", "gpio46", "gpio47",
"gpio48";
drive-strength = <2>;
bias-disable;
};
};
};
qupv3_se6_spi_pins: qupv3_se6_spi_pins {
qupv3_se6_spi_active: qupv3_se6_spi_active {
mux {
pins = "gpio45", "gpio46", "gpio47",
"gpio48";
function = "qup6";
};
config {
pins = "gpio45", "gpio46", "gpio47",
"gpio48";
drive-strength = <6>;
bias-disable;
};
};
qupv3_se6_spi_sleep: qupv3_se6_spi_sleep {
mux {
pins = "gpio45", "gpio46", "gpio47",
"gpio48";
function = "gpio";
};
config {
pins = "gpio45", "gpio46", "gpio47",
"gpio48";
drive-strength = <6>;
bias-disable;
};
};
};
/* SE 7 pin mappings */
qupv3_se7_i2c_pins: qupv3_se7_i2c_pins {
qupv3_se7_i2c_active: qupv3_se7_i2c_active {
mux {
pins = "gpio93", "gpio94";
function = "qup7";
};
config {
pins = "gpio93", "gpio94";
drive-strength = <2>;
bias-disable;
};
};
qupv3_se7_i2c_sleep: qupv3_se7_i2c_sleep {
mux {
pins = "gpio93", "gpio94";
function = "gpio";
};
config {
pins = "gpio93", "gpio94";
drive-strength = <2>;
bias-pull-up;
};
};
};
qupv3_se7_4uart_pins: qupv3_se7_4uart_pins {
qupv3_se7_4uart_active: qupv3_se7_4uart_active {
mux {
pins = "gpio93", "gpio94", "gpio95",
"gpio96";
function = "qup7";
};
config {
pins = "gpio93", "gpio94", "gpio95",
"gpio96";
drive-strength = <2>;
bias-disable;
};
};
qupv3_se7_4uart_sleep: qupv3_se7_4uart_sleep {
mux {
pins = "gpio93", "gpio94", "gpio95",
"gpio96";
function = "gpio";
};
config {
pins = "gpio93", "gpio94", "gpio95",
"gpio96";
drive-strength = <2>;
bias-disable;
};
};
};
qupv3_se7_spi_pins: qupv3_se7_spi_pins {
qupv3_se7_spi_active: qupv3_se7_spi_active {
mux {
pins = "gpio93", "gpio94", "gpio95",
"gpio96";
function = "qup7";
};
config {
pins = "gpio93", "gpio94", "gpio95",
"gpio96";
drive-strength = <6>;
bias-disable;
};
};
qupv3_se7_spi_sleep: qupv3_se7_spi_sleep {
mux {
pins = "gpio93", "gpio94", "gpio95",
"gpio96";
function = "gpio";
};
config {
pins = "gpio93", "gpio94", "gpio95",
"gpio96";
drive-strength = <6>;
bias-disable;
};
};
};
/* QUPv3 North instances */
/* SE 8 pin mappings */
qupv3_se8_i2c_pins: qupv3_se8_i2c_pins {
qupv3_se8_i2c_active: qupv3_se8_i2c_active {
mux {
pins = "gpio65", "gpio66";
function = "qup8";
};
config {
pins = "gpio65", "gpio66";
drive-strength = <2>;
bias-disable;
};
};
qupv3_se8_i2c_sleep: qupv3_se8_i2c_sleep {
mux {
pins = "gpio65", "gpio66";
function = "gpio";
};
config {
pins = "gpio65", "gpio66";
drive-strength = <2>;
bias-pull-up;
};
};
};
qupv3_se8_spi_pins: qupv3_se8_spi_pins {
qupv3_se8_spi_active: qupv3_se8_spi_active {
mux {
pins = "gpio65", "gpio66", "gpio67",
"gpio68";
function = "qup8";
};
config {
pins = "gpio65", "gpio66", "gpio67",
"gpio68";
drive-strength = <6>;
bias-disable;
};
};
qupv3_se8_spi_sleep: qupv3_se8_spi_sleep {
mux {
pins = "gpio65", "gpio66", "gpio67",
"gpio68";
function = "gpio";
};
config {
pins = "gpio65", "gpio66", "gpio67",
"gpio68";
drive-strength = <6>;
bias-disable;
};
};
};
/* SE 9 pin mappings */
qupv3_se9_i2c_pins: qupv3_se9_i2c_pins {
qupv3_se9_i2c_active: qupv3_se9_i2c_active {
mux {
pins = "gpio6", "gpio7";
function = "qup9";
};
config {
pins = "gpio6", "gpio7";
drive-strength = <2>;
bias-disable;
};
};
qupv3_se9_i2c_sleep: qupv3_se9_i2c_sleep {
mux {
pins = "gpio6", "gpio7";
function = "gpio";
};
config {
pins = "gpio6", "gpio7";
drive-strength = <2>;
bias-pull-up;
};
};
};
qupv3_se9_2uart_pins: qupv3_se9_2uart_pins {
qupv3_se9_2uart_active: qupv3_se9_2uart_active {
mux {
pins = "gpio4", "gpio5";
function = "qup9";
};
config {
pins = "gpio4", "gpio5";
drive-strength = <2>;
bias-disable;
};
};
qupv3_se9_2uart_sleep: qupv3_se9_2uart_sleep {
mux {
pins = "gpio4", "gpio5";
function = "gpio";
};
config {
pins = "gpio4", "gpio5";
drive-strength = <2>;
bias-disable;
};
};
};
qupv3_se9_spi_pins: qupv3_se9_spi_pins {
qupv3_se9_spi_active: qupv3_se9_spi_active {
mux {
pins = "gpio4", "gpio5", "gpio6",
"gpio7";
function = "qup9";
};
config {
pins = "gpio4", "gpio5", "gpio6",
"gpio7";
drive-strength = <6>;
bias-disable;
};
};
qupv3_se9_spi_sleep: qupv3_se9_spi_sleep {
mux {
pins = "gpio4", "gpio5", "gpio6",
"gpio7";
function = "gpio";
};
config {
pins = "gpio4", "gpio5", "gpio6",
"gpio7";
drive-strength = <6>;
bias-disable;
};
};
};
/* SE 10 pin mappings */
qupv3_se10_i2c_pins: qupv3_se10_i2c_pins {
qupv3_se10_i2c_active: qupv3_se10_i2c_active {
mux {
pins = "gpio55", "gpio56";
function = "qup10";
};
config {
pins = "gpio55", "gpio56";
drive-strength = <2>;
bias-disable;
};
};
qupv3_se10_i2c_sleep: qupv3_se10_i2c_sleep {
mux {
pins = "gpio55", "gpio56";
function = "gpio";
};
config {
pins = "gpio55", "gpio56";
drive-strength = <2>;
bias-pull-up;
};
};
};
qupv3_se10_2uart_pins: qupv3_se10_2uart_pins {
qupv3_se10_2uart_active: qupv3_se10_2uart_active {
mux {
pins = "gpio53", "gpio54";
function = "qup10";
};
config {
pins = "gpio53", "gpio54";
drive-strength = <2>;
bias-disable;
};
};
qupv3_se10_2uart_sleep: qupv3_se10_2uart_sleep {
mux {
pins = "gpio53", "gpio54";
function = "gpio";
};
config {
pins = "gpio53", "gpio54";
drive-strength = <2>;
bias-disable;
};
};
};
qupv3_se10_spi_pins: qupv3_se10_spi_pins {
qupv3_se10_spi_active: qupv3_se10_spi_active {
mux {
pins = "gpio53", "gpio54", "gpio55",
"gpio56";
function = "qup10";
};
config {
pins = "gpio53", "gpio54", "gpio55",
"gpio56";
drive-strength = <6>;
bias-disable;
};
};
qupv3_se10_spi_sleep: qupv3_se10_spi_sleep {
mux {
pins = "gpio53", "gpio54", "gpio55",
"gpio56";
function = "gpio";
};
config {
pins = "gpio53", "gpio54", "gpio55",
"gpio56";
drive-strength = <6>;
bias-disable;
};
};
};
/* SE 11 pin mappings */
qupv3_se11_i2c_pins: qupv3_se11_i2c_pins {
qupv3_se11_i2c_active: qupv3_se11_i2c_active {
mux {
pins = "gpio31", "gpio32";
function = "qup11";
};
config {
pins = "gpio31", "gpio32";
drive-strength = <2>;
bias-disable;
};
};
qupv3_se11_i2c_sleep: qupv3_se11_i2c_sleep {
mux {
pins = "gpio31", "gpio32";
function = "gpio";
};
config {
pins = "gpio31", "gpio32";
drive-strength = <2>;
bias-pull-up;
};
};
};
qupv3_se11_spi_pins: qupv3_se11_spi_pins {
qupv3_se11_spi_active: qupv3_se11_spi_active {
mux {
pins = "gpio31", "gpio32", "gpio33",
"gpio34";
function = "qup11";
};
config {
pins = "gpio31", "gpio32", "gpio33",
"gpio34";
drive-strength = <6>;
bias-disable;
};
};
qupv3_se11_spi_sleep: qupv3_se11_spi_sleep {
mux {
pins = "gpio31", "gpio32", "gpio33",
"gpio34";
function = "gpio";
};
config {
pins = "gpio31", "gpio32", "gpio33",
"gpio34";
drive-strength = <6>;
bias-disable;
};
};
};
/* SE 12 pin mappings */
qupv3_se12_i2c_pins: qupv3_se12_i2c_pins {
qupv3_se12_i2c_active: qupv3_se12_i2c_active {
mux {
pins = "gpio49", "gpio50";
function = "qup12";
};
config {
pins = "gpio49", "gpio50";
drive-strength = <2>;
bias-disable;
};
};
qupv3_se12_i2c_sleep: qupv3_se12_i2c_sleep {
mux {
pins = "gpio49", "gpio50";
function = "gpio";
};
config {
pins = "gpio49", "gpio50";
drive-strength = <2>;
bias-pull-up;
};
};
};
qupv3_se12_2uart_pins: qupv3_se12_2uart_pins {
qupv3_se12_2uart_active: qupv3_se12_2uart_active {
mux {
pins = "gpio51", "gpio52";
function = "qup9";
};
config {
pins = "gpio51", "gpio52";
drive-strength = <2>;
bias-disable;
};
};
qupv3_se12_2uart_sleep: qupv3_se12_2uart_sleep {
mux {
pins = "gpio51", "gpio52";
function = "gpio";
};
config {
pins = "gpio51", "gpio52";
drive-strength = <2>;
bias-disable;
};
};
};
qupv3_se12_spi_pins: qupv3_se12_spi_pins {
qupv3_se12_spi_active: qupv3_se12_spi_active {
mux {
pins = "gpio49", "gpio50", "gpio51",
"gpio52";
function = "qup12";
};
config {
pins = "gpio49", "gpio50", "gpio51",
"gpio52";
drive-strength = <6>;
bias-disable;
};
};
qupv3_se12_spi_sleep: qupv3_se12_spi_sleep {
mux {
pins = "gpio49", "gpio50", "gpio51",
"gpio52";
function = "gpio";
};
config {
pins = "gpio49", "gpio50", "gpio51",
"gpio52";
drive-strength = <6>;
bias-disable;
};
};
};
/* SE 13 pin mappings */
qupv3_se13_i2c_pins: qupv3_se13_i2c_pins {
qupv3_se13_i2c_active: qupv3_se13_i2c_active {
mux {
pins = "gpio105", "gpio106";
function = "qup13";
};
config {
pins = "gpio105", "gpio106";
drive-strength = <2>;
bias-disable;
};
};
qupv3_se13_i2c_sleep: qupv3_se13_i2c_sleep {
mux {
pins = "gpio105", "gpio106";
function = "gpio";
};
config {
pins = "gpio105", "gpio106";
drive-strength = <2>;
bias-pull-up;
};
};
};
qupv3_se13_spi_pins: qupv3_se13_spi_pins {
qupv3_se13_spi_active: qupv3_se13_spi_active {
mux {
pins = "gpio105", "gpio106", "gpio107",
"gpio108";
function = "qup13";
};
config {
pins = "gpio105", "gpio106", "gpio107",
"gpio108";
drive-strength = <6>;
bias-disable;
};
};
qupv3_se13_spi_sleep: qupv3_se13_spi_sleep {
mux {
pins = "gpio105", "gpio106", "gpio107",
"gpio108";
function = "gpio";
};
config {
pins = "gpio105", "gpio106", "gpio107",
"gpio108";
drive-strength = <6>;
bias-disable;
};
};
};
/* SE 14 pin mappings */
qupv3_se14_i2c_pins: qupv3_se14_i2c_pins {
qupv3_se14_i2c_active: qupv3_se14_i2c_active {
mux {
pins = "gpio33", "gpio34";
function = "qup14";
};
config {
pins = "gpio33", "gpio34";
drive-strength = <2>;
bias-disable;
};
};
qupv3_se14_i2c_sleep: qupv3_se14_i2c_sleep {
mux {
pins = "gpio33", "gpio34";
function = "gpio";
};
config {
pins = "gpio33", "gpio34";
drive-strength = <2>;
bias-pull-up;
};
};
};
qupv3_se14_spi_pins: qupv3_se14_spi_pins {
qupv3_se14_spi_active: qupv3_se14_spi_active {
mux {
pins = "gpio31", "gpio32", "gpio33",
"gpio34";
function = "qup14";
};
config {
pins = "gpio31", "gpio32", "gpio33",
"gpio34";
drive-strength = <6>;
bias-disable;
};
};
qupv3_se14_spi_sleep: qupv3_se14_spi_sleep {
mux {
pins = "gpio31", "gpio32", "gpio33",
"gpio34";
function = "gpio";
};
config {
pins = "gpio31", "gpio32", "gpio33",
"gpio34";
drive-strength = <6>;
bias-disable;
};
};
};
/* SE 15 pin mappings */
qupv3_se15_i2c_pins: qupv3_se15_i2c_pins {
qupv3_se15_i2c_active: qupv3_se15_i2c_active {
mux {
pins = "gpio81", "gpio82";
function = "qup15";
};
config {
pins = "gpio81", "gpio82";
drive-strength = <2>;
bias-disable;
};
};
qupv3_se15_i2c_sleep: qupv3_se15_i2c_sleep {
mux {
pins = "gpio81", "gpio82";
function = "gpio";
};
config {
pins = "gpio81", "gpio82";
drive-strength = <2>;
bias-pull-up;
};
};
};
qupv3_se15_spi_pins: qupv3_se15_spi_pins {
qupv3_se15_spi_active: qupv3_se15_spi_active {
mux {
pins = "gpio81", "gpio82", "gpio83",
"gpio84";
function = "qup15";
};
config {
pins = "gpio81", "gpio82", "gpio83",
"gpio84";
drive-strength = <6>;
bias-disable;
};
};
qupv3_se15_spi_sleep: qupv3_se15_spi_sleep {
mux {
pins = "gpio81", "gpio82", "gpio83",
"gpio84";
function = "gpio";
};
config {
pins = "gpio81", "gpio82", "gpio83",
"gpio84";
drive-strength = <6>;
bias-disable;
};
};
};
/* SDC pin type */
sdc1_clk_on: sdc1_clk_on {
config {
pins = "sdc1_clk";
bias-disable; /* NO pull */
drive-strength = <16>; /* 16 MA */
};
};
sdc1_clk_off: sdc1_clk_off {
config {
pins = "sdc1_clk";
bias-disable; /* NO pull */
drive-strength = <2>; /* 2 MA */
};
};
sdc1_cmd_on: sdc1_cmd_on {
config {
pins = "sdc1_cmd";
bias-pull-up; /* pull up */
drive-strength = <10>; /* 10 MA */
};
};
sdc1_cmd_off: sdc1_cmd_off {
config {
pins = "sdc1_cmd";
num-grp-pins = <1>;
bias-pull-up; /* pull up */
drive-strength = <2>; /* 2 MA */
};
};
sdc1_data_on: sdc1_data_on {
config {
pins = "sdc1_data";
bias-pull-up; /* pull up */
drive-strength = <10>; /* 10 MA */
};
};
sdc1_data_off: sdc1_data_off {
config {
pins = "sdc1_data";
bias-pull-up; /* pull up */
drive-strength = <2>; /* 2 MA */
};
};
sdc1_rclk_on: sdc1_rclk_on {
config {
pins = "sdc1_rclk";
bias-pull-down; /* pull down */
};
};
sdc1_rclk_off: sdc1_rclk_off {
config {
pins = "sdc1_rclk";
bias-pull-down; /* pull down */
};
};
sdc2_clk_on: sdc2_clk_on {
config {
pins = "sdc2_clk";
bias-disable; /* NO pull */
drive-strength = <16>; /* 16 MA */
};
};
sdc2_clk_off: sdc2_clk_off {
config {
pins = "sdc2_clk";
bias-disable; /* NO pull */
drive-strength = <2>; /* 2 MA */
};
};
sdc2_cmd_on: sdc2_cmd_on {
config {
pins = "sdc2_cmd";
bias-pull-up; /* pull up */
drive-strength = <10>; /* 10 MA */
};
};
sdc2_cmd_off: sdc2_cmd_off {
config {
pins = "sdc2_cmd";
bias-pull-up; /* pull up */
drive-strength = <2>; /* 2 MA */
};
};
sdc2_data_on: sdc2_data_on {
config {
pins = "sdc2_data";
bias-pull-up; /* pull up */
drive-strength = <10>; /* 10 MA */
};
};
sdc2_data_off: sdc2_data_off {
config {
pins = "sdc2_data";
bias-pull-up; /* pull up */
drive-strength = <2>; /* 2 MA */
};
};
sdc2_cd_on: cd_on {
mux {
pins = "gpio96";
function = "gpio";
};
config {
pins = "gpio96";
drive-strength = <2>;
bias-pull-up;
};
};
sdc2_cd_off: cd_off {
mux {
pins = "gpio96";
function = "gpio";
};
config {
pins = "gpio96";
drive-strength = <2>;
bias-disable;
};
};
/* USB C analog configuration */
wcd_usbc_analog_en1 {
wcd_usbc_analog_en1_idle: wcd_usbc_ana_en1_idle {
mux {
pins = "gpio49";
function = "gpio";
};
config {
pins = "gpio49";
drive-strength = <2>;
bias-pull-down;
output-low;
};
};
wcd_usbc_analog_en1_active: wcd_usbc_ana_en1_active {
mux {
pins = "gpio49";
function = "gpio";
};
config {
pins = "gpio49";
drive-strength = <2>;
bias-disable;
output-high;
};
};
};
sdw_clk_pin {
sdw_clk_sleep: sdw_clk_sleep {
mux {
pins = "gpio65";
function = "wsa_clk";
};
config {
pins = "gpio65";
drive-strength = <2>;
bias-bus-hold;
};
};
sdw_clk_active: sdw_clk_active {
mux {
pins = "gpio65";
function = "wsa_clk";
};
config {
pins = "gpio65";
drive-strength = <2>;
bias-bus-hold;
};
};
};
sdw_data_pin {
sdw_data_sleep: sdw_data_sleep {
mux {
pins = "gpio66";
function = "wsa_data";
};
config {
pins = "gpio66";
drive-strength = <4>;
bias-bus-hold;
};
};
sdw_data_active: sdw_data_active {
mux {
pins = "gpio66";
function = "wsa_data";
};
config {
pins = "gpio66";
drive-strength = <4>;
bias-bus-hold;
};
};
};
/* WSA speaker reset pins */
spkr_1_sd_n {
spkr_1_sd_n_sleep: spkr_1_sd_n_sleep {
mux {
pins = "gpio67";
function = "gpio";
};
config {
pins = "gpio67";
drive-strength = <2>; /* 2 mA */
bias-pull-down;
input-enable;
};
};
spkr_1_sd_n_active: spkr_1_sd_n_active {
mux {
pins = "gpio67";
function = "gpio";
};
config {
pins = "gpio67";
drive-strength = <16>; /* 16 mA */
bias-disable;
output-high;
};
};
};
spkr_2_sd_n {
spkr_2_sd_n_sleep: spkr_2_sd_n_sleep {
mux {
pins = "gpio68";
function = "gpio";
};
config {
pins = "gpio68";
drive-strength = <2>; /* 2 mA */
bias-pull-down;
input-enable;
};
};
spkr_2_sd_n_active: spkr_2_sd_n_active {
mux {
pins = "gpio68";
function = "gpio";
};
config {
pins = "gpio68";
drive-strength = <16>; /* 16 mA */
bias-disable;
output-high;
};
};
};
wcd_buck_vsel {
wcd_buck_vsel_default: wcd_buck_vsel_default{
mux {
pins = "gpio94";
function = "gpio";
};
config {
pins = "gpio94";
drive-strength = <8>; /* 8 mA */
bias-pull-down; /* pull down */
output-high;
};
};
};
wcd_gnd_mic_swap {
wcd_gnd_mic_swap_idle: wcd_gnd_mic_swap_idle {
mux {
pins = "gpio40";
function = "gpio";
};
config {
pins = "gpio40";
drive-strength = <2>;
bias-pull-down;
output-low;
};
};
wcd_gnd_mic_swap_active: wcd_gnd_mic_swap_active {
mux {
pins = "gpio40";
function = "gpio";
};
config {
pins = "gpio40";
drive-strength = <2>;
bias-disable;
output-high;
};
};
};
wcd9xxx_intr {
wcd_intr_default: wcd_intr_default{
mux {
pins = "gpio80";
function = "gpio";
};
config {
pins = "gpio80";
drive-strength = <2>; /* 2 mA */
bias-pull-down; /* pull down */
input-enable;
};
};
};
/* Pinctrl setting for CAMERA GPIO key */
key_cam_snapshot {
key_cam_snapshot_default: key_cam_snapshot_default {
pins = "gpio91";
function = "normal";
input-enable;
bias-pull-up;
power-source = <0>;
};
};
key_cam_focus {
key_cam_focus_default: key_cam_focus_default {
pins = "gpio92";
function = "normal";
input-enable;
bias-pull-up;
power-source = <0>;
};
};
pmx_sde: pmx_sde {
sde_dsi_active: sde_dsi_active {
mux {
pins = "gpio75", "gpio76";
function = "gpio";
};
config {
pins = "gpio75", "gpio76";
drive-strength = <8>; /* 8 mA */
bias-disable = <0>; /* no pull */
};
};
sde_dsi_suspend: sde_dsi_suspend {
mux {
pins = "gpio75", "gpio76";
function = "gpio";
};
config {
pins = "gpio75", "gpio76";
drive-strength = <2>; /* 2 mA */
bias-pull-down; /* PULL DOWN */
};
};
};
pmx_sde_te {
sde_te_active: sde_te_active {
mux {
pins = "gpio10";
function = "mdp_vsync";
};
config {
pins = "gpio10";
drive-strength = <2>; /* 2 mA */
bias-pull-down; /* PULL DOWN */
};
};
sde_te_suspend: sde_te_suspend {
mux {
pins = "gpio10";
function = "mdp_vsync";
};
config {
pins = "gpio10";
drive-strength = <2>; /* 2 mA */
bias-pull-down; /* PULL DOWN */
};
};
};
sde_dp_aux_active: sde_dp_aux_active {
mux {
pins = "gpio40", "gpio50";
function = "gpio";
};
config {
pins = "gpio40", "gpio50";
bias-disable = <0>; /* no pull */
drive-strength = <8>;
};
};
sde_dp_aux_suspend: sde_dp_aux_suspend {
mux {
pins = "gpio40", "gpio50";
function = "gpio";
};
config {
pins = "gpio40", "gpio50";
bias-pull-down;
drive-strength = <2>;
};
};
sde_dp_usbplug_cc_active: sde_dp_usbplug_cc_active {
mux {
pins = "gpio38";
function = "gpio";
};
config {
pins = "gpio38";
bias-disable;
drive-strength = <16>;
};
};
sde_dp_usbplug_cc_suspend: sde_dp_usbplug_cc_suspend {
mux {
pins = "gpio38";
function = "gpio";
};
config {
pins = "gpio38";
bias-pull-down;
drive-strength = <2>;
};
};
};
};
&pm660l_gpios {
camera0_dvdd_en_default: camera0_dvdd_en_default {
pins = "gpio3";
function = "normal";
power-source = <0>;
output-low;
};
camera1_dvdd_en_default: camera1_dvdd_en_default {
pins = "gpio4";
function = "normal";
power-source = <0>;
output-low;
};
key_vol_up {
key_vol_up_default: key_vol_up_default {
pins = "gpio7";
function = "normal";
input-enable;
bias-pull-up;
power-source = <0>;
};
};
};
&pm660_gpios {
smb_shutdown_default: smb_shutdown_default {
pins = "gpio11";
function = "normal";
power-source = <0>;
qcom,drive-strength = <3>;
output-high;
};
};