linux-kernel-test/sound
Wu Fengguang 698544de8a ALSA: hda: HDMI channel allocations for audio infoframe
To play a 3+ channels LPCM/DSD stream via HDMI,

	- HDMI sink must tell HDMI source about its speaker placements
	  (via ELD, speaker-allocation field)
	- HDMI source must tell the HDMI sink about channel allocation
	  (via audio infoframe, channel-allocation field)

(related docs: HDMI 1.3a spec section 7.4, CEA-861-D section 7.5.3 and 6.6)

This patch attempts to set the CA(channel-allocation) byte in the audio infoframe
according to
	- the number of channels in the current stream
	- the speakers attached to the HDMI sink

A channel_allocations[] line must meet the following two criteria to be
considered as a valid candidate for CA:
	1) its number of allocated channels = substream->runtime->channels
	2) its speakers are a subset of the available ones on the sink side

If there are multiple candidates, the first one is selected.  This simple
policy shall cheat the sink into playing music, but may direct data to the
wrong speakers.

Signed-off-by: Wu Fengguang <wfg@linux.intel.com>
Signed-off-by: Takashi Iwai <tiwai@suse.de>
2008-11-19 07:35:36 +01:00
..
aoa ALSA: aoa - Remove duplicate assignment of SNDRV_PCM_FMTBIT_S{16,24}_BE bits 2008-08-25 09:57:14 +02:00
arm ALSA: Separate common pxa2xx-pcm code 2008-09-23 08:18:10 +02:00
core ALSA: hda: dynamic jack id 2008-10-27 08:15:14 +01:00
drivers ALSA: mtpav - Fix race in probe 2008-10-10 13:41:58 +02:00
i2c ALSA: revo51: add headphone output 2008-08-25 09:57:17 +02:00
isa ALSA: remove stale files 2008-09-09 09:10:52 +02:00
mips ALSA: Kill snd_assert() in other places 2008-08-13 11:46:40 +02:00
oss sound: remove reference to dead sound OSS vars AEDSP16_MSS and SBPRO 2008-09-09 09:11:01 +02:00
parisc ALSA: harmony - fix a typo 2008-09-04 10:33:55 +02:00
pci ALSA: hda: HDMI channel allocations for audio infoframe 2008-11-19 07:35:36 +01:00
pcmcia ALSA: Kill snd_assert() in other places 2008-08-13 11:46:40 +02:00
ppc ALSA: Kill snd_assert() in other places 2008-08-13 11:46:40 +02:00
sh ALSA: Fix section for snd-aica platform driver 2008-09-23 08:17:58 +02:00
soc ALSA: ASoC: Check for machine type in GTA01 machine driver 2008-10-10 13:41:58 +02:00
sparc ALSA: Kill snd_assert() in other places 2008-08-13 11:46:40 +02:00
spi sound: Convert to menuconfig 2008-05-27 15:56:20 +02:00
synth ALSA: Kill snd_assert() in other places 2008-08-13 11:46:40 +02:00
usb ALSA: usb-audio: dynamic detection of MIDI interfaces in uaxx-quirk 2008-10-10 13:41:57 +02:00
ac97_bus.c [ALSA] ac97_bus power management 2007-02-09 09:03:54 +01:00
Kconfig sound: make OSS sound core optional 2008-08-29 10:06:21 +02:00
last.c [ALSA] Remove sound/driver.h 2008-01-31 17:29:48 +01:00
Makefile [ALSA] Add SPI devices to ALSA Kconfig and Makefile 2007-10-16 15:57:47 +02:00
sound_core.c ALSA: fix section mismatch in the sound_core 2008-09-09 09:11:53 +02:00
sound_firmware.c Detach sched.h from mm.h 2007-05-21 09:18:19 -07:00