aboutsummaryrefslogtreecommitdiffstats
path: root/sound/soc/fsl
diff options
context:
space:
mode:
authorLiam Girdwood <lrg@ti.com>2011-02-04 22:12:30 +0000
committerColin Cross <ccross@android.com>2011-06-14 09:06:11 -0700
commit110e2f989d912b5d0f40fbef1de97f1dc99dc1ab (patch)
tree55760bb453f6c3c45dd23df2ce41b069406718bc /sound/soc/fsl
parent6f3f95ae6a0919dc4d119398f78a905799bab6fc (diff)
downloadkernel_samsung_espresso10-110e2f989d912b5d0f40fbef1de97f1dc99dc1ab.zip
kernel_samsung_espresso10-110e2f989d912b5d0f40fbef1de97f1dc99dc1ab.tar.gz
kernel_samsung_espresso10-110e2f989d912b5d0f40fbef1de97f1dc99dc1ab.tar.bz2
ASoC: core - refactor pcm_new() to pass only rtd
In preparation for ASoC DSP support. Currently pcm_new() passes in card, pcm and DAI. Refactor this to only pass in rtd since rtd contains card, pcm and DAI. Struct rtd also contain other members too that are useful to DSPs. Signed-off-by: Liam Girdwood <lrg@ti.com>
Diffstat (limited to 'sound/soc/fsl')
-rw-r--r--sound/soc/fsl/fsl_dma.c6
-rw-r--r--sound/soc/fsl/mpc5200_dma.c7
2 files changed, 8 insertions, 5 deletions
diff --git a/sound/soc/fsl/fsl_dma.c b/sound/soc/fsl/fsl_dma.c
index 6680c0b..5312d1b 100644
--- a/sound/soc/fsl/fsl_dma.c
+++ b/sound/soc/fsl/fsl_dma.c
@@ -294,9 +294,11 @@ static irqreturn_t fsl_dma_isr(int irq, void *dev_id)
* Regardless of where the memory is actually allocated, since the device can
* technically DMA to any 36-bit address, we do need to set the DMA mask to 36.
*/
-static int fsl_dma_new(struct snd_card *card, struct snd_soc_dai *dai,
- struct snd_pcm *pcm)
+static int fsl_dma_new(struct snd_soc_pcm_runtime *rtd)
{
+ struct snd_card *card = rtd->card->snd_card;
+ struct snd_soc_dai *dai = rtd->cpu_dai;
+ struct snd_pcm *pcm = rtd->pcm;
static u64 fsl_dma_dmamask = DMA_BIT_MASK(36);
int ret;
diff --git a/sound/soc/fsl/mpc5200_dma.c b/sound/soc/fsl/mpc5200_dma.c
index fff695c..19ad0c1 100644
--- a/sound/soc/fsl/mpc5200_dma.c
+++ b/sound/soc/fsl/mpc5200_dma.c
@@ -299,10 +299,11 @@ static struct snd_pcm_ops psc_dma_ops = {
};
static u64 psc_dma_dmamask = 0xffffffff;
-static int psc_dma_new(struct snd_card *card, struct snd_soc_dai *dai,
- struct snd_pcm *pcm)
+static int psc_dma_new(struct snd_soc_pcm_runtime *rtd)
{
- struct snd_soc_pcm_runtime *rtd = pcm->private_data;
+ struct snd_card *card = rtd->card->snd_card;
+ struct snd_soc_dai *dai = rtd->cpu_dai;
+ struct snd_pcm *pcm = rtd->pcm;
struct psc_dma *psc_dma = snd_soc_dai_get_drvdata(rtd->cpu_dai);
size_t size = psc_dma_hardware.buffer_bytes_max;
int rc = 0;