1 # SPDX-License-Identifier: (GPL-2.0-only OR BS 1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2 %YAML 1.2 2 %YAML 1.2 3 --- 3 --- 4 $id: http://devicetree.org/schemas/pinctrl/qco 4 $id: http://devicetree.org/schemas/pinctrl/qcom,msm8953-pinctrl.yaml# 5 $schema: http://devicetree.org/meta-schemas/co 5 $schema: http://devicetree.org/meta-schemas/core.yaml# 6 6 7 title: Qualcomm Technologies, Inc. MSM8953 TLM 7 title: Qualcomm Technologies, Inc. MSM8953 TLMM block 8 8 9 maintainers: 9 maintainers: 10 - Bjorn Andersson <bjorn.andersson@linaro.org 10 - Bjorn Andersson <bjorn.andersson@linaro.org> 11 11 12 description: 12 description: 13 Top Level Mode Multiplexer pin controller in 13 Top Level Mode Multiplexer pin controller in Qualcomm MSM8953 SoC. 14 14 15 properties: 15 properties: 16 compatible: 16 compatible: 17 const: qcom,msm8953-pinctrl 17 const: qcom,msm8953-pinctrl 18 18 19 reg: 19 reg: 20 maxItems: 1 20 maxItems: 1 21 21 22 interrupts: 22 interrupts: 23 maxItems: 1 23 maxItems: 1 24 24 25 gpio-reserved-ranges: true 25 gpio-reserved-ranges: true 26 26 27 patternProperties: 27 patternProperties: 28 "-state$": 28 "-state$": 29 oneOf: 29 oneOf: 30 - $ref: "#/$defs/qcom-msm8953-tlmm-state 30 - $ref: "#/$defs/qcom-msm8953-tlmm-state" 31 - patternProperties: 31 - patternProperties: 32 "-pins$": 32 "-pins$": 33 $ref: "#/$defs/qcom-msm8953-tlmm-s 33 $ref: "#/$defs/qcom-msm8953-tlmm-state" 34 additionalProperties: false 34 additionalProperties: false 35 35 36 $defs: 36 $defs: 37 qcom-msm8953-tlmm-state: 37 qcom-msm8953-tlmm-state: 38 type: object 38 type: object 39 description: 39 description: 40 Pinctrl node's client devices use subnod 40 Pinctrl node's client devices use subnodes for desired pin configuration. 41 Client device subnodes use below standar 41 Client device subnodes use below standard properties. 42 $ref: qcom,tlmm-common.yaml#/$defs/qcom-tl 42 $ref: qcom,tlmm-common.yaml#/$defs/qcom-tlmm-state 43 unevaluatedProperties: false 43 unevaluatedProperties: false 44 44 45 properties: 45 properties: 46 pins: 46 pins: 47 description: 47 description: 48 List of gpio pins affected by the pr 48 List of gpio pins affected by the properties specified in this 49 subnode. 49 subnode. 50 items: 50 items: 51 oneOf: 51 oneOf: 52 - pattern: "^gpio([0-9]|[1-9][0-9] 52 - pattern: "^gpio([0-9]|[1-9][0-9]|1[0-3][0-9]|14[01])$" 53 - enum: [ sdc1_clk, sdc1_cmd, sdc1 53 - enum: [ sdc1_clk, sdc1_cmd, sdc1_data, sdc1_rclk, sdc2_clk, 54 sdc2_cmd, sdc2_data, qds 54 sdc2_cmd, sdc2_data, qdsd_clk, qdsd_cmd, qdsd_data0, 55 qdsd_data1, qdsd_data2, 55 qdsd_data1, qdsd_data2, qdsd_data3 ] 56 minItems: 1 56 minItems: 1 57 maxItems: 16 57 maxItems: 16 58 58 59 function: 59 function: 60 description: 60 description: 61 Specify the alternative function to 61 Specify the alternative function to be configured for the specified 62 pins. 62 pins. 63 63 64 enum: [ accel_int, adsp_ext, alsp_int, 64 enum: [ accel_int, adsp_ext, alsp_int, atest_bbrx0, atest_bbrx1, 65 atest_char, atest_char0, atest 65 atest_char, atest_char0, atest_char1, atest_char2, atest_char3, 66 atest_gpsadc_dtest0_native, at 66 atest_gpsadc_dtest0_native, atest_gpsadc_dtest1_native, atest_tsens, 67 atest_wlan0, atest_wlan1, bimc 67 atest_wlan0, atest_wlan1, bimc_dte0, bimc_dte1, blsp1_spi, 68 blsp3_spi, blsp6_spi, blsp7_sp 68 blsp3_spi, blsp6_spi, blsp7_spi, blsp_i2c1, blsp_i2c2, blsp_i2c3, 69 blsp_i2c4, blsp_i2c5, blsp_i2c 69 blsp_i2c4, blsp_i2c5, blsp_i2c6, blsp_i2c7, blsp_i2c8, blsp_spi1, 70 blsp_spi2, blsp_spi3, blsp_spi 70 blsp_spi2, blsp_spi3, blsp_spi4, blsp_spi5, blsp_spi6, blsp_spi7, 71 blsp_spi8, blsp_uart2, blsp_ua 71 blsp_spi8, blsp_uart2, blsp_uart4, blsp_uart5, blsp_uart6, cam0_ldo, 72 cam1_ldo, cam1_rst, cam1_stand 72 cam1_ldo, cam1_rst, cam1_standby, cam2_rst, cam2_standby, cam3_rst, 73 cam3_standby, cam_irq, cam_mcl 73 cam3_standby, cam_irq, cam_mclk, cap_int, cci_async, cci_i2c, 74 cci_timer0, cci_timer1, cci_ti 74 cci_timer0, cci_timer1, cci_timer2, cci_timer3, cci_timer4, 75 cdc_pdm0, codec_int1, codec_in 75 cdc_pdm0, codec_int1, codec_int2, codec_reset, cri_trng, cri_trng0, 76 cri_trng1, dac_calib0, dac_cal 76 cri_trng1, dac_calib0, dac_calib1, dac_calib10, dac_calib11, 77 dac_calib12, dac_calib13, dac_ 77 dac_calib12, dac_calib13, dac_calib14, dac_calib15, dac_calib16, 78 dac_calib17, dac_calib18, dac_ 78 dac_calib17, dac_calib18, dac_calib19, dac_calib2, dac_calib20, 79 dac_calib21, dac_calib22, dac_ 79 dac_calib21, dac_calib22, dac_calib23, dac_calib24, dac_calib25, 80 dac_calib3, dac_calib4, dac_ca 80 dac_calib3, dac_calib4, dac_calib5, dac_calib6, dac_calib7, 81 dac_calib8, dac_calib9, dbg_ou 81 dac_calib8, dac_calib9, dbg_out, ddr_bist, dmic0_clk, dmic0_data, 82 ebi_cdc, ebi_ch0, ext_lpass, f 82 ebi_cdc, ebi_ch0, ext_lpass, flash_strobe, fp_int, gcc_gp1_clk_a, 83 gcc_gp1_clk_b, gcc_gp2_clk_a, 83 gcc_gp1_clk_b, gcc_gp2_clk_a, gcc_gp2_clk_b, gcc_gp3_clk_a, 84 gcc_gp3_clk_b, gcc_plltest, gc 84 gcc_gp3_clk_b, gcc_plltest, gcc_tlmm, gpio, gsm0_tx, gsm1_tx, 85 gyro_int, hall_int, hdmi_int, 85 gyro_int, hall_int, hdmi_int, key_focus, key_home, key_snapshot, 86 key_volp, ldo_en, ldo_update, 86 key_volp, ldo_en, ldo_update, lpass_slimbus, lpass_slimbus0, 87 lpass_slimbus1, m_voc, mag_int 87 lpass_slimbus1, m_voc, mag_int, mdp_vsync, mipi_dsi0, modem_tsync, 88 mss_lte, nav_pps, nav_pps_in_a 88 mss_lte, nav_pps, nav_pps_in_a, nav_pps_in_b, nav_tsync, 89 nfc_disable, nfc_dwl, nfc_irq, 89 nfc_disable, nfc_dwl, nfc_irq, ois_sync, pa_indicator, pbs0, pbs1, 90 pbs2, pressure_int, pri_mi2s, 90 pbs2, pressure_int, pri_mi2s, pri_mi2s_mclk_a, pri_mi2s_mclk_b, 91 pri_mi2s_ws, prng_rosc, pwr_cr 91 pri_mi2s_ws, prng_rosc, pwr_crypto_enabled_a, pwr_crypto_enabled_b, 92 pwr_down, pwr_modem_enabled_a, 92 pwr_down, pwr_modem_enabled_a, pwr_modem_enabled_b, 93 pwr_nav_enabled_a, pwr_nav_ena 93 pwr_nav_enabled_a, pwr_nav_enabled_b, qdss_cti_trig_in_a0, 94 qdss_cti_trig_in_a1, qdss_cti_ 94 qdss_cti_trig_in_a1, qdss_cti_trig_in_b0, qdss_cti_trig_in_b1, 95 qdss_cti_trig_out_a0, qdss_cti 95 qdss_cti_trig_out_a0, qdss_cti_trig_out_a1, qdss_cti_trig_out_b0, 96 qdss_cti_trig_out_b1, qdss_tra 96 qdss_cti_trig_out_b1, qdss_traceclk_a, qdss_traceclk_b, 97 qdss_tracectl_a, qdss_tracectl 97 qdss_tracectl_a, qdss_tracectl_b, qdss_tracedata_a, 98 qdss_tracedata_b, sd_write, sd 98 qdss_tracedata_b, sd_write, sdcard_det, sec_mi2s, sec_mi2s_mclk_a, 99 sec_mi2s_mclk_b, smb_int, ss_s 99 sec_mi2s_mclk_b, smb_int, ss_switch, ssbi_wtr1, ts_resout, 100 ts_sample, ts_xvdd, tsens_max, 100 ts_sample, ts_xvdd, tsens_max, uim1_clk, uim1_data, uim1_present, 101 uim1_reset, uim2_clk, uim2_dat 101 uim1_reset, uim2_clk, uim2_data, uim2_present, uim2_reset, 102 uim_batt, us_emitter, us_euro, 102 uim_batt, us_emitter, us_euro, wcss_bt, wcss_fm, wcss_wlan, 103 wcss_wlan0, wcss_wlan1, wcss_w 103 wcss_wlan0, wcss_wlan1, wcss_wlan2, wsa_en, wsa_io, wsa_irq ] 104 104 105 required: 105 required: 106 - pins 106 - pins 107 107 108 allOf: 108 allOf: 109 - $ref: /schemas/pinctrl/qcom,tlmm-common.ya 109 - $ref: /schemas/pinctrl/qcom,tlmm-common.yaml# 110 110 111 required: 111 required: 112 - compatible 112 - compatible 113 - reg 113 - reg 114 114 115 unevaluatedProperties: false 115 unevaluatedProperties: false 116 116 117 examples: 117 examples: 118 - | 118 - | 119 #include <dt-bindings/interrupt-controller 119 #include <dt-bindings/interrupt-controller/arm-gic.h> 120 tlmm: pinctrl@1000000 { 120 tlmm: pinctrl@1000000 { 121 compatible = "qcom,msm8953-pinctrl"; 121 compatible = "qcom,msm8953-pinctrl"; 122 reg = <0x01000000 0x300000>; 122 reg = <0x01000000 0x300000>; 123 interrupts = <GIC_SPI 208 IRQ_TYPE_LEV 123 interrupts = <GIC_SPI 208 IRQ_TYPE_LEVEL_HIGH>; 124 interrupt-controller; 124 interrupt-controller; 125 #interrupt-cells = <2>; 125 #interrupt-cells = <2>; 126 gpio-controller; 126 gpio-controller; 127 #gpio-cells = <2>; 127 #gpio-cells = <2>; 128 gpio-ranges = <&tlmm 0 0 142>; 128 gpio-ranges = <&tlmm 0 0 142>; 129 129 130 serial_default: serial-state { 130 serial_default: serial-state { 131 pins = "gpio4", "gpio5"; 131 pins = "gpio4", "gpio5"; 132 function = "blsp_uart2"; 132 function = "blsp_uart2"; 133 drive-strength = <2>; 133 drive-strength = <2>; 134 bias-disable; 134 bias-disable; 135 }; 135 }; 136 }; 136 };
Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.