mbox series

[v6,00/13] soundwire: Add stream support

Message ID 1524748809-21860-1-git-send-email-vkoul@kernel.org
Headers show
Series soundwire: Add stream support | expand

Message

Vinod Koul April 26, 2018, 1:19 p.m. UTC
This series adds support in SoundWire subsystem for:
 - Documentation for stream support
 - stream management
 - data port management
 - DAI ops in cadence and Intel drivers
 - ASoC API to propagate SDW stream

Updates in v6:
 - Fix return error as pointed by Sanyog
 - Update stream state enum documentation as pointed by Pierre and few other
   nits

Updated in v5:
 - Add todo for device-device changes in future and some comment updates
   based on feedback from Pierre

Updates in v4:
 - Add more comments for sdw_release_master_stream()
 - Make sure ports are freed upon sdw_stream_remove_slave()
 - Clarify snd_soc_dai_set_sdw_stream() and setting of NULL upon release.

Updates in v3:
 - Remove stream state transition checks and redefine stream states
 - Update bansk switch routines
 - Other nitpicks pointed out by Pierre.

Updates in v2:
  - Make ASoC API inlined
  - Make stream states as states and not action
  - Update the direction enum
  - Fix some typos and comment updates

*** SUBJECT HERE ***

*** BLURB HERE ***

Sanyog Kale (7):
  Documentation: soundwire: Add more documentation
  soundwire: Add support for SoundWire stream management
  soundwire: Add support for port management
  soundwire: Add Master and Slave port programming
  soundwire: Add helpers for ports operations
  soundwire: Add bank switch routine
  soundwire: Add stream configuration APIs

Shreyas NC (2):
  ASoC: Add SoundWire stream programming interface
  soundwire: Remove cdns_master_ops

Vinod Koul (4):
  soundwire: cdns: Add port routines
  soundwire: cdns: Add stream routines
  soundwire: intel: Add stream initialization
  soundwire: intel: Add audio DAI ops

 .../driver-api/soundwire/error_handling.rst        |   65 +
 Documentation/driver-api/soundwire/index.rst       |    3 +
 Documentation/driver-api/soundwire/locking.rst     |  106 ++
 Documentation/driver-api/soundwire/stream.rst      |  372 +++++
 drivers/soundwire/Kconfig                          |    2 +-
 drivers/soundwire/Makefile                         |    2 +-
 drivers/soundwire/bus.c                            |   43 +
 drivers/soundwire/bus.h                            |   72 +
 drivers/soundwire/cadence_master.c                 |  451 +++++-
 drivers/soundwire/cadence_master.h                 |  151 ++
 drivers/soundwire/intel.c                          |  525 ++++++-
 drivers/soundwire/intel.h                          |    4 +
 drivers/soundwire/intel_init.c                     |    3 +
 drivers/soundwire/stream.c                         | 1479 ++++++++++++++++++++
 include/linux/soundwire/sdw.h                      |  332 ++++-
 include/linux/soundwire/sdw_intel.h                |   14 +
 include/sound/soc-dai.h                            |   23 +
 17 files changed, 3633 insertions(+), 14 deletions(-)
 create mode 100644 Documentation/driver-api/soundwire/error_handling.rst
 create mode 100644 Documentation/driver-api/soundwire/locking.rst
 create mode 100644 Documentation/driver-api/soundwire/stream.rst
 create mode 100644 drivers/soundwire/stream.c

-- 
2.7.4

_______________________________________________
Alsa-devel mailing list
Alsa-devel@alsa-project.org
http://mailman.alsa-project.org/mailman/listinfo/alsa-devel

Comments

Pierre-Louis Bossart April 27, 2018, 1:23 p.m. UTC | #1
On 4/26/18 8:19 AM, Vinod Koul wrote:
> This series adds support in SoundWire subsystem for:

>   - Documentation for stream support

>   - stream management

>   - data port management

>   - DAI ops in cadence and Intel drivers

>   - ASoC API to propagate SDW stream

> 

> Updates in v6:

>   - Fix return error as pointed by Sanyog

>   - Update stream state enum documentation as pointed by Pierre and few other

>     nits


I double-checked the v6, all my comments were addressed, so all patches

Reviewed-by: Pierre-Louis Bossart <pierre-louis.bossart@linux.intel.com>


Thanks Vinod, Shreyas and Sanyog. Enjoy your long week-end.
-Pierre

> 

> Updated in v5:

>   - Add todo for device-device changes in future and some comment updates

>     based on feedback from Pierre

> 

> Updates in v4:

>   - Add more comments for sdw_release_master_stream()

>   - Make sure ports are freed upon sdw_stream_remove_slave()

>   - Clarify snd_soc_dai_set_sdw_stream() and setting of NULL upon release.

> 

