diff options
author | Takashi Iwai <tiwai@suse.de> | 2009-09-10 17:32:59 +0400 |
---|---|---|
committer | Takashi Iwai <tiwai@suse.de> | 2009-09-10 17:32:59 +0400 |
commit | 05a33e3d6fdca6ae3f645cc7bca9c11a4476e84c (patch) | |
tree | e0477cf734f93da64564a4457a45ab563f70f5d1 /sound/pci | |
parent | fa285190025d0b9a35ed0f6233bfaa721281e0f4 (diff) | |
parent | f1bc07af9a9edc5c1d4bdd971f7099316ed2e405 (diff) | |
download | linux-05a33e3d6fdca6ae3f645cc7bca9c11a4476e84c.tar.xz |
Merge branch 'topic/oxygen' into for-linus
* topic/oxygen:
sound: oxygen: work around MCE when changing volume
Diffstat (limited to 'sound/pci')
-rw-r--r-- | sound/pci/oxygen/oxygen_io.c | 11 |
1 files changed, 1 insertions, 10 deletions
diff --git a/sound/pci/oxygen/oxygen_io.c b/sound/pci/oxygen/oxygen_io.c index c1eb923f2ac9..09b2b2a36df5 100644 --- a/sound/pci/oxygen/oxygen_io.c +++ b/sound/pci/oxygen/oxygen_io.c @@ -215,17 +215,8 @@ EXPORT_SYMBOL(oxygen_write_spi); void oxygen_write_i2c(struct oxygen *chip, u8 device, u8 map, u8 data) { - unsigned long timeout; - /* should not need more than about 300 us */ - timeout = jiffies + msecs_to_jiffies(1); - do { - if (!(oxygen_read16(chip, OXYGEN_2WIRE_BUS_STATUS) - & OXYGEN_2WIRE_BUSY)) - break; - udelay(1); - cond_resched(); - } while (time_after_eq(timeout, jiffies)); + msleep(1); oxygen_write8(chip, OXYGEN_2WIRE_MAP, map); oxygen_write8(chip, OXYGEN_2WIRE_DATA, data); |