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