xref: /openbmc/linux/Documentation/devicetree/bindings/interrupt-controller/qca,ath79-cpu-intc.txt (revision e5451c8f8330e03ad3cfa16048b4daf961af434f)
1*0fa4af8fSAlban BedelBinding for Qualcomm Atheros AR7xxx/AR9XXX CPU interrupt controller
2*0fa4af8fSAlban Bedel
3*0fa4af8fSAlban BedelOn most SoC the IRQ controller need to flush the DDR FIFO before running
4*0fa4af8fSAlban Bedelthe interrupt handler of some devices. This is configured using the
5*0fa4af8fSAlban Bedelqca,ddr-wb-channels and qca,ddr-wb-channel-interrupts properties.
6*0fa4af8fSAlban Bedel
7*0fa4af8fSAlban BedelRequired Properties:
8*0fa4af8fSAlban Bedel
9*0fa4af8fSAlban Bedel- compatible: has to be "qca,<soctype>-cpu-intc", "qca,ar7100-cpu-intc"
10*0fa4af8fSAlban Bedel  as fallback
11*0fa4af8fSAlban Bedel- interrupt-controller : Identifies the node as an interrupt controller
12*0fa4af8fSAlban Bedel- #interrupt-cells : Specifies the number of cells needed to encode interrupt
13*0fa4af8fSAlban Bedel		     source, should be 1 for intc
14*0fa4af8fSAlban Bedel
15*0fa4af8fSAlban BedelPlease refer to interrupts.txt in this directory for details of the common
16*0fa4af8fSAlban BedelInterrupt Controllers bindings used by client devices.
17*0fa4af8fSAlban Bedel
18*0fa4af8fSAlban BedelOptional Properties:
19*0fa4af8fSAlban Bedel
20*0fa4af8fSAlban Bedel- qca,ddr-wb-channel-interrupts: List of the interrupts needing a write
21*0fa4af8fSAlban Bedel  buffer flush
22*0fa4af8fSAlban Bedel- qca,ddr-wb-channels: List of phandles to the write buffer channels for
23*0fa4af8fSAlban Bedel  each interrupt. If qca,ddr-wb-channel-interrupts is not present the interrupt
24*0fa4af8fSAlban Bedel  default to the entry's index.
25*0fa4af8fSAlban Bedel
26*0fa4af8fSAlban BedelExample:
27*0fa4af8fSAlban Bedel
28*0fa4af8fSAlban Bedel	interrupt-controller {
29*0fa4af8fSAlban Bedel		compatible = "qca,ar9132-cpu-intc", "qca,ar7100-cpu-intc";
30*0fa4af8fSAlban Bedel
31*0fa4af8fSAlban Bedel		interrupt-controller;
32*0fa4af8fSAlban Bedel		#interrupt-cells = <1>;
33*0fa4af8fSAlban Bedel
34*0fa4af8fSAlban Bedel		qca,ddr-wb-channel-interrupts = <2>, <3>, <4>, <5>;
35*0fa4af8fSAlban Bedel		qca,ddr-wb-channels = <&ddr_ctrl 3>, <&ddr_ctrl 2>,
36*0fa4af8fSAlban Bedel					<&ddr_ctrl 0>, <&ddr_ctrl 1>;
37*0fa4af8fSAlban Bedel	};
38*0fa4af8fSAlban Bedel
39*0fa4af8fSAlban Bedel	...
40*0fa4af8fSAlban Bedel
41*0fa4af8fSAlban Bedel	ddr_ctrl: memory-controller@18000000 {
42*0fa4af8fSAlban Bedel		...
43*0fa4af8fSAlban Bedel		#qca,ddr-wb-channel-cells = <1>;
44*0fa4af8fSAlban Bedel	};
45