]> Pileus Git - ~andy/linux/commitdiff
ASoC: au1x: Don't set unused struct snd_pcm_hardware fields
authorLars-Peter Clausen <lars@metafoo.de>
Fri, 20 Dec 2013 13:20:08 +0000 (14:20 +0100)
committerMark Brown <broonie@linaro.org>
Sat, 21 Dec 2013 14:23:20 +0000 (14:23 +0000)
The ASoC core assumes that the PCM component of the ASoC card transparently
moves data around and does not impose any restrictions on the memory layout or
the transfer speed. It ignores all fields from the snd_pcm_hardware struct for
the PCM driver that are related to this. Setting these fields in the PCM driver
might suggest otherwise though, so rather not set them.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
Tested-by: Manuel Lauss <manuel.lauss@gmail.com>
Signed-off-by: Mark Brown <broonie@linaro.org>
sound/soc/au1x/dbdma2.c
sound/soc/au1x/dma.c

index 3b4eafaf30d3177d223f1a28c4374e55d32e8e68..17a24d804734f7539b456751708a206c9925319f 100644 (file)
@@ -65,19 +65,10 @@ struct au1xpsc_audio_dmadata {
 #define AU1XPSC_PERIOD_MIN_BYTES       1024
 #define AU1XPSC_BUFFER_MIN_BYTES       65536
 
-#define AU1XPSC_PCM_FMTS                                       \
-       (SNDRV_PCM_FMTBIT_S8     | SNDRV_PCM_FMTBIT_U8 |        \
-        SNDRV_PCM_FMTBIT_S16_LE | SNDRV_PCM_FMTBIT_S16_BE |    \
-        SNDRV_PCM_FMTBIT_U16_LE | SNDRV_PCM_FMTBIT_U16_BE |    \
-        SNDRV_PCM_FMTBIT_S32_LE | SNDRV_PCM_FMTBIT_S32_BE |    \
-        SNDRV_PCM_FMTBIT_U32_LE | SNDRV_PCM_FMTBIT_U32_BE |    \
-        0)
-
 /* PCM hardware DMA capabilities - platform specific */
 static const struct snd_pcm_hardware au1xpsc_pcm_hardware = {
        .info             = SNDRV_PCM_INFO_MMAP | SNDRV_PCM_INFO_MMAP_VALID |
                            SNDRV_PCM_INFO_INTERLEAVED | SNDRV_PCM_INFO_BATCH,
-       .formats          = AU1XPSC_PCM_FMTS,
        .period_bytes_min = AU1XPSC_PERIOD_MIN_BYTES,
        .period_bytes_max = 4096 * 1024 - 1,
        .periods_min      = 2,
index befd1074f9bdbd9b008dc6324b5669a7f8a549c7..e920b60bf6c2f9fe2a43cc515ba4dec69a977127 100644 (file)
 
 #include "psc.h"
 
-#define ALCHEMY_PCM_FMTS                                       \
-       (SNDRV_PCM_FMTBIT_S8     | SNDRV_PCM_FMTBIT_U8 |        \
-        SNDRV_PCM_FMTBIT_S16_LE | SNDRV_PCM_FMTBIT_S16_BE |    \
-        SNDRV_PCM_FMTBIT_U16_LE | SNDRV_PCM_FMTBIT_U16_BE |    \
-        SNDRV_PCM_FMTBIT_S32_LE | SNDRV_PCM_FMTBIT_S32_BE |    \
-        SNDRV_PCM_FMTBIT_U32_LE | SNDRV_PCM_FMTBIT_U32_BE |    \
-        0)
-
 struct pcm_period {
        u32 start;
        u32 relative_end;       /* relative to start of buffer */
@@ -171,12 +163,6 @@ static irqreturn_t au1000_dma_interrupt(int irq, void *ptr)
 static const struct snd_pcm_hardware alchemy_pcm_hardware = {
        .info             = SNDRV_PCM_INFO_MMAP | SNDRV_PCM_INFO_MMAP_VALID |
                            SNDRV_PCM_INFO_INTERLEAVED | SNDRV_PCM_INFO_BATCH,
-       .formats          = ALCHEMY_PCM_FMTS,
-       .rates            = SNDRV_PCM_RATE_8000_192000,
-       .rate_min         = SNDRV_PCM_RATE_8000,
-       .rate_max         = SNDRV_PCM_RATE_192000,
-       .channels_min     = 2,
-       .channels_max     = 2,
        .period_bytes_min = 1024,
        .period_bytes_max = 16 * 1024 - 1,
        .periods_min      = 4,