> Updates in v3:

>   - Remove stream state transition checks and redefine stream states

>   - Update bansk switch routines

>   - Other nitpicks pointed out by Pierre.

> 

> Updates in v2:

>    - Make ASoC API inlined

>    - Make stream states as states and not action

>    - Update the direction enum

>    - Fix some typos and comment updates

> 

> *** SUBJECT HERE ***

> 

> *** BLURB HERE ***

> 

> Sanyog Kale (7):

>    Documentation: soundwire: Add more documentation

>    soundwire: Add support for SoundWire stream management

>    soundwire: Add support for port management

>    soundwire: Add Master and Slave port programming

>    soundwire: Add helpers for ports operations

>    soundwire: Add bank switch routine

>    soundwire: Add stream configuration APIs

> 

> Shreyas NC (2):

>    ASoC: Add SoundWire stream programming interface

>    soundwire: Remove cdns_master_ops

> 

> Vinod Koul (4):

>    soundwire: cdns: Add port routines

>    soundwire: cdns: Add stream routines

>    soundwire: intel: Add stream initialization

>    soundwire: intel: Add audio DAI ops

> 

>   .../driver-api/soundwire/error_handling.rst        |   65 +

>   Documentation/driver-api/soundwire/index.rst       |    3 +

>   Documentation/driver-api/soundwire/locking.rst     |  106 ++

>   Documentation/driver-api/soundwire/stream.rst      |  372 +++++

>   drivers/soundwire/Kconfig                          |    2 +-

>   drivers/soundwire/Makefile                         |    2 +-

>   drivers/soundwire/bus.c                            |   43 +

>   drivers/soundwire/bus.h                            |   72 +

>   drivers/soundwire/cadence_master.c                 |  451 +++++-

>   drivers/soundwire/cadence_master.h                 |  151 ++

>   drivers/soundwire/intel.c                          |  525 ++++++-

>   drivers/soundwire/intel.h                          |    4 +

>   drivers/soundwire/intel_init.c                     |    3 +

>   drivers/soundwire/stream.c                         | 1479 ++++++++++++++++++++

>   include/linux/soundwire/sdw.h                      |  332 ++++-

>   include/linux/soundwire/sdw_intel.h                |   14 +

>   include/sound/soc-dai.h                            |   23 +

>   17 files changed, 3633 insertions(+), 14 deletions(-)

>   create mode 100644 Documentation/driver-api/soundwire/error_handling.rst

>   create mode 100644 Documentation/driver-api/soundwire/locking.rst

>   create mode 100644 Documentation/driver-api/soundwire/stream.rst

>   create mode 100644 drivers/soundwire/stream.c

> 


_______________________________________________
Alsa-devel mailing list
Alsa-devel@alsa-project.org
http://mailman.alsa-project.org/mailman/listinfo/alsa-devel
Vinod Koul May 6, 2018, 5:45 a.m. UTC | #2
Hi Greg,


On Thu, Apr 26, 2018 at 6:49 PM, Vinod Koul <vkoul@kernel.org> wrote:
> This series adds support in SoundWire subsystem for:

>  - Documentation for stream support

>  - stream management

>  - data port management

>  - DAI ops in cadence and Intel drivers

>  - ASoC API to propagate SDW stream


Any feedback on this series?

Thanks

>

> Updates in v6:

>  - Fix return error as pointed by Sanyog

>  - Update stream state enum documentation as pointed by Pierre and few other

>    nits

>

> Updated in v5:

>  - Add todo for device-device changes in future and some comment updates

>    based on feedback from Pierre

>

> Updates in v4:

>  - Add more comments for sdw_release_master_stream()

>  - Make sure ports are freed upon sdw_stream_remove_slave()

>  - Clarify snd_soc_dai_set_sdw_stream() and setting of NULL upon release.

>

> Updates in v3:

>  - Remove stream state transition checks and redefine stream states

>  - Update bansk switch routines

>  - Other nitpicks pointed out by Pierre.

>

> Updates in v2:

>   - Make ASoC API inlined

>   - Make stream states as states and not action

>   - Update the direction enum

>   - Fix some typos and comment updates

>

> *** SUBJECT HERE ***

>

> *** BLURB HERE ***

>

> Sanyog Kale (7):

>   Documentation: soundwire: Add more documentation

>   soundwire: Add support for SoundWire stream management

>   soundwire: Add support for port management

>   soundwire: Add Master and Slave port programming

>   soundwire: Add helpers for ports operations

>   soundwire: Add bank switch routine

>   soundwire: Add stream configuration APIs

>

> Shreyas NC (2):

>   ASoC: Add SoundWire stream programming interface

>   soundwire: Remove cdns_master_ops

>

> Vinod Koul (4):

>   soundwire: cdns: Add port routines

