53 lines
1.3 KiB
Plaintext
53 lines
1.3 KiB
Plaintext
===========================================
|
|
C-SKY Multi-processors Interrupt Controller
|
|
===========================================
|
|
|
|
C-SKY Multi-processors Interrupt Controller is designed for ck807/ck810/ck860
|
|
SMP soc, and it also could be used in non-SMP system.
|
|
|
|
Interrupt number definition:
|
|
0-15 : software irq, and we use 15 as our IPI_IRQ.
|
|
16-31 : private irq, and we use 16 as the co-processor timer.
|
|
31-1024: common irq for soc ip.
|
|
|
|
Interrupt triger mode: (Defined in dt-bindings/interrupt-controller/irq.h)
|
|
IRQ_TYPE_LEVEL_HIGH (default)
|
|
IRQ_TYPE_LEVEL_LOW
|
|
IRQ_TYPE_EDGE_RISING
|
|
IRQ_TYPE_EDGE_FALLING
|
|
|
|
=============================
|
|
intc node bindings definition
|
|
=============================
|
|
|
|
Description: Describes SMP interrupt controller
|
|
|
|
PROPERTIES
|
|
|
|
- compatible
|
|
Usage: required
|
|
Value type: <string>
|
|
Definition: must be "csky,mpintc"
|
|
- #interrupt-cells
|
|
Usage: required
|
|
Value type: <u32>
|
|
Definition: <2>
|
|
- interrupt-controller:
|
|
Usage: required
|
|
|
|
Examples: ("interrupts = <irq_num IRQ_TYPE_XXX>")
|
|
---------
|
|
#include <dt-bindings/interrupt-controller/irq.h>
|
|
|
|
intc: interrupt-controller {
|
|
compatible = "csky,mpintc";
|
|
#interrupt-cells = <2>;
|
|
interrupt-controller;
|
|
};
|
|
|
|
device: device-example {
|
|
...
|
|
interrupts = <34 IRQ_TYPE_EDGE_RISING>;
|
|
interrupt-parent = <&intc>;
|
|
};
|