125 lines · yaml
1# SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause2%YAML 1.23---4$id: http://devicetree.org/schemas/pinctrl/starfive,jh7110-aon-pinctrl.yaml#5$schema: http://devicetree.org/meta-schemas/core.yaml#6 7title: StarFive JH7110 AON Pin Controller8 9description: |10 Bindings for the JH7110 RISC-V SoC from StarFive Technology Ltd.11 12 Out of the SoC's many pins only the ones named PAD_RGPIO0 to PAD_RGPIO313 can be multiplexed and have configurable bias, drive strength,14 schmitt trigger etc.15 Some peripherals such as PWM have their I/O go through the 4 "GPIOs".16 17maintainers:18 - Jianlong Huang <jianlong.huang@starfivetech.com>19 20properties:21 compatible:22 const: starfive,jh7110-aon-pinctrl23 24 reg:25 maxItems: 126 27 resets:28 maxItems: 129 30 interrupts:31 maxItems: 132 33 interrupt-controller: true34 35 '#interrupt-cells':36 const: 237 38 gpio-controller: true39 40 '#gpio-cells':41 const: 242 43patternProperties:44 '-[0-9]+$':45 type: object46 additionalProperties: false47 patternProperties:48 '-pins$':49 type: object50 description: |51 A pinctrl node should contain at least one subnode representing the52 pinctrl groups available on the machine. Each subnode will list the53 pins it needs, and how they should be configured, with regard to54 muxer configuration, bias, input enable/disable, input schmitt55 trigger enable/disable, slew-rate and drive strength.56 allOf:57 - $ref: /schemas/pinctrl/pincfg-node.yaml58 - $ref: /schemas/pinctrl/pinmux-node.yaml59 additionalProperties: false60 61 properties:62 pinmux:63 description: |64 The list of GPIOs and their mux settings that properties in the65 node apply to. This should be set using the GPIOMUX macro.66 67 bias-disable: true68 69 bias-pull-up:70 type: boolean71 72 bias-pull-down:73 type: boolean74 75 drive-strength:76 enum: [ 2, 4, 8, 12 ]77 78 input-enable: true79 80 input-disable: true81 82 input-schmitt-enable: true83 84 input-schmitt-disable: true85 86 slew-rate:87 maximum: 188 89required:90 - compatible91 - reg92 - interrupts93 - interrupt-controller94 - '#interrupt-cells'95 - gpio-controller96 - '#gpio-cells'97 98additionalProperties: false99 100examples:101 - |102 pinctrl@17020000 {103 compatible = "starfive,jh7110-aon-pinctrl";104 reg = <0x17020000 0x10000>;105 resets = <&aoncrg 2>;106 interrupts = <85>;107 interrupt-controller;108 #interrupt-cells = <2>;109 gpio-controller;110 #gpio-cells = <2>;111 112 pwm-0 {113 pwm-pins {114 pinmux = <0xff030802>;115 bias-disable;116 drive-strength = <12>;117 input-disable;118 input-schmitt-disable;119 slew-rate = <0>;120 };121 };122 };123 124...125