summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--sys/dev/sound/pcm/ac97.c7
1 files changed, 5 insertions, 2 deletions
diff --git a/sys/dev/sound/pcm/ac97.c b/sys/dev/sound/pcm/ac97.c
index 5f6ccd0..7ae3a67 100644
--- a/sys/dev/sound/pcm/ac97.c
+++ b/sys/dev/sound/pcm/ac97.c
@@ -474,9 +474,12 @@ ac97_reinitmixer(struct ac97_info *codec)
if (!codec->noext) {
wrcd(codec, AC97_REGEXT_STAT, codec->extstat);
- if (rdcd(codec, AC97_REGEXT_STAT) != codec->extstat)
+ if ((rdcd(codec, AC97_REGEXT_STAT) & AC97_EXTCAPS)
+ != codec->extstat)
device_printf(codec->dev, "ac97 codec failed to reset extended mode (%x, got %x)\n",
- codec->extstat, rdcd(codec, AC97_REGEXT_STAT));
+ codec->extstat,
+ rdcd(codec, AC97_REGEXT_STAT) &
+ AC97_EXTCAPS);
}
if ((rdcd(codec, AC97_REG_POWER) & 2) == 0)
OpenPOWER on IntegriCloud