1# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 2%YAML 1.2 3--- 4$id: http://devicetree.org/schemas/interrupt-controller/amlogic,meson-gpio-intc.yaml# 5$schema: http://devicetree.org/meta-schemas/core.yaml# 6 7title: Amlogic Meson GPIO interrupt controller 8 9maintainers: 10 - Heiner Kallweit <hkallweit1@gmail.com> 11 12description: | 13 Meson SoCs contains an interrupt controller which is able to watch the SoC 14 pads and generate an interrupt on edge or level. The controller is essentially 15 a 256 pads to 8 or 12 GIC interrupt multiplexer, with a filter block to select 16 edge or level and polarity. It does not expose all 256 mux inputs because the 17 documentation shows that the upper part is not mapped to any pad. The actual 18 number of interrupts exposed depends on the SoC. 19 20allOf: 21 - $ref: /schemas/interrupt-controller.yaml# 22 23properties: 24 compatible: 25 oneOf: 26 - const: amlogic,meson-gpio-intc 27 - items: 28 - enum: 29 - amlogic,meson8-gpio-intc 30 - amlogic,meson8b-gpio-intc 31 - amlogic,meson-gxbb-gpio-intc 32 - amlogic,meson-gxl-gpio-intc 33 - amlogic,meson-axg-gpio-intc 34 - amlogic,meson-g12a-gpio-intc 35 - amlogic,meson-sm1-gpio-intc 36 - amlogic,meson-a1-gpio-intc 37 - amlogic,meson-s4-gpio-intc 38 - amlogic,a4-gpio-intc 39 - amlogic,a4-gpio-ao-intc 40 - amlogic,a5-gpio-intc 41 - amlogic,c3-gpio-intc 42 - amlogic,t7-gpio-intc 43 - const: amlogic,meson-gpio-intc 44 45 reg: 46 maxItems: 1 47 48 interrupt-controller: true 49 50 "#interrupt-cells": 51 const: 2 52 53 amlogic,channel-interrupts: 54 description: Array with the upstream hwirq numbers 55 minItems: 2 56 maxItems: 12 57 $ref: /schemas/types.yaml#/definitions/uint32-array 58 59required: 60 - compatible 61 - reg 62 - interrupt-controller 63 - "#interrupt-cells" 64 - amlogic,channel-interrupts 65 66if: 67 properties: 68 compatible: 69 contains: 70 const: amlogic,a4-gpio-ao-intc 71then: 72 properties: 73 amlogic,channel-interrupts: 74 maxItems: 2 75else: 76 properties: 77 amlogic,channel-interrupts: 78 minItems: 8 79 80additionalProperties: false 81 82examples: 83 - | 84 interrupt-controller@9880 { 85 compatible = "amlogic,meson-gxbb-gpio-intc", 86 "amlogic,meson-gpio-intc"; 87 reg = <0x9880 0x10>; 88 interrupt-controller; 89 #interrupt-cells = <2>; 90 amlogic,channel-interrupts = <64 65 66 67 68 69 70 71>; 91 }; 92