xref: /linux/Documentation/devicetree/bindings/pinctrl/qcom,shikra-tlmm.yaml (revision 53c7db5c1916afcecc8683ae01ff8415c708a883)
1*c1bf20b2SKomal Bajaj# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2*c1bf20b2SKomal Bajaj%YAML 1.2
3*c1bf20b2SKomal Bajaj---
4*c1bf20b2SKomal Bajaj$id: http://devicetree.org/schemas/pinctrl/qcom,shikra-tlmm.yaml#
5*c1bf20b2SKomal Bajaj$schema: http://devicetree.org/meta-schemas/core.yaml#
6*c1bf20b2SKomal Bajaj
7*c1bf20b2SKomal Bajajtitle: Qualcomm Technologies, Inc. Shikra TLMM block
8*c1bf20b2SKomal Bajaj
9*c1bf20b2SKomal Bajajmaintainers:
10*c1bf20b2SKomal Bajaj  - Komal Bajaj <komal.bajaj@oss.qualcomm.com>
11*c1bf20b2SKomal Bajaj
12*c1bf20b2SKomal Bajajdescription: |
13*c1bf20b2SKomal Bajaj  Top Level Mode Multiplexer pin controller in Qualcomm Shikra SoC.
14*c1bf20b2SKomal Bajaj
15*c1bf20b2SKomal BajajallOf:
16*c1bf20b2SKomal Bajaj  - $ref: /schemas/pinctrl/qcom,tlmm-common.yaml#
17*c1bf20b2SKomal Bajaj
18*c1bf20b2SKomal Bajajproperties:
19*c1bf20b2SKomal Bajaj  compatible:
20*c1bf20b2SKomal Bajaj    const: qcom,shikra-tlmm
21*c1bf20b2SKomal Bajaj
22*c1bf20b2SKomal Bajaj  reg:
23*c1bf20b2SKomal Bajaj    maxItems: 1
24*c1bf20b2SKomal Bajaj
25*c1bf20b2SKomal Bajaj  interrupts:
26*c1bf20b2SKomal Bajaj    maxItems: 1
27*c1bf20b2SKomal Bajaj
28*c1bf20b2SKomal Bajaj  gpio-reserved-ranges:
29*c1bf20b2SKomal Bajaj    minItems: 1
30*c1bf20b2SKomal Bajaj    maxItems: 83
31*c1bf20b2SKomal Bajaj
32*c1bf20b2SKomal Bajaj  gpio-line-names:
33*c1bf20b2SKomal Bajaj    maxItems: 166
34*c1bf20b2SKomal Bajaj
35*c1bf20b2SKomal BajajpatternProperties:
36*c1bf20b2SKomal Bajaj  "-state$":
37*c1bf20b2SKomal Bajaj    oneOf:
38*c1bf20b2SKomal Bajaj      - $ref: "#/$defs/qcom-shikra-tlmm-state"
39*c1bf20b2SKomal Bajaj      - patternProperties:
40*c1bf20b2SKomal Bajaj          "-pins$":
41*c1bf20b2SKomal Bajaj            $ref: "#/$defs/qcom-shikra-tlmm-state"
42*c1bf20b2SKomal Bajaj        additionalProperties: false
43*c1bf20b2SKomal Bajaj
44*c1bf20b2SKomal Bajaj$defs:
45*c1bf20b2SKomal Bajaj  qcom-shikra-tlmm-state:
46*c1bf20b2SKomal Bajaj    type: object
47*c1bf20b2SKomal Bajaj    description:
48*c1bf20b2SKomal Bajaj      Pinctrl node's client devices use subnodes for desired pin configuration.
49*c1bf20b2SKomal Bajaj      Client device subnodes use below standard properties.
50*c1bf20b2SKomal Bajaj    $ref: qcom,tlmm-common.yaml#/$defs/qcom-tlmm-state
51*c1bf20b2SKomal Bajaj    unevaluatedProperties: false
52*c1bf20b2SKomal Bajaj
53*c1bf20b2SKomal Bajaj    properties:
54*c1bf20b2SKomal Bajaj      pins:
55*c1bf20b2SKomal Bajaj        description:
56*c1bf20b2SKomal Bajaj          List of gpio pins affected by the properties specified in this
57*c1bf20b2SKomal Bajaj          subnode.
58*c1bf20b2SKomal Bajaj        items:
59*c1bf20b2SKomal Bajaj          oneOf:
60*c1bf20b2SKomal Bajaj            - pattern: "^gpio([0-9]|[1-9][0-9]|1[0-5][0-9]|16[0-5])$"
61*c1bf20b2SKomal Bajaj            - enum: [ sdc1_rclk, sdc1_clk, sdc1_cmd, sdc1_data,
62*c1bf20b2SKomal Bajaj                      sdc2_clk, sdc2_cmd, sdc2_data ]
63*c1bf20b2SKomal Bajaj        minItems: 1
64*c1bf20b2SKomal Bajaj        maxItems: 36
65*c1bf20b2SKomal Bajaj
66*c1bf20b2SKomal Bajaj      function:
67*c1bf20b2SKomal Bajaj        description:
68*c1bf20b2SKomal Bajaj          Specify the alternative function to be configured for the specified
69*c1bf20b2SKomal Bajaj          pins.
70*c1bf20b2SKomal Bajaj
71*c1bf20b2SKomal Bajaj        enum: [ gpio, agera_pll, atest_bbrx, atest_char, atest_gpsadc,
72*c1bf20b2SKomal Bajaj                atest_tsens, atest_usb, cam_mclk, cci_async, cci_i2c0,
73*c1bf20b2SKomal Bajaj                cci_i2c1, cci_timer, char_exec, cri_trng, dac_calib,
74*c1bf20b2SKomal Bajaj                dbg_out_clk, ddr_bist, ddr_pxi, dmic, emac_dll, emac_mcg,
75*c1bf20b2SKomal Bajaj                emac_phy, emac0_ptp_aux, emac0_ptp_pps, emac1_ptp_aux,
76*c1bf20b2SKomal Bajaj                emac1_ptp_pps, ext_mclk, gcc_gp, gsm0_tx, i2s0, i2s1,
77*c1bf20b2SKomal Bajaj                i2s2, i2s3, jitter_bist, m_voc, mdp_vsync_e, mdp_vsync_out0,
78*c1bf20b2SKomal Bajaj                mdp_vsync_out1, mdp_vsync_p, mdp_vsync_s, mpm_pwr, mss_lte,
79*c1bf20b2SKomal Bajaj                nav_gpio, pa_indicator_or, pbs_in, pbs_out, pcie0_clk_req_n,
80*c1bf20b2SKomal Bajaj                phase_flag, pll, prng_rosc, pwm, qdss_cti, qup0_se0,
81*c1bf20b2SKomal Bajaj                qup0_se1, qup0_se1_01, qup0_se1_23, qup0_se2, qup0_se3_01,
82*c1bf20b2SKomal Bajaj                qup0_se3_23, qup0_se4_01, qup0_se4_23, qup0_se5, qup0_se6,
83*c1bf20b2SKomal Bajaj                qup0_se7_01, qup0_se7_23, qup0_se8, qup0_se9, qup0_se9_01,
84*c1bf20b2SKomal Bajaj                qup0_se9_23, rgmii, sd_write_protect, sdc_cdc, sdc_tb_trig,
85*c1bf20b2SKomal Bajaj                ssbi_wtr, swr0_rx, swr0_tx, tgu_ch_trigout, tsc_async,
86*c1bf20b2SKomal Bajaj                tsense_pwm, uim1, uim2, unused_adsp, unused_gsm1, usb0_phy_ps,
87*c1bf20b2SKomal Bajaj                vfr, vsense_trigger_mirnat, wlan ]
88*c1bf20b2SKomal Bajaj
89*c1bf20b2SKomal Bajaj    required:
90*c1bf20b2SKomal Bajaj      - pins
91*c1bf20b2SKomal Bajaj
92*c1bf20b2SKomal Bajajrequired:
93*c1bf20b2SKomal Bajaj  - compatible
94*c1bf20b2SKomal Bajaj  - reg
95*c1bf20b2SKomal Bajaj
96*c1bf20b2SKomal BajajunevaluatedProperties: false
97*c1bf20b2SKomal Bajaj
98*c1bf20b2SKomal Bajajexamples:
99*c1bf20b2SKomal Bajaj  - |
100*c1bf20b2SKomal Bajaj    #include <dt-bindings/interrupt-controller/arm-gic.h>
101*c1bf20b2SKomal Bajaj
102*c1bf20b2SKomal Bajaj    tlmm: pinctrl@500000 {
103*c1bf20b2SKomal Bajaj        compatible = "qcom,shikra-tlmm";
104*c1bf20b2SKomal Bajaj        reg = <0x00500000 0x800000>;
105*c1bf20b2SKomal Bajaj
106*c1bf20b2SKomal Bajaj        interrupts = <GIC_SPI 227 IRQ_TYPE_LEVEL_HIGH>;
107*c1bf20b2SKomal Bajaj
108*c1bf20b2SKomal Bajaj        gpio-controller;
109*c1bf20b2SKomal Bajaj        #gpio-cells = <2>;
110*c1bf20b2SKomal Bajaj
111*c1bf20b2SKomal Bajaj        interrupt-controller;
112*c1bf20b2SKomal Bajaj        #interrupt-cells = <2>;
113*c1bf20b2SKomal Bajaj
114*c1bf20b2SKomal Bajaj        gpio-ranges = <&tlmm 0 0 166>;
115*c1bf20b2SKomal Bajaj
116*c1bf20b2SKomal Bajaj        qup-uart0-default-state {
117*c1bf20b2SKomal Bajaj            pins = "gpio0", "gpio1";
118*c1bf20b2SKomal Bajaj            function = "qup0_se1";
119*c1bf20b2SKomal Bajaj            drive-strength = <2>;
120*c1bf20b2SKomal Bajaj            bias-disable;
121*c1bf20b2SKomal Bajaj        };
122*c1bf20b2SKomal Bajaj    };
123*c1bf20b2SKomal Bajaj...
124