Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

dt-bindings: interrupt-controller: convert MediaTek sysirq to the json-schema

This helps validating DTS files.

Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
Reviewed-by: Krzysztof Kozlowski <krzysztof.kozlowski@linaro.org>
Link: https://lore.kernel.org/r/20240123060804.32254-1-zajec5@gmail.com
Signed-off-by: Rob Herring <robh@kernel.org>

authored by

Rafał Miłecki and committed by
Rob Herring
517fd647 e20cd62b

+85 -44
+85
Documentation/devicetree/bindings/interrupt-controller/mediatek,mt6577-sysirq.yaml
··· 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/mediatek,mt6577-sysirq.yaml# 5 + $schema: http://devicetree.org/meta-schemas/core.yaml# 6 + 7 + title: MediaTek sysirq 8 + 9 + description: 10 + MediaTek SOCs sysirq support controllable irq inverter for each GIC SPI 11 + interrupt. 12 + 13 + maintainers: 14 + - Matthias Brugger <matthias.bgg@gmail.com> 15 + 16 + properties: 17 + compatible: 18 + oneOf: 19 + - const: mediatek,mt6577-sysirq 20 + - items: 21 + - enum: 22 + - mediatek,mt2701-sysirq 23 + - mediatek,mt2712-sysirq 24 + - mediatek,mt6580-sysirq 25 + - mediatek,mt6582-sysirq 26 + - mediatek,mt6589-sysirq 27 + - mediatek,mt6592-sysirq 28 + - mediatek,mt6755-sysirq 29 + - mediatek,mt6765-sysirq 30 + - mediatek,mt6779-sysirq 31 + - mediatek,mt6795-sysirq 32 + - mediatek,mt6797-sysirq 33 + - mediatek,mt7622-sysirq 34 + - mediatek,mt7623-sysirq 35 + - mediatek,mt7629-sysirq 36 + - mediatek,mt8127-sysirq 37 + - mediatek,mt8135-sysirq 38 + - mediatek,mt8173-sysirq 39 + - mediatek,mt8183-sysirq 40 + - mediatek,mt8365-sysirq 41 + - mediatek,mt8516-sysirq 42 + - const: mediatek,mt6577-sysirq 43 + 44 + reg: 45 + minItems: 1 46 + maxItems: 2 47 + 48 + interrupt-controller: true 49 + 50 + "#interrupt-cells": 51 + $ref: "arm,gic.yaml#/properties/#interrupt-cells" 52 + 53 + required: 54 + - reg 55 + - interrupt-controller 56 + - "#interrupt-cells" 57 + 58 + allOf: 59 + - $ref: /schemas/interrupt-controller.yaml# 60 + - if: 61 + properties: 62 + compatible: 63 + contains: 64 + const: mediatek,mt6797-sysirq 65 + then: 66 + properties: 67 + reg: 68 + minItems: 2 69 + else: 70 + properties: 71 + reg: 72 + maxItems: 1 73 + 74 + unevaluatedProperties: false 75 + 76 + examples: 77 + - | 78 + interrupt-controller@10200620 { 79 + compatible = "mediatek,mt6797-sysirq", "mediatek,mt6577-sysirq"; 80 + reg = <0x10220620 0x20>, 81 + <0x10220690 0x10>; 82 + interrupt-parent = <&gic>; 83 + interrupt-controller; 84 + #interrupt-cells = <3>; 85 + };
-44
Documentation/devicetree/bindings/interrupt-controller/mediatek,sysirq.txt
··· 1 - MediaTek sysirq 2 - 3 - MediaTek SOCs sysirq support controllable irq inverter for each GIC SPI 4 - interrupt. 5 - 6 - Required properties: 7 - - compatible: should be 8 - "mediatek,mt8516-sysirq", "mediatek,mt6577-sysirq": for MT8516 9 - "mediatek,mt8183-sysirq", "mediatek,mt6577-sysirq": for MT8183 10 - "mediatek,mt8173-sysirq", "mediatek,mt6577-sysirq": for MT8173 11 - "mediatek,mt8135-sysirq", "mediatek,mt6577-sysirq": for MT8135 12 - "mediatek,mt8127-sysirq", "mediatek,mt6577-sysirq": for MT8127 13 - "mediatek,mt7622-sysirq", "mediatek,mt6577-sysirq": for MT7622 14 - "mediatek,mt7623-sysirq", "mediatek,mt6577-sysirq": for MT7623 15 - "mediatek,mt7629-sysirq", "mediatek,mt6577-sysirq": for MT7629 16 - "mediatek,mt6795-sysirq", "mediatek,mt6577-sysirq": for MT6795 17 - "mediatek,mt6797-sysirq", "mediatek,mt6577-sysirq": for MT6797 18 - "mediatek,mt6779-sysirq", "mediatek,mt6577-sysirq": for MT6779 19 - "mediatek,mt6765-sysirq", "mediatek,mt6577-sysirq": for MT6765 20 - "mediatek,mt6755-sysirq", "mediatek,mt6577-sysirq": for MT6755 21 - "mediatek,mt6592-sysirq", "mediatek,mt6577-sysirq": for MT6592 22 - "mediatek,mt6589-sysirq", "mediatek,mt6577-sysirq": for MT6589 23 - "mediatek,mt6582-sysirq", "mediatek,mt6577-sysirq": for MT6582 24 - "mediatek,mt6580-sysirq", "mediatek,mt6577-sysirq": for MT6580 25 - "mediatek,mt6577-sysirq": for MT6577 26 - "mediatek,mt2712-sysirq", "mediatek,mt6577-sysirq": for MT2712 27 - "mediatek,mt2701-sysirq", "mediatek,mt6577-sysirq": for MT2701 28 - "mediatek,mt8365-sysirq", "mediatek,mt6577-sysirq": for MT8365 29 - - interrupt-controller : Identifies the node as an interrupt controller 30 - - #interrupt-cells : Use the same format as specified by GIC in arm,gic.txt. 31 - - reg: Physical base address of the intpol registers and length of memory 32 - mapped region. Could be multiple bases here. Ex: mt6797 needs 2 reg, others 33 - need 1. 34 - 35 - Example: 36 - sysirq: intpol-controller@10200620 { 37 - compatible = "mediatek,mt6797-sysirq", 38 - "mediatek,mt6577-sysirq"; 39 - interrupt-controller; 40 - #interrupt-cells = <3>; 41 - interrupt-parent = <&gic>; 42 - reg = <0 0x10220620 0 0x20>, 43 - <0 0x10220690 0 0x10>; 44 - };