All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 00/14] ASoC: Cleanup dmaengine PCM users
@ 2013-03-22 13:12 Lars-Peter Clausen
  2013-03-22 13:12 ` [PATCH 01/14] ASoC: ux500_pcm: Remove duplicated SNDRV_PCM_HW_PARAM_PERIODS constraint Lars-Peter Clausen
                   ` (14 more replies)
  0 siblings, 15 replies; 31+ messages in thread
From: Lars-Peter Clausen @ 2013-03-22 13:12 UTC (permalink / raw)
  To: Mark Brown, Liam Girdwood; +Cc: alsa-devel, Lars-Peter Clausen

Hi,

This series cleans up a few of the current users of the dmaengine pcm lib in
order to make the introduction of a new more generic PCM dmaengine driver more
straight forward.

The series consists mainly of two types of changes. One is removing all
unnecessary wrappers of snd_soc_dmaengine_close(). For some reason quite a few
drivers started providing their own pcm_close callback, which does nothing but
calls snd_soc_dmaengine_close, although snd_soc_dmaengine_close can be used
directly as the pcm_close callback if nothing else needs to be done.

The other is getting rid of snd_dmaengine_pcm_{get,set}_data(). These two
functions were initially introduced to deal with a few oddball dmaengine drivers
which require that data is passed to them via the private_data field of the
channel and we had to keep the data allocated until the channel had been
released. A few other driver started using these functions although there is no
need to do so. E.g. some drivers just call snd_dmaengine_pcm_set_data(), but
never attempt to read the data again using snd_dmaengine_pcm_get_data().
For the drivers, for which snd_dmaengine_pcm_{set,get}_data() was originally
introduced, the responsibility of keeping the dma config allocated is shifted
from the pcm driver to the i2s drivers. Which in turn makes the code much more
straight forward since for most i2s drivers the dma config is either static or
setup once at driver probe time.

The series has only been compile tested, so please test these patches,
especially the non trivial ones for ep93xx, mmp, imx and mxs.

- Lars

Lars-Peter Clausen (14):
  ASoC: ux500_pcm: Remove duplicated SNDRV_PCM_HW_PARAM_PERIODS
    constraint
  ASoC: spear_pcm: No need to wrap snd_dmaengine_pcm_close()
  ASoC: omap-pcm: No need to wrap snd_dmaengine_pcm_close()
  ASoC: tegra_pcm: No need to wrap snd_dmaengine_pcm_close()
  ASoC: ux500_pcm: No need to wrap snd_dmaengine_pcm_close()
  ASoC: atmel-pcm-dma: No need to wrap snd_dmaengine_pcm_close()
  ASoC: ux500_pcm: No need to use snd_dmaengine_pcm_set_data()
  ASoC: speaer_pcm: No need to use snd_dmaengine_pcm_set_data()
  ASoC: atmel-pcm-dma: Do not use snd_dmaengine_pcm_{set,get}_data()
  ASoC: ep93xx: Use ep93xx_dma_params instead of ep93xx_pcm_dma_params
  ASoC: mmp-pcm: Allocate dma filter parameters on the stack
  ASoC: imx-pcm: Embed the imx_dma_data struct in the dma_params struct
  ASoC: mxs: Embed the mxs_dma_data struct in the mxs_pcm_dma_params
    struct
  ASoC: dmaengine-pcm: Remove snd_dmaengine_pcm_{set,get}_data

 include/sound/dmaengine_pcm.h   |  3 ---
 sound/soc/atmel/atmel-pcm-dma.c | 23 +++++++---------------
 sound/soc/cirrus/edb93xx.c      |  1 -
 sound/soc/cirrus/ep93xx-ac97.c  |  9 +++++----
 sound/soc/cirrus/ep93xx-i2s.c   | 12 ++++++------
 sound/soc/cirrus/ep93xx-pcm.c   | 37 +++--------------------------------
 sound/soc/cirrus/ep93xx-pcm.h   | 20 -------------------
 sound/soc/cirrus/simone.c       |  2 --
 sound/soc/cirrus/snappercl15.c  |  1 -
 sound/soc/fsl/fsl_ssi.c         | 17 ++++++++--------
 sound/soc/fsl/imx-pcm-dma.c     | 35 ++-------------------------------
 sound/soc/fsl/imx-pcm.h         | 17 ++++++++++++++--
 sound/soc/fsl/imx-ssi.c         | 12 ++++++++----
 sound/soc/mxs/mxs-pcm.c         | 43 +++++------------------------------------
 sound/soc/mxs/mxs-pcm.h         |  4 +++-
 sound/soc/mxs/mxs-saif.c        |  6 +++---
 sound/soc/omap/omap-pcm.c       |  8 +-------
 sound/soc/pxa/mmp-pcm.c         | 33 +++++--------------------------
 sound/soc/soc-dmaengine-pcm.c   | 29 ---------------------------
 sound/soc/spear/spear_pcm.c     | 18 ++---------------
 sound/soc/tegra/tegra_pcm.c     |  8 +-------
 sound/soc/ux500/ux500_pcm.c     | 25 +-----------------------
 22 files changed, 76 insertions(+), 287 deletions(-)
 delete mode 100644 sound/soc/cirrus/ep93xx-pcm.h

