Skip to content

Commit 467c0eb

Browse files
committed
conf/evalsoc: fix pmu event mappings to match corrected nmsis_bench.h
Align the riscv,pmu node event-to-mhpmevent and raw-event-to-mhpmcounters mappings with the corrected performance monitor event definitions in NMSIS nmsis_bench.h (see nuclei-sdk commit da74dcb): - Move ICACHE_PREFETCH_MISS from incorrect Type 3 idx 9 (sel=3, 0x93) to correct Type 1 idx 6 (sel=1, 0x61) per ISA manual errata. - Fix scrambled raw event comments for Event Types 2/3 and add the missing Type 0 idx 0 (Dcache read) / Type 3 idx 25 (BTB write miss) raw event entries so the table matches the actual event encoding. - Add VPU commit events (Type 2, idx 4-7): total/load/store/ computational instruction commit counts (0x42/0x52/0x62/0x72). Signed-off-by: Huaqi Fang <578567190@qq.com> (cherry picked from commit 7d6b139)
1 parent 639d433 commit 467c0eb

4 files changed

Lines changed: 160 additions & 136 deletions

File tree

conf/evalsoc/nuclei_rv32imac.dts

Lines changed: 40 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -260,8 +260,8 @@
260260
<0x10009 0x00000000 0x00000011>,
261261
/* Type #1 SBI_PMU_HW_CACHE_L1I(1) PREFETCH(2) ACCESS(0) -> v2, Nuclei event sel=3 idx=8 Icache prefetch count */
262262
<0x1000C 0x00000000 0x00000083>,
263-
/* Type #1 SBI_PMU_HW_CACHE_L1I(1) PREFETCH(2) MISS(1) -> v2, Nuclei event sel=3 idx=9 Icache prefetch miss count */
264-
<0x1000D 0x00000000 0x00000093>,
263+
/* Type #1 SBI_PMU_HW_CACHE_L1I(1) PREFETCH(2) MISS(1) -> v2, Nuclei event sel=1 idx=6 Icache prefetch miss count */
264+
<0x1000D 0x00000000 0x00000061>,
265265
/* Type #1 SBI_PMU_HW_CACHE_LL(2) READ(0) ACCESS(0) -> v2, Nuclei event sel=3 idx=10 L2 Cache read count */
266266
<0x10010 0x00000000 0x000000A3>,
267267
/* Type #1 SBI_PMU_HW_CACHE_LL(2) READ(0) MISS(1) -> v2, Nuclei event sel=3 idx=11 L2 Cache read miss count */
@@ -384,7 +384,7 @@
384384
<0x00000000 0x00000041 0xffffffff 0xffffffff 0x00000078>,
385385
/* Event Types 1 events - 0x5 Main TLB miss count */
386386
<0x00000000 0x00000051 0xffffffff 0xffffffff 0x00000078>,
387-
/* Event Types 1 events - 0x6 Reserved */
387+
/* Event Types 1 events - 0x6 Icache prefetch miss count */
388388
<0x00000000 0x00000061 0xffffffff 0xffffffff 0x00000078>,
389389
/* Event Types 1 events - 0x7 Reserved */
390390
<0x00000000 0x00000071 0xffffffff 0xffffffff 0x00000078>,
@@ -400,64 +400,70 @@
400400
<0x00000000 0x000000c1 0xffffffff 0xffffffff 0x00000078>,
401401
/* Event Types 1 events - 0xd Timer count */
402402
<0x00000000 0x000000d1 0xffffffff 0xffffffff 0x00000078>,
403-
/* Event Types 2 events - 0x1 VPU store instruction commit count */
404-
<0x00000000 0x00000012 0xffffffff 0xffffffff 0x00000078>,
405-
/* Event Types 2 events - 0x2 Reserved */
403+
/* Event Types 2 events - 0x2 Branch instruction commit count */
406404
<0x00000000 0x00000022 0xffffffff 0xffffffff 0x00000078>,
407-
/* Event Types 2 events - 0x3 VPU load instruction commit count */
405+
/* Event Types 2 events - 0x3 Branch predict fail count */
408406
<0x00000000 0x00000032 0xffffffff 0xffffffff 0x00000078>,
409-
/* Event Types 2 events - 0x4 VPU computational instruction commit count */
407+
/* Event Types 2 events - 0x4 VPU total instruction commit count */
410408
<0x00000000 0x00000042 0xffffffff 0xffffffff 0x00000078>,
411-
/* Event Types 2 events - 0x5 Branch predict fail count */
409+
/* Event Types 2 events - 0x5 VPU load instruction commit count */
412410
<0x00000000 0x00000052 0xffffffff 0xffffffff 0x00000078>,
413-
/* Event Types 3 events - 0x1 Icache read count */
411+
/* Event Types 2 events - 0x6 VPU store instruction commit count */
412+
<0x00000000 0x00000062 0xffffffff 0xffffffff 0x00000078>,
413+
/* Event Types 2 events - 0x7 VPU computational instruction commit count */
414+
<0x00000000 0x00000072 0xffffffff 0xffffffff 0x00000078>,
415+
/* Event Types 3 events - 0x0 Dcache read count */
416+
<0x00000000 0x00000003 0xffffffff 0xffffffff 0x00000078>,
417+
/* Event Types 3 events - 0x1 Dcache read miss count */
414418
<0x00000000 0x00000013 0xffffffff 0xffffffff 0x00000078>,
415-
/* Event Types 3 events - 0x2 L2-Cache read hit count */
419+
/* Event Types 3 events - 0x2 Dcache write count */
416420
<0x00000000 0x00000023 0xffffffff 0xffffffff 0x00000078>,
417-
/* Event Types 3 events - 0x3 DTLB write count */
421+
/* Event Types 3 events - 0x3 Dcache write miss count */
418422
<0x00000000 0x00000033 0xffffffff 0xffffffff 0x00000078>,
419-
/* Event Types 3 events - 0x4 L2-Cache write miss count */
423+
/* Event Types 3 events - 0x4 Dcache prefetch count */
420424
<0x00000000 0x00000043 0xffffffff 0xffffffff 0x00000078>,
421-
/* Event Types 3 events - 0x5 Reserved */
425+
/* Event Types 3 events - 0x5 Dcache prefetch miss count */
422426
<0x00000000 0x00000053 0xffffffff 0xffffffff 0x00000078>,
423-
/* Event Types 3 events - 0x6 Icache prefetch miss count */
427+
/* Event Types 3 events - 0x6 Icache read count */
424428
<0x00000000 0x00000063 0xffffffff 0xffffffff 0x00000078>,
425-
/* Event Types 3 events - 0x7 BTB write count */
429+
/* Event Types 3 events - 0x7 Reserved */
426430
<0x00000000 0x00000073 0xffffffff 0xffffffff 0x00000078>,
427-
/* Event Types 3 events - 0x8 L2-Cache read miss count */
431+
/* Event Types 3 events - 0x8 Icache prefetch count */
428432
<0x00000000 0x00000083 0xffffffff 0xffffffff 0x00000078>,
429-
/* Event Types 3 events - 0x9 DTLB write miss count */
433+
/* Event Types 3 events - 0x9 Reserved */
430434
<0x00000000 0x00000093 0xffffffff 0xffffffff 0x00000078>,
431-
/* Event Types 3 events - 0xa ITLB read count */
435+
/* Event Types 3 events - 0xa L2-Cache read count */
432436
<0x00000000 0x000000a3 0xffffffff 0xffffffff 0x00000078>,
433-
/* Event Types 3 events - 0xb BTB read count */
437+
/* Event Types 3 events - 0xb L2-Cache read miss count */
434438
<0x00000000 0x000000b3 0xffffffff 0xffffffff 0x00000078>,
435-
/* Event Types 3 events - 0xc Dcache prefetch count */
439+
/* Event Types 3 events - 0xc L2-Cache write count */
436440
<0x00000000 0x000000c3 0xffffffff 0xffffffff 0x00000078>,
437-
/* Event Types 3 events - 0xd Icache prefetch count */
441+
/* Event Types 3 events - 0xd L2-Cache write miss count */
438442
<0x00000000 0x000000d3 0xffffffff 0xffffffff 0x00000078>,
439-
/* Event Types 3 events - 0xe Dcache write count */
443+
/* Event Types 3 events - 0xe L2-Cache prefetch hit count */
440444
<0x00000000 0x000000e3 0xffffffff 0xffffffff 0x00000078>,
441-
/* Event Types 3 events - 0xf DTLB read count */
445+
/* Event Types 3 events - 0xf L2-Cache prefetch miss count */
442446
<0x00000000 0x000000f3 0xffffffff 0xffffffff 0x00000078>,
443-
/* Event Types 3 events - 0x10 Dcache write miss count */
447+
/* Event Types 3 events - 0x10 DTLB read count */
444448
<0x00000000 0x00000103 0xffffffff 0xffffffff 0x00000078>,
445-
/* Event Types 3 events - 0x11 BTB write miss count */
449+
/* Event Types 3 events - 0x11 DTLB read miss count */
446450
<0x00000000 0x00000113 0xffffffff 0xffffffff 0x00000078>,
447-
/* Event Types 3 events - 0x12 Dcache read count */
451+
/* Event Types 3 events - 0x12 DTLB write count */
448452
<0x00000000 0x00000123 0xffffffff 0xffffffff 0x00000078>,
449-
/* Event Types 3 events - 0x13 L2-Cache write hit count */
453+
/* Event Types 3 events - 0x13 DTLB write miss count */
450454
<0x00000000 0x00000133 0xffffffff 0xffffffff 0x00000078>,
451-
/* Event Types 3 events - 0x14 L2-Cache prefetch miss count */
455+
/* Event Types 3 events - 0x14 ITLB read count */
452456
<0x00000000 0x00000143 0xffffffff 0xffffffff 0x00000078>,
453-
/* Event Types 3 events - 0x15 BTB read miss count */
457+
/* Event Types 3 events - 0x15 Reserved */
454458
<0x00000000 0x00000153 0xffffffff 0xffffffff 0x00000078>,
455-
/* Event Types 3 events - 0x16 Dcache read miss count */
459+
/* Event Types 3 events - 0x16 BTB read count */
456460
<0x00000000 0x00000163 0xffffffff 0xffffffff 0x00000078>,
457-
/* Event Types 3 events - 0x17 L2-Cache prefetch hit count */
461+
/* Event Types 3 events - 0x17 BTB read miss count */
458462
<0x00000000 0x00000173 0xffffffff 0xffffffff 0x00000078>,
459-
/* Event Types 3 events - 0x18 DTLB read miss count */
460-
<0x00000000 0x00000183 0xffffffff 0xffffffff 0x00000078>;
463+
/* Event Types 3 events - 0x18 BTB write count */
464+
<0x00000000 0x00000183 0xffffffff 0xffffffff 0x00000078>,
465+
/* Event Types 3 events - 0x19 BTB write miss count */
466+
<0x00000000 0x00000193 0xffffffff 0xffffffff 0x00000078>;
461467
};
462468

