Skip to content

Commit

Permalink
ALSA: intel8x0: Fix chmap application
Browse files Browse the repository at this point in the history
The playback chmap for multi-channel stream hasn't been properly added
to intel8x0 devices due to the wrong condition.

Reported-by: Raymond Yau <[email protected]>
Signed-off-by: Takashi Iwai <[email protected]>
  • Loading branch information
tiwai committed Nov 6, 2013
1 parent 8fe7b65 commit 791b3f5
Showing 1 changed file with 8 additions and 9 deletions.
17 changes: 8 additions & 9 deletions sound/pci/intel8x0.c
Original file line number Diff line number Diff line change
Expand Up @@ -1541,17 +1541,16 @@ static int snd_intel8x0_pcm1(struct intel8x0 *chip, int device,
snd_dma_pci_data(chip->pci),
rec->prealloc_size, rec->prealloc_max_size);

if (rec->ac97_idx == ICHD_PCMOUT && rec->playback_ops) {
if (rec->playback_ops &&
rec->playback_ops->open == snd_intel8x0_playback_open) {
struct snd_pcm_chmap *chmap;
int chs = 2;
if (rec->ac97_idx == ICHD_PCMOUT) {
if (chip->multi8)
chs = 8;
else if (chip->multi6)
chs = 6;
else if (chip->multi4)
chs = 4;
}
if (chip->multi8)
chs = 8;
else if (chip->multi6)
chs = 6;
else if (chip->multi4)
chs = 4;
err = snd_pcm_add_chmap_ctls(pcm, SNDRV_PCM_STREAM_PLAYBACK,
snd_pcm_alt_chmaps, chs, 0,
&chmap);
Expand Down

0 comments on commit 791b3f5

Please sign in to comment.