1709d60b5SDanila Tikhonov# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2709d60b5SDanila Tikhonov%YAML 1.2 3709d60b5SDanila Tikhonov--- 4709d60b5SDanila Tikhonov$id: http://devicetree.org/schemas/pinctrl/qcom,sm7150-tlmm.yaml# 5709d60b5SDanila Tikhonov$schema: http://devicetree.org/meta-schemas/core.yaml# 6709d60b5SDanila Tikhonov 7709d60b5SDanila Tikhonovtitle: Qualcomm SM7150 TLMM pin controller 8709d60b5SDanila Tikhonov 9709d60b5SDanila Tikhonovmaintainers: 10709d60b5SDanila Tikhonov - Bjorn Andersson <andersson@kernel.org> 11709d60b5SDanila Tikhonov - Danila Tikhonov <danila@jiaxyga.com> 12709d60b5SDanila Tikhonov 13709d60b5SDanila Tikhonovdescription: 14709d60b5SDanila Tikhonov Top Level Mode Multiplexer pin controller in Qualcomm SM7150 SoC. 15709d60b5SDanila Tikhonov 16709d60b5SDanila TikhonovallOf: 17709d60b5SDanila Tikhonov - $ref: /schemas/pinctrl/qcom,tlmm-common.yaml# 18709d60b5SDanila Tikhonov 19709d60b5SDanila Tikhonovproperties: 20709d60b5SDanila Tikhonov compatible: 21709d60b5SDanila Tikhonov const: qcom,sm7150-tlmm 22709d60b5SDanila Tikhonov 23709d60b5SDanila Tikhonov reg: 24709d60b5SDanila Tikhonov maxItems: 3 25709d60b5SDanila Tikhonov 26709d60b5SDanila Tikhonov reg-names: 27709d60b5SDanila Tikhonov items: 28709d60b5SDanila Tikhonov - const: west 29709d60b5SDanila Tikhonov - const: north 30709d60b5SDanila Tikhonov - const: south 31709d60b5SDanila Tikhonov 32709d60b5SDanila Tikhonov interrupts: 33709d60b5SDanila Tikhonov maxItems: 1 34709d60b5SDanila Tikhonov 35709d60b5SDanila Tikhonov interrupt-controller: true 36709d60b5SDanila Tikhonov "#interrupt-cells": true 37709d60b5SDanila Tikhonov gpio-controller: true 38709d60b5SDanila Tikhonov "#gpio-cells": true 39709d60b5SDanila Tikhonov gpio-ranges: true 40709d60b5SDanila Tikhonov wakeup-parent: true 41709d60b5SDanila Tikhonov 42709d60b5SDanila Tikhonov gpio-reserved-ranges: 43709d60b5SDanila Tikhonov minItems: 1 44709d60b5SDanila Tikhonov maxItems: 60 45709d60b5SDanila Tikhonov 46709d60b5SDanila Tikhonov gpio-line-names: 47709d60b5SDanila Tikhonov maxItems: 119 48709d60b5SDanila Tikhonov 49709d60b5SDanila TikhonovpatternProperties: 50709d60b5SDanila Tikhonov "-state$": 51709d60b5SDanila Tikhonov oneOf: 52709d60b5SDanila Tikhonov - $ref: "#/$defs/qcom-sm7150-tlmm-state" 53709d60b5SDanila Tikhonov - patternProperties: 54709d60b5SDanila Tikhonov "-pins$": 55709d60b5SDanila Tikhonov $ref: "#/$defs/qcom-sm7150-tlmm-state" 56709d60b5SDanila Tikhonov additionalProperties: false 57709d60b5SDanila Tikhonov 58709d60b5SDanila Tikhonov$defs: 59709d60b5SDanila Tikhonov qcom-sm7150-tlmm-state: 60709d60b5SDanila Tikhonov type: object 61709d60b5SDanila Tikhonov description: 62709d60b5SDanila Tikhonov Pinctrl node's client devices use subnodes for desired pin configuration. 63709d60b5SDanila Tikhonov Client device subnodes use below standard properties. 64709d60b5SDanila Tikhonov $ref: qcom,tlmm-common.yaml#/$defs/qcom-tlmm-state 65*647c16acSKrzysztof Kozlowski unevaluatedProperties: false 66709d60b5SDanila Tikhonov 67709d60b5SDanila Tikhonov properties: 68709d60b5SDanila Tikhonov pins: 69709d60b5SDanila Tikhonov description: 70709d60b5SDanila Tikhonov List of gpio pins affected by the properties specified in this 71709d60b5SDanila Tikhonov subnode. 72709d60b5SDanila Tikhonov items: 73709d60b5SDanila Tikhonov oneOf: 74709d60b5SDanila Tikhonov - pattern: "^gpio([0-9]|[1-9][0-9]|10[0-9]|11[0-8])$" 75709d60b5SDanila Tikhonov - enum: [ sdc1_rclk, sdc1_clk, sdc1_cmd, sdc1_data, sdc2_clk, 76709d60b5SDanila Tikhonov sdc2_cmd, sdc2_data, ufs_reset ] 77709d60b5SDanila Tikhonov minItems: 1 78709d60b5SDanila Tikhonov maxItems: 36 79709d60b5SDanila Tikhonov 80709d60b5SDanila Tikhonov function: 81709d60b5SDanila Tikhonov description: 82709d60b5SDanila Tikhonov Specify the alternative function to be configured for the specified 83709d60b5SDanila Tikhonov pins. 84709d60b5SDanila Tikhonov 85709d60b5SDanila Tikhonov enum: [ gpio, adsp_ext, agera_pll, aoss_cti, atest_char, atest_tsens, 86709d60b5SDanila Tikhonov atest_tsens2, atest_usb1, atest_usb2, cam_mclk, cci_async, 87709d60b5SDanila Tikhonov cci_i2c, cci_timer0, cci_timer1, cci_timer2, cci_timer3, 88709d60b5SDanila Tikhonov cci_timer4, dbg_out, ddr_bist, ddr_pxi0, ddr_pxi1, ddr_pxi2, 89709d60b5SDanila Tikhonov ddr_pxi3, edp_hot, edp_lcd, gcc_gp1, gcc_gp2, gcc_gp3, gp_pdm0, 90709d60b5SDanila Tikhonov gp_pdm1, gp_pdm2, gps_tx, jitter_bist, ldo_en, ldo_update, 91709d60b5SDanila Tikhonov m_voc, mdp_vsync, mdp_vsync0, mdp_vsync1, mdp_vsync2, 92709d60b5SDanila Tikhonov mdp_vsync3, mss_lte, nav_pps_in, nav_pps_out, pa_indicator, 93709d60b5SDanila Tikhonov pci_e, phase_flag, pll_bist, pll_bypassnl, pll_reset, pri_mi2s, 94709d60b5SDanila Tikhonov pri_mi2s_ws, prng_rosc, qdss, qdss_cti, qlink_enable, 95709d60b5SDanila Tikhonov qlink_request, qua_mi2s, qup00, qup01, qup02, qup03, qup04, 96709d60b5SDanila Tikhonov qup10, qup11, qup12, qup13, qup14, qup15, sd_write, sdc40, 97709d60b5SDanila Tikhonov sdc41, sdc42, sdc43, sdc4_clk, sdc4_cmd, sec_mi2s, ter_mi2s, 98709d60b5SDanila Tikhonov tgu_ch0, tgu_ch1, tgu_ch2, tgu_ch3, tsif1_clk, tsif1_data, 99709d60b5SDanila Tikhonov tsif1_en, tsif1_error, tsif1_sync, tsif2_clk, tsif2_data, 100709d60b5SDanila Tikhonov tsif2_en, tsif2_error, tsif2_sync, uim1_clk, uim1_data, 101709d60b5SDanila Tikhonov uim1_present, uim1_reset, uim2_clk, uim2_data, uim2_present, 102709d60b5SDanila Tikhonov uim2_reset, uim_batt, usb_phy, vfr_1, vsense_trigger, 103709d60b5SDanila Tikhonov wlan1_adc0, wlan1_adc1, wlan2_adc0, wlan2_adc1, wsa_clk, 104709d60b5SDanila Tikhonov wsa_data ] 105709d60b5SDanila Tikhonov 106709d60b5SDanila Tikhonov required: 107709d60b5SDanila Tikhonov - pins 108709d60b5SDanila Tikhonov 109709d60b5SDanila Tikhonovrequired: 110709d60b5SDanila Tikhonov - compatible 111709d60b5SDanila Tikhonov - reg 112709d60b5SDanila Tikhonov - reg-names 113709d60b5SDanila Tikhonov 114709d60b5SDanila TikhonovadditionalProperties: false 115709d60b5SDanila Tikhonov 116709d60b5SDanila Tikhonovexamples: 117709d60b5SDanila Tikhonov - | 118709d60b5SDanila Tikhonov #include <dt-bindings/interrupt-controller/arm-gic.h> 119709d60b5SDanila Tikhonov 120709d60b5SDanila Tikhonov tlmm: pinctrl@3500000 { 121709d60b5SDanila Tikhonov compatible = "qcom,sm7150-tlmm"; 122709d60b5SDanila Tikhonov reg = <0x03500000 0x300000>, 123709d60b5SDanila Tikhonov <0x03900000 0x300000>, 124709d60b5SDanila Tikhonov <0x03d00000 0x300000>; 125709d60b5SDanila Tikhonov reg-names = "west", "north", "south"; 126709d60b5SDanila Tikhonov interrupts = <GIC_SPI 208 IRQ_TYPE_LEVEL_HIGH>; 127709d60b5SDanila Tikhonov gpio-ranges = <&tlmm 0 0 120>; 128709d60b5SDanila Tikhonov gpio-controller; 129709d60b5SDanila Tikhonov #gpio-cells = <2>; 130709d60b5SDanila Tikhonov interrupt-controller; 131709d60b5SDanila Tikhonov #interrupt-cells = <2>; 132709d60b5SDanila Tikhonov wakeup-parent = <&pdc>; 133709d60b5SDanila Tikhonov 134709d60b5SDanila Tikhonov gpio-wo-state { 135709d60b5SDanila Tikhonov pins = "gpio1"; 136709d60b5SDanila Tikhonov function = "gpio"; 137709d60b5SDanila Tikhonov }; 138709d60b5SDanila Tikhonov 139709d60b5SDanila Tikhonov uart-w-state { 140709d60b5SDanila Tikhonov rx-pins { 141709d60b5SDanila Tikhonov pins = "gpio44"; 142709d60b5SDanila Tikhonov function = "qup12"; 143709d60b5SDanila Tikhonov bias-pull-up; 144709d60b5SDanila Tikhonov }; 145709d60b5SDanila Tikhonov 146709d60b5SDanila Tikhonov tx-pins { 147709d60b5SDanila Tikhonov pins = "gpio45"; 148709d60b5SDanila Tikhonov function = "qup12"; 149709d60b5SDanila Tikhonov bias-disable; 150709d60b5SDanila Tikhonov }; 151709d60b5SDanila Tikhonov }; 152709d60b5SDanila Tikhonov }; 153709d60b5SDanila Tikhonov... 154