xref: /openbmc/linux/Documentation/devicetree/bindings/powerpc/fsl/dcsr.txt (revision c98be0c96db00e9b6b02d31e0fa7590c54cdaaac)
1b9df0223SStephen George===================================================================
2b9df0223SStephen GeorgeDebug Control and Status Register (DCSR) Binding
3b9df0223SStephen GeorgeCopyright 2011 Freescale Semiconductor Inc.
4b9df0223SStephen George
5b9df0223SStephen GeorgeNOTE: The bindings described in this document are preliminary and subject
6b9df0223SStephen Georgeto change.  Some of the compatible strings that contain only generic names
7b9df0223SStephen Georgemay turn out to be inappropriate, or need additional properties to describe
8b9df0223SStephen Georgethe integration of the block with the rest of the chip.
9b9df0223SStephen George
10b9df0223SStephen George=====================================================================
11b9df0223SStephen GeorgeDebug Control and Status Register Memory Map
12b9df0223SStephen George
13b9df0223SStephen GeorgeDescription
14b9df0223SStephen George
15b9df0223SStephen GeorgeThis node defines the base address and range for the
16b9df0223SStephen Georgedefined DCSR Memory Map. Child nodes will describe the individual
17b9df0223SStephen Georgedebug blocks defined within this memory space.
18b9df0223SStephen George
19b9df0223SStephen GeorgePROPERTIES
20b9df0223SStephen George
21b9df0223SStephen George	- compatible
22b9df0223SStephen George	Usage: required
23b9df0223SStephen George	Value type: <string>
24b9df0223SStephen George	Definition: Must include "fsl,dcsr" and "simple-bus".
25b9df0223SStephen George	The DCSR space exists in the memory-mapped bus.
26b9df0223SStephen George
27b9df0223SStephen George	- #address-cells
28b9df0223SStephen George	Usage: required
29b9df0223SStephen George	Value type: <u32>
30b9df0223SStephen George	Definition: A standard property.  Defines the number of cells
31b9df0223SStephen George	or representing physical addresses in child nodes.
32b9df0223SStephen George
33b9df0223SStephen George	- #size-cells
34b9df0223SStephen George	Usage: required
35b9df0223SStephen George	Value type: <u32>
36b9df0223SStephen George	Definition: A standard property.  Defines the number of cells
37b9df0223SStephen George	or representing the size of physical addresses in
38b9df0223SStephen George	child nodes.
39b9df0223SStephen George
40b9df0223SStephen George	- ranges
41b9df0223SStephen George	Usage: required
42b9df0223SStephen George	Value type: <prop-encoded-array>
43b9df0223SStephen George	Definition: A standard property. Specifies the physical address
44b9df0223SStephen George	range of the DCSR space.
45b9df0223SStephen George
46b9df0223SStephen GeorgeEXAMPLE
47b9df0223SStephen George	dcsr: dcsr@f00000000 {
48b9df0223SStephen George		#address-cells = <1>;
49b9df0223SStephen George		#size-cells = <1>;
50b9df0223SStephen George		compatible = "fsl,dcsr", "simple-bus";
51b9df0223SStephen George		ranges = <0x00000000 0xf 0x00000000 0x01008000>;
52b9df0223SStephen George	};
53b9df0223SStephen George
54b9df0223SStephen George=====================================================================
55b9df0223SStephen GeorgeEvent Processing Unit
56b9df0223SStephen George
57b9df0223SStephen GeorgeThis node represents the region of DCSR space allocated to the EPU
58b9df0223SStephen George
59b9df0223SStephen GeorgePROPERTIES
60b9df0223SStephen George
61b9df0223SStephen George	- compatible
62b9df0223SStephen George	Usage: required
63b9df0223SStephen George	Value type: <string>
64b9df0223SStephen George	Definition: Must include "fsl,dcsr-epu"
65b9df0223SStephen George
66b9df0223SStephen George	- interrupts
67b9df0223SStephen George	Usage: required
68b9df0223SStephen George	Value type: <prop_encoded-array>
69b9df0223SStephen George	Definition:  Specifies the interrupts generated by the EPU.
70b9df0223SStephen George	The value of the interrupts property consists of three
71b9df0223SStephen George	interrupt specifiers. The format of the specifier is defined
72b9df0223SStephen George	by the binding document describing the node's interrupt parent.
73b9df0223SStephen George
74b9df0223SStephen George	The EPU counters can be configured to assert the performance
75b9df0223SStephen George	monitor interrupt signal based on either counter overflow or value
76b9df0223SStephen George	match. Which counter asserted the interrupt is captured in an EPU
77b9df0223SStephen George	Counter Interrupt Status Register (EPCPUISR).
78b9df0223SStephen George
79b9df0223SStephen George	The EPU unit can also be configured to assert either or both of
80b9df0223SStephen George	two interrupt signals based on debug event sources within the SoC.
81b9df0223SStephen George	The interrupt signals are epu_xt_int0 and epu_xt_int1.
82b9df0223SStephen George	Which event source asserted the interrupt is captured in an EPU
83b9df0223SStephen George	Interrupt Status Register (EPISR0,EPISR1).
84b9df0223SStephen George
85*c98be0c9SCarlos Garcia	Interrupt numbers are listed in order (perfmon, event0, event1).
86b9df0223SStephen George
87b9df0223SStephen George	- interrupt-parent
88b9df0223SStephen George	Usage: required
89b9df0223SStephen George	Value type: <phandle>
90b9df0223SStephen George	Definition: A single <phandle> value that points
91b9df0223SStephen George	to the interrupt parent to which the child domain
92b9df0223SStephen George	is being mapped. Value must be "&mpic"
93b9df0223SStephen George
94b9df0223SStephen George	- reg
95b9df0223SStephen George	Usage: required
96b9df0223SStephen George	Value type: <prop-encoded-array>
97b9df0223SStephen George	Definition: A standard property.  Specifies the physical address
98b9df0223SStephen George	offset and length of the DCSR space registers of the device
99b9df0223SStephen George	configuration block.
100b9df0223SStephen George
101b9df0223SStephen GeorgeEXAMPLE
102b9df0223SStephen George	dcsr-epu@0 {
103b9df0223SStephen George		compatible = "fsl,dcsr-epu";
104b9df0223SStephen George		interrupts = <52 2 0 0
105b9df0223SStephen George			      84 2 0 0
106b9df0223SStephen George			      85 2 0 0>;
107b9df0223SStephen George		interrupt-parent = <&mpic>;
108b9df0223SStephen George		reg = <0x0 0x1000>;
109b9df0223SStephen George	};
110b9df0223SStephen George
111b9df0223SStephen George=======================================================================
112b9df0223SStephen GeorgeNexus Port Controller
113b9df0223SStephen George
114b9df0223SStephen GeorgeThis node represents the region of DCSR space allocated to the NPC
115b9df0223SStephen George
116b9df0223SStephen GeorgePROPERTIES
117b9df0223SStephen George
118b9df0223SStephen George	- compatible
119b9df0223SStephen George	Usage: required
120b9df0223SStephen George	Value type: <string>
121b9df0223SStephen George	Definition: Must include "fsl,dcsr-npc"
122b9df0223SStephen George
123b9df0223SStephen George	- reg
124b9df0223SStephen George	Usage: required
125b9df0223SStephen George	Value type: <prop-encoded-array>
126b9df0223SStephen George	Definition: A standard property.  Specifies the physical address
127b9df0223SStephen George	offset and length of the DCSR space registers of the device
128b9df0223SStephen George	configuration block.
129b9df0223SStephen George	The Nexus Port controller occupies two regions in the DCSR space
130b9df0223SStephen George	with distinct functionality.
131b9df0223SStephen George
132b9df0223SStephen George	The first register range describes the Nexus Port Controller
133b9df0223SStephen George	control and status registers.
134b9df0223SStephen George
135b9df0223SStephen George	The second register range describes the Nexus Port Controller
136b9df0223SStephen George	internal trace buffer. The NPC trace buffer is a small memory buffer
137b9df0223SStephen George	which stages the nexus trace data for transmission via the Aurora port
138b9df0223SStephen George	or to a DDR based trace buffer. In some configurations the NPC trace
139b9df0223SStephen George	buffer can be the only trace buffer used.
140b9df0223SStephen George
141b9df0223SStephen George
142b9df0223SStephen GeorgeEXAMPLE
143b9df0223SStephen George		dcsr-npc {
144b9df0223SStephen George			compatible = "fsl,dcsr-npc";
145b9df0223SStephen George			reg = <0x1000 0x1000 0x1000000 0x8000>;
146b9df0223SStephen George		};
147b9df0223SStephen George
148b9df0223SStephen George=======================================================================
149b9df0223SStephen GeorgeNexus Concentrator
150b9df0223SStephen George
151b9df0223SStephen GeorgeThis node represents the region of DCSR space allocated to the NXC
152b9df0223SStephen George
153b9df0223SStephen GeorgePROPERTIES
154b9df0223SStephen George
155b9df0223SStephen George	- compatible
156b9df0223SStephen George	Usage: required
157b9df0223SStephen George	Value type: <string>
158b9df0223SStephen George	Definition: Must include "fsl,dcsr-nxc"
159b9df0223SStephen George
160b9df0223SStephen George	- reg
161b9df0223SStephen George	Usage: required
162b9df0223SStephen George	Value type: <prop-encoded-array>
163b9df0223SStephen George	Definition: A standard property.  Specifies the physical address
164b9df0223SStephen George	offset and length of the DCSR space registers of the device
165b9df0223SStephen George	configuration block.
166b9df0223SStephen George
167b9df0223SStephen GeorgeEXAMPLE
168b9df0223SStephen George		dcsr-nxc@2000 {
169b9df0223SStephen George			compatible = "fsl,dcsr-nxc";
170b9df0223SStephen George			reg = <0x2000 0x1000>;
171b9df0223SStephen George		};
172b9df0223SStephen George=======================================================================
173b9df0223SStephen GeorgeCoreNet Debug Controller
174b9df0223SStephen George
175b9df0223SStephen GeorgeThis node represents the region of DCSR space allocated to
176b9df0223SStephen Georgethe CoreNet Debug controller.
177b9df0223SStephen George
178b9df0223SStephen GeorgePROPERTIES
179b9df0223SStephen George
180b9df0223SStephen George	- compatible
181b9df0223SStephen George	Usage: required
182b9df0223SStephen George	Value type: <string>
183b9df0223SStephen George	Definition: Must include "fsl,dcsr-corenet"
184b9df0223SStephen George
185b9df0223SStephen George	- reg
186b9df0223SStephen George	Usage: required
187b9df0223SStephen George	Value type: <prop-encoded-array>
188b9df0223SStephen George	Definition: A standard property.  Specifies the physical address
189b9df0223SStephen George	offset and length of the DCSR space registers of the device
190b9df0223SStephen George	configuration block.
191b9df0223SStephen George	The CoreNet Debug controller occupies two regions in the DCSR space
192b9df0223SStephen George	with distinct functionality.
193b9df0223SStephen George
194b9df0223SStephen George	The first register range describes the CoreNet Debug Controller
195b9df0223SStephen George	functionalty to perform transaction and transaction attribute matches.
196b9df0223SStephen George
197b9df0223SStephen George	The second register range describes the CoreNet Debug Controller
198b9df0223SStephen George	functionalty to trigger event notifications and debug traces.
199b9df0223SStephen George
200b9df0223SStephen GeorgeEXAMPLE
201b9df0223SStephen George		dcsr-corenet {
202b9df0223SStephen George			compatible = "fsl,dcsr-corenet";
203b9df0223SStephen George			reg = <0x8000 0x1000 0xB0000 0x1000>;
204b9df0223SStephen George		};
205b9df0223SStephen George
206b9df0223SStephen George=======================================================================
207b9df0223SStephen GeorgeData Path Debug controller
208b9df0223SStephen George
209b9df0223SStephen GeorgeThis node represents the region of DCSR space allocated to
210b9df0223SStephen Georgethe DPAA Debug Controller. This controller controls debug configuration
211b9df0223SStephen Georgefor the QMAN and FMAN blocks.
212b9df0223SStephen George
213b9df0223SStephen GeorgePROPERTIES
214b9df0223SStephen George
215b9df0223SStephen George	- compatible
216b9df0223SStephen George	Usage: required
217b9df0223SStephen George	Value type: <string>
218b9df0223SStephen George	Definition: Must include both an identifier specific to the SoC
219b9df0223SStephen George	or Debug IP of the form "fsl,<soc>-dcsr-dpaa" in addition to the
220b9df0223SStephen George	generic compatible string "fsl,dcsr-dpaa".
221b9df0223SStephen George
222b9df0223SStephen George	- reg
223b9df0223SStephen George	Usage: required
224b9df0223SStephen George	Value type: <prop-encoded-array>
225b9df0223SStephen George	Definition: A standard property.  Specifies the physical address
226b9df0223SStephen George	offset and length of the DCSR space registers of the device
227b9df0223SStephen George	configuration block.
228b9df0223SStephen George
229b9df0223SStephen GeorgeEXAMPLE
230b9df0223SStephen George		dcsr-dpaa@9000 {
231b9df0223SStephen George			compatible = "fsl,p4080-dcsr-dpaa", "fsl,dcsr-dpaa";
232b9df0223SStephen George			reg = <0x9000 0x1000>;
233b9df0223SStephen George		};
234b9df0223SStephen George
235b9df0223SStephen George=======================================================================
236b9df0223SStephen GeorgeOCeaN Debug controller
237b9df0223SStephen George
238b9df0223SStephen GeorgeThis node represents the region of DCSR space allocated to
239b9df0223SStephen Georgethe OCN Debug Controller.
240b9df0223SStephen George
241b9df0223SStephen GeorgePROPERTIES
242b9df0223SStephen George
243b9df0223SStephen George	- compatible
244b9df0223SStephen George	Usage: required
245b9df0223SStephen George	Value type: <string>
246b9df0223SStephen George	Definition: Must include both an identifier specific to the SoC
247b9df0223SStephen George	or Debug IP of the form "fsl,<soc>-dcsr-ocn" in addition to the
248b9df0223SStephen George	generic compatible string "fsl,dcsr-ocn".
249b9df0223SStephen George
250b9df0223SStephen George	- reg
251b9df0223SStephen George	Usage: required
252b9df0223SStephen George	Value type: <prop-encoded-array>
253b9df0223SStephen George	Definition: A standard property.  Specifies the physical address
254b9df0223SStephen George	offset and length of the DCSR space registers of the device
255b9df0223SStephen George	configuration block.
256b9df0223SStephen George
257b9df0223SStephen GeorgeEXAMPLE
258b9df0223SStephen George		dcsr-ocn@11000 {
259b9df0223SStephen George			compatible = "fsl,p4080-dcsr-ocn", "fsl,dcsr-ocn";
260b9df0223SStephen George			reg = <0x11000 0x1000>;
261b9df0223SStephen George		};
262b9df0223SStephen George
263b9df0223SStephen George=======================================================================
264b9df0223SStephen GeorgeDDR Controller Debug controller
265b9df0223SStephen George
266b9df0223SStephen GeorgeThis node represents the region of DCSR space allocated to
267b9df0223SStephen Georgethe OCN Debug Controller.
268b9df0223SStephen George
269b9df0223SStephen GeorgePROPERTIES
270b9df0223SStephen George
271b9df0223SStephen George	- compatible
272b9df0223SStephen George	Usage: required
273b9df0223SStephen George	Value type: <string>
274b9df0223SStephen George	Definition: Must include "fsl,dcsr-ddr"
275b9df0223SStephen George
276b9df0223SStephen George	- dev-handle
277b9df0223SStephen George	Usage: required
278b9df0223SStephen George	Definition: A phandle to associate this debug node with its
279b9df0223SStephen George	component controller.
280b9df0223SStephen George
281b9df0223SStephen George	- reg
282b9df0223SStephen George	Usage: required
283b9df0223SStephen George	Value type: <prop-encoded-array>
284b9df0223SStephen George	Definition: A standard property.  Specifies the physical address
285b9df0223SStephen George	offset and length of the DCSR space registers of the device
286b9df0223SStephen George	configuration block.
287b9df0223SStephen George
288b9df0223SStephen GeorgeEXAMPLE
289b9df0223SStephen George		dcsr-ddr@12000 {
290b9df0223SStephen George			compatible = "fsl,dcsr-ddr";
291b9df0223SStephen George			dev-handle = <&ddr1>;
292b9df0223SStephen George			reg = <0x12000 0x1000>;
293b9df0223SStephen George		};
294b9df0223SStephen George
295b9df0223SStephen George=======================================================================
296b9df0223SStephen GeorgeNexus Aurora Link Controller
297b9df0223SStephen George
298b9df0223SStephen GeorgeThis node represents the region of DCSR space allocated to
299b9df0223SStephen Georgethe NAL Controller.
300b9df0223SStephen George
301b9df0223SStephen GeorgePROPERTIES
302b9df0223SStephen George
303b9df0223SStephen George	- compatible
304b9df0223SStephen George	Usage: required
305b9df0223SStephen George	Value type: <string>
306b9df0223SStephen George	Definition: Must include both an identifier specific to the SoC
307b9df0223SStephen George	or Debug IP of the form "fsl,<soc>-dcsr-nal" in addition to the
308b9df0223SStephen George	generic compatible string "fsl,dcsr-nal".
309b9df0223SStephen George
310b9df0223SStephen George	- reg
311b9df0223SStephen George	Usage: required
312b9df0223SStephen George	Value type: <prop-encoded-array>
313b9df0223SStephen George	Definition: A standard property.  Specifies the physical address
314b9df0223SStephen George	offset and length of the DCSR space registers of the device
315b9df0223SStephen George	configuration block.
316b9df0223SStephen George
317b9df0223SStephen GeorgeEXAMPLE
318b9df0223SStephen George		dcsr-nal@18000 {
319b9df0223SStephen George			compatible = "fsl,p4080-dcsr-nal", "fsl,dcsr-nal";
320b9df0223SStephen George			reg = <0x18000 0x1000>;
321b9df0223SStephen George		};
322b9df0223SStephen George
323b9df0223SStephen George
324b9df0223SStephen George=======================================================================
325b9df0223SStephen GeorgeRun Control and Power Management
326b9df0223SStephen George
327b9df0223SStephen GeorgeThis node represents the region of DCSR space allocated to
328b9df0223SStephen Georgethe RCPM Debug Controller. This functionlity is limited to the
329b9df0223SStephen Georgecontrol the debug operations of the SoC and cores.
330b9df0223SStephen George
331b9df0223SStephen GeorgePROPERTIES
332b9df0223SStephen George
333b9df0223SStephen George	- compatible
334b9df0223SStephen George	Usage: required
335b9df0223SStephen George	Value type: <string>
336b9df0223SStephen George	Definition: Must include both an identifier specific to the SoC
337b9df0223SStephen George	or Debug IP of the form "fsl,<soc>-dcsr-rcpm" in addition to the
338b9df0223SStephen George	generic compatible string "fsl,dcsr-rcpm".
339b9df0223SStephen George
340b9df0223SStephen George	- reg
341b9df0223SStephen George	Usage: required
342b9df0223SStephen George	Value type: <prop-encoded-array>
343b9df0223SStephen George	Definition: A standard property.  Specifies the physical address
344b9df0223SStephen George	offset and length of the DCSR space registers of the device
345b9df0223SStephen George	configuration block.
346b9df0223SStephen George
347b9df0223SStephen GeorgeEXAMPLE
348b9df0223SStephen George		dcsr-rcpm@22000 {
349b9df0223SStephen George			compatible = "fsl,p4080-dcsr-rcpm", "fsl,dcsr-rcpm";
350b9df0223SStephen George			reg = <0x22000 0x1000>;
351b9df0223SStephen George		};
352b9df0223SStephen George
353b9df0223SStephen George=======================================================================
354b9df0223SStephen GeorgeCore Service Bridge Proxy
355b9df0223SStephen George
356b9df0223SStephen GeorgeThis node represents the region of DCSR space allocated to
357b9df0223SStephen Georgethe Core Service Bridge Proxies.
358b9df0223SStephen GeorgeThere is one Core Service Bridge Proxy device for each CPU in the system.
359b9df0223SStephen GeorgeThis functionlity provides access to the debug operations of the CPU.
360b9df0223SStephen George
361b9df0223SStephen GeorgePROPERTIES
362b9df0223SStephen George
363b9df0223SStephen George	- compatible
364b9df0223SStephen George	Usage: required
365b9df0223SStephen George	Value type: <string>
366b9df0223SStephen George	Definition: Must include both an identifier specific to the cpu
367b9df0223SStephen George	of the form "fsl,dcsr-<cpu>-sb-proxy" in addition to the
368b9df0223SStephen George	generic compatible string "fsl,dcsr-cpu-sb-proxy".
369b9df0223SStephen George
370b9df0223SStephen George	- cpu-handle
371b9df0223SStephen George	Usage: required
372b9df0223SStephen George	Definition: A phandle to associate this debug node with its cpu.
373b9df0223SStephen George
374b9df0223SStephen George	- reg
375b9df0223SStephen George	Usage: required
376b9df0223SStephen George	Value type: <prop-encoded-array>
377b9df0223SStephen George	Definition: A standard property.  Specifies the physical address
378b9df0223SStephen George	offset and length of the DCSR space registers of the device
379b9df0223SStephen George	configuration block.
380b9df0223SStephen George
381b9df0223SStephen GeorgeEXAMPLE
382b9df0223SStephen George		dcsr-cpu-sb-proxy@40000 {
383b9df0223SStephen George			compatible = "fsl,dcsr-e500mc-sb-proxy",
384b9df0223SStephen George				     "fsl,dcsr-cpu-sb-proxy";
385b9df0223SStephen George			cpu-handle = <&cpu0>;
386b9df0223SStephen George			reg = <0x40000 0x1000>;
387b9df0223SStephen George		};
388b9df0223SStephen George		dcsr-cpu-sb-proxy@41000 {
389b9df0223SStephen George			compatible = "fsl,dcsr-e500mc-sb-proxy",
390b9df0223SStephen George				     "fsl,dcsr-cpu-sb-proxy";
391b9df0223SStephen George			cpu-handle = <&cpu1>;
392b9df0223SStephen George			reg = <0x41000 0x1000>;
393b9df0223SStephen George		};
394b9df0223SStephen George
395b9df0223SStephen George=======================================================================
396