[PATCH v3 16/31] coresight: Add callback to determine if context save/restore is needed
Leo Yan
leo.yan at arm.com
Fri Oct 3 06:39:50 PDT 2025
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
More information about the linux-arm-kernel
mailing list