On Wed, Apr 22, 2026 at 02:21:59PM +0100, Yeoreum Yun wrote:
[...]
@@ -895,6 +895,8 @@ static int etm4_parse_event_config(struct coresight_device *csdev, * Missing BB support could cause silent decode errors * so fail to open if it's not supported. */
if (cfg_hash)cscfg_csdev_disable_active_config(csdev);
I prefer do a bit refactoring for this.
we just save cfg_hash and cfg_preset into drvdata in etm4_parse_event_config():
drvdata->cfg_hash = ATTR_CFG_GET_FLD(attr, configid); if (drvdata->cfg_hash) drvdata->preset = ATTR_CFG_GET_FLD(attr, preset);
Then create two helpers:
etm4_cscfg_enable(csdev) { struct etmv4_drvdata *drvdata = dev_get_drvdata(csdev->dev.parent);
return cscfg_csdev_enable_active_config(csdev, drvdata->cfg_hash, drvdata->preset); }
etm4_cscfg_disable(csdev) { cscfg_csdev_disable_active_config(csdev); }
These helpers will be used by etm4_{enable|disable}_perf() and etm4_{enable|disable}_sysfs(). This might benefit the future cscfg refactoring.
Thanks, Leo
P.s. I will stop review at here. I assume ETMv3 changes just mirror ETMv4's. So all ETMv4's comments would apply on ETMv3 patches. If I miss anything, please let me know.