xref: /linux/Documentation/devicetree/bindings/pinctrl/qcom,msm8226-pinctrl.yaml (revision 06d07429858317ded2db7986113a9e0129cd599b)
1441717c4SBartosz Dudziak# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
2441717c4SBartosz Dudziak%YAML 1.2
3441717c4SBartosz Dudziak---
4441717c4SBartosz Dudziak$id: http://devicetree.org/schemas/pinctrl/qcom,msm8226-pinctrl.yaml#
5441717c4SBartosz Dudziak$schema: http://devicetree.org/meta-schemas/core.yaml#
6441717c4SBartosz Dudziak
7441717c4SBartosz Dudziaktitle: Qualcomm Technologies, Inc. MSM8226 TLMM block
8441717c4SBartosz Dudziak
9441717c4SBartosz Dudziakmaintainers:
10441717c4SBartosz Dudziak  - Bjorn Andersson <bjorn.andersson@linaro.org>
11441717c4SBartosz Dudziak
1209f53706SKrzysztof Kozlowskidescription:
1309f53706SKrzysztof Kozlowski  Top Level Mode Multiplexer pin controller in Qualcomm MSM8226 SoC.
14441717c4SBartosz Dudziak
15441717c4SBartosz Dudziakproperties:
16441717c4SBartosz Dudziak  compatible:
17441717c4SBartosz Dudziak    const: qcom,msm8226-pinctrl
18441717c4SBartosz Dudziak
19441717c4SBartosz Dudziak  reg:
20441717c4SBartosz Dudziak    description: Specifies the base address and size of the TLMM register space
21441717c4SBartosz Dudziak    maxItems: 1
22441717c4SBartosz Dudziak
2312a18bb7SKrzysztof Kozlowski  interrupts:
2412a18bb7SKrzysztof Kozlowski    maxItems: 1
2512a18bb7SKrzysztof Kozlowski
26441717c4SBartosz Dudziak  gpio-reserved-ranges:
27441717c4SBartosz Dudziak    maxItems: 1
28441717c4SBartosz Dudziak
29441717c4SBartosz DudziakpatternProperties:
3043dc3f2bSKrzysztof Kozlowski  "-state$":
3143dc3f2bSKrzysztof Kozlowski    oneOf:
3243dc3f2bSKrzysztof Kozlowski      - $ref: "#/$defs/qcom-msm8226-tlmm-state"
3343dc3f2bSKrzysztof Kozlowski      - patternProperties:
3443dc3f2bSKrzysztof Kozlowski          "-pins$":
3543dc3f2bSKrzysztof Kozlowski            $ref: "#/$defs/qcom-msm8226-tlmm-state"
3643dc3f2bSKrzysztof Kozlowski        additionalProperties: false
3743dc3f2bSKrzysztof Kozlowski
3843dc3f2bSKrzysztof Kozlowski$defs:
3943dc3f2bSKrzysztof Kozlowski  qcom-msm8226-tlmm-state:
40441717c4SBartosz Dudziak    type: object
41441717c4SBartosz Dudziak    description:
42441717c4SBartosz Dudziak      Pinctrl node's client devices use subnodes for desired pin configuration.
43441717c4SBartosz Dudziak      Client device subnodes use below standard properties.
444799452eSKrzysztof Kozlowski    $ref: qcom,tlmm-common.yaml#/$defs/qcom-tlmm-state
4534a433bfSKrzysztof Kozlowski    unevaluatedProperties: false
46441717c4SBartosz Dudziak
47441717c4SBartosz Dudziak    properties:
48441717c4SBartosz Dudziak      pins:
49441717c4SBartosz Dudziak        description:
50441717c4SBartosz Dudziak          List of gpio pins affected by the properties specified in this
51441717c4SBartosz Dudziak          subnode.
52441717c4SBartosz Dudziak        items:
53441717c4SBartosz Dudziak          oneOf:
5479234908SKrzysztof Kozlowski            - pattern: "^gpio([0-9]|[1-9][0-9]|10[0-9]|11[0-6])$"
55441717c4SBartosz Dudziak            - enum: [ sdc1_clk, sdc1_cmd, sdc1_data, sdc2_clk, sdc2_cmd, sdc2_data ]
56441717c4SBartosz Dudziak        minItems: 1
57441717c4SBartosz Dudziak        maxItems: 36
58441717c4SBartosz Dudziak
59441717c4SBartosz Dudziak      function:
60441717c4SBartosz Dudziak        description:
61441717c4SBartosz Dudziak          Specify the alternative function to be configured for the specified
62441717c4SBartosz Dudziak          pins. Functions are only valid for gpio pins.
63441717c4SBartosz Dudziak        enum: [ gpio, cci_i2c0, blsp_uim1, blsp_uim2, blsp_uim3, blsp_uim5,
64505ab2cfSLuca Weiss                blsp_i2c1, blsp_i2c2, blsp_i2c3, blsp_i2c4, blsp_i2c5, blsp_i2c6,
65505ab2cfSLuca Weiss                blsp_spi1, blsp_spi2, blsp_spi3, blsp_spi5, blsp_uart1, blsp_uart2,
66ef6c2d85SMatti Lehtimäki                blsp_uart3, blsp_uart4, blsp_uart5, cam_mclk0, cam_mclk1,
67ef6c2d85SMatti Lehtimäki                gp0_clk, gp1_clk, sdc3, wlan ]
68441717c4SBartosz Dudziak
69441717c4SBartosz Dudziak    required:
70441717c4SBartosz Dudziak      - pins
71441717c4SBartosz Dudziak
72c09acbc4SRafał MiłeckiallOf:
734799452eSKrzysztof Kozlowski  - $ref: /schemas/pinctrl/qcom,tlmm-common.yaml#
74c09acbc4SRafał Miłecki
75441717c4SBartosz Dudziakrequired:
76441717c4SBartosz Dudziak  - compatible
77441717c4SBartosz Dudziak  - reg
78441717c4SBartosz Dudziak
79*b22794c0SKrzysztof KozlowskiunevaluatedProperties: false
80441717c4SBartosz Dudziak
81441717c4SBartosz Dudziakexamples:
82441717c4SBartosz Dudziak  - |
83441717c4SBartosz Dudziak    #include <dt-bindings/interrupt-controller/arm-gic.h>
84441717c4SBartosz Dudziak    msmgpio: pinctrl@fd510000 {
85441717c4SBartosz Dudziak        compatible = "qcom,msm8226-pinctrl";
86441717c4SBartosz Dudziak        reg = <0xfd510000 0x4000>;
87441717c4SBartosz Dudziak
88441717c4SBartosz Dudziak        gpio-controller;
89441717c4SBartosz Dudziak        #gpio-cells = <2>;
90441717c4SBartosz Dudziak        gpio-ranges = <&msmgpio 0 0 117>;
91441717c4SBartosz Dudziak        interrupt-controller;
92441717c4SBartosz Dudziak        #interrupt-cells = <2>;
93441717c4SBartosz Dudziak        interrupts = <GIC_SPI 208 IRQ_TYPE_LEVEL_HIGH>;
94441717c4SBartosz Dudziak
9543dc3f2bSKrzysztof Kozlowski        serial-state {
96441717c4SBartosz Dudziak            pins = "gpio8", "gpio9";
97441717c4SBartosz Dudziak            function = "blsp_uart3";
98441717c4SBartosz Dudziak            drive-strength = <8>;
99441717c4SBartosz Dudziak            bias-disable;
100441717c4SBartosz Dudziak        };
101441717c4SBartosz Dudziak    };
102