1*709d60b5SDanila Tikhonov# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2*709d60b5SDanila Tikhonov%YAML 1.2 3*709d60b5SDanila Tikhonov--- 4*709d60b5SDanila Tikhonov$id: http://devicetree.org/schemas/pinctrl/qcom,sm7150-tlmm.yaml# 5*709d60b5SDanila Tikhonov$schema: http://devicetree.org/meta-schemas/core.yaml# 6*709d60b5SDanila Tikhonov 7*709d60b5SDanila Tikhonovtitle: Qualcomm SM7150 TLMM pin controller 8*709d60b5SDanila Tikhonov 9*709d60b5SDanila Tikhonovmaintainers: 10*709d60b5SDanila Tikhonov - Bjorn Andersson <andersson@kernel.org> 11*709d60b5SDanila Tikhonov - Danila Tikhonov <danila@jiaxyga.com> 12*709d60b5SDanila Tikhonov 13*709d60b5SDanila Tikhonovdescription: 14*709d60b5SDanila Tikhonov Top Level Mode Multiplexer pin controller in Qualcomm SM7150 SoC. 15*709d60b5SDanila Tikhonov 16*709d60b5SDanila TikhonovallOf: 17*709d60b5SDanila Tikhonov - $ref: /schemas/pinctrl/qcom,tlmm-common.yaml# 18*709d60b5SDanila Tikhonov 19*709d60b5SDanila Tikhonovproperties: 20*709d60b5SDanila Tikhonov compatible: 21*709d60b5SDanila Tikhonov const: qcom,sm7150-tlmm 22*709d60b5SDanila Tikhonov 23*709d60b5SDanila Tikhonov reg: 24*709d60b5SDanila Tikhonov maxItems: 3 25*709d60b5SDanila Tikhonov 26*709d60b5SDanila Tikhonov reg-names: 27*709d60b5SDanila Tikhonov items: 28*709d60b5SDanila Tikhonov - const: west 29*709d60b5SDanila Tikhonov - const: north 30*709d60b5SDanila Tikhonov - const: south 31*709d60b5SDanila Tikhonov 32*709d60b5SDanila Tikhonov interrupts: 33*709d60b5SDanila Tikhonov maxItems: 1 34*709d60b5SDanila Tikhonov 35*709d60b5SDanila Tikhonov interrupt-controller: true 36*709d60b5SDanila Tikhonov "#interrupt-cells": true 37*709d60b5SDanila Tikhonov gpio-controller: true 38*709d60b5SDanila Tikhonov "#gpio-cells": true 39*709d60b5SDanila Tikhonov gpio-ranges: true 40*709d60b5SDanila Tikhonov wakeup-parent: true 41*709d60b5SDanila Tikhonov 42*709d60b5SDanila Tikhonov gpio-reserved-ranges: 43*709d60b5SDanila Tikhonov minItems: 1 44*709d60b5SDanila Tikhonov maxItems: 60 45*709d60b5SDanila Tikhonov 46*709d60b5SDanila Tikhonov gpio-line-names: 47*709d60b5SDanila Tikhonov maxItems: 119 48*709d60b5SDanila Tikhonov 49*709d60b5SDanila TikhonovpatternProperties: 50*709d60b5SDanila Tikhonov "-state$": 51*709d60b5SDanila Tikhonov oneOf: 52*709d60b5SDanila Tikhonov - $ref: "#/$defs/qcom-sm7150-tlmm-state" 53*709d60b5SDanila Tikhonov - patternProperties: 54*709d60b5SDanila Tikhonov "-pins$": 55*709d60b5SDanila Tikhonov $ref: "#/$defs/qcom-sm7150-tlmm-state" 56*709d60b5SDanila Tikhonov additionalProperties: false 57*709d60b5SDanila Tikhonov 58*709d60b5SDanila Tikhonov$defs: 59*709d60b5SDanila Tikhonov qcom-sm7150-tlmm-state: 60*709d60b5SDanila Tikhonov type: object 61*709d60b5SDanila Tikhonov description: 62*709d60b5SDanila Tikhonov Pinctrl node's client devices use subnodes for desired pin configuration. 63*709d60b5SDanila Tikhonov Client device subnodes use below standard properties. 64*709d60b5SDanila Tikhonov $ref: qcom,tlmm-common.yaml#/$defs/qcom-tlmm-state 65*709d60b5SDanila Tikhonov unevaluatedProperties: false 66*709d60b5SDanila Tikhonov 67*709d60b5SDanila Tikhonov properties: 68*709d60b5SDanila Tikhonov pins: 69*709d60b5SDanila Tikhonov description: 70*709d60b5SDanila Tikhonov List of gpio pins affected by the properties specified in this 71*709d60b5SDanila Tikhonov subnode. 72*709d60b5SDanila Tikhonov items: 73*709d60b5SDanila Tikhonov oneOf: 74*709d60b5SDanila Tikhonov - pattern: "^gpio([0-9]|[1-9][0-9]|10[0-9]|11[0-8])$" 75*709d60b5SDanila Tikhonov - enum: [ sdc1_rclk, sdc1_clk, sdc1_cmd, sdc1_data, sdc2_clk, 76*709d60b5SDanila Tikhonov sdc2_cmd, sdc2_data, ufs_reset ] 77*709d60b5SDanila Tikhonov minItems: 1 78*709d60b5SDanila Tikhonov maxItems: 36 79*709d60b5SDanila Tikhonov 80*709d60b5SDanila Tikhonov function: 81*709d60b5SDanila Tikhonov description: 82*709d60b5SDanila Tikhonov Specify the alternative function to be configured for the specified 83*709d60b5SDanila Tikhonov pins. 84*709d60b5SDanila Tikhonov 85*709d60b5SDanila Tikhonov enum: [ gpio, adsp_ext, agera_pll, aoss_cti, atest_char, atest_tsens, 86*709d60b5SDanila Tikhonov atest_tsens2, atest_usb1, atest_usb2, cam_mclk, cci_async, 87*709d60b5SDanila Tikhonov cci_i2c, cci_timer0, cci_timer1, cci_timer2, cci_timer3, 88*709d60b5SDanila Tikhonov cci_timer4, dbg_out, ddr_bist, ddr_pxi0, ddr_pxi1, ddr_pxi2, 89*709d60b5SDanila Tikhonov ddr_pxi3, edp_hot, edp_lcd, gcc_gp1, gcc_gp2, gcc_gp3, gp_pdm0, 90*709d60b5SDanila Tikhonov gp_pdm1, gp_pdm2, gps_tx, jitter_bist, ldo_en, ldo_update, 91*709d60b5SDanila Tikhonov m_voc, mdp_vsync, mdp_vsync0, mdp_vsync1, mdp_vsync2, 92*709d60b5SDanila Tikhonov mdp_vsync3, mss_lte, nav_pps_in, nav_pps_out, pa_indicator, 93*709d60b5SDanila Tikhonov pci_e, phase_flag, pll_bist, pll_bypassnl, pll_reset, pri_mi2s, 94*709d60b5SDanila Tikhonov pri_mi2s_ws, prng_rosc, qdss, qdss_cti, qlink_enable, 95*709d60b5SDanila Tikhonov qlink_request, qua_mi2s, qup00, qup01, qup02, qup03, qup04, 96*709d60b5SDanila Tikhonov qup10, qup11, qup12, qup13, qup14, qup15, sd_write, sdc40, 97*709d60b5SDanila Tikhonov sdc41, sdc42, sdc43, sdc4_clk, sdc4_cmd, sec_mi2s, ter_mi2s, 98*709d60b5SDanila Tikhonov tgu_ch0, tgu_ch1, tgu_ch2, tgu_ch3, tsif1_clk, tsif1_data, 99*709d60b5SDanila Tikhonov tsif1_en, tsif1_error, tsif1_sync, tsif2_clk, tsif2_data, 100*709d60b5SDanila Tikhonov tsif2_en, tsif2_error, tsif2_sync, uim1_clk, uim1_data, 101*709d60b5SDanila Tikhonov uim1_present, uim1_reset, uim2_clk, uim2_data, uim2_present, 102*709d60b5SDanila Tikhonov uim2_reset, uim_batt, usb_phy, vfr_1, vsense_trigger, 103*709d60b5SDanila Tikhonov wlan1_adc0, wlan1_adc1, wlan2_adc0, wlan2_adc1, wsa_clk, 104*709d60b5SDanila Tikhonov wsa_data ] 105*709d60b5SDanila Tikhonov 106*709d60b5SDanila Tikhonov required: 107*709d60b5SDanila Tikhonov - pins 108*709d60b5SDanila Tikhonov 109*709d60b5SDanila Tikhonovrequired: 110*709d60b5SDanila Tikhonov - compatible 111*709d60b5SDanila Tikhonov - reg 112*709d60b5SDanila Tikhonov - reg-names 113*709d60b5SDanila Tikhonov 114*709d60b5SDanila TikhonovadditionalProperties: false 115*709d60b5SDanila Tikhonov 116*709d60b5SDanila Tikhonovexamples: 117*709d60b5SDanila Tikhonov - | 118*709d60b5SDanila Tikhonov #include <dt-bindings/interrupt-controller/arm-gic.h> 119*709d60b5SDanila Tikhonov 120*709d60b5SDanila Tikhonov tlmm: pinctrl@3500000 { 121*709d60b5SDanila Tikhonov compatible = "qcom,sm7150-tlmm"; 122*709d60b5SDanila Tikhonov reg = <0x03500000 0x300000>, 123*709d60b5SDanila Tikhonov <0x03900000 0x300000>, 124*709d60b5SDanila Tikhonov <0x03d00000 0x300000>; 125*709d60b5SDanila Tikhonov reg-names = "west", "north", "south"; 126*709d60b5SDanila Tikhonov interrupts = <GIC_SPI 208 IRQ_TYPE_LEVEL_HIGH>; 127*709d60b5SDanila Tikhonov gpio-ranges = <&tlmm 0 0 120>; 128*709d60b5SDanila Tikhonov gpio-controller; 129*709d60b5SDanila Tikhonov #gpio-cells = <2>; 130*709d60b5SDanila Tikhonov interrupt-controller; 131*709d60b5SDanila Tikhonov #interrupt-cells = <2>; 132*709d60b5SDanila Tikhonov wakeup-parent = <&pdc>; 133*709d60b5SDanila Tikhonov 134*709d60b5SDanila Tikhonov gpio-wo-state { 135*709d60b5SDanila Tikhonov pins = "gpio1"; 136*709d60b5SDanila Tikhonov function = "gpio"; 137*709d60b5SDanila Tikhonov }; 138*709d60b5SDanila Tikhonov 139*709d60b5SDanila Tikhonov uart-w-state { 140*709d60b5SDanila Tikhonov rx-pins { 141*709d60b5SDanila Tikhonov pins = "gpio44"; 142*709d60b5SDanila Tikhonov function = "qup12"; 143*709d60b5SDanila Tikhonov bias-pull-up; 144*709d60b5SDanila Tikhonov }; 145*709d60b5SDanila Tikhonov 146*709d60b5SDanila Tikhonov tx-pins { 147*709d60b5SDanila Tikhonov pins = "gpio45"; 148*709d60b5SDanila Tikhonov function = "qup12"; 149*709d60b5SDanila Tikhonov bias-disable; 150*709d60b5SDanila Tikhonov }; 151*709d60b5SDanila Tikhonov }; 152*709d60b5SDanila Tikhonov }; 153*709d60b5SDanila Tikhonov... 154*709d60b5SDanila Tikhonov