On Wed, May 06, 2026 at 03:33:38PM +0800, Jie Gan wrote:
[...]
Tested on QCOM sa8775p-ride platform with sysfs mode:
Hi Jie, very appreciate for the testing!
=== 1. Prerequisites === PASS: Running as root PASS: CoreSight bus present PASS: Sink: tmc_etr0 Sink is TRBE: 0 PASS: Source: etm0 Source CPU: 0 Online CPUs: 8 All CoreSight devices: ctcu0 cti_sys0 etm0 etm1 etm2 etm3 etm4 etm5 etm6 etm7 funnel0 funnel1 funnel2 funnel3 funnel4 funnel5 funnel6 funnel7 replicator0 replicator1 replicator2 stm0 tmc_etf0 tmc_etr0 tmc_etr1 tpdm0 tpdm1 tpdm10 tpdm11 tpdm2 tpdm3 tpdm4 tpdm5 tpdm6 tpdm7 tpdm8 tpdm9
=== 2. Sysfs mode: basic enable/disable === PASS: Sink tmc_etr0 enabled PASS: Source etm0 enabled PASS: Source etm0 disabled cleanly PASS: Sink tmc_etr0 disabled cleanly
=== 3. Sysfs mode: repeated enable/disable cycles (10x) === PASS: 10 enable/disable cycles completed without error
=== 4. Sysfs: enable source with no active sink === PASS: Enable without sink returned error (expected)
=== 5. Sysfs: enable/disable all online per-CPU sources === etm0 (cpu0): enabled OK etm1 (cpu1): enabled OK etm2 (cpu2): enabled OK etm3 (cpu3): enabled OK etm4 (cpu4): enabled OK etm5 (cpu5): enabled OK etm6 (cpu6): enabled OK etm7 (cpu7): enabled OK PASS: All online per-CPU sources enabled/disabled successfully
=== 6. csdev->cpu sysfs attribute (Patch 3: CPU ID in coresight_device) === etm0: cpu = 0 (OK) etm1: cpu = 1 (OK) etm2: cpu = 2 (OK) etm3: cpu = 3 (OK) etm4: cpu = 4 (OK) etm5: cpu = 5 (OK) etm6: cpu = 6 (OK) etm7: cpu = 7 (OK) PASS: All 8 per-CPU sources have valid 'cpu' attribute
=== 7. CPU online validation before path build (Patch 27) === Offlining cpu1 (source: etm1) [ 146.339051] psci: CPU1 killed (polled 0 ms) PASS: P27: Enable on offline cpu1 rejected before path build (enable_source=0) [ 146.689573] Detected PIPT I-cache on CPU1 [ 146.689635] GICv3: CPU1: found redistributor 100 region 0:0x0000000017a80000 [ 146.689801] CPU1: Booted secondary processor 0x0000000100 [0x410fd4b2] cpu1 back online
=== 8. CPU hotplug: core layer disables full sysfs path on CPU offline (Patch 26) === Starting sysfs trace on cpu1 (source: etm1) Offlining cpu1 while tracing active... [ 147.498731] psci: CPU1 killed (polled 0 ms) PASS: P26: Source auto-disabled by core coresight_dying_cpu() on CPU offline Sink state after hotplug: 1 PASS: No kernel errors in dmesg during hotplug [ 148.365194] Detected PIPT I-cache on CPU1 [ 148.365249] GICv3: CPU1: found redistributor 100 region 0:0x0000000017a80000 [ 148.365393] CPU1: Booted secondary processor 0x0000000100 [0x410fd4b2] PASS: cpu1 re-onlined
=== 9. CPU hotplug: re-enable sysfs tracing after CPU re-online === PASS: Tracing re-enabled on cpu1 after hotplug cycle
=== 10. CPU PM: path control during CPU idle (Patch 22) === Sleeping 4s to allow CPU idle entry (source: etm0, cpu: 0)... Idle entries on cpu0 during test: 49 PASS: P22: Source still enabled after idle — path save/restore working
Thanks, Jie