/* * Copyright (c) 2014-2015, 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 { msm_gpio: pinctrl@1000000 { compatible = "qcom,msm8952-pinctrl"; reg = <0x1000000 0x300000>; interrupts = <0 208 0>; gpio-controller; #gpio-cells = <2>; interrupt-controller; #interrupt-cells = <2>; pmx-uartconsole { uart_console_active: uart_console_active { mux { pins = "gpio4", "gpio5"; function = "blsp_uart2"; }; config { pins = "gpio4", "gpio5"; drive-strength = <2>; bias-disable; }; }; uart_console_sleep: uart_console_sleep { mux { pins = "gpio4", "gpio5"; function = "blsp_uart2"; }; config { pins = "gpio4", "gpio5"; drive-strength = <2>; bias-pull-down; }; }; }; cdc-pdm-lines { cdc_pdm_lines_act: pdm_lines_on { mux { pins = "gpio69", "gpio73", "gpio74"; function = "cdc_pdm0"; }; config { pins = "gpio69", "gpio73", "gpio74"; drive-strength = <8>; }; }; cdc_pdm_lines_sus: pdm_lines_off { mux { pins = "gpio69", "gpio73", "gpio74"; function = "cdc_pdm0"; }; config { pins = "gpio69", "gpio73", "gpio74"; drive-strength = <2>; bias-disable; }; }; }; cdc-pdm-2-lines { cdc_pdm_lines_2_act: pdm_lines_2_on { mux { pins = "gpio70", "gpio71", "gpio72"; function = "cdc_pdm0"; }; config { pins = "gpio70", "gpio71", "gpio72"; drive-strength = <8>; }; }; cdc_pdm_lines_2_sus: pdm_lines_2_off { mux { pins = "gpio70", "gpio71", "gpio72"; function = "cdc_pdm0"; }; config { pins = "gpio70", "gpio71", "gpio72"; drive-strength = <2>; bias-disable; }; }; }; cross-conn-det { cross_conn_det_act: lines_on { mux { pins = "gpio63"; function = "gpio"; }; config { pins = "gpio63"; drive-strength = <8>; output-low; bias-pull-down; }; }; cross_conn_det_sus: lines_off { mux { pins = "gpio63"; function = "gpio"; }; config { pins = "gpio63"; drive-strength = <2>; bias-pull-down; }; }; }; hsuart_active: default { mux { pins = "gpio0", "gpio1", "gpio2", "gpio3"; function = "blsp_uart1"; }; config { pins = "gpio0", "gpio1", "gpio2", "gpio3"; drive-strength = <16>; bias-disable; }; }; hsuart_sleep: sleep { mux { pins = "gpio0", "gpio1", "gpio2", "gpio3"; function = "gpio"; }; config { pins = "gpio0", "gpio1", "gpio2", "gpio3"; drive-strength = <2>; bias-disable; }; }; sdhc2_cd_pin { sdc2_cd_on: cd_on { mux { pins = "gpio67"; function = "gpio"; }; config { pins = "gpio67"; drive-strength = <2>; bias-pull-up; }; }; sdc2_cd_off: cd_off { mux { pins = "gpio67"; function = "gpio"; }; config { pins = "gpio67"; drive-strength = <2>; bias-disable; }; }; }; trigout_a0: trigout_a0 { mux { pins = "gpio41"; function = "qdss_cti_trig_out_a0"; }; config { pins = "gpio41"; drive-strength = <2>; bias-disable; }; }; pmx_sdc1_rclk { 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 */ }; }; }; pmx_sdc1_clk { 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 */ }; }; }; pmx_sdc1_cmd { 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"; bias-pull-up; /* pull up */ drive-strength = <2>; /* 2 MA */ }; }; }; pmx_sdc1_data { 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 */ }; }; }; pmx_sdc2_clk { sdc2_clk_on: sdc2_clk_on { config { pins = "sdc2_clk"; drive-strength = <16>; /* 16 MA */ bias-disable; /* NO pull */ }; }; sdc2_clk_off: sdc2_clk_off { config { pins = "sdc2_clk"; bias-disable; /* NO pull */ drive-strength = <2>; /* 2 MA */ }; }; }; pmx_sdc2_cmd { 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 */ }; }; }; pmx_sdc2_data { 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 */ }; }; }; spi0 { spi0_default: spi0_default { /* active state */ mux { /* MOSI, MISO, CLK */ pins = "gpio0", "gpio1", "gpio3"; function = "blsp_spi1"; }; config { pins = "gpio0", "gpio1", "gpio3"; drive-strength = <12>; /* 12 MA */ bias-disable = <0>; /* No PULL */ }; }; spi0_sleep: spi0_sleep { /* suspended state */ mux { /* MOSI, MISO, CLK */ pins = "gpio0", "gpio1", "gpio3"; function = "gpio"; }; config { pins = "gpio0", "gpio1", "gpio3"; drive-strength = <2>; /* 2 MA */ bias-pull-down; /* PULL Down */ }; }; spi0_cs0_active: cs0_active { /* CS */ mux { pins = "gpio2"; function = "blsp_spi1"; }; config { pins = "gpio2"; drive-strength = <2>; bias-disable = <0>; }; }; spi0_cs0_sleep: cs0_sleep { /* CS */ mux { pins = "gpio2"; function = "gpio"; }; config { pins = "gpio2"; drive-strength = <2>; bias-disable = <0>; }; }; }; cci { cci0_active: cci0_active { /* cci0 active state */ mux { /* CLK, DATA */ pins = "gpio29", "gpio30"; function = "cci_i2c"; }; config { pins = "gpio29", "gpio30"; drive-strength = <2>; /* 2 MA */ bias-disable; /* No PULL */ }; }; cci0_suspend: cci0_suspend { /* cci0 suspended state */ mux { /* CLK, DATA */ pins = "gpio29", "gpio30"; function = "gpio"; }; config { pins = "gpio29", "gpio30"; drive-strength = <2>; /* 2 MA */ bias-disable; /* No PULL */ }; }; cci1_active: cci1_active { /* cci1 active state */ mux { /* CLK, DATA */ pins = "gpio31", "gpio32"; function = "cci_i2c"; }; config { pins = "gpio31", "gpio32"; drive-strength = <2>; /* 2 MA */ bias-disable; /* No PULL */ }; }; cci1_suspend: cci1_suspend { /* cci1 suspended state */ mux { /* CLK, DATA */ pins = "gpio31", "gpio32"; function = "gpio"; }; config { pins = "gpio31", "gpio32"; drive-strength = <2>; /* 2 MA */ bias-disable; /* No PULL */ }; }; }; pmx_mdss { mdss_dsi_active: mdss_dsi_active { mux { function = "gpio"; }; config { drive-strength = <8>; /* 8 mA */ bias-disable = <0>; /* no pull */ output-high; }; }; mdss_dsi_suspend: mdss_dsi_suspend { mux { function = "gpio"; }; config { drive-strength = <2>; /* 2 mA */ bias-pull-down; /* pull down */ output-low; }; }; }; pmx_mdss_te { mdss_te_active: mdss_te_active { mux { function = "mdp_vsync"; }; config { drive-strength = <2>; /* 2 mA */ bias-pull-down; /* pull down */ input-debounce = <0>; }; }; mdss_te_suspend: mdss_te_suspend { mux { function = "mdp_vsync"; }; config { drive-strength = <2>; /* 2 mA */ bias-pull-down; /* pull down */ input-debounce = <0>; }; }; }; pmx_qdsd_clk { qdsd_clk_sdcard: clk_sdcard { config { pins = "qdsd_clk"; bias-disable; /* NO pull */ drive-strength = <7>; /* 7 MA */ }; }; qdsd_clk_trace: clk_trace { config { pins = "qdsd_clk"; bias-pull-down; /* pull down */ drive-strength = <0>; /* 0 MA */ }; }; qdsd_clk_swdtrc: clk_swdtrc { config { pins = "qdsd_clk"; bias-pull-down; /* pull down */ drive-strength = <0>; /* 0 MA */ }; }; qdsd_clk_spmi: clk_spmi { config { pins = "qdsd_clk"; bias-pull-down; /* pull down */ drive-strength = <0>; /* 0 MA */ }; }; }; pmx_qdsd_cmd { qdsd_cmd_sdcard: cmd_sdcard { config { pins = "qdsd_cmd"; bias-pull-down; /* pull down */ drive-strength = <3>; /* 3 MA */ }; }; qdsd_cmd_trace: cmd_trace { config { pins = "qdsd_cmd"; bias-pull-down; /* pull down */ drive-strength = <0>; /* 0 MA */ }; }; qdsd_cmd_swduart: cmd_uart { config { pins = "qdsd_cmd"; bias-pull-up; /* pull up */ drive-strength = <0>; /* 0 MA */ }; }; qdsd_cmd_swdtrc: cmd_swdtrc { config { pins = "qdsd_cmd"; bias-pull-up; /* pull up */ drive-strength = <0>; /* 0 MA */ }; }; qdsd_cmd_jtag: cmd_jtag { config { pins = "qdsd_cmd"; bias-disable; /* NO pull */ drive-strength = <3>; /* 3 MA */ }; }; qdsd_cmd_spmi: cmd_spmi { config { pins = "qdsd_cmd"; bias-pull-down; /* pull down */ drive-strength = <4>; /* 4 MA */ }; }; }; pmx_qdsd_data0 { qdsd_data0_sdcard: data0_sdcard { config { pins = "qdsd_data0"; bias-pull-down; /* pull down */ drive-strength = <3>; /* 3 MA */ }; }; qdsd_data0_trace: data0_trace { config { pins = "qdsd_data0"; bias-pull-down; /* pull down */ drive-strength = <3>; /* 3 MA */ }; }; qdsd_data0_swduart: data0_uart { config { pins = "qdsd_data0"; bias-pull-down; /* pull down */ drive-strength = <0>; /* 0 MA */ }; }; qdsd_data0_swdtrc: data0_swdtrc { config { pins = "qdsd_data0"; bias-pull-down; /* pull down */ drive-strength = <0>; /* 0 MA */ }; }; qdsd_data0_jtag: data0_jtag { config { pins = "qdsd_data0"; bias-pull-up; /* pull up */ drive-strength = <0>; /* 0 MA */ }; }; qdsd_data0_spmi: data0_spmi { config { pins = "qdsd_data0"; bias-pull-down; /* pull down */ drive-strength = <0>; /* 0 MA */ }; }; }; pmx_qdsd_data1 { qdsd_data1_sdcard: data1_sdcard { config { pins = "qdsd_data1"; bias-pull-down; /* pull down */ drive-strength = <3>; /* 3 MA */ }; }; qdsd_data1_trace: data1_trace { config { pins = "qdsd_data1"; bias-pull-down; /* pull down */ drive-strength = <3>; /* 3 MA */ }; }; qdsd_data1_swduart: data1_uart { config { pins = "qdsd_data1"; bias-pull-down; /* pull down */ drive-strength = <0>; /* 0 MA */ }; }; qdsd_data1_swdtrc: data1_swdtrc { config { pins = "qdsd_data1"; bias-pull-down; /* pull down */ drive-strength = <0>; /* 0 MA */ }; }; qdsd_data1_jtag: data1_jtag { config { pins = "qdsd_data1"; bias-pull-down; /* pull down */ drive-strength = <0>; /* 0 MA */ }; }; }; pmx_qdsd_data2 { qdsd_data2_sdcard: data2_sdcard { config { pins = "qdsd_data2"; bias-pull-down; /* pull down */ drive-strength = <3>; /* 3 MA */ }; }; qdsd_data2_trace: data2_trace { config { pins = "qdsd_data2"; bias-pull-down; /* pull down */ drive-strength = <3>; /* 3 MA */ }; }; qdsd_data2_swduart: data2_uart { config { pins = "qdsd_data2"; bias-pull-down; /* pull down */ drive-strength = <0>; /* 0 MA */ }; }; qdsd_data2_swdtrc: data2_swdtrc { config { pins = "qdsd_data2"; bias-pull-down; /* pull down */ drive-strength = <0>; /* 0 MA */ }; }; qdsd_data2_jtag: data2_jtag { config { pins = "qdsd_data2"; bias-pull-up; /* pull up */ drive-strength = <3>; /* 3 MA */ }; }; }; pmx_qdsd_data3 { qdsd_data3_sdcard: data3_sdcard { config { pins = "qdsd_data3"; bias-pull-down; /* pull down */ drive-strength = <3>; /* 3 MA */ }; }; qdsd_data3_trace: data3_trace { config { pins = "qdsd_data3"; bias-pull-down; /* pull down */ drive-strength = <3>; /* 3 MA */ }; }; qdsd_data3_swduart: data3_uart { config { pins = "qdsd_data3"; bias-pull-up; /* pull up */ drive-strength = <0>; /* 0 MA */ }; }; qdsd_data3_swdtrc: data3_swdtrc { config { pins = "qdsd_data3"; bias-pull-up; /* pull up */ drive-strength = <0>; /* 0 MA */ }; }; qdsd_data3_jtag: data3_jtag { config { pins = "qdsd_data3"; bias-pull-up; /* pull up */ drive-strength = <0>; /* 0 MA */ }; }; qdsd_data3_spmi: data3_spmi { config { pins = "qdsd_data3"; bias-pull-down; /* pull down */ drive-strength = <3>; /* 3 MA */ }; }; }; pmx_i2c_2 { /* active state */ i2c_2_active: i2c_2_active{ mux { /* CLK, DATA */ pins = "gpio6", "gpio7"; function = "blsp_i2c2"; }; config { pins = "gpio6", "gpio7"; drive-strength = <2>; /* 2 MA */ bias-disable; /* No PULL */ }; }; /* suspended state */ i2c_2_sleep: i2c_2_sleep { mux { /* CLK, DATA */ pins = "gpio6", "gpio7"; function = "blsp_i2c2"; }; config { pins = "gpio6", "gpio7"; drive-strength = <2>; /* 2 MA */ bias-disable; /* No PULL */ }; }; }; pmx_i2c_5 { /* active state */ i2c_5_active: i2c_5_active{ mux { /* CLK, DATA */ pins = "gpio18", "gpio19"; function = "blsp_i2c5"; }; config { pins = "gpio18", "gpio19"; drive-strength = <2>; /* 2 MA */ bias-disable; /* No PULL */ }; }; /* suspended state */ i2c_5_sleep: i2c_5_sleep { mux { /* CLK, DATA */ pins = "gpio18", "gpio19"; function = "blsp_i2c5"; }; config { pins = "gpio18", "gpio19"; drive-strength = <2>; /* 2 MA */ bias-disable; /* No PULL */ }; }; }; /* WSA Reset */ wsa_reset { wsa_reset_on: wsa_reset_on { mux { pins = "gpio68"; function = "gpio"; }; config { pins = "gpio68"; drive-strength = <2>; /* 2 MA */ output-high; }; }; wsa_reset_off: wsa_reset_off { mux { pins = "gpio68"; function = "gpio"; }; config { pins = "gpio68"; drive-strength = <2>; /* 2 MA */ output-low; }; }; }; /* WSA CLK */ wsa_clk { wsa_clk_on: wsa_clk_on { mux { pins = "gpio25"; function = "pri_mi2s_mclk_a"; }; config { pins = "gpio25"; drive-strength = <8>; /* 8 MA */ output-high; }; }; wsa_clk_off: wsa_clk_off { mux { pins = "gpio25"; function = "pri_mi2s_mclk_a"; }; config { pins = "gpio25"; drive-strength = <2>; /* 2 MA */ output-low; bias-pull-down; }; }; }; /* WSA VI sense */ wsa-vi { wsa_vi_on: wsa_vi_on { mux { pins = "gpio94", "gpio95"; function = "wsa_io"; }; config { pins = "gpio94", "gpio95"; drive-strength = <8>; /* 8 MA */ bias-disable; /* NO pull */ }; }; wsa_vi_off: wsa_vi_off { mux { pins = "gpio94", "gpio95"; function = "wsa_io"; }; config { pins = "gpio94", "gpio95"; drive-strength = <2>; /* 2 MA */ bias-pull-down; }; }; }; /*sensors */ cam_sensor_mclk0_default: cam_sensor_mclk0_default { /* MCLK0 */ mux { /* CLK, DATA */ pins = "gpio26"; function = "cam_mclk"; }; config { pins = "gpio26"; bias-disable; /* No PULL */ drive-strength = <2>; /* 2 MA */ }; }; cam_sensor_mclk0_sleep: cam_sensor_mclk0_sleep { /* MCLK0 */ mux { /* CLK, DATA */ pins = "gpio26"; function = "cam_mclk"; }; config { pins = "gpio26"; bias-pull-down; /* PULL DOWN */ drive-strength = <2>; /* 2 MA */ }; }; cam_sensor_rear_default: cam_sensor_rear_default { /* RESET, STANDBY */ mux { pins = "gpio36", "gpio35"; }; config { pins = "gpio36","gpio35"; bias-disable; /* No PULL */ drive-strength = <2>; /* 2 MA */ }; }; cam_sensor_rear_sleep: cam_sensor_rear_sleep { /* RESET, STANDBY */ mux { pins = "gpio36","gpio35"; function = "gpio"; }; config { pins = "gpio36","gpio35"; bias-disable; /* No PULL */ drive-strength = <2>; /* 2 MA */ }; }; cam_sensor_mclk1_default: cam_sensor_mclk1_default { /* MCLK1 */ mux { /* CLK, DATA */ pins = "gpio27"; function = "cam_mclk"; }; config { pins = "gpio27"; bias-disable; /* No PULL */ drive-strength = <2>; /* 2 MA */ }; }; cam_sensor_mclk1_sleep: cam_sensor_mclk1_sleep { /* MCLK1 */ mux { /* CLK, DATA */ pins = "gpio27"; function = "cam_mclk"; }; config { pins = "gpio27"; bias-pull-down; /* PULL DOWN */ drive-strength = <2>; /* 2 MA */ }; }; cam_sensor_front_default: cam_sensor_front_default { /* RESET, STANDBY */ mux { pins = "gpio38","gpio37"; function = "cam2_rst"; }; config { pins = "gpio38","gpio37"; bias-disable; /* No PULL */ drive-strength = <2>; /* 2 MA */ }; }; cam_sensor_front_sleep: cam_sensor_front_sleep { /* RESET, STANDBY */ mux { pins = "gpio38","gpio37"; function = "cam2_rst"; }; config { pins = "gpio38","gpio37"; bias-disable; /* No PULL */ drive-strength = <2>; /* 2 MA */ }; }; cam_sensor_mclk2_default: cam_sensor_mclk2_default { /* MCLK2 */ mux { /* CLK, DATA */ pins = "gpio28"; function = "cam_mclk"; }; config { pins = "gpio28"; bias-disable; /* No PULL */ drive-strength = <2>; /* 2 MA */ }; }; cam_sensor_mclk2_sleep: cam_sensor_mclk2_sleep { /* MCLK2 */ mux { /* CLK, DATA */ pins = "gpio28"; function = "cam_mclk"; }; config { pins = "gpio28"; bias-pull-down; /* PULL DOWN */ drive-strength = <2>; /* 2 MA */ }; }; cam_sensor_front1_default: cam_sensor_front1_default { /* RESET, STANDBY */ mux { pins = "gpio40", "gpio39"; function = "webcam_rst"; }; config { pins = "gpio40", "gpio39"; bias-disable; /* No PULL */ drive-strength = <2>; /* 2 MA */ }; }; cam_sensor_front1_sleep: cam_sensor_front1_sleep { /* RESET, STANDBY */ mux { pins = "gpio40", "gpio39"; function = "webcam_rst"; }; config { pins = "gpio40", "gpio39"; bias-disable; /* No PULL */ drive-strength = <2>; /* 2 MA */ }; }; cam_sensor_ext_gpio_default: cam_sensor_ext_gpio_default { cam_sensor_ext_gpio_default { /* RESET, STANDBY active state */ pins = "gpio130", "gpio131"; function = "gpio"; drive-strength = <2>; /* 2 MA */ bias-disable; /* No PULL */ }; }; cam_sensor_ext_gpio_sleep: cam_sensor_ext_gpio_sleep { cam_sensor_ext_gpio_sleep { /* RESET, STANDBY susppend state */ pins = "gpio130", "gpio131"; function = "gpio"; drive-strength = <2>; /* 2 MA */ bias-disable; /* No PULL */ }; }; /* CoreSight */ tpiu_seta_1 { seta_1: seta { mux { pins = "gpio16"; function = "qdss_traceclk_a"; }; config { pins = "gpio16"; drive-strength = <16>; bias-disable; }; }; }; tpiu_seta_2 { seta_2: seta { mux { pins = "gpio18"; function = "qdss_tracectl_a"; }; config { pins = "gpio18"; drive-strength = <16>; bias-disable; }; }; }; tpiu_seta_3 { seta_3: seta { mux { pins = "gpio19"; function = "qdss_tracedata_a"; }; config { pins = "gpio19"; drive-strength = <16>; bias-disable; }; }; }; tpiu_seta_4 { seta_4: seta { mux { pins = "gpio26"; function = "qdss_tracedata_a"; }; config { pins = "gpio26"; drive-strength = <16>; bias-disable; }; }; }; tpiu_seta_5 { seta_5: seta { mux { pins = "gpio27"; function = "qdss_tracedata_a"; }; config { pins = "gpio27"; drive-strength = <16>; bias-disable; }; }; }; tpiu_seta_6 { seta_6: seta { mux { pins = "gpio28"; function = "qdss_tracedata_a"; }; config { pins = "gpio28"; drive-strength = <16>; bias-disable; }; }; }; tpiu_seta_7 { seta_7: seta { mux { pins = "gpio29"; function = "qdss_tracedata_a"; }; config { pins = "gpio29"; drive-strength = <16>; bias-disable; }; }; }; tpiu_seta_8 { seta_8: seta { mux { pins = "gpio30"; function = "qdss_tracedata_a"; }; config { pins = "gpio30"; drive-strength = <16>; bias-disable; }; }; }; tpiu_seta_9 { seta_9: seta { mux { pins = "gpio31"; function = "qdss_tracedata_a"; }; config { pins = "gpio31"; drive-strength = <16>; bias-disable; }; }; }; tpiu_seta_10 { seta_10: seta { mux { pins = "gpio32"; function = "qdss_tracedata_a"; }; config { pins = "gpio32"; drive-strength = <16>; bias-disable; }; }; }; tpiu_seta_11 { seta_11: seta { mux { pins = "gpio33"; function = "qdss_tracedata_a"; }; config { pins = "gpio33"; drive-strength = <16>; bias-disable; }; }; }; tpiu_seta_12 { seta_12: seta { mux { pins = "gpio34"; function = "qdss_tracedata_a"; }; config { pins = "gpio34"; drive-strength = <16>; bias-disable; }; }; }; tpiu_seta_13 { seta_13: seta { mux { pins = "gpio35"; function = "qdss_tracedata_a"; }; config { pins = "gpio35"; drive-strength = <16>; bias-disable; }; }; }; tpiu_seta_14 { seta_14: seta { mux { pins = "gpio36"; function = "qdss_tracedata_a"; }; config { pins = "gpio36"; drive-strength = <16>; bias-disable; }; }; }; tpiu_seta_15 { seta_15: seta { mux { pins = "gpio37"; function = "qdss_tracedata_a"; }; config { pins = "gpio37"; drive-strength = <16>; bias-disable; }; }; }; tpiu_seta_16 { seta_16: seta { mux { pins = "gpio38"; function = "qdss_tracedata_a"; }; config { pins = "gpio38"; drive-strength = <16>; bias-disable; }; }; }; tpiu_seta_17 { seta_17: seta { mux { pins = "gpio39"; function = "qdss_tracedata_a"; }; config { pins = "gpio39"; drive-strength = <16>; bias-disable; }; }; }; tpiu_seta_18 { seta_18: seta { mux { pins = "gpio40"; function = "qdss_tracedata_a"; }; config { pins = "gpio40"; drive-strength = <16>; bias-disable; }; }; }; tpiu_setb_1 { setb_1: setb { mux { pins = "gpio8"; function = "qdss_tracedata_b"; }; config { pins = "gpio8"; drive-strength = <16>; bias-disable; }; }; }; tpiu_setb_2 { setb_2: setb { mux { pins = "gpio9"; function = "qdss_tracedata_b"; }; config { pins = "gpio9"; drive-strength = <16>; bias-disable; }; }; }; tpiu_setb_3 { setb_3: setb { mux { pins = "gpio12"; function = "qdss_tracedata_b"; }; config { pins = "gpio12"; drive-strength = <16>; bias-disable; }; }; }; tpiu_setb_4 { setb_4: setb { mux { pins = "gpio13"; function = "qdss_tracedata_b"; }; config { pins = "gpio13"; drive-strength = <16>; bias-disable; }; }; }; tpiu_setb_5 { setb_5: setb { mux { pins = "gpio20"; function = "qdss_tracectl_b"; }; config { pins = "gpio20"; drive-strength = <16>; bias-disable; }; }; }; tpiu_setb_6 { setb_6: setb { mux { pins = "gpio22"; function = "qdss_traceclk_b"; }; config { pins = "gpio22"; drive-strength = <16>; bias-disable; }; }; }; tpiu_setb_7 { setb_7: setb { mux { pins = "gpio23"; function = "qdss_tracedata_b"; }; config { pins = "gpio23"; drive-strength = <16>; bias-disable; }; }; }; tpiu_setb_8 { setb_8: setb { mux { pins = "gpio42"; function = "qdss_tracedata_b"; }; config { pins = "gpio42"; drive-strength = <16>; bias-disable; }; }; }; tpiu_setb_9 { setb_9: setb { mux { pins = "gpio43"; function = "qdss_tracedata_b"; }; config { pins = "gpio43"; drive-strength = <16>; bias-disable; }; }; }; tpiu_setb_10 { setb_10: setb { mux { pins = "gpio44"; function = "qdss_tracedata_b"; }; config { drive-strength = <16>; bias-disable; }; }; }; tpiu_setb_11 { pins = "gpio45"; function = "qdss_tracedata_b"; setb_11: setb { drive-strength = <16>; bias-disable; }; }; tpiu_setb_12 { setb_12: setb { mux { pins = "gpio46"; function = "qdss_tracedata_b"; }; config { pins = "gpio46"; drive-strength = <16>; bias-disable; }; }; }; tpiu_setb_13 { setb_13: setb { mux { pins = "gpio47"; function = "qdss_tracedata_b"; }; config { pins = "gpio47"; drive-strength = <16>; bias-disable; }; }; }; tpiu_setb_14 { setb_14: setb { mux { pins = "gpio66"; function = "qdss_tracedata_b"; }; config { pins = "gpio66"; drive-strength = <16>; bias-disable; }; }; }; tpiu_setb_15 { setb_15: setb { mux { pins = "gpio86"; function = "qdss_tracedata_b"; }; config { pins = "gpio86"; drive-strength = <16>; bias-disable; }; }; }; tpiu_setb_16 { setb_16: setb { mux { pins = "gpio87"; function = "qdss_tracedata_b"; }; config { pins = "gpio87"; drive-strength = <16>; bias-disable; }; }; }; tpiu_setb_17 { setb_17: setb { mux { pins = "gpio88"; function = "qdss_tracedata_b"; }; config { pins = "gpio88"; drive-strength = <16>; bias-disable; }; }; }; tpiu_setb_18 { setb_18: setb { mux { pins = "gpio92"; function = "qdss_tracedata_b"; }; config { pins = "gpio92"; drive-strength = <16>; bias-disable; }; }; }; /* add pingrp for touchscreen */ pmx_ts_int_active { ts_int_active: ts_int_active { mux { pins = "gpio65"; function = "gpio"; }; config { pins = "gpio65"; drive-strength = <8>; bias-pull-up; }; }; }; pmx_ts_int_suspend { ts_int_suspend: ts_int_suspend { mux { pins = "gpio65"; function = "gpio"; }; config { pins = "gpio65"; drive-strength = <2>; bias-pull-down; }; }; }; pmx_ts_reset_active { ts_reset_active: ts_reset_active { mux { pins = "gpio64"; function = "gpio"; }; config { pins = "gpio64"; drive-strength = <8>; bias-pull-up; }; }; }; pmx_ts_reset_suspend { ts_reset_suspend: ts_reset_suspend { mux { pins = "gpio64"; function = "gpio"; }; config { pins = "gpio64"; drive-strength = <2>; bias-pull-down; }; }; }; pmx_ts_release { ts_release: ts_release { mux { pins = "gpio65", "gpio64"; function = "gpio"; }; config { pins = "gpio65", "gpio64"; drive-strength = <2>; bias-pull-down; }; }; }; flash_led_enable { flash_led_enable: flash_led_enable { mux { pins = "gpio128"; function = "gpio"; }; config { pins = "gpio128"; drive-strength = <16>; output-high; }; }; }; flash_led_disable { flash_led_disable: flash_led_disable { mux { pins = "gpio128"; function = "gpio"; }; config { pins = "gpio128"; drive-strength = <2>; output-low; }; }; }; pmx_i2c_8 { /* active state */ i2c_8_active: i2c_8_active{ mux { /* CLK, DATA */ pins = "gpio98", "gpio99"; function = "blsp_i2c8"; }; config { pins = "gpio98", "gpio99"; drive-strength = <2>; /* 2 MA */ bias-disable; /* No PULL */ }; }; /* suspended state */ i2c_8_sleep: i2c_8_sleep { mux { /* CLK, DATA */ pins = "gpio98", "gpio99"; function = "blsp_i2c8"; }; config { pins = "gpio98", "gpio99"; drive-strength = <2>; /* 2 MA */ bias-disable; /* No PULL */ }; }; }; pmx_i2c_3 { i2c_3_active: i2c_3_active { mux { /* CLK, DATA */ pins = "gpio10", "gpio11"; function = "blsp_i2c3"; }; config { pins = "gpio10", "gpio11"; drive-strength = <2>; /* 2 MA */ bias-disable; /* No PULL */ }; }; i2c_3_sleep: i2c_3_sleep { mux { /* CLK, DATA */ pins = "gpio10", "gpio11"; function = "blsp_i2c3"; }; config { pins = "gpio10", "gpio11"; drive-strength = <2>; /* 2 MA */ bias-disable; /* No PULL */ }; }; }; wcnss_pmux_5wire { /* Active configuration of bus pins */ wcnss_default: wcnss_default { wcss_wlan2 { pins = "gpio76"; function = "wcss_wlan2"; }; wcss_wlan1 { pins = "gpio77"; function = "wcss_wlan1"; }; wcss_wlan0 { pins = "gpio78"; function = "wcss_wlan0"; }; wcss_wlan { pins = "gpio79", "gpio80"; function = "wcss_wlan"; }; config { pins = "gpio76", "gpio77", "gpio78", "gpio79", "gpio80"; drive-strength = <6>; /* 6 MA */ bias-pull-up; /* PULL UP */ }; }; wcnss_sleep: wcnss_sleep { wcss_wlan2 { pins = "gpio76"; function = "wcss_wlan2"; }; wcss_wlan1 { pins = "gpio77"; function = "wcss_wlan1"; }; wcss_wlan0 { pins = "gpio78"; function = "wcss_wlan0"; }; wcss_wlan { pins = "gpio79", "gpio80"; function = "wcss_wlan"; }; config { pins = "gpio76", "gpio77", "gpio78", "gpio79", "gpio80"; drive-strength = <2>; /* 2 MA */ bias-pull-down; /* PULL Down */ }; }; }; wcnss_pmux_gpio: wcnss_pmux_gpio { wcnss_gpio_default: wcnss_gpio_default { /* Active configuration of bus pins */ mux { /* Uses general purpose pins */ pins = "gpio76", "gpio77", "gpio78", "gpio79", "gpio80"; function = "gpio"; }; config { pins = "gpio76", "gpio77", "gpio78", "gpio79", "gpio80"; drive-strength = <6>; /* 6 MA */ bias-pull-up; /* PULL UP */ }; }; }; tlmm_gpio_key { gpio_key_active: gpio_key_active { mux { pins = "gpio85", "gpio86", "gpio87"; function = "gpio"; }; config { pins = "gpio85", "gpio86", "gpio87"; drive-strength = <2>; bias-pull-up; }; }; gpio_key_suspend: gpio_key_suspend { mux { pins = "gpio85", "gpio86", "gpio87"; function = "gpio"; }; config { pins = "gpio85", "gpio86", "gpio87"; drive-strength = <2>; bias-pull-up; }; }; }; }; };