2023-08-30 17:31:07 +02:00
|
|
|
# SPDX-License-Identifier: GPL-2.0-only
|
|
|
|
%YAML 1.2
|
|
|
|
---
|
|
|
|
$id: http://devicetree.org/schemas/interrupt-controller/mrvl,intc.yaml#
|
|
|
|
$schema: http://devicetree.org/meta-schemas/core.yaml#
|
|
|
|
|
|
|
|
title: Marvell MMP/Orion Interrupt controller
|
|
|
|
|
|
|
|
maintainers:
|
|
|
|
- Andrew Lunn <andrew@lunn.ch>
|
|
|
|
- Gregory Clement <gregory.clement@bootlin.com>
|
|
|
|
|
|
|
|
allOf:
|
|
|
|
- if:
|
|
|
|
properties:
|
|
|
|
compatible:
|
|
|
|
not:
|
|
|
|
contains:
|
|
|
|
const: marvell,orion-intc
|
|
|
|
then:
|
|
|
|
required:
|
|
|
|
- mrvl,intc-nr-irqs
|
|
|
|
- if:
|
|
|
|
properties:
|
|
|
|
compatible:
|
|
|
|
contains:
|
|
|
|
enum:
|
|
|
|
- mrvl,mmp-intc
|
|
|
|
- mrvl,mmp2-intc
|
|
|
|
then:
|
|
|
|
properties:
|
|
|
|
reg:
|
|
|
|
maxItems: 1
|
|
|
|
- if:
|
|
|
|
properties:
|
|
|
|
compatible:
|
|
|
|
contains:
|
|
|
|
enum:
|
|
|
|
- marvell,mmp3-intc
|
|
|
|
- mrvl,mmp2-mux-intc
|
|
|
|
then:
|
|
|
|
properties:
|
|
|
|
reg:
|
|
|
|
minItems: 2
|
|
|
|
- if:
|
|
|
|
properties:
|
|
|
|
compatible:
|
|
|
|
contains:
|
|
|
|
const: mrvl,mmp2-mux-intc
|
|
|
|
then:
|
|
|
|
properties:
|
|
|
|
interrupts:
|
|
|
|
maxItems: 1
|
|
|
|
reg-names:
|
|
|
|
items:
|
2023-10-24 12:59:35 +02:00
|
|
|
- const: mux status
|
|
|
|
- const: mux mask
|
2023-08-30 17:31:07 +02:00
|
|
|
required:
|
|
|
|
- interrupts
|
|
|
|
else:
|
|
|
|
properties:
|
|
|
|
interrupts: false
|
|
|
|
|
|
|
|
properties:
|
|
|
|
'#interrupt-cells':
|
|
|
|
const: 1
|
|
|
|
|
|
|
|
compatible:
|
|
|
|
enum:
|
|
|
|
- mrvl,mmp-intc
|
|
|
|
- mrvl,mmp2-intc
|
|
|
|
- marvell,mmp3-intc
|
|
|
|
- marvell,orion-intc
|
|
|
|
- mrvl,mmp2-mux-intc
|
|
|
|
|
|
|
|
reg:
|
|
|
|
minItems: 1
|
|
|
|
maxItems: 2
|
|
|
|
|
|
|
|
reg-names: true
|
|
|
|
|
|
|
|
interrupts: true
|
|
|
|
|
|
|
|
interrupt-controller: true
|
|
|
|
|
|
|
|
mrvl,intc-nr-irqs:
|
|
|
|
description: |
|
|
|
|
Specifies the number of interrupts in the interrupt controller.
|
|
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
|
|
|
|
|
|
mrvl,clr-mfp-irq:
|
|
|
|
description: |
|
|
|
|
Specifies the interrupt that needs to clear MFP edge detection first.
|
|
|
|
$ref: /schemas/types.yaml#/definitions/uint32
|
|
|
|
|
|
|
|
required:
|
|
|
|
- '#interrupt-cells'
|
|
|
|
- compatible
|
|
|
|
- reg
|
|
|
|
- interrupt-controller
|
|
|
|
|
|
|
|
additionalProperties: false
|
|
|
|
|
|
|
|
examples:
|
|
|
|
- |
|
|
|
|
interrupt-controller@d4282000 {
|
|
|
|
compatible = "mrvl,mmp2-intc";
|
|
|
|
interrupt-controller;
|
|
|
|
#interrupt-cells = <1>;
|
|
|
|
reg = <0xd4282000 0x1000>;
|
|
|
|
mrvl,intc-nr-irqs = <64>;
|
|
|
|
};
|
|
|
|
|
|
|
|
interrupt-controller@d4282150 {
|
|
|
|
compatible = "mrvl,mmp2-mux-intc";
|
|
|
|
interrupts = <4>;
|
|
|
|
interrupt-controller;
|
|
|
|
#interrupt-cells = <1>;
|
|
|
|
reg = <0x150 0x4>, <0x168 0x4>;
|
|
|
|
reg-names = "mux status", "mux mask";
|
|
|
|
mrvl,intc-nr-irqs = <2>;
|
|
|
|
};
|
|
|
|
- |
|
|
|
|
interrupt-controller@fed20204 {
|
|
|
|
compatible = "marvell,orion-intc";
|
|
|
|
interrupt-controller;
|
|
|
|
#interrupt-cells = <1>;
|
|
|
|
reg = <0xfed20204 0x04>,
|
|
|
|
<0xfed20214 0x04>;
|
|
|
|
};
|
|
|
|
|
|
|
|
...
|