18c2ecf20Sopenharmony_ci# SPDX-License-Identifier: (GPL-2.0 OR BSD-2-Clause)
28c2ecf20Sopenharmony_ci# Copyright 2018 Linaro Ltd.
38c2ecf20Sopenharmony_ci%YAML 1.2
48c2ecf20Sopenharmony_ci---
58c2ecf20Sopenharmony_ci$id: "http://devicetree.org/schemas/interrupt-controller/intel,ixp4xx-interrupt.yaml#"
68c2ecf20Sopenharmony_ci$schema: "http://devicetree.org/meta-schemas/core.yaml#"
78c2ecf20Sopenharmony_ci
88c2ecf20Sopenharmony_cititle: Intel IXP4xx XScale Networking Processors Interrupt Controller
98c2ecf20Sopenharmony_ci
108c2ecf20Sopenharmony_cimaintainers:
118c2ecf20Sopenharmony_ci  - Linus Walleij <linus.walleij@linaro.org>
128c2ecf20Sopenharmony_ci
138c2ecf20Sopenharmony_cidescription: |
148c2ecf20Sopenharmony_ci  This interrupt controller is found in the Intel IXP4xx processors.
158c2ecf20Sopenharmony_ci  Some processors have 32 interrupts, some have up to 64 interrupts.
168c2ecf20Sopenharmony_ci  The exact number of interrupts is determined from the compatible
178c2ecf20Sopenharmony_ci  string.
188c2ecf20Sopenharmony_ci
198c2ecf20Sopenharmony_ci  The distinct IXP4xx families with different interrupt controller
208c2ecf20Sopenharmony_ci  variations are IXP42x, IXP43x, IXP45x and IXP46x. Those four
218c2ecf20Sopenharmony_ci  families were the only ones to reach the developer and consumer
228c2ecf20Sopenharmony_ci  market.
238c2ecf20Sopenharmony_ci
248c2ecf20Sopenharmony_ciproperties:
258c2ecf20Sopenharmony_ci  compatible:
268c2ecf20Sopenharmony_ci    items:
278c2ecf20Sopenharmony_ci      - enum:
288c2ecf20Sopenharmony_ci          - intel,ixp42x-interrupt
298c2ecf20Sopenharmony_ci          - intel,ixp43x-interrupt
308c2ecf20Sopenharmony_ci          - intel,ixp45x-interrupt
318c2ecf20Sopenharmony_ci          - intel,ixp46x-interrupt
328c2ecf20Sopenharmony_ci
338c2ecf20Sopenharmony_ci  reg:
348c2ecf20Sopenharmony_ci    maxItems: 1
358c2ecf20Sopenharmony_ci
368c2ecf20Sopenharmony_ci  interrupt-controller: true
378c2ecf20Sopenharmony_ci
388c2ecf20Sopenharmony_ci  '#interrupt-cells':
398c2ecf20Sopenharmony_ci    const: 2
408c2ecf20Sopenharmony_ci
418c2ecf20Sopenharmony_cirequired:
428c2ecf20Sopenharmony_ci  - compatible
438c2ecf20Sopenharmony_ci  - reg
448c2ecf20Sopenharmony_ci  - interrupt-controller
458c2ecf20Sopenharmony_ci  - '#interrupt-cells'
468c2ecf20Sopenharmony_ci
478c2ecf20Sopenharmony_ciadditionalProperties: false
488c2ecf20Sopenharmony_ci
498c2ecf20Sopenharmony_ciexamples:
508c2ecf20Sopenharmony_ci  - |
518c2ecf20Sopenharmony_ci    intcon: interrupt-controller@c8003000 {
528c2ecf20Sopenharmony_ci        compatible = "intel,ixp43x-interrupt";
538c2ecf20Sopenharmony_ci        reg = <0xc8003000 0x100>;
548c2ecf20Sopenharmony_ci        interrupt-controller;
558c2ecf20Sopenharmony_ci        #interrupt-cells = <2>;
568c2ecf20Sopenharmony_ci    };
57