>   soundwire: cdns: Add stream routines

>   soundwire: intel: Add stream initialization

>   soundwire: intel: Add audio DAI ops

>

>  .../driver-api/soundwire/error_handling.rst        |   65 +

>  Documentation/driver-api/soundwire/index.rst       |    3 +

>  Documentation/driver-api/soundwire/locking.rst     |  106 ++

>  Documentation/driver-api/soundwire/stream.rst      |  372 +++++

>  drivers/soundwire/Kconfig                          |    2 +-

>  drivers/soundwire/Makefile                         |    2 +-

>  drivers/soundwire/bus.c                            |   43 +

>  drivers/soundwire/bus.h                            |   72 +

>  drivers/soundwire/cadence_master.c                 |  451 +++++-

>  drivers/soundwire/cadence_master.h                 |  151 ++

>  drivers/soundwire/intel.c                          |  525 ++++++-

>  drivers/soundwire/intel.h                          |    4 +

>  drivers/soundwire/intel_init.c                     |    3 +

>  drivers/soundwire/stream.c                         | 1479 ++++++++++++++++++++

>  include/linux/soundwire/sdw.h                      |  332 ++++-

>  include/linux/soundwire/sdw_intel.h                |   14 +

>  include/sound/soc-dai.h                            |   23 +

>  17 files changed, 3633 insertions(+), 14 deletions(-)

>  create mode 100644 Documentation/driver-api/soundwire/error_handling.rst

>  create mode 100644 Documentation/driver-api/soundwire/locking.rst

>  create mode 100644 Documentation/driver-api/soundwire/stream.rst

>  create mode 100644 drivers/soundwire/stream.c

>

> --

> 2.7.4

>

_______________________________________________
Alsa-devel mailing list
Alsa-devel@alsa-project.org
http://mailman.alsa-project.org/mailman/listinfo/alsa-devel
Vinod Koul May 11, 2018, 11:48 a.m. UTC | #3
On 06-05-18, 11:15, Vinod Koul wrote:
> Hi Greg,

> 

> On Thu, Apr 26, 2018 at 6:49 PM, Vinod Koul <vkoul@kernel.org> wrote:

> > This series adds support in SoundWire subsystem for:

> >  - Documentation for stream support

> >  - stream management

> >  - data port management

> >  - DAI ops in cadence and Intel drivers

> >  - ASoC API to propagate SDW stream

> 

> Any feedback on this series?


Greg,

Am sure you are busy with lots of stuff, would appreciate if you can help with
the series and a tiny patch [1].

Now if you are too busy with things, I am willing to help out.

I can:
a) collate and send you a pull request, or
b) Collect everything and send to Linus as I do with dmaengine, with your
blessing of course...

Please do let me know, thanks

> 

> Thanks

> 

> >

> > Updates in v6:

> >  - Fix return error as pointed by Sanyog

> >  - Update stream state enum documentation as pointed by Pierre and few other

> >    nits

> >

> > Updated in v5:

> >  - Add todo for device-device changes in future and some comment updates

> >    based on feedback from Pierre

> >

> > Updates in v4:

> >  - Add more comments for sdw_release_master_stream()

> >  - Make sure ports are freed upon sdw_stream_remove_slave()

> >  - Clarify snd_soc_dai_set_sdw_stream() and setting of NULL upon release.

> >

> > Updates in v3:

> >  - Remove stream state transition checks and redefine stream states

> >  - Update bansk switch routines

> >  - Other nitpicks pointed out by Pierre.

> >

> > Updates in v2:

> >   - Make ASoC API inlined

> >   - Make stream states as states and not action

> >   - Update the direction enum

> >   - Fix some typos and comment updates

> >

> > *** SUBJECT HERE ***

> >

> > *** BLURB HERE ***

> >

> > Sanyog Kale (7):

> >   Documentation: soundwire: Add more documentation

> >   soundwire: Add support for SoundWire stream management

> >   soundwire: Add support for port management

> >   soundwire: Add Master and Slave port programming

> >   soundwire: Add helpers for ports operations

> >   soundwire: Add bank switch routine

> >   soundwire: Add stream configuration APIs

> >

> > Shreyas NC (2):

> >   ASoC: Add SoundWire stream programming interface

> >   soundwire: Remove cdns_master_ops

> >

> > Vinod Koul (4):

> >   soundwire: cdns: Add port routines

> >   soundwire: cdns: Add stream routines

> >   soundwire: intel: Add stream initialization

> >   soundwire: intel: Add audio DAI ops

> >

> >  .../driver-api/soundwire/error_handling.rst        |   65 +

> >  Documentation/driver-api/soundwire/index.rst       |    3 +

> >  Documentation/driver-api/soundwire/locking.rst     |  106 ++

