1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2%YAML 1.2 3--- 4$id: http://devicetree.org/schemas/gpio/gpio-vf610.yaml# 5$schema: http://devicetree.org/meta-schemas/core.yaml# 6 7title: Freescale VF610 PORT/GPIO module 8 9maintainers: 10 - Stefan Agner <stefan@agner.ch> 11 12description: | 13 The Freescale PORT/GPIO modules are two adjacent modules providing GPIO 14 functionality. Each pair serves 32 GPIOs. The VF610 has 5 instances of 15 each, and each PORT module has its own interrupt. 16 17 Note: Each GPIO port should have an alias correctly numbered in "aliases" 18 node. 19 20properties: 21 compatible: 22 oneOf: 23 - const: fsl,imx8ulp-gpio 24 - const: fsl,vf610-gpio 25 - items: 26 - const: fsl,imx7ulp-gpio 27 - const: fsl,vf610-gpio 28 - items: 29 - enum: 30 - fsl,imx93-gpio 31 - fsl,imx95-gpio 32 - const: fsl,imx8ulp-gpio 33 34 reg: 35 minItems: 1 36 maxItems: 2 37 38 interrupts: 39 items: 40 - description: GPIO Trustzone non-secure interrupt number 41 - description: GPIO Trustzone secure interrupt number 42 minItems: 1 43 44 interrupt-controller: true 45 46 "#interrupt-cells": 47 const: 2 48 49 "#gpio-cells": 50 const: 2 51 52 gpio-controller: true 53 54 clocks: 55 items: 56 - description: SoC GPIO clock 57 - description: SoC PORT clock 58 59 clock-names: 60 items: 61 - const: gpio 62 - const: port 63 64 gpio-ranges: 65 minItems: 1 66 maxItems: 4 67 68patternProperties: 69 "^.+-hog(-[0-9]+)?$": 70 type: object 71 72 required: 73 - gpio-hog 74 75required: 76 - compatible 77 - reg 78 - interrupts 79 - interrupt-controller 80 - "#interrupt-cells" 81 - "#gpio-cells" 82 - gpio-controller 83 84allOf: 85 - if: 86 properties: 87 compatible: 88 contains: 89 enum: 90 - fsl,vf610-gpio 91 - fsl,imx7ulp-gpio 92 then: 93 properties: 94 interrupts: 95 maxItems: 1 96 reg: 97 items: 98 - description: PORT register base address 99 - description: GPIO register base address 100 else: 101 properties: 102 interrupts: 103 minItems: 2 104 reg: 105 items: 106 - description: GPIO register base address 107 108additionalProperties: false 109 110examples: 111 - | 112 #include <dt-bindings/interrupt-controller/arm-gic.h> 113 114 gpio1: gpio@40049000 { 115 compatible = "fsl,vf610-gpio"; 116 reg = <0x40049000 0x1000>, <0x400ff000 0x40>; 117 interrupts = <0 107 IRQ_TYPE_LEVEL_HIGH>; 118 gpio-controller; 119 #gpio-cells = <2>; 120 interrupt-controller; 121 #interrupt-cells = <2>; 122 gpio-ranges = <&iomuxc 0 0 32>; 123 }; 124