1*2064b662SKonrad Dybcio# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2*2064b662SKonrad Dybcio%YAML 1.2 3*2064b662SKonrad Dybcio--- 4*2064b662SKonrad Dybcio$id: http://devicetree.org/schemas/pinctrl/qcom,sm6375-tlmm.yaml# 5*2064b662SKonrad Dybcio$schema: http://devicetree.org/meta-schemas/core.yaml# 6*2064b662SKonrad Dybcio 7*2064b662SKonrad Dybciotitle: Qualcomm Technologies, Inc. SM6375 TLMM block 8*2064b662SKonrad Dybcio 9*2064b662SKonrad Dybciomaintainers: 10*2064b662SKonrad Dybcio - Konrad Dybcio <konrad.dybcio@somainline.org> 11*2064b662SKonrad Dybcio 12*2064b662SKonrad Dybciodescription: | 13*2064b662SKonrad Dybcio This binding describes the Top Level Mode Multiplexer (TLMM) block found 14*2064b662SKonrad Dybcio in the SM6375 platform. 15*2064b662SKonrad Dybcio 16*2064b662SKonrad DybcioallOf: 17*2064b662SKonrad Dybcio - $ref: "pinctrl.yaml#" 18*2064b662SKonrad Dybcio - $ref: /schemas/pinctrl/qcom,tlmm-common.yaml# 19*2064b662SKonrad Dybcio 20*2064b662SKonrad Dybcioproperties: 21*2064b662SKonrad Dybcio compatible: 22*2064b662SKonrad Dybcio const: qcom,sm6375-tlmm 23*2064b662SKonrad Dybcio 24*2064b662SKonrad Dybcio reg: 25*2064b662SKonrad Dybcio maxItems: 1 26*2064b662SKonrad Dybcio 27*2064b662SKonrad Dybcio interrupts: true 28*2064b662SKonrad Dybcio interrupt-controller: true 29*2064b662SKonrad Dybcio '#interrupt-cells': true 30*2064b662SKonrad Dybcio gpio-controller: true 31*2064b662SKonrad Dybcio gpio-reserved-ranges: true 32*2064b662SKonrad Dybcio '#gpio-cells': true 33*2064b662SKonrad Dybcio gpio-ranges: true 34*2064b662SKonrad Dybcio wakeup-parent: true 35*2064b662SKonrad Dybcio 36*2064b662SKonrad Dybciorequired: 37*2064b662SKonrad Dybcio - compatible 38*2064b662SKonrad Dybcio - reg 39*2064b662SKonrad Dybcio 40*2064b662SKonrad DybcioadditionalProperties: false 41*2064b662SKonrad Dybcio 42*2064b662SKonrad DybciopatternProperties: 43*2064b662SKonrad Dybcio '-state$': 44*2064b662SKonrad Dybcio oneOf: 45*2064b662SKonrad Dybcio - $ref: "#/$defs/qcom-sm6375-tlmm-state" 46*2064b662SKonrad Dybcio - patternProperties: 47*2064b662SKonrad Dybcio ".*": 48*2064b662SKonrad Dybcio $ref: "#/$defs/qcom-sm6375-tlmm-state" 49*2064b662SKonrad Dybcio 50*2064b662SKonrad Dybcio$defs: 51*2064b662SKonrad Dybcio qcom-sm6375-tlmm-state: 52*2064b662SKonrad Dybcio type: object 53*2064b662SKonrad Dybcio description: 54*2064b662SKonrad Dybcio Pinctrl node's client devices use subnodes for desired pin configuration. 55*2064b662SKonrad Dybcio Client device subnodes use below standard properties. 56*2064b662SKonrad Dybcio $ref: "qcom,tlmm-common.yaml#/$defs/qcom-tlmm-state" 57*2064b662SKonrad Dybcio 58*2064b662SKonrad Dybcio properties: 59*2064b662SKonrad Dybcio pins: 60*2064b662SKonrad Dybcio description: 61*2064b662SKonrad Dybcio List of gpio pins affected by the properties specified in this 62*2064b662SKonrad Dybcio subnode. 63*2064b662SKonrad Dybcio items: 64*2064b662SKonrad Dybcio oneOf: 65*2064b662SKonrad Dybcio - pattern: "^gpio([0-9]|[1-9][0-9]|1[0-4][0-9]|15[0-6])$" 66*2064b662SKonrad Dybcio - enum: [ ufs_reset, sdc1_clk, sdc1_cmd, sdc1_data, sdc2_clk, 67*2064b662SKonrad Dybcio sdc2_cmd, sdc2_data ] 68*2064b662SKonrad Dybcio minItems: 1 69*2064b662SKonrad Dybcio maxItems: 36 70*2064b662SKonrad Dybcio 71*2064b662SKonrad Dybcio function: 72*2064b662SKonrad Dybcio description: 73*2064b662SKonrad Dybcio Specify the alternative function to be configured for the specified 74*2064b662SKonrad Dybcio pins. 75*2064b662SKonrad Dybcio 76*2064b662SKonrad Dybcio enum: [ adsp_ext, agera_pll, atest_char, atest_char0, atest_char1, 77*2064b662SKonrad Dybcio atest_char2, atest_char3, atest_tsens, atest_tsens2, 78*2064b662SKonrad Dybcio atest_usb1, atest_usb10, atest_usb11, atest_usb12, 79*2064b662SKonrad Dybcio atest_usb13, atest_usb2, atest_usb20, atest_usb21, 80*2064b662SKonrad Dybcio atest_usb22, atest_usb23, audio_ref, btfm_slimbus, cam_mclk, 81*2064b662SKonrad Dybcio cci_async, cci_i2c, cci_timer0, cci_timer1, cci_timer2, 82*2064b662SKonrad Dybcio cci_timer3, cci_timer4, cri_trng, dbg_out, ddr_bist, 83*2064b662SKonrad Dybcio ddr_pxi0, ddr_pxi1, ddr_pxi2, ddr_pxi3, dp_hot, edp_lcd, 84*2064b662SKonrad Dybcio gcc_gp1, gcc_gp2, gcc_gp3, gp_pdm0, gp_pdm1, gp_pdm2, gpio, 85*2064b662SKonrad Dybcio gps_tx, ibi_i3c, jitter_bist, ldo_en, ldo_update, lpass_ext, 86*2064b662SKonrad Dybcio m_voc, mclk, mdp_vsync, mdp_vsync0, mdp_vsync1, mdp_vsync2, 87*2064b662SKonrad Dybcio mdp_vsync3, mi2s_0, mi2s_1, mi2s_2, mss_lte, nav_gpio, 88*2064b662SKonrad Dybcio nav_pps, pa_indicator, phase_flag0, phase_flag1, phase_flag10, 89*2064b662SKonrad Dybcio phase_flag11, phase_flag12, phase_flag13, phase_flag14, 90*2064b662SKonrad Dybcio phase_flag15, phase_flag16, phase_flag17, phase_flag18, 91*2064b662SKonrad Dybcio phase_flag19, phase_flag2, phase_flag20, phase_flag21, 92*2064b662SKonrad Dybcio phase_flag22, phase_flag23, phase_flag24, phase_flag25, 93*2064b662SKonrad Dybcio phase_flag26, phase_flag27, phase_flag28, phase_flag29, 94*2064b662SKonrad Dybcio phase_flag3, phase_flag30, phase_flag31, phase_flag4, 95*2064b662SKonrad Dybcio phase_flag5, phase_flag6, phase_flag7, phase_flag8, 96*2064b662SKonrad Dybcio phase_flag9, pll_bist, pll_bypassnl, pll_clk, pll_reset, 97*2064b662SKonrad Dybcio prng_rosc0, prng_rosc1, prng_rosc2, prng_rosc3, qdss_cti, 98*2064b662SKonrad Dybcio qdss_gpio, qdss_gpio0, qdss_gpio1, qdss_gpio10, qdss_gpio11, 99*2064b662SKonrad Dybcio qdss_gpio12, qdss_gpio13, qdss_gpio14, qdss_gpio15, 100*2064b662SKonrad Dybcio qdss_gpio2, qdss_gpio3, qdss_gpio4, qdss_gpio5, qdss_gpio6, 101*2064b662SKonrad Dybcio qdss_gpio7, qdss_gpio8, qdss_gpio9, qlink0_enable, 102*2064b662SKonrad Dybcio qlink0_request, qlink0_wmss, qlink1_enable, qlink1_request, 103*2064b662SKonrad Dybcio qlink1_wmss, qup00, qup01, qup02, qup10, qup11_f1, qup11_f2, 104*2064b662SKonrad Dybcio qup12, qup13_f1, qup13_f2, qup14, sd_write, sdc1_tb, sdc2_tb, 105*2064b662SKonrad Dybcio sp_cmu, tgu_ch0, tgu_ch1, tgu_ch2, tgu_ch3, tsense_pwm1, 106*2064b662SKonrad Dybcio tsense_pwm2, uim1_clk, uim1_data, uim1_present, uim1_reset, 107*2064b662SKonrad Dybcio uim2_clk, uim2_data, uim2_present, uim2_reset, usb2phy_ac, 108*2064b662SKonrad Dybcio usb_phy, vfr_1, vsense_trigger, wlan1_adc0, wlan1_adc1, 109*2064b662SKonrad Dybcio wlan2_adc0, wlan2_adc1 ] 110*2064b662SKonrad Dybcio 111*2064b662SKonrad Dybcio 112*2064b662SKonrad Dybcio bias-disable: true 113*2064b662SKonrad Dybcio bias-pull-down: true 114*2064b662SKonrad Dybcio bias-pull-up: true 115*2064b662SKonrad Dybcio drive-strength: true 116*2064b662SKonrad Dybcio input-enable: true 117*2064b662SKonrad Dybcio output-high: true 118*2064b662SKonrad Dybcio output-low: true 119*2064b662SKonrad Dybcio 120*2064b662SKonrad Dybcio required: 121*2064b662SKonrad Dybcio - pins 122*2064b662SKonrad Dybcio - function 123*2064b662SKonrad Dybcio 124*2064b662SKonrad Dybcio additionalProperties: false 125*2064b662SKonrad Dybcio 126*2064b662SKonrad Dybcioexamples: 127*2064b662SKonrad Dybcio - | 128*2064b662SKonrad Dybcio #include <dt-bindings/interrupt-controller/arm-gic.h> 129*2064b662SKonrad Dybcio pinctrl@500000 { 130*2064b662SKonrad Dybcio compatible = "qcom,sm6375-tlmm"; 131*2064b662SKonrad Dybcio reg = <0x00500000 0x800000>; 132*2064b662SKonrad Dybcio interrupts = <GIC_SPI 227 IRQ_TYPE_LEVEL_HIGH>; 133*2064b662SKonrad Dybcio gpio-controller; 134*2064b662SKonrad Dybcio #gpio-cells = <2>; 135*2064b662SKonrad Dybcio interrupt-controller; 136*2064b662SKonrad Dybcio #interrupt-cells = <2>; 137*2064b662SKonrad Dybcio gpio-ranges = <&tlmm 0 0 157>; 138*2064b662SKonrad Dybcio 139*2064b662SKonrad Dybcio gpio-wo-subnode-state { 140*2064b662SKonrad Dybcio pins = "gpio1"; 141*2064b662SKonrad Dybcio function = "gpio"; 142*2064b662SKonrad Dybcio }; 143*2064b662SKonrad Dybcio 144*2064b662SKonrad Dybcio uart-w-subnodes-state { 145*2064b662SKonrad Dybcio rx { 146*2064b662SKonrad Dybcio pins = "gpio18"; 147*2064b662SKonrad Dybcio function = "qup13_f2"; 148*2064b662SKonrad Dybcio bias-pull-up; 149*2064b662SKonrad Dybcio }; 150*2064b662SKonrad Dybcio 151*2064b662SKonrad Dybcio tx { 152*2064b662SKonrad Dybcio pins = "gpio19"; 153*2064b662SKonrad Dybcio function = "qup13_f2"; 154*2064b662SKonrad Dybcio bias-disable; 155*2064b662SKonrad Dybcio }; 156*2064b662SKonrad Dybcio }; 157*2064b662SKonrad Dybcio }; 158*2064b662SKonrad Dybcio... 159