summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBo Shen <voice.shen@atmel.com>2011-12-19 10:57:52 +0100
committerTakashi Iwai <tiwai@suse.de>2011-12-19 11:27:41 +0100
commit8015e3defe491d305b20c2e64b154b999e6da065 (patch)
treee391d859bc1d7e383419c787302efdd44ef406dd
parentMerge branch 'fix/asoc' into for-linus (diff)
downloadlinux-8015e3defe491d305b20c2e64b154b999e6da065.tar.xz
linux-8015e3defe491d305b20c2e64b154b999e6da065.zip
ALSA: atmel/ac97c: using software reset instead hardware reset if not available
Signed-off-by: Bo Shen <voice.shen@atmel.com> Acked-by: Nicolas Ferre <nicolas.ferre@atmel.com> Signed-off-by: Takashi Iwai <tiwai@suse.de>
-rw-r--r--sound/atmel/ac97c.c4
1 files changed, 4 insertions, 0 deletions
diff --git a/sound/atmel/ac97c.c b/sound/atmel/ac97c.c
index 6e5addeb236b..73516f69ac7c 100644
--- a/sound/atmel/ac97c.c
+++ b/sound/atmel/ac97c.c
@@ -899,6 +899,10 @@ static void atmel_ac97c_reset(struct atmel_ac97c *chip)
/* AC97 v2.2 specifications says minimum 1 us. */
udelay(2);
gpio_set_value(chip->reset_pin, 1);
+ } else {
+ ac97c_writel(chip, MR, AC97C_MR_WRST | AC97C_MR_ENA);
+ udelay(2);
+ ac97c_writel(chip, MR, AC97C_MR_ENA);
}
}