[alsa-devel] [PATCH v4 08/13] ASoC: Add SoundWire stream programming interface

Vinod Koul vinod.koul at intel.com
Wed Apr 25 04:49:23 CEST 2018


On Tue, Apr 24, 2018 at 06:40:54PM -0500, Pierre-Louis Bossart wrote:
> On 4/24/18 4:06 AM, Vinod Koul wrote:
> >On Mon, Apr 23, 2018 at 08:33:08AM -0500, Pierre-Louis Bossart wrote:
> >>On 4/21/18 10:58 AM, Vinod Koul wrote:
> >>>On Sat, Apr 21, 2018 at 06:59:49AM -0700, Pierre-Louis Bossart wrote:
> >>>>
> >>>>>+/**
> >>>>>+ * snd_soc_dai_set_sdw_stream() - Configures a DAI for SDW stream operation
> >>>>>+ * @dai: DAI
> >>>>>+ * @stream: STREAM
> >>>>>+ * @direction: Stream direction(Playback/Capture)
> >>>>>+ * SoundWire subsystem doesn't have a notion of direction and we reuse
> >>>>>+ * the ASoC stream direction to configure sink/source ports.
> >>>>>+ * Playback maps to source on the TX and sink on Rx. Vice-versa for Capture.
> >>>>
> >>>>this is just confusing...
> >>>>
> >>>>This should be something like
> >>>>"use Playback for source ports and Capture for sink ports".
> >>>
> >>>Source port on ...? This is also confusing to me!
> >>>
> >>>For playback there are two ports, one on transmitter aka
> >>>TX and one on receiver aka RX. For Tx we use source port, and Rx uses sink
> >>>ports. I should probably add port to make people really figure out we are
> >>>talking about ports!
> >>>
> >>>So:
> >>>
> >>>Playback maps to source port on the TX and sink port on Rx. Vice-versa for Capture.
> >>>
> >>>Do you agree to above statement?
> >>
> >>No. Source port and TX are redundant definitions, and your wording isn't
> >>clear: is the PLAYBACK/CAPTURE qualifier for the stream or the DAI used by
> >>the stream?
> >
> >Yes they are redundant, will update. PLAYBACK/CAPTURE qualifier is for stream.
> 
> Let me try again.
> let's say in point-to-point mode you have dai1 as the source and dai2 as the
> sink.
> 
> Which sequence are the higher layers supposed to use:
> 
> a.
> 
> snd_soc_dai_set_sdw_stream(dai1, stream, PLAYBACK);
> snd_soc_dai_set_sdw_stream(dai2, stream, PLAYBACK);
> 
> b.
> 
> snd_soc_dai_set_sdw_stream(dai1, stream, PLAYBACK);
> snd_soc_dai_set_sdw_stream(dai2, stream, CAPTURE);

I believe this.

-- 
~Vinod


More information about the Alsa-devel mailing list