On Wed, Oct 01, 2025 at 11:36:07AM +0100, Mike Leach wrote:
[...]
+static bool coresight_need_save_restore_source(struct coresight_device *csdev) +{
if (!csdev)return false;if (source_ops(csdev)->need_context_save_restore)check the actual save and restore ops here too?
Will do.
return source_ops(csdev)->need_context_save_restore(csdev);if (coresight_get_mode(csdev))return true;Not needed - should decide only on the previous need_context_save_restore() test. Components such as STM, ETR, ETB all use the mode status, but may not support / need save and restore.
Checking mode here is for ETMv3, which no need_context_save_restore() callback.
Note, STM is a system wise component (unlike ETM is CPU-wise component), thus it is irrelevant to CPU power management.
[...]
static const struct coresight_ops_source etm4_source_ops = {
.cpu_id = etm4_cpu_id,.enable = etm4_enable,.disable = etm4_disable,.resume_perf = etm4_resume_perf,.pause_perf = etm4_pause_perf,.save = etm4_cpu_save,.restore = etm4_cpu_restore,
.cpu_id = etm4_cpu_id,.enable = etm4_enable,.disable = etm4_disable,.resume_perf = etm4_resume_perf,.pause_perf = etm4_pause_perf,.save = etm4_cpu_save,.restore = etm4_cpu_restore,Above are just white space change noise as far as I can see.
Will drop in next spin.
Thanks, Leo