Re: [PATCH 05/11] soundwire: bus: update multi-link definition with hw sync details

From: Vinod Koul
Date: Fri Aug 28 2020 - 03:27:50 EST


On 26-08-20, 09:09, Pierre-Louis Bossart wrote:
>
>
> > > + * @hw_sync_min_links: Number of links used by a stream above which
> > > + * hardware-based synchronization is required. This value is only
> > > + * meaningful if multi_link is set. If set to 1, hardware-based
> > > + * synchronization will be used even if a stream only uses a single
> > > + * SoundWire segment.
> >
> > Soundwire spec does not say anything about multi-link so this is left to
> > implementer. Assuming that value of 1 would mean hw based sync will
> > be used even for single stream does not make sense in generic terms.
> > Maybe yes for Intel but may not be true for everyone?
>
> hw-based sync is required for Intel even for single stream. It's been part
> of the recommended programming flows since the beginning but ignored so far.
>
> That said, this value is set by each master implementation, no one forces
> non-Intel users to implement an Intel-specific requirement.
>
> > We already use m_rt_count in code for this, so the question is why is
> > that not sufficient?
>
> Because as you rightly said above, Intel requires the hw_sync to be used
> even for single stream, but we didn't want others to be forced to use the
> hw-sync for single stream. the m_rt_count is not sufficient for Intel.
>
> I think we are in agreement on not forcing everyone to follow what is
> required by Intel, and that's precisely why we added this setting. If you
> set it to two you would only use hw_sync when two masters are used.

Okay, it would be better if we move it to intel driver, but I see it may
not be trivial, so lets go with this approach.

--
~Vinod