linux/sound
Lars-Peter Clausen 8b5e2e396b ASoC: blackfin: bf5xx-i2s: Add support for TDM mode
The bf5xx-i2s{,-pcm} and bf5xx-tdm{-pcm} drivers are nearly identical. Both are
for the same hardware each supporting a slight different subset of the hardware.
The bf5xx-i2s driver supports 2 channel I2S mode while the bf5xx-tdm driver
supports TDM mode and channel remapping. This patch adds support for TDM mode
and channel remapping to the bf5xx-i2s driver so that we'll eventually be able
to retire the bf5xx-tdm driver. Unfortunately the hardware is fixed to using 8
channels in TDM mode. The bf5xx-tdm driver jumps through a few hoops to make it
work well with other channel counts as well:
	* Don't support mmap
	* Translate between internal frame size (which is always 8 * sample_size)
	  and ALSA frame size (which depends on the channel count)
	* Have special copy and silence callbacks which are aware of the mismatch
	  between internal and ALSA frame size
	* Reduce the maximum buffer size to ensure that there is enough headroom for
	  dummy data.

The bf5xx-i2s driver is going to use the same mechanisms when being used int
TDM mode.

Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2013-05-30 12:33:40 +01:00
..
aoa ALSA: pcm_format_to_bits strong-typed conversion 2013-04-29 13:36:15 +02:00
arm ALSA: pxa27x: rename pxa27x_assert_ac97reset() 2013-01-08 11:30:08 +00:00
atmel ALSA: atmel: Remove redundant platform_set_drvdata() 2013-05-03 11:40:23 +02:00
core aio: don't include aio.h in sched.h 2013-05-07 20:16:25 -07:00
drivers ALSA: pcm_format_to_bits strong-typed conversion 2013-04-29 13:36:15 +02:00
firewire ALSA: firewire-speakers: remove __dev* attributes 2012-12-07 07:29:30 +01:00
i2c [media] v4l2: add const to argument of write-only s_tuner ioctl 2013-03-24 06:31:23 -03:00
isa ALSA: Remove the rest of __devinit* in comments 2012-12-07 07:41:56 +01:00
mips ALSA: mips/sgio2audio: Remove redundant platform_set_drvdata() 2013-05-06 10:45:54 +02:00
oss sound fixes for v3.10-rc1 2013-05-10 07:51:56 -07:00
parisc ALSA: parisc/harmony: remove __dev* attributes 2012-12-07 07:30:11 +01:00
pci sound fixes for v3.10-rc1 2013-05-10 07:51:56 -07:00
pcmcia sound/pcmcia: use module_pcmcia_driver() in pcmcia drivers 2013-03-15 12:26:39 -07:00
ppc ALSA: ppc: remove __dev* attributes 2012-12-07 07:33:30 +01:00
sh ALSA: sh: remove __dev* attributes 2012-12-07 07:33:47 +01:00
soc ASoC: blackfin: bf5xx-i2s: Add support for TDM mode 2013-05-30 12:33:40 +01:00
sparc ALSA: sparc: remove __dev* attributes 2012-12-07 07:34:04 +01:00
spi ALSA: at73c213: Use dev_pm_ops 2013-04-11 11:58:12 +02:00
synth
usb ALSA: usb-audio: caiaq: fix endianness bug in snd_usb_caiaq_maschine_dispatch 2013-04-30 09:19:02 +02:00
ac97_bus.c
Kconfig sound: remove reference to feature-removal-schedule.txt 2012-12-17 17:15:12 -08:00
last.c ALSA: Remove the last mention of SNDRV_MAIN_OBJECT_FILE 2012-09-03 10:07:23 +02:00
Makefile
sound_core.c ALSA: add/change some comments describing function return values 2013-03-12 08:32:53 +01:00
sound_firmware.c sound_firmware: don't bother with filp_close() 2013-04-09 15:16:32 -04:00