22 Jun, 2016

1 commit

  • The new PIO mode for the dwc audio driver causes a link failure
    when it is built as a loadable module but the audio driver is built-in:

    sound/built-in.o: In function `i2s_irq_handler':
    :(.text+0x58c64): undefined reference to `dw_pcm_push_tx'
    sound/built-in.o: In function `dw_i2s_probe':
    :(.text+0x593dc): undefined reference to `dw_pcm_register'

    We could link both into a single module, but apparently the
    author intended them to be separate, so this instead changes
    the Makefile to force the pcm module to be built-in if the
    base module is. This is a bit hacky but not as bad as trying
    to work around it in Kconfig language.

    Signed-off-by: Arnd Bergmann
    Fixes: 79361b2b98b7 ("ASoC: dwc: Add PIO PCM extension")
    Signed-off-by: Mark Brown

    Arnd Bergmann
     

14 Jun, 2016

1 commit

  • A PCM extension was added to I2S driver so that audio
    samples are transferred using PIO mode.

    The PCM supports two channels @ 16 or 32 bits with rates
    32k, 44.1k and 48k.

    Although the mainline I2S driver uses ALSA DMA engine the
    I2S controller can be built without DMA support, therefore
    this is the reason why this extension was added.

    Signed-off-by: Jose Abreu
    Cc: Carlos Palminha
    Cc: Mark Brown
    Cc: Liam Girdwood
    Cc: Jaroslav Kysela
    Cc: Takashi Iwai
    Cc: Rob Herring
    Cc: Alexey Brodkin
    Cc: linux-snps-arc@lists.infradead.org
    Cc: alsa-devel@alsa-project.org
    Cc: linux-kernel@vger.kernel.org
    Signed-off-by: Mark Brown

    Jose Abreu
     

22 Jun, 2012

1 commit