On 20-03-20, 09:13, Pierre-Louis Bossart wrote: > > > > diff --git a/drivers/soundwire/intel.h b/drivers/soundwire/intel.h > > > index 568c84a80d79..cfc83120b8f9 100644 > > > --- a/drivers/soundwire/intel.h > > > +++ b/drivers/soundwire/intel.h > > > @@ -16,6 +16,7 @@ > > > * @ops: Shim callback ops > > > * @dev: device implementing hw_params and free callbacks > > > * @shim_lock: mutex to handle access to shared SHIM registers > > > + * @shim_mask: global pointer to check SHIM register initialization > > > */ > > > struct sdw_intel_link_res { > > > struct platform_device *pdev; > > > @@ -27,6 +28,7 @@ struct sdw_intel_link_res { > > > const struct sdw_intel_ops *ops; > > > struct device *dev; > > > struct mutex *shim_lock; /* protect shared registers */ > > > + u32 *shim_mask; > > > > You have a pointer, okay where is it initialized > > same answer as shim_lock, it's initialized at the higher level > > https://github.com/thesofproject/linux/blob/9c7487b33072040ab755d32ca173b75151c0160c/drivers/soundwire/intel_init.c#L252 Why can't it be done here, what stops you? You really need to keep initialzation and usage in same patch :( -- ~Vinod