-- 
1.8.0

^ permalink raw reply	[flat|nested] 31+ messages in thread

end of thread, other threads:[~2013-03-26 14:18 UTC | newest]

Thread overview: 31+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2013-03-22 13:12 [PATCH 00/14] ASoC: Cleanup dmaengine PCM users Lars-Peter Clausen
2013-03-22 13:12 ` [PATCH 01/14] ASoC: ux500_pcm: Remove duplicated SNDRV_PCM_HW_PARAM_PERIODS constraint Lars-Peter Clausen
2013-03-22 14:35   ` Ola Lilja
2013-03-22 13:12 ` [PATCH 02/14] ASoC: spear_pcm: No need to wrap snd_dmaengine_pcm_close() Lars-Peter Clausen
2013-03-25  3:51   ` Rajeev kumar
2013-03-22 13:12 ` [PATCH 03/14] ASoC: omap-pcm: " Lars-Peter Clausen
2013-03-22 13:13   ` Peter Ujfalusi
2013-03-22 14:15     ` Jarkko Nikula
2013-03-22 13:12 ` [PATCH 04/14] ASoC: tegra_pcm: " Lars-Peter Clausen
2013-03-22 15:44   ` Stephen Warren
2013-03-22 13:12 ` [PATCH 05/14] ASoC: ux500_pcm: " Lars-Peter Clausen
2013-03-22 14:36   ` Ola Lilja
2013-03-22 13:12 ` [PATCH 06/14] ASoC: atmel-pcm-dma: " Lars-Peter Clausen
2013-03-25  8:37   ` Bo Shen
2013-03-22 13:12 ` [PATCH 07/14] ASoC: ux500_pcm: No need to use snd_dmaengine_pcm_set_data() Lars-Peter Clausen
2013-03-22 15:01   ` Ola Lilja
2013-03-26 14:16     ` Mark Brown
2013-03-22 13:12 ` [PATCH 08/14] ASoC: speaer_pcm: " Lars-Peter Clausen
2013-03-25  3:59   ` Rajeev kumar
2013-03-25  8:22     ` Lars-Peter Clausen
2013-03-25  8:36       ` Rajeev kumar
2013-03-22 13:12 ` [PATCH 09/14] ASoC: atmel-pcm-dma: Do not use snd_dmaengine_pcm_{set, get}_data() Lars-Peter Clausen
2013-03-25  8:39   ` Bo Shen
2013-03-22 13:12 ` [PATCH 10/14] ASoC: ep93xx: Use ep93xx_dma_params instead of ep93xx_pcm_dma_params Lars-Peter Clausen
2013-03-22 13:12 ` [PATCH 11/14] ASoC: mmp-pcm: Allocate dma filter parameters on the stack Lars-Peter Clausen
2013-03-22 13:12 ` [PATCH 12/14] ASoC: imx-pcm: Embed the imx_dma_data struct in the dma_params struct Lars-Peter Clausen
2013-03-25  2:33   ` Shawn Guo
2013-03-22 13:12 ` [PATCH 13/14] ASoC: mxs: Embed the mxs_dma_data struct in the mxs_pcm_dma_params struct Lars-Peter Clausen
2013-03-25  2:04   ` Shawn Guo
2013-03-22 13:12 ` [PATCH 14/14] ASoC: dmaengine-pcm: Remove snd_dmaengine_pcm_{set, get}_data Lars-Peter Clausen
2013-03-26 14:18 ` [PATCH 00/14] ASoC: Cleanup dmaengine PCM users Mark Brown

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.