Merge branch 'topic/oxygen' into for-linus
* topic/oxygen: sound: oxygen: work around MCE when changing volume
This commit is contained in:
commit
05a33e3d6f
1 changed files with 1 additions and 10 deletions
|
@ -215,17 +215,8 @@ EXPORT_SYMBOL(oxygen_write_spi);
|
||||||
|
|
||||||
void oxygen_write_i2c(struct oxygen *chip, u8 device, u8 map, u8 data)
|
void oxygen_write_i2c(struct oxygen *chip, u8 device, u8 map, u8 data)
|
||||||
{
|
{
|
||||||
unsigned long timeout;
|
|
||||||
|
|
||||||
/* should not need more than about 300 us */
|
/* should not need more than about 300 us */
|
||||||
timeout = jiffies + msecs_to_jiffies(1);
|
msleep(1);
|
||||||
do {
|
|
||||||
if (!(oxygen_read16(chip, OXYGEN_2WIRE_BUS_STATUS)
|
|
||||||
& OXYGEN_2WIRE_BUSY))
|
|
||||||
break;
|
|
||||||
udelay(1);
|
|
||||||
cond_resched();
|
|
||||||
} while (time_after_eq(timeout, jiffies));
|
|
||||||
|
|
||||||
oxygen_write8(chip, OXYGEN_2WIRE_MAP, map);
|
oxygen_write8(chip, OXYGEN_2WIRE_MAP, map);
|
||||||
oxygen_write8(chip, OXYGEN_2WIRE_DATA, data);
|
oxygen_write8(chip, OXYGEN_2WIRE_DATA, data);
|
||||||
|
|
Reference in a new issue