106881e91SRayyan Ansari# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 206881e91SRayyan Ansari%YAML 1.2 306881e91SRayyan Ansari--- 406881e91SRayyan Ansari$id: http://devicetree.org/schemas/pinctrl/qcom,ipq4019-pinctrl.yaml# 506881e91SRayyan Ansari$schema: http://devicetree.org/meta-schemas/core.yaml# 606881e91SRayyan Ansari 706881e91SRayyan Ansarititle: Qualcomm Technologies, Inc. IPQ4019 TLMM block 806881e91SRayyan Ansari 906881e91SRayyan Ansarimaintainers: 1006881e91SRayyan Ansari - Bjorn Andersson <bjorn.andersson@linaro.org> 1106881e91SRayyan Ansari 1206881e91SRayyan Ansaridescription: | 1306881e91SRayyan Ansari Top Level Mode Multiplexer pin controller in Qualcomm IPQ4019 SoC. 1406881e91SRayyan Ansari 1506881e91SRayyan AnsariallOf: 1606881e91SRayyan Ansari - $ref: /schemas/pinctrl/qcom,tlmm-common.yaml# 1706881e91SRayyan Ansari 1806881e91SRayyan Ansariproperties: 1906881e91SRayyan Ansari compatible: 2006881e91SRayyan Ansari const: qcom,ipq4019-pinctrl 2106881e91SRayyan Ansari 2206881e91SRayyan Ansari reg: 2306881e91SRayyan Ansari maxItems: 1 2406881e91SRayyan Ansari 2506881e91SRayyan Ansari interrupts: 2606881e91SRayyan Ansari maxItems: 1 2706881e91SRayyan Ansari 2806881e91SRayyan Ansari gpio-reserved-ranges: true 2906881e91SRayyan Ansari 3006881e91SRayyan AnsaripatternProperties: 3106881e91SRayyan Ansari "-state$": 3206881e91SRayyan Ansari oneOf: 3306881e91SRayyan Ansari - $ref: "#/$defs/qcom-ipq4019-tlmm-state" 3406881e91SRayyan Ansari - patternProperties: 3506881e91SRayyan Ansari "-pins$": 3606881e91SRayyan Ansari $ref: "#/$defs/qcom-ipq4019-tlmm-state" 3706881e91SRayyan Ansari additionalProperties: false 3806881e91SRayyan Ansari 3906881e91SRayyan Ansari "-hog(-[0-9]+)?$": 40*ae4e8454SKrzysztof Kozlowski type: object 4106881e91SRayyan Ansari required: 4206881e91SRayyan Ansari - gpio-hog 4306881e91SRayyan Ansari 4406881e91SRayyan Ansari$defs: 4506881e91SRayyan Ansari qcom-ipq4019-tlmm-state: 4606881e91SRayyan Ansari type: object 4706881e91SRayyan Ansari description: 4806881e91SRayyan Ansari Pinctrl node's client devices use subnodes for desired pin configuration. 4906881e91SRayyan Ansari Client device subnodes use below standard properties. 5006881e91SRayyan Ansari $ref: qcom,tlmm-common.yaml#/$defs/qcom-tlmm-state 5106881e91SRayyan Ansari unevaluatedProperties: false 5206881e91SRayyan Ansari 5306881e91SRayyan Ansari properties: 5406881e91SRayyan Ansari pins: 5506881e91SRayyan Ansari description: 5606881e91SRayyan Ansari List of gpio pins affected by the properties specified in this 5706881e91SRayyan Ansari subnode. 5806881e91SRayyan Ansari items: 5906881e91SRayyan Ansari pattern: "^gpio([0-9]|[1-9][0-9])$" 6006881e91SRayyan Ansari minItems: 1 6106881e91SRayyan Ansari maxItems: 36 6206881e91SRayyan Ansari 6306881e91SRayyan Ansari function: 6406881e91SRayyan Ansari description: 6506881e91SRayyan Ansari Specify the alternative function to be configured for the specified 6606881e91SRayyan Ansari pins. 6706881e91SRayyan Ansari enum: [ aud_pin, audio_pwm, blsp_i2c0, blsp_i2c1, blsp_spi0, 6806881e91SRayyan Ansari blsp_spi1, blsp_uart0, blsp_uart1, chip_rst, gpio, 6906881e91SRayyan Ansari i2s_rx, i2s_spdif_in, i2s_spdif_out, i2s_td, i2s_tx, 7006881e91SRayyan Ansari jtag, led0, led1, led2, led3, led4, led5, led6, led7, 7106881e91SRayyan Ansari led8, led9, led10, led11, mdc, mdio, pcie, pmu, 7206881e91SRayyan Ansari prng_rosc, qpic, rgmii, rmii, sdio, smart0, smart1, 7306881e91SRayyan Ansari smart2, smart3, tm, wifi0, wifi1 ] 7406881e91SRayyan Ansari 7506881e91SRayyan Ansari required: 7606881e91SRayyan Ansari - pins 7706881e91SRayyan Ansari 7806881e91SRayyan Ansarirequired: 7906881e91SRayyan Ansari - compatible 8006881e91SRayyan Ansari - reg 8106881e91SRayyan Ansari 8206881e91SRayyan AnsariunevaluatedProperties: false 8306881e91SRayyan Ansari 8406881e91SRayyan Ansariexamples: 8506881e91SRayyan Ansari - | 8606881e91SRayyan Ansari #include <dt-bindings/interrupt-controller/arm-gic.h> 8706881e91SRayyan Ansari tlmm: pinctrl@1000000 { 8806881e91SRayyan Ansari compatible = "qcom,ipq4019-pinctrl"; 8906881e91SRayyan Ansari reg = <0x01000000 0x300000>; 9006881e91SRayyan Ansari 9106881e91SRayyan Ansari gpio-controller; 9206881e91SRayyan Ansari #gpio-cells = <2>; 9306881e91SRayyan Ansari gpio-ranges = <&tlmm 0 0 100>; 9406881e91SRayyan Ansari interrupt-controller; 9506881e91SRayyan Ansari #interrupt-cells = <2>; 9606881e91SRayyan Ansari interrupts = <GIC_SPI 208 IRQ_TYPE_LEVEL_HIGH>; 9706881e91SRayyan Ansari 9806881e91SRayyan Ansari uart-state { 9906881e91SRayyan Ansari pins = "gpio16", "gpio17"; 10006881e91SRayyan Ansari function = "blsp_uart0"; 10106881e91SRayyan Ansari bias-disable; 10206881e91SRayyan Ansari }; 10306881e91SRayyan Ansari }; 104