> >  Documentation/driver-api/soundwire/stream.rst      |  372 +++++

> >  drivers/soundwire/Kconfig                          |    2 +-

> >  drivers/soundwire/Makefile                         |    2 +-

> >  drivers/soundwire/bus.c                            |   43 +

> >  drivers/soundwire/bus.h                            |   72 +

> >  drivers/soundwire/cadence_master.c                 |  451 +++++-

> >  drivers/soundwire/cadence_master.h                 |  151 ++

> >  drivers/soundwire/intel.c                          |  525 ++++++-

> >  drivers/soundwire/intel.h                          |    4 +

> >  drivers/soundwire/intel_init.c                     |    3 +

> >  drivers/soundwire/stream.c                         | 1479 ++++++++++++++++++++

> >  include/linux/soundwire/sdw.h                      |  332 ++++-

> >  include/linux/soundwire/sdw_intel.h                |   14 +

> >  include/sound/soc-dai.h                            |   23 +

> >  17 files changed, 3633 insertions(+), 14 deletions(-)

> >  create mode 100644 Documentation/driver-api/soundwire/error_handling.rst

> >  create mode 100644 Documentation/driver-api/soundwire/locking.rst

> >  create mode 100644 Documentation/driver-api/soundwire/stream.rst

> >  create mode 100644 drivers/soundwire/stream.c

> >

> > --

> > 2.7.4

> >


-- 
~Vinod
_______________________________________________
Alsa-devel mailing list
Alsa-devel@alsa-project.org
http://mailman.alsa-project.org/mailman/listinfo/alsa-devel
Greg Kroah-Hartman May 11, 2018, 1:27 p.m. UTC | #4
On Fri, May 11, 2018 at 05:18:40PM +0530, Vinod Koul wrote:
> On 06-05-18, 11:15, Vinod Koul wrote:

> > Hi Greg,

> > 

> > On Thu, Apr 26, 2018 at 6:49 PM, Vinod Koul <vkoul@kernel.org> wrote:

> > > This series adds support in SoundWire subsystem for:

> > >  - Documentation for stream support

> > >  - stream management

> > >  - data port management

> > >  - DAI ops in cadence and Intel drivers

> > >  - ASoC API to propagate SDW stream

> > 

> > Any feedback on this series?

> 

> Greg,

> 

> Am sure you are busy with lots of stuff, would appreciate if you can help with

> the series and a tiny patch [1].


I don't see [1] anywhere :(

> Now if you are too busy with things, I am willing to help out.

> 

> I can:

> a) collate and send you a pull request, or

> b) Collect everything and send to Linus as I do with dmaengine, with your

> blessing of course...

> 

> Please do let me know, thanks


Am I the conduit for this subsystem now?  If so, ok, I'll pick it up, I
didn't realize I was.  But if you could collate and send me a pull
request, that would be the easiest.

thanks,

greg k-h
_______________________________________________
Alsa-devel mailing list
Alsa-devel@alsa-project.org
http://mailman.alsa-project.org/mailman/listinfo/alsa-devel
Vinod Koul May 11, 2018, 4:30 p.m. UTC | #5
On 11-05-18, 15:27, Greg KH wrote:
> On Fri, May 11, 2018 at 05:18:40PM +0530, Vinod Koul wrote:

> > On 06-05-18, 11:15, Vinod Koul wrote:

> > > Hi Greg,

> > > 

> > > On Thu, Apr 26, 2018 at 6:49 PM, Vinod Koul <vkoul@kernel.org> wrote:

> > > > This series adds support in SoundWire subsystem for:

> > > >  - Documentation for stream support

> > > >  - stream management

> > > >  - data port management

> > > >  - DAI ops in cadence and Intel drivers

> > > >  - ASoC API to propagate SDW stream

> > > 

> > > Any feedback on this series?

> > 

> > Greg,

> > 

> > Am sure you are busy with lots of stuff, would appreciate if you can help with

> > the series and a tiny patch [1].

> 

> I don't see [1] anywhere :(


Dont know why, You were in To list!

> > Now if you are too busy with things, I am willing to help out.

> > 

> > I can:

> > a) collate and send you a pull request, or

> > b) Collect everything and send to Linus as I do with dmaengine, with your

> > blessing of course...

> > 

> > Please do let me know, thanks

> 

> Am I the conduit for this subsystem now?


well back in Jan when we merged this subsystem it did go thru your tree so I was
assuming that :)

> If so, ok, I'll pick it up, I

> didn't realize I was.  But if you could collate and send me a pull

> request, that would be the easiest.


Ok sending in a bit.
-- 
~Vinod
_______________________________________________
Alsa-devel mailing list
Alsa-devel@alsa-project.org
http://mailman.alsa-project.org/mailman/listinfo/alsa-devel