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,s6-gpio-intc 43 - amlogic,s7-gpio-intc 44 - amlogic,s7d-gpio-intc 45 - amlogic,t7-gpio-intc 46 - const: amlogic,meson-gpio-intc 47 48 reg: 49 maxItems: 1 50 51 interrupt-controller: true 52 53 "#interrupt-cells": 54 const: 2 55 56 amlogic,channel-interrupts: 57 description: Array with the upstream hwirq numbers 58 minItems: 2 59 maxItems: 12 60 $ref: /schemas/types.yaml#/definitions/uint32-array 61 62required: 63 - compatible 64 - reg 65 - interrupt-controller 66 - "#interrupt-cells" 67 - amlogic,channel-interrupts 68 69if: 70 properties: 71 compatible: 72 contains: 73 const: amlogic,a4-gpio-ao-intc 74then: 75 properties: 76 amlogic,channel-interrupts: 77 maxItems: 2 78else: 79 properties: 80 amlogic,channel-interrupts: 81 minItems: 8 82 83additionalProperties: false 84 85examples: 86 - | 87 interrupt-controller@9880 { 88 compatible = "amlogic,meson-gxbb-gpio-intc", 89 "amlogic,meson-gpio-intc"; 90 reg = <0x9880 0x10>; 91 interrupt-controller; 92 #interrupt-cells = <2>; 93 amlogic,channel-interrupts = <64 65 66 67 68 69 70 71>; 94 }; 95