Skip to content

Commit 46b4dd0

Browse files
author
Alex Shi
committed
Merge branch 'v4.4/topic/coresight' into linux-linaro-lsk-v4.4
2 parents c66b219 + 09e1b6f commit 46b4dd0

46 files changed

Lines changed: 4150 additions & 63 deletions

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

MAINTAINERS

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1007,6 +1007,10 @@ F: drivers/hwtracing/coresight/*
10071007
F: Documentation/trace/coresight.txt
10081008
F: Documentation/devicetree/bindings/arm/coresight.txt
10091009
F: Documentation/ABI/testing/sysfs-bus-coresight-devices-*
1010+
F: tools/perf/arch/arm/util/pmu.c
1011+
F: tools/perf/arch/arm/util/auxtrace.c
1012+
F: tools/perf/arch/arm/util/cs_etm.c
1013+
F: tools/perf/arch/arm/util/cs_etm.h
10101014

10111015
ARM/CORGI MACHINE SUPPORT
10121016
M: Richard Purdie <rpurdie@rpsys.net>

arch/arm64/boot/dts/arm/juno.dts

Lines changed: 305 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -143,5 +143,310 @@
143143
<&A53_3>;
144144
};
145145

146+
etr@20070000 {
147+
compatible = "arm,coresight-tmc", "arm,primecell";
148+
reg = <0 0x20070000 0 0x1000>;
149+
150+
clocks = <&soc_smc50mhz>;
151+
clock-names = "apb_pclk";
152+
port {
153+
etr_in_port: endpoint {
154+
slave-mode;
155+
remote-endpoint = <&replicator_out_port1>;
156+
};
157+
};
158+
};
159+
160+
tpiu@20030000 {
161+
compatible = "arm,coresight-tpiu", "arm,primecell";
162+
reg = <0 0x20030000 0 0x1000>;
163+
164+
clocks = <&soc_smc50mhz>;
165+
clock-names = "apb_pclk";
166+
port {
167+
tpiu_in_port: endpoint {
168+
slave-mode;
169+
remote-endpoint = <&replicator_out_port0>;
170+
};
171+
};
172+
};
173+
174+
replicator@20020000 {
175+
/* non-configurable replicators don't show up on the
176+
* AMBA bus. As such no need to add "arm,primecell".
177+
*/
178+
compatible = "arm,coresight-replicator";
179+
180+
ports {
181+
#address-cells = <1>;
182+
#size-cells = <0>;
183+
184+
/* replicator output ports */
185+
port@0 {
186+
reg = <0>;
187+
replicator_out_port0: endpoint {
188+
remote-endpoint = <&tpiu_in_port>;
189+
};
190+
};
191+
192+
port@1 {
193+
reg = <1>;
194+
replicator_out_port1: endpoint {
195+
remote-endpoint = <&etr_in_port>;
196+
};
197+
};
198+
199+
/* replicator input port */
200+
port@2 {
201+
reg = <0>;
202+
replicator_in_port0: endpoint {
203+
slave-mode;
204+
remote-endpoint = <&etf_out_port>;
205+
};
206+
};
207+
};
208+
};
209+
210+
etf@20010000 {
211+
compatible = "arm,coresight-tmc", "arm,primecell";
212+
reg = <0 0x20010000 0 0x1000>;
213+
214+
clocks = <&soc_smc50mhz>;
215+
clock-names = "apb_pclk";
216+
ports {
217+
#address-cells = <1>;
218+
#size-cells = <0>;
219+
220+
/* input port */
221+
port@0 {
222+
reg = <0>;
223+
etf_in_port: endpoint {
224+
slave-mode;
225+
remote-endpoint =
226+
<&main_funnel_out_port>;
227+
};
228+
};
229+
230+
/* output port */
231+
port@1 {
232+
reg = <0>;
233+
etf_out_port: endpoint {
234+
remote-endpoint =
235+
<&replicator_in_port0>;
236+
};
237+
};
238+
};
239+
};
240+
241+
main_funnel@20040000 {
242+
compatible = "arm,coresight-funnel", "arm,primecell";
243+
reg = <0 0x20040000 0 0x1000>;
244+
245+
clocks = <&soc_smc50mhz>;
246+
clock-names = "apb_pclk";
247+
ports {
248+
#address-cells = <1>;
249+
#size-cells = <0>;
250+
251+
port@0 {
252+
reg = <0>;
253+
main_funnel_out_port: endpoint {
254+
remote-endpoint =
255+
<&etf_in_port>;
256+
};
257+
};
258+
259+
port@1 {
260+
reg = <0>;
261+
main_funnel_in_port0: endpoint {
262+
slave-mode;
263+
remote-endpoint =
264+
<&A72_57_funnel_out_port>;
265+
};
266+
};
267+
268+
port@2 {
269+
reg = <1>;
270+
main_funnel_in_port1: endpoint {
271+
slave-mode;
272+
remote-endpoint = <&A53_funnel_out_port>;
273+
};
274+
};
275+
276+
};
277+
};
278+
279+
A72_57_funnel@220c0000 {
280+
compatible = "arm,coresight-funnel", "arm,primecell";
281+
reg = <0 0x220c0000 0 0x1000>;
282+
283+
clocks = <&soc_smc50mhz>;
284+
clock-names = "apb_pclk";
285+
ports {
286+
#address-cells = <1>;
287+
#size-cells = <0>;
288+
289+
port@0 {
290+
reg = <0>;
291+
A72_57_funnel_out_port: endpoint {
292+
remote-endpoint =
293+
<&main_funnel_in_port0>;
294+
};
295+
};
296+
297+
port@1 {
298+
reg = <0>;
299+
A72_57_funnel_in_port0: endpoint {
300+
slave-mode;
301+
remote-endpoint =
302+
<&A72_57_etm0_out_port>;
303+
};
304+
};
305+
306+
port@2 {
307+
reg = <1>;
308+
A72_57_funnel_in_port1: endpoint {
309+
slave-mode;
310+
remote-endpoint =
311+
<&A72_57_etm1_out_port>;
312+
};
313+
};
314+
};
315+
};
316+
317+
A53_funnel@220c0000 {
318+
compatible = "arm,coresight-funnel", "arm,primecell";
319+
reg = <0 0x230c0000 0 0x1000>;
320+
321+
clocks = <&soc_smc50mhz>;
322+
clock-names = "apb_pclk";
323+
ports {
324+
#address-cells = <1>;
325+
#size-cells = <0>;
326+
327+
port@0 {
328+
reg = <0>;
329+
A53_funnel_out_port: endpoint {
330+
remote-endpoint =
331+
<&main_funnel_in_port1>;
332+
};
333+
};
334+
335+
port@1 {
336+
reg = <0>;
337+
A53_funnel_in_port0: endpoint {
338+
slave-mode;
339+
remote-endpoint = <&A53_etm0_out_port>;
340+
};
341+
};
342+
343+
port@2 {
344+
reg = <1>;
345+
A53_funnel_in_port1: endpoint {
346+
slave-mode;
347+
remote-endpoint = <&A53_etm1_out_port>;
348+
};
349+
};
350+
port@3 {
351+
reg = <2>;
352+
A53_funnel_in_port2: endpoint {
353+
slave-mode;
354+
remote-endpoint = <&A53_etm2_out_port>;
355+
};
356+
};
357+
port@4 {
358+
reg = <3>;
359+
A53_funnel_in_port3: endpoint {
360+
slave-mode;
361+
remote-endpoint = <&A53_etm3_out_port>;
362+
};
363+
};
364+
};
365+
};
366+
367+
etm@22040000 {
368+
compatible = "arm,coresight-etm4x", "arm,primecell";
369+
reg = <0 0x22040000 0 0x1000>;
370+
371+
cpu = <&A57_0>;
372+
clocks = <&soc_smc50mhz>;
373+
clock-names = "apb_pclk";
374+
port {
375+
A72_57_etm0_out_port: endpoint {
376+
remote-endpoint = <&A72_57_funnel_in_port0>;
377+
};
378+
};
379+
};
380+
381+
etm@22140000 {
382+
compatible = "arm,coresight-etm4x", "arm,primecell";
383+
reg = <0 0x22140000 0 0x1000>;
384+
385+
cpu = <&A57_1>;
386+
clocks = <&soc_smc50mhz>;
387+
clock-names = "apb_pclk";
388+
port {
389+
A72_57_etm1_out_port: endpoint {
390+
remote-endpoint = <&A72_57_funnel_in_port1>;
391+
};
392+
};
393+
};
394+
395+
etm@23040000 {
396+
compatible = "arm,coresight-etm4x", "arm,primecell";
397+
reg = <0 0x23040000 0 0x1000>;
398+
399+
cpu = <&A53_0>;
400+
clocks = <&soc_smc50mhz>;
401+
clock-names = "apb_pclk";
402+
port {
403+
A53_etm0_out_port: endpoint {
404+
remote-endpoint = <&A53_funnel_in_port0>;
405+
};
406+
};
407+
};
408+
409+
etm@23140000 {
410+
compatible = "arm,coresight-etm4x", "arm,primecell";
411+
reg = <0 0x23140000 0 0x1000>;
412+
413+
cpu = <&A53_1>;
414+
clocks = <&soc_smc50mhz>;
415+
clock-names = "apb_pclk";
416+
port {
417+
A53_etm1_out_port: endpoint {
418+
remote-endpoint = <&A53_funnel_in_port1>;
419+
};
420+
};
421+
};
422+
423+
etm@23240000 {
424+
compatible = "arm,coresight-etm4x", "arm,primecell";
425+
reg = <0 0x23240000 0 0x1000>;
426+
427+
cpu = <&A53_2>;
428+
clocks = <&soc_smc50mhz>;
429+
clock-names = "apb_pclk";
430+
port {
431+
A53_etm2_out_port: endpoint {
432+
remote-endpoint = <&A53_funnel_in_port2>;
433+
};
434+
};
435+
};
436+
437+
etm@23340000 {
438+
compatible = "arm,coresight-etm4x", "arm,primecell";
439+
reg = <0 0x23340000 0 0x1000>;
440+
441+
cpu = <&A53_3>;
442+
clocks = <&soc_smc50mhz>;
443+
clock-names = "apb_pclk";
444+
port {
445+
A53_etm3_out_port: endpoint {
446+
remote-endpoint = <&A53_funnel_in_port3>;
447+
};
448+
};
449+
};
450+
146451
#include "juno-base.dtsi"
147452
};

0 commit comments

Comments
 (0)