xref: /linux/Documentation/devicetree/bindings/pinctrl/qcom,sm8350-lpass-lpi-pinctrl.yaml (revision 06d07429858317ded2db7986113a9e0129cd599b)
12b4e7a87SKrzysztof Kozlowski# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
22b4e7a87SKrzysztof Kozlowski%YAML 1.2
32b4e7a87SKrzysztof Kozlowski---
42b4e7a87SKrzysztof Kozlowski$id: http://devicetree.org/schemas/pinctrl/qcom,sm8350-lpass-lpi-pinctrl.yaml#
52b4e7a87SKrzysztof Kozlowski$schema: http://devicetree.org/meta-schemas/core.yaml#
62b4e7a87SKrzysztof Kozlowski
72b4e7a87SKrzysztof Kozlowskititle: Qualcomm SM8350 SoC LPASS LPI TLMM
82b4e7a87SKrzysztof Kozlowski
92b4e7a87SKrzysztof Kozlowskimaintainers:
102b4e7a87SKrzysztof Kozlowski  - Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
112b4e7a87SKrzysztof Kozlowski  - Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
122b4e7a87SKrzysztof Kozlowski
132b4e7a87SKrzysztof Kozlowskidescription:
142b4e7a87SKrzysztof Kozlowski  Top Level Mode Multiplexer pin controller in the Low Power Audio SubSystem
152b4e7a87SKrzysztof Kozlowski  (LPASS) Low Power Island (LPI) of Qualcomm SM8350 SoC.
162b4e7a87SKrzysztof Kozlowski
172b4e7a87SKrzysztof Kozlowskiproperties:
182b4e7a87SKrzysztof Kozlowski  compatible:
192b4e7a87SKrzysztof Kozlowski    const: qcom,sm8350-lpass-lpi-pinctrl
202b4e7a87SKrzysztof Kozlowski
212b4e7a87SKrzysztof Kozlowski  reg:
222b4e7a87SKrzysztof Kozlowski    items:
232b4e7a87SKrzysztof Kozlowski      - description: LPASS LPI TLMM Control and Status registers
242b4e7a87SKrzysztof Kozlowski      - description: LPASS LPI MCC registers
252b4e7a87SKrzysztof Kozlowski
262b4e7a87SKrzysztof Kozlowski  clocks:
272b4e7a87SKrzysztof Kozlowski    items:
282b4e7a87SKrzysztof Kozlowski      - description: LPASS Core voting clock
292b4e7a87SKrzysztof Kozlowski      - description: LPASS Audio voting clock
302b4e7a87SKrzysztof Kozlowski
312b4e7a87SKrzysztof Kozlowski  clock-names:
322b4e7a87SKrzysztof Kozlowski    items:
332b4e7a87SKrzysztof Kozlowski      - const: core
342b4e7a87SKrzysztof Kozlowski      - const: audio
352b4e7a87SKrzysztof Kozlowski
362b4e7a87SKrzysztof KozlowskipatternProperties:
372b4e7a87SKrzysztof Kozlowski  "-state$":
382b4e7a87SKrzysztof Kozlowski    oneOf:
392b4e7a87SKrzysztof Kozlowski      - $ref: "#/$defs/qcom-sm8350-lpass-state"
402b4e7a87SKrzysztof Kozlowski      - patternProperties:
412b4e7a87SKrzysztof Kozlowski          "-pins$":
422b4e7a87SKrzysztof Kozlowski            $ref: "#/$defs/qcom-sm8350-lpass-state"
432b4e7a87SKrzysztof Kozlowski        additionalProperties: false
442b4e7a87SKrzysztof Kozlowski
452b4e7a87SKrzysztof Kozlowski$defs:
462b4e7a87SKrzysztof Kozlowski  qcom-sm8350-lpass-state:
472b4e7a87SKrzysztof Kozlowski    type: object
482b4e7a87SKrzysztof Kozlowski    description:
492b4e7a87SKrzysztof Kozlowski      Pinctrl node's client devices use subnodes for desired pin configuration.
502b4e7a87SKrzysztof Kozlowski      Client device subnodes use below standard properties.
51*5a5ecedcSKrzysztof Kozlowski    $ref: qcom,lpass-lpi-common.yaml#/$defs/qcom-tlmm-state
52*5a5ecedcSKrzysztof Kozlowski    unevaluatedProperties: false
532b4e7a87SKrzysztof Kozlowski
542b4e7a87SKrzysztof Kozlowski    properties:
552b4e7a87SKrzysztof Kozlowski      pins:
562b4e7a87SKrzysztof Kozlowski        description:
572b4e7a87SKrzysztof Kozlowski          List of gpio pins affected by the properties specified in this
582b4e7a87SKrzysztof Kozlowski          subnode.
592b4e7a87SKrzysztof Kozlowski        items:
602b4e7a87SKrzysztof Kozlowski          pattern: "^gpio([0-9]|1[0-9]|2[0-2])$"
612b4e7a87SKrzysztof Kozlowski
622b4e7a87SKrzysztof Kozlowski      function:
632b4e7a87SKrzysztof Kozlowski        enum: [ dmic1_clk, dmic1_data, dmic2_clk, dmic2_data, dmic3_clk,
642b4e7a87SKrzysztof Kozlowski                dmic3_data, dmic4_clk, dmic4_data, ext_mclk1_a, ext_mclk1_b,
652b4e7a87SKrzysztof Kozlowski                ext_mclk1_c, ext_mclk1_d, ext_mclk1_e, gpio, i2s0_clk,
662b4e7a87SKrzysztof Kozlowski                i2s0_data, i2s0_ws, i2s1_clk, i2s1_data, i2s1_ws, i2s2_clk,
672b4e7a87SKrzysztof Kozlowski                i2s2_data, i2s2_ws, i2s3_clk, i2s3_data, i2s3_ws, i2s4_clk,
682b4e7a87SKrzysztof Kozlowski                i2s4_data, i2s4_ws, slimbus_clk, slimbus_data, swr_rx_clk,
692b4e7a87SKrzysztof Kozlowski                swr_rx_data, swr_tx_clk, swr_tx_data, wsa_swr_clk,
702b4e7a87SKrzysztof Kozlowski                wsa_swr_data, wsa2_swr_clk, wsa2_swr_data ]
712b4e7a87SKrzysztof Kozlowski        description:
722b4e7a87SKrzysztof Kozlowski          Specify the alternative function to be configured for the specified
732b4e7a87SKrzysztof Kozlowski          pins.
742b4e7a87SKrzysztof Kozlowski
752b4e7a87SKrzysztof KozlowskiallOf:
76*5a5ecedcSKrzysztof Kozlowski  - $ref: qcom,lpass-lpi-common.yaml#
772b4e7a87SKrzysztof Kozlowski
782b4e7a87SKrzysztof Kozlowskirequired:
792b4e7a87SKrzysztof Kozlowski  - compatible
802b4e7a87SKrzysztof Kozlowski  - reg
812b4e7a87SKrzysztof Kozlowski  - clocks
822b4e7a87SKrzysztof Kozlowski  - clock-names
832b4e7a87SKrzysztof Kozlowski
84*5a5ecedcSKrzysztof KozlowskiunevaluatedProperties: false
852b4e7a87SKrzysztof Kozlowski
862b4e7a87SKrzysztof Kozlowskiexamples:
872b4e7a87SKrzysztof Kozlowski  - |
882b4e7a87SKrzysztof Kozlowski    #include <dt-bindings/sound/qcom,q6afe.h>
892b4e7a87SKrzysztof Kozlowski
902b4e7a87SKrzysztof Kozlowski    lpass_tlmm: pinctrl@33c0000 {
912b4e7a87SKrzysztof Kozlowski        compatible = "qcom,sm8350-lpass-lpi-pinctrl";
922b4e7a87SKrzysztof Kozlowski        reg = <0x033c0000 0x20000>,
932b4e7a87SKrzysztof Kozlowski              <0x03550000 0x10000>;
942b4e7a87SKrzysztof Kozlowski
952b4e7a87SKrzysztof Kozlowski        clocks = <&q6afecc LPASS_HW_MACRO_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>,
962b4e7a87SKrzysztof Kozlowski                 <&q6afecc LPASS_HW_DCODEC_VOTE LPASS_CLK_ATTRIBUTE_COUPLE_NO>;
972b4e7a87SKrzysztof Kozlowski        clock-names = "core", "audio";
982b4e7a87SKrzysztof Kozlowski
992b4e7a87SKrzysztof Kozlowski        gpio-controller;
1002b4e7a87SKrzysztof Kozlowski        #gpio-cells = <2>;
1012b4e7a87SKrzysztof Kozlowski        gpio-ranges = <&lpass_tlmm 0 0 15>;
1022b4e7a87SKrzysztof Kozlowski    };
103