• Lars-Peter Clausen's avatar
    ASoC: generic-dmaengine-pcm: Check NO_RESIDUE flag at runtime · 93b943ed
    Lars-Peter Clausen authored
    Currently we have two different snd_soc_platform_driver structs in the generic
    dmaengine PCM driver. One for dmaengine drivers that support residue reporting
    and one for those which do not. When registering the PCM component we check
    whether the NO_RESIDUE flag is set or not and use the corresponding
    snd_soc_platform_driver. This patch modifies the driver to only have one
    snd_soc_platform_driver struct where the pointer() callback checks the
    NO_RESIDUE flag at runtime. This allows us to set the NO_RESIDUE flag after the
    PCM component has been registered. This becomes necessary when querying whether
    the dmaengine driver supports residue reporting from the dmaengine driver itself
    since the DMA channel might only be requested after the PCM component has been
    registered.
    Signed-off-by: default avatarLars-Peter Clausen <lars@metafoo.de>
    Signed-off-by: default avatarMark Brown <broonie@linaro.org>
    93b943ed
soc-generic-dmaengine-pcm.c 11.4 KB