aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--sound/pci/ac97/ac97_codec.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/sound/pci/ac97/ac97_codec.c b/sound/pci/ac97/ac97_codec.c
index 7abcb10b2754..91d8ceb4e9c2 100644
--- a/sound/pci/ac97/ac97_codec.c
+++ b/sound/pci/ac97/ac97_codec.c
@@ -382,7 +382,7 @@ int snd_ac97_update_bits_nolock(struct snd_ac97 *ac97, unsigned short reg,
382 unsigned short old, new; 382 unsigned short old, new;
383 383
384 old = snd_ac97_read_cache(ac97, reg); 384 old = snd_ac97_read_cache(ac97, reg);
385 new = (old & ~mask) | value; 385 new = (old & ~mask) | (value & mask);
386 change = old != new; 386 change = old != new;
387 if (change) { 387 if (change) {
388 ac97->regs[reg] = new; 388 ac97->regs[reg] = new;
@@ -399,7 +399,7 @@ static int snd_ac97_ad18xx_update_pcm_bits(struct snd_ac97 *ac97, int codec, uns
399 399
400 mutex_lock(&ac97->page_mutex); 400 mutex_lock(&ac97->page_mutex);
401 old = ac97->spec.ad18xx.pcmreg[codec]; 401 old = ac97->spec.ad18xx.pcmreg[codec];
402 new = (old & ~mask) | value; 402 new = (old & ~mask) | (value & mask);
403 change = old != new; 403 change = old != new;
404 if (change) { 404 if (change) {
405 mutex_lock(&ac97->reg_mutex); 405 mutex_lock(&ac97->reg_mutex);