diff options
author | Takashi Iwai <tiwai@suse.de> | 2012-08-03 17:59:36 +0200 |
---|---|---|
committer | Takashi Iwai <tiwai@suse.de> | 2012-09-06 18:08:30 +0200 |
commit | 833a493b7ed2eb8f9059338a0ebf06bebbb6ae93 (patch) | |
tree | 785dd0a6ad97fc13a100e409c8fd21e07872f64d /include/sound | |
parent | 53775b0d0cb91ab217c9853efddc51597b58bbff (diff) | |
download | blackbird-op-linux-833a493b7ed2eb8f9059338a0ebf06bebbb6ae93.tar.gz blackbird-op-linux-833a493b7ed2eb8f9059338a0ebf06bebbb6ae93.zip |
ALSA: ac97: Implement channel map workaround for ALC650
ALC650 has a channel swap option between surround and CLFE channels,
so we need to tweak the channel maps dynamically depending on the
register bit.
Now struct snd_ac97 can contain chmap pointers for playback and
capture. The driver may store these and let ac97 driver changing the
channel mapping dynamically.
Signed-off-by: Takashi Iwai <tiwai@suse.de>
Diffstat (limited to 'include/sound')
-rw-r--r-- | include/sound/ac97_codec.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/include/sound/ac97_codec.h b/include/sound/ac97_codec.h index 02cbb50225bb..4458b87649ff 100644 --- a/include/sound/ac97_codec.h +++ b/include/sound/ac97_codec.h @@ -422,6 +422,7 @@ */ struct snd_ac97; +struct snd_pcm_chmap; struct snd_ac97_build_ops { int (*build_3d) (struct snd_ac97 *ac97); @@ -528,6 +529,8 @@ struct snd_ac97 { struct delayed_work power_work; #endif struct device dev; + + struct snd_pcm_chmap *chmaps[2]; /* channel-maps (optional) */ }; #define to_ac97_t(d) container_of(d, struct snd_ac97, dev) |