aboutsummaryrefslogtreecommitdiffstats
path: root/sound/pci/hda/patch_realtek.c
diff options
context:
space:
mode:
authorTakashi Iwai <tiwai@suse.de>2008-02-06 08:03:20 -0500
committerTakashi Iwai <tiwai@suse.de>2008-04-24 06:00:07 -0400
commit7ba72ba1fe891a94b1e9d506236507e4dc50e872 (patch)
tree4c3dc43b6fbb1e9a3f28191a38da563e15180e44 /sound/pci/hda/patch_realtek.c
parent6c4cc3a8ed15aacc06a5fd369639fef633cee2bc (diff)
[ALSA] hda-intel - Fix PCM device number assignment
In the current scheme, PCM device numbers are assigned incrementally in the order of codecs. This causes problems when the codec number is irregular, e.g. codec #0 for HDMI and codec #1 for analog. Then the HDMI becomes the first PCM, which is picked up as the default output device. Unfortuantely this doesn't work well with normal setups. This patch introduced the fixed device numbers for the PCM types, namely, analog, SPDIF, HDMI and modem. The PCM devices are assigned according to the corresponding PCM type. After this patch, HDMI will be always assigned to PCM #3, SPDIF to PCM #1, and the first analog to PCM #0, etc. Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'sound/pci/hda/patch_realtek.c')
-rw-r--r--sound/pci/hda/patch_realtek.c1
1 files changed, 1 insertions, 0 deletions
diff --git a/sound/pci/hda/patch_realtek.c b/sound/pci/hda/patch_realtek.c
index 45e661e42c0b..85ea3f82de19 100644
--- a/sound/pci/hda/patch_realtek.c
+++ b/sound/pci/hda/patch_realtek.c
@@ -2499,6 +2499,7 @@ static int alc_build_pcms(struct hda_codec *codec)
2499 codec->num_pcms = 2; 2499 codec->num_pcms = 2;
2500 info = spec->pcm_rec + 1; 2500 info = spec->pcm_rec + 1;
2501 info->name = spec->stream_name_digital; 2501 info->name = spec->stream_name_digital;
2502 info->pcm_type = HDA_PCM_TYPE_SPDIF;
2502 if (spec->multiout.dig_out_nid && 2503 if (spec->multiout.dig_out_nid &&
2503 spec->stream_digital_playback) { 2504 spec->stream_digital_playback) {
2504 info->stream[SNDRV_PCM_STREAM_PLAYBACK] = *(spec->stream_digital_playback); 2505 info->stream[SNDRV_PCM_STREAM_PLAYBACK] = *(spec->stream_digital_playback);