linux/sound/soc/bcm
Matthias Reichl abd4f0e1c2
ASoC: bcm2835: Support left/right justified and DSP modes
DSP modes and left/right justified modes can be supported
on bcm2835 by configuring the frame sync polarity and
frame sync length registers and by adjusting the
channel data position registers.

Clock and frame sync polarity handling in hw_params has
been refactored to make the interaction between logical
rising/falling edge frame start and physical configuration
(changed by normal/inverted polarity modes) clearer.

Modes where the first active data bit is transmitted immediately
after frame start (eg DSP mode B with slot 0 active)
only work reliable if bcm2835 is configured as frame master.
In frame slave mode channel swap (or shift, this isn't quite
clear yet) can occur.

Currently the driver only warns if an unstable configuration
is detected but doensn't prevent using them.

Signed-off-by: Matthias Reichl <hias@horus.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
2017-11-10 21:26:07 +00:00
..
bcm2835-i2s.c ASoC: bcm2835: Support left/right justified and DSP modes 2017-11-10 21:26:07 +00:00
cygnus-pcm.c ASoC: cygnus: Add Cygnus audio DMA driver 2016-05-31 17:50:42 +01:00
cygnus-ssp.c Merge remote-tracking branches 'asoc/topic/cs43130', 'asoc/topic/cs53l30', 'asoc/topic/cygnus' and 'asoc/topic/davinci' into asoc-next 2017-09-01 12:12:32 +01:00
cygnus-ssp.h ASoC: cygnus: Add Cygnus audio DAI driver 2016-05-31 17:50:42 +01:00
Kconfig ASoC: bcm: add depends on HAS_DMA 2016-11-02 14:57:05 -06:00
Makefile ASoC: cygnus: Add Cygnus audio DMA driver 2016-05-31 17:50:42 +01:00