xref: /openbmc/linux/Documentation/devicetree/bindings/pinctrl/qcom,qdu1000-tlmm.yaml (revision 1ac731c529cd4d6adbce134754b51ff7d822b145)
12daa1481SMelody Olvera# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
22daa1481SMelody Olvera%YAML 1.2
32daa1481SMelody Olvera---
42daa1481SMelody Olvera$id: http://devicetree.org/schemas/pinctrl/qcom,qdu1000-tlmm.yaml#
52daa1481SMelody Olvera$schema: http://devicetree.org/meta-schemas/core.yaml#
62daa1481SMelody Olvera
72daa1481SMelody Olveratitle: Qualcomm Technologies, Inc. QDU1000/QRU1000 TLMM block
82daa1481SMelody Olvera
92daa1481SMelody Olveramaintainers:
102daa1481SMelody Olvera  - Melody Olvera <quic_molvera@quicinc.com>
112daa1481SMelody Olvera
122daa1481SMelody Olveradescription: |
132daa1481SMelody Olvera  Top Level Mode Multiplexer pin controller found in the QDU1000 and
142daa1481SMelody Olvera  QRU1000 SoCs.
152daa1481SMelody Olvera
162daa1481SMelody OlveraallOf:
172daa1481SMelody Olvera  - $ref: /schemas/pinctrl/qcom,tlmm-common.yaml#
182daa1481SMelody Olvera
192daa1481SMelody Olveraproperties:
202daa1481SMelody Olvera  compatible:
212daa1481SMelody Olvera    const: qcom,qdu1000-tlmm
222daa1481SMelody Olvera
232daa1481SMelody Olvera  reg:
242daa1481SMelody Olvera    maxItems: 1
252daa1481SMelody Olvera
262daa1481SMelody Olvera  interrupts: true
272daa1481SMelody Olvera  interrupt-controller: true
282daa1481SMelody Olvera  "#interrupt-cells": true
292daa1481SMelody Olvera  gpio-controller: true
302daa1481SMelody Olvera
312daa1481SMelody Olvera  gpio-reserved-ranges:
322daa1481SMelody Olvera    minItems: 1
332daa1481SMelody Olvera    maxItems: 76
342daa1481SMelody Olvera
352daa1481SMelody Olvera  gpio-line-names:
362daa1481SMelody Olvera    maxItems: 151
372daa1481SMelody Olvera
382daa1481SMelody Olvera  "#gpio-cells": true
392daa1481SMelody Olvera  gpio-ranges: true
402daa1481SMelody Olvera  wakeup-parent: true
412daa1481SMelody Olvera
422daa1481SMelody OlverapatternProperties:
432daa1481SMelody Olvera  "-state$":
442daa1481SMelody Olvera    oneOf:
452daa1481SMelody Olvera      - $ref: "#/$defs/qcom-qdu1000-tlmm-state"
462daa1481SMelody Olvera      - patternProperties:
472daa1481SMelody Olvera          "-pins$":
482daa1481SMelody Olvera            $ref: "#/$defs/qcom-qdu1000-tlmm-state"
492daa1481SMelody Olvera        additionalProperties: false
502daa1481SMelody Olvera
512daa1481SMelody Olvera$defs:
522daa1481SMelody Olvera  qcom-qdu1000-tlmm-state:
532daa1481SMelody Olvera    type: object
542daa1481SMelody Olvera    description:
552daa1481SMelody Olvera      Pinctrl node's client devices use subnodes for desired pin configuration.
562daa1481SMelody Olvera      Client device subnodes use below standard properties.
572daa1481SMelody Olvera    $ref: qcom,tlmm-common.yaml#/$defs/qcom-tlmm-state
58*c512c27aSKrzysztof Kozlowski    unevaluatedProperties: false
592daa1481SMelody Olvera
602daa1481SMelody Olvera    properties:
612daa1481SMelody Olvera      pins:
622daa1481SMelody Olvera        description:
632daa1481SMelody Olvera          List of gpio pins affected by the properties specified in this
642daa1481SMelody Olvera          subnode.
652daa1481SMelody Olvera        items:
662daa1481SMelody Olvera          oneOf:
672daa1481SMelody Olvera            - pattern: "^gpio([0-9]|[1-9][0-9]|1[0-4][0-9]|150)$"
682daa1481SMelody Olvera            - enum: [ sdc1_rclk, sdc1_clk, sdc1_cmd, sdc1_data ]
692daa1481SMelody Olvera        minItems: 1
702daa1481SMelody Olvera        maxItems: 36
712daa1481SMelody Olvera
722daa1481SMelody Olvera      function:
732daa1481SMelody Olvera        description:
742daa1481SMelody Olvera          Specify the alternative function to be configured for the specified
752daa1481SMelody Olvera          pins.
762daa1481SMelody Olvera        enum: [ atest_char, atest_usb, char_exec, CMO_PRI, cmu_rng,
772daa1481SMelody Olvera                dbg_out_clk, ddr_bist, ddr_pxi1, ddr_pxi2, ddr_pxi3, ddr_pxi4,
782daa1481SMelody Olvera                ddr_pxi5, ddr_pxi6, ddr_pxi7, eth012_int_n, eth345_int_n,
792daa1481SMelody Olvera                gcc_gp1, gcc_gp2, gcc_gp3, gpio, gps_pps_in, hardsync_pps_in,
802daa1481SMelody Olvera                intr_c, jitter_bist_ref, pcie_clkreqn, phase_flag, pll_bist,
812daa1481SMelody Olvera                pll_clk, prng_rosc, qdss_cti, qdss_gpio, qlink0_enable,
822daa1481SMelody Olvera                qlink0_request, qlink0_wmss, qlink1_enable, qlink1_request,
832daa1481SMelody Olvera                qlink1_wmss, qlink2_enable, qlink2_request, qlink2_wmss,
842daa1481SMelody Olvera                qlink3_enable, qlink3_request, qlink3_wmss, qlink4_enable,
852daa1481SMelody Olvera                qlink4_request, qlink4_wmss, qlink5_enable, qlink5_request,
862daa1481SMelody Olvera                qlink5_wmss, qlink6_enable, qlink6_request, qlink6_wmss,
872daa1481SMelody Olvera                qlink7_enable, qlink7_request, qlink7_wmss, qspi_clk, qspi_cs,
882daa1481SMelody Olvera                qspi0, qspi1, qspi2, qspi3, qup00, qup01, qup02, qup03, qup04,
892daa1481SMelody Olvera                qup05, qup06, qup07, qup08, qup10, qup11, qup12, qup13, qup14,
902daa1481SMelody Olvera                qup15, qup16, qup17, qup20, qup21, qup22, SI5518_INT, smb_alert,
912daa1481SMelody Olvera                smb_clk, smb_dat, tb_trig, tgu_ch0, tgu_ch1, tgu_ch2, tgu_ch3,
922daa1481SMelody Olvera                tgu_ch4, tgu_ch5, tgu_ch6, tgu_ch7, tmess_prng0, tmess_prng1,
932daa1481SMelody Olvera                tmess_prng2, tmess_prng3, tod_pps_in, tsense_pwm1, tsense_pwm2,
942daa1481SMelody Olvera                usb2phy_ac, usb_con_det, usb_dfp_en, usb_phy, vfr_0, vfr_1,
952daa1481SMelody Olvera                vsense_trigger ]
962daa1481SMelody Olvera
972daa1481SMelody Olvera    required:
982daa1481SMelody Olvera      - pins
992daa1481SMelody Olvera
1002daa1481SMelody Olverarequired:
1012daa1481SMelody Olvera  - compatible
1022daa1481SMelody Olvera  - reg
1032daa1481SMelody Olvera
1042daa1481SMelody OlveraadditionalProperties: false
1052daa1481SMelody Olvera
1062daa1481SMelody Olveraexamples:
1072daa1481SMelody Olvera  - |
1082daa1481SMelody Olvera    #include <dt-bindings/interrupt-controller/arm-gic.h>
1092daa1481SMelody Olvera
1102daa1481SMelody Olvera    pinctrl@f000000 {
1112daa1481SMelody Olvera        compatible = "qcom,qdu1000-tlmm";
1122daa1481SMelody Olvera        reg = <0xf000000 0x1000000>;
1132daa1481SMelody Olvera        interrupts = <GIC_SPI 208 IRQ_TYPE_LEVEL_HIGH>;
1142daa1481SMelody Olvera        gpio-controller;
1152daa1481SMelody Olvera        #gpio-cells = <2>;
1162daa1481SMelody Olvera        interrupt-controller;
1172daa1481SMelody Olvera        #interrupt-cells = <2>;
1182daa1481SMelody Olvera        gpio-ranges = <&tlmm 0 0 151>;
1192daa1481SMelody Olvera        wakeup-parent = <&pdc>;
1202daa1481SMelody Olvera
1212daa1481SMelody Olvera        uart0-default-state {
1222daa1481SMelody Olvera            pins = "gpio6", "gpio7", "gpio8", "gpio9";
1232daa1481SMelody Olvera            function = "qup00";
1242daa1481SMelody Olvera        };
1252daa1481SMelody Olvera    };
126