| # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause) |
| %YAML 1.2 |
| --- |
| $id: http://devicetree.org/schemas/interrupt-controller/andestech,plicsw.yaml# |
| $schema: http://devicetree.org/meta-schemas/core.yaml# |
| |
| title: Andes machine-level software interrupt controller |
| |
| description: |
| In the Andes platform such as QiLai SoC, the PLIC module is instantiated a |
| second time with all interrupt sources tied to zero as the software interrupt |
| controller (PLIC_SW). PLIC_SW directly connects to the machine-mode |
| inter-processor interrupt lines of CPUs, so RISC-V per-CPU local interrupt |
| controller is the parent interrupt controller for PLIC_SW. PLIC_SW can |
| generate machine-mode inter-processor interrupts through programming its |
| registers. |
| |
| maintainers: |
| - Ben Zong-You Xie <ben717@andestech.com> |
| |
| properties: |
| compatible: |
| items: |
| - enum: |
| - andestech,qilai-plicsw |
| - const: andestech,plicsw |
| |
| reg: |
| maxItems: 1 |
| |
| interrupts-extended: |
| minItems: 1 |
| maxItems: 15872 |
| description: |
| Specifies which harts are connected to the PLIC_SW. Each item must points |
| to a riscv,cpu-intc node, which has a riscv cpu node as parent. |
| |
| additionalProperties: false |
| |
| required: |
| - compatible |
| - reg |
| - interrupts-extended |
| |
| examples: |
| - | |
| interrupt-controller@400000 { |
| compatible = "andestech,qilai-plicsw", "andestech,plicsw"; |
| reg = <0x400000 0x400000>; |
| interrupts-extended = <&cpu0intc 3>, |
| <&cpu1intc 3>, |
| <&cpu2intc 3>, |
| <&cpu3intc 3>; |
| }; |