[PATCH v2 06/28] coresight: etm4x: Add context synchronization before enabling trace
Leo Yan
leo.yan at arm.com
Wed Jul 2 07:40:28 PDT 2025
On Wed, Jul 02, 2025 at 12:05:10PM +0100, Yeoreum Yun wrote:
[...]
> > @@ -445,13 +445,37 @@ static int etm4_enable_trace_unit(struct etmv4_drvdata *drvdata)
> > etm4x_relaxed_write32(csa, TRCRSR_TA, TRCRSR);
> >
> > etm4x_allow_trace(drvdata);
> > +
> > + /*
> > + * According to software usage PKLXF in Arm ARM (ARM DDI 0487 L.a),
> > + * execute a Context synchronization event to guarantee the trace unit
> > + * will observe the new values of the System registers.
> > + */
> > + if (!csa->io_mem)
> > + isb();
> > +
>
> But, when write to SYS_TRFCR_EL1 in etm4x_allow_trace(), it already does
> isb(). Is it redundant?
Good point. It is not sufficient. As a system register writing in
kvm_tracing_set_el1_configuration(), this is why adds a ISB here.
Thanks,
Leo
More information about the linux-arm-kernel
mailing list