diff options
author | Manuel Lauss <manuel.lauss@googlemail.com> | 2011-07-25 07:45:04 -0400 |
---|---|---|
committer | Mark Brown <broonie@opensource.wolfsonmicro.com> | 2011-07-27 14:16:51 -0400 |
commit | 25942fdc824a709c48190356ed058ef7be19fb6a (patch) | |
tree | cbe6493284f15f9972a8718d8d7e44c62979ba35 /sound | |
parent | adbc7a5a61ee9225e0b80d3f5719e05a88db2b4c (diff) |
ASoC: au1x: use substream stream info directly
PCM_TX/RX are the same as SNDRV_PCM_STREAM_PLAYBACK/CAPTURE. Use
them directly.
Signed-off-by: Manuel Lauss <manuel.lauss@googlemail.com>
Acked-by: Ralf Baechle <ralf@linux-mips.org>
Acked-by: Liam Girdwood <lrg@ti.com>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Diffstat (limited to 'sound')
-rw-r--r-- | sound/soc/au1x/dbdma2.c | 10 | ||||
-rw-r--r-- | sound/soc/au1x/psc-ac97.c | 18 | ||||
-rw-r--r-- | sound/soc/au1x/psc-i2s.c | 14 | ||||
-rw-r--r-- | sound/soc/au1x/psc.h | 6 |
4 files changed, 21 insertions, 27 deletions
diff --git a/sound/soc/au1x/dbdma2.c b/sound/soc/au1x/dbdma2.c index fd5378f7dece..d7d04e26eee5 100644 --- a/sound/soc/au1x/dbdma2.c +++ b/sound/soc/au1x/dbdma2.c | |||
@@ -169,7 +169,7 @@ static int au1x_pcm_dbdma_realloc(struct au1xpsc_audio_dmadata *pcd, | |||
169 | 169 | ||
170 | au1x_pcm_dbdma_free(pcd); | 170 | au1x_pcm_dbdma_free(pcd); |
171 | 171 | ||
172 | if (stype == PCM_RX) | 172 | if (stype == SNDRV_PCM_STREAM_CAPTURE) |
173 | pcd->ddma_chan = au1xxx_dbdma_chan_alloc(pcd->ddma_id, | 173 | pcd->ddma_chan = au1xxx_dbdma_chan_alloc(pcd->ddma_id, |
174 | DSCR_CMD0_ALWAYS, | 174 | DSCR_CMD0_ALWAYS, |
175 | au1x_pcm_dmarx_cb, (void *)pcd); | 175 | au1x_pcm_dmarx_cb, (void *)pcd); |
@@ -198,7 +198,7 @@ static inline struct au1xpsc_audio_dmadata *to_dmadata(struct snd_pcm_substream | |||
198 | struct snd_soc_pcm_runtime *rtd = ss->private_data; | 198 | struct snd_soc_pcm_runtime *rtd = ss->private_data; |
199 | struct au1xpsc_audio_dmadata *pcd = | 199 | struct au1xpsc_audio_dmadata *pcd = |
200 | snd_soc_platform_get_drvdata(rtd->platform); | 200 | snd_soc_platform_get_drvdata(rtd->platform); |
201 | return &pcd[SUBSTREAM_TYPE(ss)]; | 201 | return &pcd[ss->stream]; |
202 | } | 202 | } |
203 | 203 | ||
204 | static int au1xpsc_pcm_hw_params(struct snd_pcm_substream *substream, | 204 | static int au1xpsc_pcm_hw_params(struct snd_pcm_substream *substream, |
@@ -212,7 +212,7 @@ static int au1xpsc_pcm_hw_params(struct snd_pcm_substream *substream, | |||
212 | if (ret < 0) | 212 | if (ret < 0) |
213 | goto out; | 213 | goto out; |
214 | 214 | ||
215 | stype = SUBSTREAM_TYPE(substream); | 215 | stype = substream->stream; |
216 | pcd = to_dmadata(substream); | 216 | pcd = to_dmadata(substream); |
217 | 217 | ||
218 | DBG("runtime->dma_area = 0x%08lx dma_addr_t = 0x%08lx dma_size = %d " | 218 | DBG("runtime->dma_area = 0x%08lx dma_addr_t = 0x%08lx dma_size = %d " |
@@ -255,7 +255,7 @@ static int au1xpsc_pcm_prepare(struct snd_pcm_substream *substream) | |||
255 | 255 | ||
256 | au1xxx_dbdma_reset(pcd->ddma_chan); | 256 | au1xxx_dbdma_reset(pcd->ddma_chan); |
257 | 257 | ||
258 | if (SUBSTREAM_TYPE(substream) == PCM_RX) { | 258 | if (substream->stream == SNDRV_PCM_STREAM_CAPTURE) { |
259 | au1x_pcm_queue_rx(pcd); | 259 | au1x_pcm_queue_rx(pcd); |
260 | au1x_pcm_queue_rx(pcd); | 260 | au1x_pcm_queue_rx(pcd); |
261 | } else { | 261 | } else { |
@@ -295,7 +295,7 @@ static int au1xpsc_pcm_open(struct snd_pcm_substream *substream) | |||
295 | { | 295 | { |
296 | struct au1xpsc_audio_dmadata *pcd = to_dmadata(substream); | 296 | struct au1xpsc_audio_dmadata *pcd = to_dmadata(substream); |
297 | struct snd_soc_pcm_runtime *rtd = substream->private_data; | 297 | struct snd_soc_pcm_runtime *rtd = substream->private_data; |
298 | int stype = SUBSTREAM_TYPE(substream), *dmaids; | 298 | int stype = substream->stream, *dmaids; |
299 | 299 | ||
300 | dmaids = snd_soc_dai_get_dma_data(rtd->cpu_dai, substream); | 300 | dmaids = snd_soc_dai_get_dma_data(rtd->cpu_dai, substream); |
301 | if (!dmaids) | 301 | if (!dmaids) |
diff --git a/sound/soc/au1x/psc-ac97.c b/sound/soc/au1x/psc-ac97.c index 44296abfc38f..172eefd38b2d 100644 --- a/sound/soc/au1x/psc-ac97.c +++ b/sound/soc/au1x/psc-ac97.c | |||
@@ -41,14 +41,14 @@ | |||
41 | (SNDRV_PCM_FMTBIT_S16_LE | SNDRV_PCM_FMTBIT_S20_3BE) | 41 | (SNDRV_PCM_FMTBIT_S16_LE | SNDRV_PCM_FMTBIT_S20_3BE) |
42 | 42 | ||
43 | #define AC97PCR_START(stype) \ | 43 | #define AC97PCR_START(stype) \ |
44 | ((stype) == PCM_TX ? PSC_AC97PCR_TS : PSC_AC97PCR_RS) | 44 | ((stype) == SNDRV_PCM_STREAM_PLAYBACK ? PSC_AC97PCR_TS : PSC_AC97PCR_RS) |
45 | #define AC97PCR_STOP(stype) \ | 45 | #define AC97PCR_STOP(stype) \ |
46 | ((stype) == PCM_TX ? PSC_AC97PCR_TP : PSC_AC97PCR_RP) | 46 | ((stype) == SNDRV_PCM_STREAM_PLAYBACK ? PSC_AC97PCR_TP : PSC_AC97PCR_RP) |
47 | #define AC97PCR_CLRFIFO(stype) \ | 47 | #define AC97PCR_CLRFIFO(stype) \ |
48 | ((stype) == PCM_TX ? PSC_AC97PCR_TC : PSC_AC97PCR_RC) | 48 | ((stype) == SNDRV_PCM_STREAM_PLAYBACK ? PSC_AC97PCR_TC : PSC_AC97PCR_RC) |
49 | 49 | ||
50 | #define AC97STAT_BUSY(stype) \ | 50 | #define AC97STAT_BUSY(stype) \ |
51 | ((stype) == PCM_TX ? PSC_AC97STAT_TB : PSC_AC97STAT_RB) | 51 | ((stype) == SNDRV_PCM_STREAM_PLAYBACK ? PSC_AC97STAT_TB : PSC_AC97STAT_RB) |
52 | 52 | ||
53 | /* instance data. There can be only one, MacLeod!!!! */ | 53 | /* instance data. There can be only one, MacLeod!!!! */ |
54 | static struct au1xpsc_audio_data *au1xpsc_ac97_workdata; | 54 | static struct au1xpsc_audio_data *au1xpsc_ac97_workdata; |
@@ -215,7 +215,7 @@ static int au1xpsc_ac97_hw_params(struct snd_pcm_substream *substream, | |||
215 | { | 215 | { |
216 | struct au1xpsc_audio_data *pscdata = snd_soc_dai_get_drvdata(dai); | 216 | struct au1xpsc_audio_data *pscdata = snd_soc_dai_get_drvdata(dai); |
217 | unsigned long r, ro, stat; | 217 | unsigned long r, ro, stat; |
218 | int chans, t, stype = SUBSTREAM_TYPE(substream); | 218 | int chans, t, stype = substream->stream; |
219 | 219 | ||
220 | chans = params_channels(params); | 220 | chans = params_channels(params); |
221 | 221 | ||
@@ -235,7 +235,7 @@ static int au1xpsc_ac97_hw_params(struct snd_pcm_substream *substream, | |||
235 | r |= PSC_AC97CFG_SET_LEN(params->msbits); | 235 | r |= PSC_AC97CFG_SET_LEN(params->msbits); |
236 | 236 | ||
237 | /* channels: enable slots for front L/R channel */ | 237 | /* channels: enable slots for front L/R channel */ |
238 | if (stype == PCM_TX) { | 238 | if (stype == SNDRV_PCM_STREAM_PLAYBACK) { |
239 | r &= ~PSC_AC97CFG_TXSLOT_MASK; | 239 | r &= ~PSC_AC97CFG_TXSLOT_MASK; |
240 | r |= PSC_AC97CFG_TXSLOT_ENA(3); | 240 | r |= PSC_AC97CFG_TXSLOT_ENA(3); |
241 | r |= PSC_AC97CFG_TXSLOT_ENA(4); | 241 | r |= PSC_AC97CFG_TXSLOT_ENA(4); |
@@ -294,7 +294,7 @@ static int au1xpsc_ac97_trigger(struct snd_pcm_substream *substream, | |||
294 | int cmd, struct snd_soc_dai *dai) | 294 | int cmd, struct snd_soc_dai *dai) |
295 | { | 295 | { |
296 | struct au1xpsc_audio_data *pscdata = snd_soc_dai_get_drvdata(dai); | 296 | struct au1xpsc_audio_data *pscdata = snd_soc_dai_get_drvdata(dai); |
297 | int ret, stype = SUBSTREAM_TYPE(substream); | 297 | int ret, stype = substream->stream; |
298 | 298 | ||
299 | ret = 0; | 299 | ret = 0; |
300 | 300 | ||
@@ -391,12 +391,12 @@ static int __devinit au1xpsc_ac97_drvprobe(struct platform_device *pdev) | |||
391 | r = platform_get_resource(pdev, IORESOURCE_DMA, 0); | 391 | r = platform_get_resource(pdev, IORESOURCE_DMA, 0); |
392 | if (!r) | 392 | if (!r) |
393 | goto out2; | 393 | goto out2; |
394 | wd->dmaids[PCM_TX] = r->start; | 394 | wd->dmaids[SNDRV_PCM_STREAM_PLAYBACK] = r->start; |
395 | 395 | ||
396 | r = platform_get_resource(pdev, IORESOURCE_DMA, 1); | 396 | r = platform_get_resource(pdev, IORESOURCE_DMA, 1); |
397 | if (!r) | 397 | if (!r) |
398 | goto out2; | 398 | goto out2; |
399 | wd->dmaids[PCM_RX] = r->start; | 399 | wd->dmaids[SNDRV_PCM_STREAM_CAPTURE] = r->start; |
400 | 400 | ||
401 | /* configuration: max dma trigger threshold, enable ac97 */ | 401 | /* configuration: max dma trigger threshold, enable ac97 */ |
402 | wd->cfg = PSC_AC97CFG_RT_FIFO8 | PSC_AC97CFG_TT_FIFO8 | | 402 | wd->cfg = PSC_AC97CFG_RT_FIFO8 | PSC_AC97CFG_TT_FIFO8 | |
diff --git a/sound/soc/au1x/psc-i2s.c b/sound/soc/au1x/psc-i2s.c index 1b7ab5d422e0..7c5ae920544f 100644 --- a/sound/soc/au1x/psc-i2s.c +++ b/sound/soc/au1x/psc-i2s.c | |||
@@ -42,13 +42,13 @@ | |||
42 | (SNDRV_PCM_FMTBIT_S16_LE | SNDRV_PCM_FMTBIT_S24_LE) | 42 | (SNDRV_PCM_FMTBIT_S16_LE | SNDRV_PCM_FMTBIT_S24_LE) |
43 | 43 | ||
44 | #define I2SSTAT_BUSY(stype) \ | 44 | #define I2SSTAT_BUSY(stype) \ |
45 | ((stype) == PCM_TX ? PSC_I2SSTAT_TB : PSC_I2SSTAT_RB) | 45 | ((stype) == SNDRV_PCM_STREAM_PLAYBACK ? PSC_I2SSTAT_TB : PSC_I2SSTAT_RB) |
46 | #define I2SPCR_START(stype) \ | 46 | #define I2SPCR_START(stype) \ |
47 | ((stype) == PCM_TX ? PSC_I2SPCR_TS : PSC_I2SPCR_RS) | 47 | ((stype) == SNDRV_PCM_STREAM_PLAYBACK ? PSC_I2SPCR_TS : PSC_I2SPCR_RS) |
48 | #define I2SPCR_STOP(stype) \ | 48 | #define I2SPCR_STOP(stype) \ |
49 | ((stype) == PCM_TX ? PSC_I2SPCR_TP : PSC_I2SPCR_RP) | 49 | ((stype) == SNDRV_PCM_STREAM_PLAYBACK ? PSC_I2SPCR_TP : PSC_I2SPCR_RP) |
50 | #define I2SPCR_CLRFIFO(stype) \ | 50 | #define I2SPCR_CLRFIFO(stype) \ |
51 | ((stype) == PCM_TX ? PSC_I2SPCR_TC : PSC_I2SPCR_RC) | 51 | ((stype) == SNDRV_PCM_STREAM_PLAYBACK ? PSC_I2SPCR_TC : PSC_I2SPCR_RC) |
52 | 52 | ||
53 | 53 | ||
54 | static int au1xpsc_i2s_set_fmt(struct snd_soc_dai *cpu_dai, | 54 | static int au1xpsc_i2s_set_fmt(struct snd_soc_dai *cpu_dai, |
@@ -240,7 +240,7 @@ static int au1xpsc_i2s_trigger(struct snd_pcm_substream *substream, int cmd, | |||
240 | struct snd_soc_dai *dai) | 240 | struct snd_soc_dai *dai) |
241 | { | 241 | { |
242 | struct au1xpsc_audio_data *pscdata = snd_soc_dai_get_drvdata(dai); | 242 | struct au1xpsc_audio_data *pscdata = snd_soc_dai_get_drvdata(dai); |
243 | int ret, stype = SUBSTREAM_TYPE(substream); | 243 | int ret, stype = substream->stream; |
244 | 244 | ||
245 | switch (cmd) { | 245 | switch (cmd) { |
246 | case SNDRV_PCM_TRIGGER_START: | 246 | case SNDRV_PCM_TRIGGER_START: |
@@ -316,12 +316,12 @@ static int __devinit au1xpsc_i2s_drvprobe(struct platform_device *pdev) | |||
316 | r = platform_get_resource(pdev, IORESOURCE_DMA, 0); | 316 | r = platform_get_resource(pdev, IORESOURCE_DMA, 0); |
317 | if (!r) | 317 | if (!r) |
318 | goto out2; | 318 | goto out2; |
319 | wd->dmaids[PCM_TX] = r->start; | 319 | wd->dmaids[SNDRV_PCM_STREAM_PLAYBACK] = r->start; |
320 | 320 | ||
321 | r = platform_get_resource(pdev, IORESOURCE_DMA, 1); | 321 | r = platform_get_resource(pdev, IORESOURCE_DMA, 1); |
322 | if (!r) | 322 | if (!r) |
323 | goto out2; | 323 | goto out2; |
324 | wd->dmaids[PCM_RX] = r->start; | 324 | wd->dmaids[SNDRV_PCM_STREAM_CAPTURE] = r->start; |
325 | 325 | ||
326 | /* preserve PSC clock source set up by platform (dev.platform_data | 326 | /* preserve PSC clock source set up by platform (dev.platform_data |
327 | * is already occupied by soc layer) | 327 | * is already occupied by soc layer) |
diff --git a/sound/soc/au1x/psc.h b/sound/soc/au1x/psc.h index 1b21c4ffae12..b16b2e02e0c9 100644 --- a/sound/soc/au1x/psc.h +++ b/sound/soc/au1x/psc.h | |||
@@ -13,12 +13,6 @@ | |||
13 | #ifndef _AU1X_PCM_H | 13 | #ifndef _AU1X_PCM_H |
14 | #define _AU1X_PCM_H | 14 | #define _AU1X_PCM_H |
15 | 15 | ||
16 | #define PCM_TX 0 | ||
17 | #define PCM_RX 1 | ||
18 | |||
19 | #define SUBSTREAM_TYPE(substream) \ | ||
20 | ((substream)->stream == SNDRV_PCM_STREAM_PLAYBACK ? PCM_TX : PCM_RX) | ||
21 | |||
22 | struct au1xpsc_audio_data { | 16 | struct au1xpsc_audio_data { |
23 | void __iomem *mmio; | 17 | void __iomem *mmio; |
24 | 18 | ||