xref: /openbmc/linux/Documentation/devicetree/bindings/powerpc/fsl/dcsr.txt (revision c900529f3d9161bfde5cca0754f83b4d3c3e0220)
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
85c98be0c9SCarlos Garcia	Interrupt numbers are listed in order (perfmon, event0, event1).
86b9df0223SStephen George
87b9df0223SStephen George	- reg
88b9df0223SStephen George	Usage: required
89b9df0223SStephen George	Value type: <prop-encoded-array>
90b9df0223SStephen George	Definition: A standard property.  Specifies the physical address
91b9df0223SStephen George	offset and length of the DCSR space registers of the device
92b9df0223SStephen George	configuration block.
93b9df0223SStephen George
94b9df0223SStephen GeorgeEXAMPLE
95b9df0223SStephen George	dcsr-epu@0 {
96b9df0223SStephen George		compatible = "fsl,dcsr-epu";
97b9df0223SStephen George		interrupts = <52 2 0 0
98b9df0223SStephen George			      84 2 0 0
99b9df0223SStephen George			      85 2 0 0>;
100b9df0223SStephen George		interrupt-parent = <&mpic>;
101b9df0223SStephen George		reg = <0x0 0x1000>;
102b9df0223SStephen George	};
103b9df0223SStephen George
104b9df0223SStephen George=======================================================================
105b9df0223SStephen GeorgeNexus Port Controller
106b9df0223SStephen George
107b9df0223SStephen GeorgeThis node represents the region of DCSR space allocated to the NPC
108b9df0223SStephen George
109b9df0223SStephen GeorgePROPERTIES
110b9df0223SStephen George
111b9df0223SStephen George	- compatible
112b9df0223SStephen George	Usage: required
113b9df0223SStephen George	Value type: <string>
114b9df0223SStephen George	Definition: Must include "fsl,dcsr-npc"
115b9df0223SStephen George
116b9df0223SStephen George	- reg
117b9df0223SStephen George	Usage: required
118b9df0223SStephen George	Value type: <prop-encoded-array>
119b9df0223SStephen George	Definition: A standard property.  Specifies the physical address
120b9df0223SStephen George	offset and length of the DCSR space registers of the device
121b9df0223SStephen George	configuration block.
122b9df0223SStephen George	The Nexus Port controller occupies two regions in the DCSR space
123b9df0223SStephen George	with distinct functionality.
124b9df0223SStephen George
125b9df0223SStephen George	The first register range describes the Nexus Port Controller
126b9df0223SStephen George	control and status registers.
127b9df0223SStephen George
128b9df0223SStephen George	The second register range describes the Nexus Port Controller
129b9df0223SStephen George	internal trace buffer. The NPC trace buffer is a small memory buffer
130b9df0223SStephen George	which stages the nexus trace data for transmission via the Aurora port
131b9df0223SStephen George	or to a DDR based trace buffer. In some configurations the NPC trace
132b9df0223SStephen George	buffer can be the only trace buffer used.
133b9df0223SStephen George
134b9df0223SStephen George
135b9df0223SStephen GeorgeEXAMPLE
136b9df0223SStephen George		dcsr-npc {
137b9df0223SStephen George			compatible = "fsl,dcsr-npc";
138b9df0223SStephen George			reg = <0x1000 0x1000 0x1000000 0x8000>;
139b9df0223SStephen George		};
140b9df0223SStephen George
141b9df0223SStephen George=======================================================================
142b9df0223SStephen GeorgeNexus Concentrator
143b9df0223SStephen George
144b9df0223SStephen GeorgeThis node represents the region of DCSR space allocated to the NXC
145b9df0223SStephen George
146b9df0223SStephen GeorgePROPERTIES
147b9df0223SStephen George
148b9df0223SStephen George	- compatible
149b9df0223SStephen George	Usage: required
150b9df0223SStephen George	Value type: <string>
151b9df0223SStephen George	Definition: Must include "fsl,dcsr-nxc"
152b9df0223SStephen George
153b9df0223SStephen George	- reg
154b9df0223SStephen George	Usage: required
155b9df0223SStephen George	Value type: <prop-encoded-array>
156b9df0223SStephen George	Definition: A standard property.  Specifies the physical address
157b9df0223SStephen George	offset and length of the DCSR space registers of the device
158b9df0223SStephen George	configuration block.
159b9df0223SStephen George
160b9df0223SStephen GeorgeEXAMPLE
161b9df0223SStephen George		dcsr-nxc@2000 {
162b9df0223SStephen George			compatible = "fsl,dcsr-nxc";
163b9df0223SStephen George			reg = <0x2000 0x1000>;
164b9df0223SStephen George		};
165b9df0223SStephen George=======================================================================
166b9df0223SStephen GeorgeCoreNet Debug Controller
167b9df0223SStephen George
168b9df0223SStephen GeorgeThis node represents the region of DCSR space allocated to
169b9df0223SStephen Georgethe CoreNet Debug controller.
170b9df0223SStephen George
171b9df0223SStephen GeorgePROPERTIES
172b9df0223SStephen George
173b9df0223SStephen George	- compatible
174b9df0223SStephen George	Usage: required
175b9df0223SStephen George	Value type: <string>
176b9df0223SStephen George	Definition: Must include "fsl,dcsr-corenet"
177b9df0223SStephen George
178b9df0223SStephen George	- reg
179b9df0223SStephen George	Usage: required
180b9df0223SStephen George	Value type: <prop-encoded-array>
181b9df0223SStephen George	Definition: A standard property.  Specifies the physical address
182b9df0223SStephen George	offset and length of the DCSR space registers of the device
183b9df0223SStephen George	configuration block.
184b9df0223SStephen George	The CoreNet Debug controller occupies two regions in the DCSR space
185b9df0223SStephen George	with distinct functionality.
186b9df0223SStephen George
187b9df0223SStephen George	The first register range describes the CoreNet Debug Controller
188*47aab533SBjorn Helgaas	functionality to perform transaction and transaction attribute matches.
189b9df0223SStephen George
190b9df0223SStephen George	The second register range describes the CoreNet Debug Controller
191*47aab533SBjorn Helgaas	functionality to trigger event notifications and debug traces.
192b9df0223SStephen George
193b9df0223SStephen GeorgeEXAMPLE
194b9df0223SStephen George		dcsr-corenet {
195b9df0223SStephen George			compatible = "fsl,dcsr-corenet";
196b9df0223SStephen George			reg = <0x8000 0x1000 0xB0000 0x1000>;
197b9df0223SStephen George		};
198b9df0223SStephen George
199b9df0223SStephen George=======================================================================
200b9df0223SStephen GeorgeData Path Debug controller
201b9df0223SStephen George
202b9df0223SStephen GeorgeThis node represents the region of DCSR space allocated to
203b9df0223SStephen Georgethe DPAA Debug Controller. This controller controls debug configuration
204b9df0223SStephen Georgefor the QMAN and FMAN blocks.
205b9df0223SStephen George
206b9df0223SStephen GeorgePROPERTIES
207b9df0223SStephen George
208b9df0223SStephen George	- compatible
209b9df0223SStephen George	Usage: required
210b9df0223SStephen George	Value type: <string>
211b9df0223SStephen George	Definition: Must include both an identifier specific to the SoC
212b9df0223SStephen George	or Debug IP of the form "fsl,<soc>-dcsr-dpaa" in addition to the
213b9df0223SStephen George	generic compatible string "fsl,dcsr-dpaa".
214b9df0223SStephen George
215b9df0223SStephen George	- reg
216b9df0223SStephen George	Usage: required
217b9df0223SStephen George	Value type: <prop-encoded-array>
218b9df0223SStephen George	Definition: A standard property.  Specifies the physical address
219b9df0223SStephen George	offset and length of the DCSR space registers of the device
220b9df0223SStephen George	configuration block.
221b9df0223SStephen George
222b9df0223SStephen GeorgeEXAMPLE
223b9df0223SStephen George		dcsr-dpaa@9000 {
224b9df0223SStephen George			compatible = "fsl,p4080-dcsr-dpaa", "fsl,dcsr-dpaa";
225b9df0223SStephen George			reg = <0x9000 0x1000>;
226b9df0223SStephen George		};
227b9df0223SStephen George
228b9df0223SStephen George=======================================================================
229b9df0223SStephen GeorgeOCeaN Debug controller
230b9df0223SStephen George
231b9df0223SStephen GeorgeThis node represents the region of DCSR space allocated to
232b9df0223SStephen Georgethe OCN Debug Controller.
233b9df0223SStephen George
234b9df0223SStephen GeorgePROPERTIES
235b9df0223SStephen George
236b9df0223SStephen George	- compatible
237b9df0223SStephen George	Usage: required
238b9df0223SStephen George	Value type: <string>
239b9df0223SStephen George	Definition: Must include both an identifier specific to the SoC
240b9df0223SStephen George	or Debug IP of the form "fsl,<soc>-dcsr-ocn" in addition to the
241b9df0223SStephen George	generic compatible string "fsl,dcsr-ocn".
242b9df0223SStephen George
243b9df0223SStephen George	- reg
244b9df0223SStephen George	Usage: required
245b9df0223SStephen George	Value type: <prop-encoded-array>
246b9df0223SStephen George	Definition: A standard property.  Specifies the physical address
247b9df0223SStephen George	offset and length of the DCSR space registers of the device
248b9df0223SStephen George	configuration block.
249b9df0223SStephen George
250b9df0223SStephen GeorgeEXAMPLE
251b9df0223SStephen George		dcsr-ocn@11000 {
252b9df0223SStephen George			compatible = "fsl,p4080-dcsr-ocn", "fsl,dcsr-ocn";
253b9df0223SStephen George			reg = <0x11000 0x1000>;
254b9df0223SStephen George		};
255b9df0223SStephen George
256b9df0223SStephen George=======================================================================
257b9df0223SStephen GeorgeDDR Controller Debug controller
258b9df0223SStephen George
259b9df0223SStephen GeorgeThis node represents the region of DCSR space allocated to
260b9df0223SStephen Georgethe OCN Debug Controller.
261b9df0223SStephen George
262b9df0223SStephen GeorgePROPERTIES
263b9df0223SStephen George
264b9df0223SStephen George	- compatible
265b9df0223SStephen George	Usage: required
266b9df0223SStephen George	Value type: <string>
267b9df0223SStephen George	Definition: Must include "fsl,dcsr-ddr"
268b9df0223SStephen George
269b9df0223SStephen George	- dev-handle
270b9df0223SStephen George	Usage: required
271b9df0223SStephen George	Definition: A phandle to associate this debug node with its
272b9df0223SStephen George	component controller.
273b9df0223SStephen George
274b9df0223SStephen George	- reg
275b9df0223SStephen George	Usage: required
276b9df0223SStephen George	Value type: <prop-encoded-array>
277b9df0223SStephen George	Definition: A standard property.  Specifies the physical address
278b9df0223SStephen George	offset and length of the DCSR space registers of the device
279b9df0223SStephen George	configuration block.
280b9df0223SStephen George
281b9df0223SStephen GeorgeEXAMPLE
282b9df0223SStephen George		dcsr-ddr@12000 {
283b9df0223SStephen George			compatible = "fsl,dcsr-ddr";
284b9df0223SStephen George			dev-handle = <&ddr1>;
285b9df0223SStephen George			reg = <0x12000 0x1000>;
286b9df0223SStephen George		};
287b9df0223SStephen George
288b9df0223SStephen George=======================================================================
289b9df0223SStephen GeorgeNexus Aurora Link Controller
290b9df0223SStephen George
291b9df0223SStephen GeorgeThis node represents the region of DCSR space allocated to
292b9df0223SStephen Georgethe NAL Controller.
293b9df0223SStephen George
294b9df0223SStephen GeorgePROPERTIES
295b9df0223SStephen George
296b9df0223SStephen George	- compatible
297b9df0223SStephen George	Usage: required
298b9df0223SStephen George	Value type: <string>
299b9df0223SStephen George	Definition: Must include both an identifier specific to the SoC
300b9df0223SStephen George	or Debug IP of the form "fsl,<soc>-dcsr-nal" in addition to the
301b9df0223SStephen George	generic compatible string "fsl,dcsr-nal".
302b9df0223SStephen George
303b9df0223SStephen George	- reg
304b9df0223SStephen George	Usage: required
305b9df0223SStephen George	Value type: <prop-encoded-array>
306b9df0223SStephen George	Definition: A standard property.  Specifies the physical address
307b9df0223SStephen George	offset and length of the DCSR space registers of the device
308b9df0223SStephen George	configuration block.
309b9df0223SStephen George
310b9df0223SStephen GeorgeEXAMPLE
311b9df0223SStephen George		dcsr-nal@18000 {
312b9df0223SStephen George			compatible = "fsl,p4080-dcsr-nal", "fsl,dcsr-nal";
313b9df0223SStephen George			reg = <0x18000 0x1000>;
314b9df0223SStephen George		};
315b9df0223SStephen George
316b9df0223SStephen George
317b9df0223SStephen George=======================================================================
318b9df0223SStephen GeorgeRun Control and Power Management
319b9df0223SStephen George
320b9df0223SStephen GeorgeThis node represents the region of DCSR space allocated to
321b9df0223SStephen Georgethe RCPM Debug Controller. This functionlity is limited to the
322b9df0223SStephen Georgecontrol the debug operations of the SoC and cores.
323b9df0223SStephen George
324b9df0223SStephen GeorgePROPERTIES
325b9df0223SStephen George
326b9df0223SStephen George	- compatible
327b9df0223SStephen George	Usage: required
328b9df0223SStephen George	Value type: <string>
329b9df0223SStephen George	Definition: Must include both an identifier specific to the SoC
330b9df0223SStephen George	or Debug IP of the form "fsl,<soc>-dcsr-rcpm" in addition to the
331b9df0223SStephen George	generic compatible string "fsl,dcsr-rcpm".
332b9df0223SStephen George
333b9df0223SStephen George	- reg
334b9df0223SStephen George	Usage: required
335b9df0223SStephen George	Value type: <prop-encoded-array>
336b9df0223SStephen George	Definition: A standard property.  Specifies the physical address
337b9df0223SStephen George	offset and length of the DCSR space registers of the device
338b9df0223SStephen George	configuration block.
339b9df0223SStephen George
340b9df0223SStephen GeorgeEXAMPLE
341b9df0223SStephen George		dcsr-rcpm@22000 {
342b9df0223SStephen George			compatible = "fsl,p4080-dcsr-rcpm", "fsl,dcsr-rcpm";
343b9df0223SStephen George			reg = <0x22000 0x1000>;
344b9df0223SStephen George		};
345b9df0223SStephen George
346b9df0223SStephen George=======================================================================
347b9df0223SStephen GeorgeCore Service Bridge Proxy
348b9df0223SStephen George
349b9df0223SStephen GeorgeThis node represents the region of DCSR space allocated to
350b9df0223SStephen Georgethe Core Service Bridge Proxies.
351b9df0223SStephen GeorgeThere is one Core Service Bridge Proxy device for each CPU in the system.
352b9df0223SStephen GeorgeThis functionlity provides access to the debug operations of the CPU.
353b9df0223SStephen George
354b9df0223SStephen GeorgePROPERTIES
355b9df0223SStephen George
356b9df0223SStephen George	- compatible
357b9df0223SStephen George	Usage: required
358b9df0223SStephen George	Value type: <string>
359b9df0223SStephen George	Definition: Must include both an identifier specific to the cpu
360b9df0223SStephen George	of the form "fsl,dcsr-<cpu>-sb-proxy" in addition to the
361b9df0223SStephen George	generic compatible string "fsl,dcsr-cpu-sb-proxy".
362b9df0223SStephen George
363b9df0223SStephen George	- cpu-handle
364b9df0223SStephen George	Usage: required
365b9df0223SStephen George	Definition: A phandle to associate this debug node with its cpu.
366b9df0223SStephen George
367b9df0223SStephen George	- reg
368b9df0223SStephen George	Usage: required
369b9df0223SStephen George	Value type: <prop-encoded-array>
370b9df0223SStephen George	Definition: A standard property.  Specifies the physical address
371b9df0223SStephen George	offset and length of the DCSR space registers of the device
372b9df0223SStephen George	configuration block.
373b9df0223SStephen George
374b9df0223SStephen GeorgeEXAMPLE
375b9df0223SStephen George		dcsr-cpu-sb-proxy@40000 {
376b9df0223SStephen George			compatible = "fsl,dcsr-e500mc-sb-proxy",
377b9df0223SStephen George				     "fsl,dcsr-cpu-sb-proxy";
378b9df0223SStephen George			cpu-handle = <&cpu0>;
379b9df0223SStephen George			reg = <0x40000 0x1000>;
380b9df0223SStephen George		};
381b9df0223SStephen George		dcsr-cpu-sb-proxy@41000 {
382b9df0223SStephen George			compatible = "fsl,dcsr-e500mc-sb-proxy",
383b9df0223SStephen George				     "fsl,dcsr-cpu-sb-proxy";
384b9df0223SStephen George			cpu-handle = <&cpu1>;
385b9df0223SStephen George			reg = <0x41000 0x1000>;
386b9df0223SStephen George		};
387b9df0223SStephen George
388b9df0223SStephen George=======================================================================
389