16b0139b3SHeiner Kallweit# SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) 26b0139b3SHeiner Kallweit%YAML 1.2 36b0139b3SHeiner Kallweit--- 46b0139b3SHeiner Kallweit$id: http://devicetree.org/schemas/interrupt-controller/amlogic,meson-gpio-intc.yaml# 56b0139b3SHeiner Kallweit$schema: http://devicetree.org/meta-schemas/core.yaml# 66b0139b3SHeiner Kallweit 76b0139b3SHeiner Kallweittitle: Amlogic Meson GPIO interrupt controller 86b0139b3SHeiner Kallweit 96b0139b3SHeiner Kallweitmaintainers: 106b0139b3SHeiner Kallweit - Heiner Kallweit <hkallweit1@gmail.com> 116b0139b3SHeiner Kallweit 126b0139b3SHeiner Kallweitdescription: | 136b0139b3SHeiner Kallweit Meson SoCs contains an interrupt controller which is able to watch the SoC 146b0139b3SHeiner Kallweit pads and generate an interrupt on edge or level. The controller is essentially 156b0139b3SHeiner Kallweit a 256 pads to 8 or 12 GIC interrupt multiplexer, with a filter block to select 166b0139b3SHeiner Kallweit edge or level and polarity. It does not expose all 256 mux inputs because the 176b0139b3SHeiner Kallweit documentation shows that the upper part is not mapped to any pad. The actual 186b0139b3SHeiner Kallweit number of interrupts exposed depends on the SoC. 196b0139b3SHeiner Kallweit 206b0139b3SHeiner KallweitallOf: 216b0139b3SHeiner Kallweit - $ref: /schemas/interrupt-controller.yaml# 226b0139b3SHeiner Kallweit 236b0139b3SHeiner Kallweitproperties: 246b0139b3SHeiner Kallweit compatible: 256b0139b3SHeiner Kallweit oneOf: 266b0139b3SHeiner Kallweit - const: amlogic,meson-gpio-intc 276b0139b3SHeiner Kallweit - items: 286b0139b3SHeiner Kallweit - enum: 296b0139b3SHeiner Kallweit - amlogic,meson8-gpio-intc 306b0139b3SHeiner Kallweit - amlogic,meson8b-gpio-intc 316b0139b3SHeiner Kallweit - amlogic,meson-gxbb-gpio-intc 326b0139b3SHeiner Kallweit - amlogic,meson-gxl-gpio-intc 336b0139b3SHeiner Kallweit - amlogic,meson-axg-gpio-intc 346b0139b3SHeiner Kallweit - amlogic,meson-g12a-gpio-intc 356b0139b3SHeiner Kallweit - amlogic,meson-sm1-gpio-intc 366b0139b3SHeiner Kallweit - amlogic,meson-a1-gpio-intc 376b0139b3SHeiner Kallweit - amlogic,meson-s4-gpio-intc 38*40f41524SXianwei Zhao - amlogic,a4-gpio-intc 39*40f41524SXianwei Zhao - amlogic,a4-gpio-ao-intc 40*40f41524SXianwei Zhao - amlogic,a5-gpio-intc 412b709c67SHuqiang Qin - amlogic,c3-gpio-intc 424a0705bbSHuqiang Qin - amlogic,t7-gpio-intc 436b0139b3SHeiner Kallweit - const: amlogic,meson-gpio-intc 446b0139b3SHeiner Kallweit 456b0139b3SHeiner Kallweit reg: 466b0139b3SHeiner Kallweit maxItems: 1 476b0139b3SHeiner Kallweit 486b0139b3SHeiner Kallweit interrupt-controller: true 496b0139b3SHeiner Kallweit 506b0139b3SHeiner Kallweit "#interrupt-cells": 516b0139b3SHeiner Kallweit const: 2 526b0139b3SHeiner Kallweit 536b0139b3SHeiner Kallweit amlogic,channel-interrupts: 546b0139b3SHeiner Kallweit description: Array with the upstream hwirq numbers 55*40f41524SXianwei Zhao minItems: 2 566b0139b3SHeiner Kallweit maxItems: 12 576b0139b3SHeiner Kallweit $ref: /schemas/types.yaml#/definitions/uint32-array 586b0139b3SHeiner Kallweit 596b0139b3SHeiner Kallweitrequired: 606b0139b3SHeiner Kallweit - compatible 616b0139b3SHeiner Kallweit - reg 626b0139b3SHeiner Kallweit - interrupt-controller 636b0139b3SHeiner Kallweit - "#interrupt-cells" 646b0139b3SHeiner Kallweit - amlogic,channel-interrupts 656b0139b3SHeiner Kallweit 66*40f41524SXianwei Zhaoif: 67*40f41524SXianwei Zhao properties: 68*40f41524SXianwei Zhao compatible: 69*40f41524SXianwei Zhao contains: 70*40f41524SXianwei Zhao const: amlogic,a4-gpio-ao-intc 71*40f41524SXianwei Zhaothen: 72*40f41524SXianwei Zhao properties: 73*40f41524SXianwei Zhao amlogic,channel-interrupts: 74*40f41524SXianwei Zhao maxItems: 2 75*40f41524SXianwei Zhaoelse: 76*40f41524SXianwei Zhao properties: 77*40f41524SXianwei Zhao amlogic,channel-interrupts: 78*40f41524SXianwei Zhao minItems: 8 79*40f41524SXianwei Zhao 806b0139b3SHeiner KallweitadditionalProperties: false 816b0139b3SHeiner Kallweit 826b0139b3SHeiner Kallweitexamples: 836b0139b3SHeiner Kallweit - | 846b0139b3SHeiner Kallweit interrupt-controller@9880 { 856b0139b3SHeiner Kallweit compatible = "amlogic,meson-gxbb-gpio-intc", 866b0139b3SHeiner Kallweit "amlogic,meson-gpio-intc"; 876b0139b3SHeiner Kallweit reg = <0x9880 0x10>; 886b0139b3SHeiner Kallweit interrupt-controller; 896b0139b3SHeiner Kallweit #interrupt-cells = <2>; 906b0139b3SHeiner Kallweit amlogic,channel-interrupts = <64 65 66 67 68 69 70 71>; 916b0139b3SHeiner Kallweit }; 92