1fac71e4eSEmmanuel Vadot# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2fac71e4eSEmmanuel Vadot%YAML 1.2 3fac71e4eSEmmanuel Vadot--- 4fac71e4eSEmmanuel Vadot$id: http://devicetree.org/schemas/pinctrl/qcom,ipq9574-tlmm.yaml# 5fac71e4eSEmmanuel Vadot$schema: http://devicetree.org/meta-schemas/core.yaml# 6fac71e4eSEmmanuel Vadot 7fac71e4eSEmmanuel Vadottitle: Qualcomm Technologies, Inc. IPQ9574 TLMM block 8fac71e4eSEmmanuel Vadot 9fac71e4eSEmmanuel Vadotmaintainers: 10fac71e4eSEmmanuel Vadot - Bjorn Andersson <andersson@kernel.org> 11fac71e4eSEmmanuel Vadot - Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org> 12fac71e4eSEmmanuel Vadot 13fac71e4eSEmmanuel Vadotdescription: 14fac71e4eSEmmanuel Vadot Top Level Mode Multiplexer pin controller in Qualcomm IPQ9574 SoC. 15fac71e4eSEmmanuel Vadot 16fac71e4eSEmmanuel Vadotproperties: 17fac71e4eSEmmanuel Vadot compatible: 18fac71e4eSEmmanuel Vadot const: qcom,ipq9574-tlmm 19fac71e4eSEmmanuel Vadot 20fac71e4eSEmmanuel Vadot reg: 21fac71e4eSEmmanuel Vadot maxItems: 1 22fac71e4eSEmmanuel Vadot 23fac71e4eSEmmanuel Vadot interrupts: 24fac71e4eSEmmanuel Vadot maxItems: 1 25fac71e4eSEmmanuel Vadot 26fac71e4eSEmmanuel Vadot gpio-reserved-ranges: 27fac71e4eSEmmanuel Vadot minItems: 1 28fac71e4eSEmmanuel Vadot maxItems: 33 29fac71e4eSEmmanuel Vadot 30fac71e4eSEmmanuel Vadot gpio-line-names: 31fac71e4eSEmmanuel Vadot maxItems: 65 32fac71e4eSEmmanuel Vadot 33fac71e4eSEmmanuel VadotpatternProperties: 34fac71e4eSEmmanuel Vadot "-state$": 35fac71e4eSEmmanuel Vadot oneOf: 36fac71e4eSEmmanuel Vadot - $ref: "#/$defs/qcom-ipq9574-tlmm-state" 37fac71e4eSEmmanuel Vadot - patternProperties: 38fac71e4eSEmmanuel Vadot "-pins$": 39fac71e4eSEmmanuel Vadot $ref: "#/$defs/qcom-ipq9574-tlmm-state" 40fac71e4eSEmmanuel Vadot additionalProperties: false 41fac71e4eSEmmanuel Vadot 42fac71e4eSEmmanuel Vadot$defs: 43fac71e4eSEmmanuel Vadot qcom-ipq9574-tlmm-state: 44fac71e4eSEmmanuel Vadot type: object 45fac71e4eSEmmanuel Vadot description: 46fac71e4eSEmmanuel Vadot Pinctrl node's client devices use subnodes for desired pin configuration. 47fac71e4eSEmmanuel Vadot Client device subnodes use below standard properties. 48fac71e4eSEmmanuel Vadot $ref: qcom,tlmm-common.yaml#/$defs/qcom-tlmm-state 49f126890aSEmmanuel Vadot unevaluatedProperties: false 50fac71e4eSEmmanuel Vadot 51fac71e4eSEmmanuel Vadot properties: 52fac71e4eSEmmanuel Vadot pins: 53fac71e4eSEmmanuel Vadot description: 54fac71e4eSEmmanuel Vadot List of gpio pins affected by the properties specified in this 55fac71e4eSEmmanuel Vadot subnode. 56fac71e4eSEmmanuel Vadot items: 57fac71e4eSEmmanuel Vadot pattern: "^gpio([0-9]|[1-5][0-9]|6[0-4])$" 58fac71e4eSEmmanuel Vadot minItems: 1 59fac71e4eSEmmanuel Vadot maxItems: 8 60fac71e4eSEmmanuel Vadot 61fac71e4eSEmmanuel Vadot function: 62fac71e4eSEmmanuel Vadot description: 63fac71e4eSEmmanuel Vadot Specify the alternative function to be configured for the specified 64fac71e4eSEmmanuel Vadot pins. 65fac71e4eSEmmanuel Vadot 66fac71e4eSEmmanuel Vadot enum: [ atest_char, atest_char0, atest_char1, atest_char2, atest_char3, 67fac71e4eSEmmanuel Vadot audio_pdm0, audio_pdm1, audio_pri, audio_sec, blsp0_spi, blsp0_uart, 68fac71e4eSEmmanuel Vadot blsp1_i2c, blsp1_spi, blsp1_uart, blsp2_i2c, blsp2_spi, 69fac71e4eSEmmanuel Vadot blsp2_uart, blsp3_i2c, blsp3_spi, blsp3_uart, blsp4_i2c, 70fac71e4eSEmmanuel Vadot blsp4_spi, blsp4_uart, blsp5_i2c, blsp5_uart, cri_trng0, 71fac71e4eSEmmanuel Vadot cri_trng1, cri_trng2, cri_trng3, cxc0, cxc1, dbg_out, dwc_ddrphy, 72fac71e4eSEmmanuel Vadot gcc_plltest, gcc_tlmm, gpio, mac, mdc, mdio, pcie0_clk, pcie0_wake, 73fac71e4eSEmmanuel Vadot pcie1_clk, pcie1_wake, pcie2_clk, pcie2_wake, pcie3_clk, pcie3_wake, 74fac71e4eSEmmanuel Vadot prng_rosc0, prng_rosc1, prng_rosc2, prng_rosc3, pta, pwm, 75fac71e4eSEmmanuel Vadot qdss_cti_trig_in_a0, qdss_cti_trig_in_a1, qdss_cti_trig_in_b0, 76fac71e4eSEmmanuel Vadot qdss_cti_trig_in_b1, qdss_cti_trig_out_a0, qdss_cti_trig_out_a1, 77fac71e4eSEmmanuel Vadot qdss_cti_trig_out_b0, qdss_cti_trig_out_b1, qdss_traceclk_a, 78fac71e4eSEmmanuel Vadot qdss_traceclk_b, qdss_tracectl_a, qdss_tracectl_b, qdss_tracedata_a, 79fac71e4eSEmmanuel Vadot qdss_tracedata_b, qspi_clk, qspi_cs, qspi_data, 80fac71e4eSEmmanuel Vadot rx0, rx1, sdc_clk, sdc_cmd, sdc_data, sdc_rclk, tsens_max, 81fac71e4eSEmmanuel Vadot wci20, wci21, wsa_swrm ] 82fac71e4eSEmmanuel Vadot 83fac71e4eSEmmanuel Vadot required: 84fac71e4eSEmmanuel Vadot - pins 85fac71e4eSEmmanuel Vadot 86fac71e4eSEmmanuel VadotallOf: 87fac71e4eSEmmanuel Vadot - $ref: /schemas/pinctrl/qcom,tlmm-common.yaml# 88fac71e4eSEmmanuel Vadot 89fac71e4eSEmmanuel Vadotrequired: 90fac71e4eSEmmanuel Vadot - compatible 91fac71e4eSEmmanuel Vadot - reg 92fac71e4eSEmmanuel Vadot 93*8d13bc63SEmmanuel VadotunevaluatedProperties: false 94fac71e4eSEmmanuel Vadot 95fac71e4eSEmmanuel Vadotexamples: 96fac71e4eSEmmanuel Vadot - | 97fac71e4eSEmmanuel Vadot #include <dt-bindings/interrupt-controller/arm-gic.h> 98fac71e4eSEmmanuel Vadot tlmm: pinctrl@1000000 { 99fac71e4eSEmmanuel Vadot compatible = "qcom,ipq9574-tlmm"; 100fac71e4eSEmmanuel Vadot reg = <0x01000000 0x300000>; 101fac71e4eSEmmanuel Vadot interrupts = <GIC_SPI 208 IRQ_TYPE_LEVEL_HIGH>; 102fac71e4eSEmmanuel Vadot gpio-controller; 103fac71e4eSEmmanuel Vadot #gpio-cells = <2>; 104fac71e4eSEmmanuel Vadot interrupt-controller; 105fac71e4eSEmmanuel Vadot #interrupt-cells = <2>; 106fac71e4eSEmmanuel Vadot gpio-ranges = <&tlmm 0 0 65>; 107fac71e4eSEmmanuel Vadot 108fac71e4eSEmmanuel Vadot uart2-state { 109fac71e4eSEmmanuel Vadot pins = "gpio34", "gpio35"; 110fac71e4eSEmmanuel Vadot function = "blsp2_uart"; 111fac71e4eSEmmanuel Vadot drive-strength = <8>; 112fac71e4eSEmmanuel Vadot bias-pull-down; 113fac71e4eSEmmanuel Vadot }; 114fac71e4eSEmmanuel Vadot }; 115