463469
plic0: interrupt-controller@1c000000 {

conf/evalsoc/nuclei_rv32imafdc.dts

Lines changed: 40 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -260,8 +260,8 @@
260260
<0x10009 0x00000000 0x00000011>,
261261
/* Type #1 SBI_PMU_HW_CACHE_L1I(1) PREFETCH(2) ACCESS(0) -> v2, Nuclei event sel=3 idx=8 Icache prefetch count */
262262
<0x1000C 0x00000000 0x00000083>,
263-
/* Type #1 SBI_PMU_HW_CACHE_L1I(1) PREFETCH(2) MISS(1) -> v2, Nuclei event sel=3 idx=9 Icache prefetch miss count */
264-
<0x1000D 0x00000000 0x00000093>,
263+
/* Type #1 SBI_PMU_HW_CACHE_L1I(1) PREFETCH(2) MISS(1) -> v2, Nuclei event sel=1 idx=6 Icache prefetch miss count */
264+
<0x1000D 0x00000000 0x00000061>,
265265
/* Type #1 SBI_PMU_HW_CACHE_LL(2) READ(0) ACCESS(0) -> v2, Nuclei event sel=3 idx=10 L2 Cache read count */
266266
<0x10010 0x00000000 0x000000A3>,
267267
/* Type #1 SBI_PMU_HW_CACHE_LL(2) READ(0) MISS(1) -> v2, Nuclei event sel=3 idx=11 L2 Cache read miss count */
@@ -384,7 +384,7 @@
384384
<0x00000000 0x00000041 0xffffffff 0xffffffff 0x00000078>,
385385
/* Event Types 1 events - 0x5 Main TLB miss count */
386386
<0x00000000 0x00000051 0xffffffff 0xffffffff 0x00000078>,
387-
/* Event Types 1 events - 0x6 Reserved */
387+
/* Event Types 1 events - 0x6 Icache prefetch miss count */
388388
<0x00000000 0x00000061 0xffffffff 0xffffffff 0x00000078>,
389389
/* Event Types 1 events - 0x7 Reserved */
390390
<0x00000000 0x00000071 0xffffffff 0xffffffff 0x00000078>,
@@ -400,64 +400,70 @@
400400
<0x00000000 0x000000c1 0xffffffff 0xffffffff 0x00000078>,
401401
/* Event Types 1 events - 0xd Timer count */
402402
<0x00000000 0x000000d1 0xffffffff 0xffffffff 0x00000078>,
403-
/* Event Types 2 events - 0x1 VPU store instruction commit count */
404-
<0x00000000 0x00000012 0xffffffff 0xffffffff 0x00000078>,
405-
/* Event Types 2 events - 0x2 Reserved */
403+
/* Event Types 2 events - 0x2 Branch instruction commit count */
406404
<0x00000000 0x00000022 0xffffffff 0xffffffff 0x00000078>,
407-
/* Event Types 2 events - 0x3 VPU load instruction commit count */
405+
/* Event Types 2 events - 0x3 Branch predict fail count */
408406
<0x00000000 0x00000032 0xffffffff 0xffffffff 0x00000078>,
409-
/* Event Types 2 events - 0x4 VPU computational instruction commit count */
407+
/* Event Types 2 events - 0x4 VPU total instruction commit count */
410408
<0x00000000 0x00000042 0xffffffff 0xffffffff 0x00000078>,
411-
/* Event Types 2 events - 0x5 Branch predict fail count */
409+
/* Event Types 2 events - 0x5 VPU load instruction commit count */
412410
<0x00000000 0x00000052 0xffffffff 0xffffffff 0x00000078>,
413-
/* Event Types 3 events - 0x1 Icache read count */
411+
/* Event Types 2 events - 0x6 VPU store instruction commit count */
412+
<0x00000000 0x00000062 0xffffffff 0xffffffff 0x00000078>,
413+
/* Event Types 2 events - 0x7 VPU computational instruction commit count */
414+
<0x00000000 0x00000072 0xffffffff 0xffffffff 0x00000078>,
415+
/* Event Types 3 events - 0x0 Dcache read count */
416+
<0x00000000 0x00000003 0xffffffff 0xffffffff 0x00000078>,
417+
/* Event Types 3 events - 0x1 Dcache read miss count */
414418
<0x00000000 0x00000013 0xffffffff 0xffffffff 0x00000078>,
415-
/* Event Types 3 events - 0x2 L2-Cache read hit count */
419+
/* Event Types 3 events - 0x2 Dcache write count */
416420
<0x00000000 0x00000023 0xffffffff 0xffffffff 0x00000078>,
417-
/* Event Types 3 events - 0x3 DTLB write count */
421+
/* Event Types 3 events - 0x3 Dcache write miss count */
418422
<0x00000000 0x00000033 0xffffffff 0xffffffff 0x00000078>,
419-
/* Event Types 3 events - 0x4 L2-Cache write miss count */
423+
/* Event Types 3 events - 0x4 Dcache prefetch count */
420424
<0x00000000 0x00000043 0xffffffff 0xffffffff 0x00000078>,
421-
/* Event Types 3 events - 0x5 Reserved */
425+
/* Event Types 3 events - 0x5 Dcache prefetch miss count */
422426
<0x00000000 0x00000053 0xffffffff 0xffffffff 0x00000078>,
423-
/* Event Types 3 events - 0x6 Icache prefetch miss count */
427+
/* Event Types 3 events - 0x6 Icache read count */
424428
<0x00000000 0x00000063 0xffffffff 0xffffffff 0x00000078>,
425-
/* Event Types 3 events - 0x7 BTB write count */
429+
/* Event Types 3 events - 0x7 Reserved */
426430
<0x00000000 0x00000073 0xffffffff 0xffffffff 0x00000078>,
427-
/* Event Types 3 events - 0x8 L2-Cache read miss count */
431+
/* Event Types 3 events - 0x8 Icache prefetch count */
428432
<0x00000000 0x00000083 0xffffffff 0xffffffff 0x00000078>,
429-
/* Event Types 3 events - 0x9 DTLB write miss count */
433+
/* Event Types 3 events - 0x9 Reserved */
430434
<0x00000000 0x00000093 0xffffffff 0xffffffff 0x00000078>,
431-
/* Event Types 3 events - 0xa ITLB read count */
435+
/* Event Types 3 events - 0xa L2-Cache read count */
432436
<0x00000000 0x000000a3 0xffffffff 0xffffffff 0x00000078>,
433-
/* Event Types 3 events - 0xb BTB read count */
437+
/* Event Types 3 events - 0xb L2-Cache read miss count */
434438
<0x00000000 0x000000b3 0xffffffff 0xffffffff 0x00000078>,
435-
/* Event Types 3 events - 0xc Dcache prefetch count */
439+
/* Event Types 3 events - 0xc L2-Cache write count */
436440
<0x00000000 0x000000c3 0xffffffff 0xffffffff 0x00000078>,
437-
/* Event Types 3 events - 0xd Icache prefetch count */
441+
/* Event Types 3 events - 0xd L2-Cache write miss count */
438442
<0x00000000 0x000000d3 0xffffffff 0xffffffff 0x00000078>,
439-
/* Event Types 3 events - 0xe Dcache write count */
443+
/* Event Types 3 events - 0xe L2-Cache prefetch hit count */
440444
<0x00000000 0x000000e3 0xffffffff 0xffffffff 0x00000078>,
441-
/* Event Types 3 events - 0xf DTLB read count */
445+
/* Event Types 3 events - 0xf L2-Cache prefetch miss count */
442446
<0x00000000 0x000000f3 0xffffffff 0xffffffff 0x00000078>,
443-
/* Event Types 3 events - 0x10 Dcache write miss count */
447+
/* Event Types 3 events - 0x10 DTLB read count */
444448
<0x00000000 0x00000103 0xffffffff 0xffffffff 0x00000078>,
445-
/* Event Types 3 events - 0x11 BTB write miss count */
449+
/* Event Types 3 events - 0x11 DTLB read miss count */
446450
<0x00000000 0x00000113 0xffffffff 0xffffffff 0x00000078>,
447-
/* Event Types 3 events - 0x12 Dcache read count */
451+
/* Event Types 3 events - 0x12 DTLB write count */
448452
<0x00000000 0x00000123 0xffffffff 0xffffffff 0x00000078>,
449-
/* Event Types 3 events - 0x13 L2-Cache write hit count */
453+
/* Event Types 3 events - 0x13 DTLB write miss count */
450454
<0x00000000 0x00000133 0xffffffff 0xffffffff 0x00000078>,
451-
/* Event Types 3 events - 0x14 L2-Cache prefetch miss count */
455+
/* Event Types 3 events - 0x14 ITLB read count */
452456
<0x00000000 0x00000143 0xffffffff 0xffffffff 0x00000078>,
453-
/* Event Types 3 events - 0x15 BTB read miss count */
457+
/* Event Types 3 events - 0x15 Reserved */
454458
<0x00000000 0x00000153 0xffffffff 0xffffffff 0x00000078>,
455-
/* Event Types 3 events - 0x16 Dcache read miss count */
459+
/* Event Types 3 events - 0x16 BTB read count */
456460
<0x00000000 0x00000163 0xffffffff 0xffffffff 0x00000078>,
457-
/* Event Types 3 events - 0x17 L2-Cache prefetch hit count */
461+
/* Event Types 3 events - 0x17 BTB read miss count */
458462
<0x00000000 0x00000173 0xffffffff 0xffffffff 0x00000078>,
459-
/* Event Types 3 events - 0x18 DTLB read miss count */
460-
<0x00000000 0x00000183 0xffffffff 0xffffffff 0x00000078>;
463+
/* Event Types 3 events - 0x18 BTB write count */
464+
<0x00000000 0x00000183 0xffffffff 0xffffffff 0x00000078>,
465+
/* Event Types 3 events - 0x19 BTB write miss count */
466+
<0x00000000 0x00000193 0xffffffff 0xffffffff 0x00000078>;
461467
};
462468

463469
plic0: interrupt-controller@1c000000 {

0 commit comments

Comments
 (0)