Re: [PATCH 3/7] soundwire: intel: add mutex to prevent concurrent access to SHIM registers

From: Vinod Koul
Date: Mon Mar 23 2020 - 08:18:24 EST


On 20-03-20, 09:07, Pierre-Louis Bossart wrote:
>
> > > diff --git a/drivers/soundwire/intel.h b/drivers/soundwire/intel.h
> > > index 38b7c125fb10..568c84a80d79 100644
> > > --- a/drivers/soundwire/intel.h
> > > +++ b/drivers/soundwire/intel.h
> > > @@ -15,6 +15,7 @@
> > > * @irq: Interrupt line
> > > * @ops: Shim callback ops
> > > * @dev: device implementing hw_params and free callbacks
> > > + * @shim_lock: mutex to handle access to shared SHIM registers
> > > */
> > > struct sdw_intel_link_res {
> > > struct platform_device *pdev;
> > > @@ -25,6 +26,7 @@ struct sdw_intel_link_res {
> > > int irq;
> > > const struct sdw_intel_ops *ops;
> > > struct device *dev;
> > > + struct mutex *shim_lock; /* protect shared registers */
> >
> > Where is this mutex initialized? Did you test this...
>
> Dude, we've been testing the heck out of SoundWire.
>
> If you want to see the actual initialization it's in the intel_init.c code:
>
> https://github.com/thesofproject/linux/blob/9c7487b33072040ab755d32ca173b75151c0160c/drivers/soundwire/intel_init.c#L231

Which doesn't make much sense. A patch should do complete thing. I don't
see a reason why you cannot pull this single line into this patch.

It belongs here, not anywhere else.

--
~Vinod