1*1ea14694SBartosz Golaszewski# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2*1ea14694SBartosz Golaszewski%YAML 1.2 3*1ea14694SBartosz Golaszewski--- 4*1ea14694SBartosz Golaszewski$id: http://devicetree.org/schemas/pinctrl/qcom,nord-tlmm.yaml# 5*1ea14694SBartosz Golaszewski$schema: http://devicetree.org/meta-schemas/core.yaml# 6*1ea14694SBartosz Golaszewski 7*1ea14694SBartosz Golaszewskititle: Qualcomm Technologies, Inc. SA8797P TLMM block 8*1ea14694SBartosz Golaszewski 9*1ea14694SBartosz Golaszewskimaintainers: 10*1ea14694SBartosz Golaszewski - Bartosz Golaszewski <brgl@kernel.org> 11*1ea14694SBartosz Golaszewski 12*1ea14694SBartosz Golaszewskidescription: 13*1ea14694SBartosz Golaszewski Top Level Mode Multiplexer pin controller in Qualcomm SA8797P SoC. 14*1ea14694SBartosz Golaszewski 15*1ea14694SBartosz GolaszewskiallOf: 16*1ea14694SBartosz Golaszewski - $ref: /schemas/pinctrl/qcom,tlmm-common.yaml# 17*1ea14694SBartosz Golaszewski 18*1ea14694SBartosz Golaszewskiproperties: 19*1ea14694SBartosz Golaszewski compatible: 20*1ea14694SBartosz Golaszewski const: qcom,nord-tlmm 21*1ea14694SBartosz Golaszewski 22*1ea14694SBartosz Golaszewski reg: 23*1ea14694SBartosz Golaszewski maxItems: 1 24*1ea14694SBartosz Golaszewski 25*1ea14694SBartosz Golaszewski interrupts: 26*1ea14694SBartosz Golaszewski maxItems: 1 27*1ea14694SBartosz Golaszewski 28*1ea14694SBartosz Golaszewski gpio-reserved-ranges: 29*1ea14694SBartosz Golaszewski minItems: 1 30*1ea14694SBartosz Golaszewski maxItems: 90 31*1ea14694SBartosz Golaszewski 32*1ea14694SBartosz Golaszewski gpio-line-names: 33*1ea14694SBartosz Golaszewski maxItems: 181 34*1ea14694SBartosz Golaszewski 35*1ea14694SBartosz GolaszewskipatternProperties: 36*1ea14694SBartosz Golaszewski "-state$": 37*1ea14694SBartosz Golaszewski oneOf: 38*1ea14694SBartosz Golaszewski - $ref: "#/$defs/qcom-nord-tlmm-state" 39*1ea14694SBartosz Golaszewski - patternProperties: 40*1ea14694SBartosz Golaszewski "-pins$": 41*1ea14694SBartosz Golaszewski $ref: "#/$defs/qcom-nord-tlmm-state" 42*1ea14694SBartosz Golaszewski additionalProperties: false 43*1ea14694SBartosz Golaszewski 44*1ea14694SBartosz Golaszewski$defs: 45*1ea14694SBartosz Golaszewski qcom-nord-tlmm-state: 46*1ea14694SBartosz Golaszewski type: object 47*1ea14694SBartosz Golaszewski description: 48*1ea14694SBartosz Golaszewski Pinctrl node's client devices use subnodes for desired pin configuration. 49*1ea14694SBartosz Golaszewski Client device subnodes use below standard properties. 50*1ea14694SBartosz Golaszewski $ref: qcom,tlmm-common.yaml#/$defs/qcom-tlmm-state 51*1ea14694SBartosz Golaszewski unevaluatedProperties: false 52*1ea14694SBartosz Golaszewski 53*1ea14694SBartosz Golaszewski properties: 54*1ea14694SBartosz Golaszewski pins: 55*1ea14694SBartosz Golaszewski description: 56*1ea14694SBartosz Golaszewski List of gpio pins affected by the properties specified in this 57*1ea14694SBartosz Golaszewski subnode. 58*1ea14694SBartosz Golaszewski items: 59*1ea14694SBartosz Golaszewski oneOf: 60*1ea14694SBartosz Golaszewski - pattern: "^gpio([0-9]|[1-9][0-9]|1[0-7][0-9]|180)$" 61*1ea14694SBartosz Golaszewski - enum: [ ufs_reset ] 62*1ea14694SBartosz Golaszewski minItems: 1 63*1ea14694SBartosz Golaszewski maxItems: 16 64*1ea14694SBartosz Golaszewski 65*1ea14694SBartosz Golaszewski function: 66*1ea14694SBartosz Golaszewski description: 67*1ea14694SBartosz Golaszewski Specify the alternative function to be configured for the specified 68*1ea14694SBartosz Golaszewski pins. 69*1ea14694SBartosz Golaszewski 70*1ea14694SBartosz Golaszewski enum: [ aoss_cti, atest_char, atest_usb20, atest_usb21, 71*1ea14694SBartosz Golaszewski aud_intfc0_clk, aud_intfc0_data, aud_intfc0_ws, 72*1ea14694SBartosz Golaszewski aud_intfc10_clk, aud_intfc10_data, aud_intfc10_ws, 73*1ea14694SBartosz Golaszewski aud_intfc1_clk, aud_intfc1_data, aud_intfc1_ws, 74*1ea14694SBartosz Golaszewski aud_intfc2_clk, aud_intfc2_data, aud_intfc2_ws, 75*1ea14694SBartosz Golaszewski aud_intfc3_clk, aud_intfc3_data, aud_intfc3_ws, 76*1ea14694SBartosz Golaszewski aud_intfc4_clk, aud_intfc4_data, aud_intfc4_ws, 77*1ea14694SBartosz Golaszewski aud_intfc5_clk, aud_intfc5_data, aud_intfc5_ws, 78*1ea14694SBartosz Golaszewski aud_intfc6_clk, aud_intfc6_data, aud_intfc6_ws, 79*1ea14694SBartosz Golaszewski aud_intfc7_clk, aud_intfc7_data, aud_intfc7_ws, 80*1ea14694SBartosz Golaszewski aud_intfc8_clk, aud_intfc8_data, aud_intfc8_ws, 81*1ea14694SBartosz Golaszewski aud_intfc9_clk, aud_intfc9_data, aud_intfc9_ws, 82*1ea14694SBartosz Golaszewski aud_mclk0_mira, aud_mclk0_mirb, aud_mclk1_mira, aud_mclk1_mirb, 83*1ea14694SBartosz Golaszewski aud_mclk2_mira, aud_mclk2_mirb, aud_refclk0, aud_refclk1, 84*1ea14694SBartosz Golaszewski bist_done, ccu_async_in, ccu_i2c_scl, ccu_i2c_sda, ccu_timer, 85*1ea14694SBartosz Golaszewski clink_debug, dbg_out, dbg_out_clk, 86*1ea14694SBartosz Golaszewski ddr_bist_complete, ddr_bist_fail, ddr_bist_start, ddr_bist_stop, 87*1ea14694SBartosz Golaszewski ddr_pxi, dp_rx0, dp_rx00, dp_rx01, dp_rx0_mute, dp_rx1, dp_rx10, 88*1ea14694SBartosz Golaszewski dp_rx11, dp_rx1_mute, 89*1ea14694SBartosz Golaszewski edp0_hot, edp0_lcd, edp1_hot, edp1_lcd, edp2_hot, edp2_lcd, 90*1ea14694SBartosz Golaszewski edp3_hot, edp3_lcd, 91*1ea14694SBartosz Golaszewski emac0_mcg, emac0_mdc, emac0_mdio, emac0_ptp, emac1_mcg, 92*1ea14694SBartosz Golaszewski emac1_mdc, emac1_mdio, emac1_ptp, 93*1ea14694SBartosz Golaszewski gcc_gp1_clk, gcc_gp2_clk, gcc_gp3_clk, gcc_gp4_clk, gcc_gp5_clk, 94*1ea14694SBartosz Golaszewski gcc_gp6_clk, gcc_gp7_clk, gcc_gp8_clk, jitter_bist, lbist_pass, 95*1ea14694SBartosz Golaszewski mbist_pass, mdp0_vsync_out, mdp1_vsync_out, mdp_vsync_e, 96*1ea14694SBartosz Golaszewski mdp_vsync_p, mdp_vsync_s, 97*1ea14694SBartosz Golaszewski pcie0_clk_req_n, pcie1_clk_req_n, pcie2_clk_req_n, 98*1ea14694SBartosz Golaszewski pcie3_clk_req_n, phase_flag, pll_bist_sync, pll_clk_aux, 99*1ea14694SBartosz Golaszewski prng_rosc0, prng_rosc1, pwrbrk_i_n, qdss, qdss_cti, qspi, 100*1ea14694SBartosz Golaszewski qup0_se0, qup0_se1, qup0_se2, qup0_se3, qup0_se4, qup0_se5, 101*1ea14694SBartosz Golaszewski qup1_se0, qup1_se1, qup1_se3, qup1_se2, qup1_se4, qup1_se5, 102*1ea14694SBartosz Golaszewski qup1_se6, qup2_se0, qup2_se1, qup2_se2, qup2_se3, qup2_se4, 103*1ea14694SBartosz Golaszewski qup2_se5, qup2_se6, 104*1ea14694SBartosz Golaszewski sailss_ospi, sdc4_clk, sdc4_cmd, sdc4_data, smb_alert, 105*1ea14694SBartosz Golaszewski smb_alert_n, smb_clk, smb_dat, tb_trig_sdc4, tmess_prng0, 106*1ea14694SBartosz Golaszewski tmess_prng1, tsc_timer, tsense_pwm, usb0_hs, 107*1ea14694SBartosz Golaszewski usb0_phy_ps, usb1_hs, usb1_phy_ps, usb2_hs, usxgmii0_phy, 108*1ea14694SBartosz Golaszewski usxgmii1_phy, vsense_trigger_mirnat, wcn_sw, wcn_sw_ctrl] 109*1ea14694SBartosz Golaszewski 110*1ea14694SBartosz Golaszewski required: 111*1ea14694SBartosz Golaszewski - pins 112*1ea14694SBartosz Golaszewski 113*1ea14694SBartosz Golaszewskirequired: 114*1ea14694SBartosz Golaszewski - compatible 115*1ea14694SBartosz Golaszewski - reg 116*1ea14694SBartosz Golaszewski 117*1ea14694SBartosz GolaszewskiunevaluatedProperties: false 118*1ea14694SBartosz Golaszewski 119*1ea14694SBartosz Golaszewskiexamples: 120*1ea14694SBartosz Golaszewski - | 121*1ea14694SBartosz Golaszewski #include <dt-bindings/interrupt-controller/arm-gic.h> 122*1ea14694SBartosz Golaszewski 123*1ea14694SBartosz Golaszewski tlmm: pinctrl@f100000 { 124*1ea14694SBartosz Golaszewski compatible = "qcom,nord-tlmm"; 125*1ea14694SBartosz Golaszewski reg = <0x0f100000 0xc0000>; 126*1ea14694SBartosz Golaszewski interrupts = <GIC_SPI 208 IRQ_TYPE_LEVEL_HIGH>; 127*1ea14694SBartosz Golaszewski gpio-controller; 128*1ea14694SBartosz Golaszewski #gpio-cells = <2>; 129*1ea14694SBartosz Golaszewski interrupt-controller; 130*1ea14694SBartosz Golaszewski #interrupt-cells = <2>; 131*1ea14694SBartosz Golaszewski gpio-ranges = <&tlmm 0 0 181>; 132*1ea14694SBartosz Golaszewski wakeup-parent = <&pdc>; 133*1ea14694SBartosz Golaszewski 134*1ea14694SBartosz Golaszewski qup_uart15_default: qup-uart15-default-state { 135*1ea14694SBartosz Golaszewski pins = "gpio147", "gpio148"; 136*1ea14694SBartosz Golaszewski function = "qup2_se2"; 137*1ea14694SBartosz Golaszewski drive-strength = <2>; 138*1ea14694SBartosz Golaszewski bias-disable; 139*1ea14694SBartosz Golaszewski }; 140*1ea14694SBartosz Golaszewski }; 141*1ea14694SBartosz Golaszewski... 142