summaryrefslogtreecommitdiffstats
path: root/ipc
diff options
context:
space:
mode:
authorWu Fengguang <fengguang.wu@intel.com>2009-12-25 13:14:27 +0800
committerTakashi Iwai <tiwai@suse.de>2009-12-25 14:17:36 +0100
commitef18beded8ddbaafdf4914bab209f77e60ae3a18 (patch)
treea0dc41a87c0d6d68f328ae983ae7a6ffd1444271 /ipc
parent6b7b284958d47b77d06745b36bc7f36dab769d9b (diff)
downloadop-kernel-dev-ef18beded8ddbaafdf4914bab209f77e60ae3a18.zip
op-kernel-dev-ef18beded8ddbaafdf4914bab209f77e60ae3a18.tar.gz
ALSA: hda - HDMI sticky stream tag support
When we run the following commands in turn (with CONFIG_SND_HDA_POWER_SAVE_DEFAULT=0), speaker-test -Dhw:0,3 -c2 -twav # HDMI speaker-test -Dhw:0,0 -c2 -twav # Analog The second command will produce sound in the analog lineout _as well as_ HDMI sink. The root cause is, device 0 "reuses" the same stream tag that was used by device 3, and the "intelhdmi - sticky stream id" patch leaves the HDMI codec in a functional state. So the HDMI codec happily accepts the audio samples which reuse its stream tag. The proposed solution is to remember the last device each azx_dev was assigned to, and prefer to 1) reuse the azx_dev (and hence the stream tag) the HDMI codec last used 2) or assign a never-used azx_dev for HDMI With this patch and the above two speaker-test commands, HDMI codec will use stream tag 8 and Analog codec will use 5. The stream tag used by HDMI codec won't be reused by others, as long as we don't run out of the 4 playback azx_dev's. The legacy Analog codec will continue to use stream tag 5 because its device id is 0 (this is a bit tricky). Signed-off-by: Wu Fengguang <fengguang.wu@intel.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'ipc')
0 files changed, 0 insertions, 0 deletions
OpenPOWER on IntegriCloud