1*c66ec88fSEmmanuel Vadot=========================================== 2*c66ec88fSEmmanuel VadotC-SKY Multi-processors Interrupt Controller 3*c66ec88fSEmmanuel Vadot=========================================== 4*c66ec88fSEmmanuel Vadot 5*c66ec88fSEmmanuel VadotC-SKY Multi-processors Interrupt Controller is designed for ck807/ck810/ck860 6*c66ec88fSEmmanuel VadotSMP soc, and it also could be used in non-SMP system. 7*c66ec88fSEmmanuel Vadot 8*c66ec88fSEmmanuel VadotInterrupt number definition: 9*c66ec88fSEmmanuel Vadot 0-15 : software irq, and we use 15 as our IPI_IRQ. 10*c66ec88fSEmmanuel Vadot 16-31 : private irq, and we use 16 as the co-processor timer. 11*c66ec88fSEmmanuel Vadot 31-1024: common irq for soc ip. 12*c66ec88fSEmmanuel Vadot 13*c66ec88fSEmmanuel VadotInterrupt trigger mode: (Defined in dt-bindings/interrupt-controller/irq.h) 14*c66ec88fSEmmanuel Vadot IRQ_TYPE_LEVEL_HIGH (default) 15*c66ec88fSEmmanuel Vadot IRQ_TYPE_LEVEL_LOW 16*c66ec88fSEmmanuel Vadot IRQ_TYPE_EDGE_RISING 17*c66ec88fSEmmanuel Vadot IRQ_TYPE_EDGE_FALLING 18*c66ec88fSEmmanuel Vadot 19*c66ec88fSEmmanuel Vadot============================= 20*c66ec88fSEmmanuel Vadotintc node bindings definition 21*c66ec88fSEmmanuel Vadot============================= 22*c66ec88fSEmmanuel Vadot 23*c66ec88fSEmmanuel Vadot Description: Describes SMP interrupt controller 24*c66ec88fSEmmanuel Vadot 25*c66ec88fSEmmanuel Vadot PROPERTIES 26*c66ec88fSEmmanuel Vadot 27*c66ec88fSEmmanuel Vadot - compatible 28*c66ec88fSEmmanuel Vadot Usage: required 29*c66ec88fSEmmanuel Vadot Value type: <string> 30*c66ec88fSEmmanuel Vadot Definition: must be "csky,mpintc" 31*c66ec88fSEmmanuel Vadot - #interrupt-cells 32*c66ec88fSEmmanuel Vadot Usage: required 33*c66ec88fSEmmanuel Vadot Value type: <u32> 34*c66ec88fSEmmanuel Vadot Definition: <2> 35*c66ec88fSEmmanuel Vadot - interrupt-controller: 36*c66ec88fSEmmanuel Vadot Usage: required 37*c66ec88fSEmmanuel Vadot 38*c66ec88fSEmmanuel VadotExamples: ("interrupts = <irq_num IRQ_TYPE_XXX>") 39*c66ec88fSEmmanuel Vadot--------- 40*c66ec88fSEmmanuel Vadot#include <dt-bindings/interrupt-controller/irq.h> 41*c66ec88fSEmmanuel Vadot 42*c66ec88fSEmmanuel Vadot intc: interrupt-controller { 43*c66ec88fSEmmanuel Vadot compatible = "csky,mpintc"; 44*c66ec88fSEmmanuel Vadot #interrupt-cells = <2>; 45*c66ec88fSEmmanuel Vadot interrupt-controller; 46*c66ec88fSEmmanuel Vadot }; 47*c66ec88fSEmmanuel Vadot 48*c66ec88fSEmmanuel Vadot device: device-example { 49*c66ec88fSEmmanuel Vadot ... 50*c66ec88fSEmmanuel Vadot interrupts = <34 IRQ_TYPE_EDGE_RISING>; 51*c66ec88fSEmmanuel Vadot interrupt-parent = <&intc>; 52*c66ec88fSEmmanuel Vadot }; 53