From: zhangqing Date: Wed, 24 Sep 2014 08:00:09 +0000 (+0800) Subject: rk312x:rt5025&rt5036:modify usb irq error X-Git-Tag: firefly_0821_release~4640^2~7^2~10 X-Git-Url: http://demsky.eecs.uci.edu/git/?a=commitdiff_plain;h=bb24c5d1b9ab137b1e9e55684b25264f31d7bd59;p=firefly-linux-kernel-4.4.55.git rk312x:rt5025&rt5036:modify usb irq error --- diff --git a/drivers/mfd/rt5025-i2c.c b/drivers/mfd/rt5025-i2c.c index 18ec6e5c4e24..e3d76be07fd0 100755 --- a/drivers/mfd/rt5025-i2c.c +++ b/drivers/mfd/rt5025-i2c.c @@ -63,28 +63,22 @@ EXPORT_SYMBOL(rt5025_reg_block_write); int rt5025_reg_read(struct i2c_client *i2c, int reg) { - struct rt5025_chip *chip = i2c_get_clientdata(i2c); int ret; RTINFO("I2C Read (client : 0x%x) reg = 0x%x\n", (unsigned int) i2c, (unsigned int) reg); - mutex_lock(&chip->io_lock); ret = i2c_smbus_read_byte_data(i2c, reg); - mutex_unlock(&chip->io_lock); return ret; } EXPORT_SYMBOL(rt5025_reg_read); int rt5025_reg_write(struct i2c_client *i2c, int reg, unsigned char data) { - struct rt5025_chip *chip = i2c_get_clientdata(i2c); int ret; RTINFO("I2C Write (client : 0x%x) reg = 0x%x, data = 0x%x\n", (unsigned int) i2c, (unsigned int) reg, (unsigned int) data); - mutex_lock(&chip->io_lock); ret = i2c_smbus_write_byte_data(i2c, reg, data); - mutex_unlock(&chip->io_lock); return ret; } EXPORT_SYMBOL(rt5025_reg_write); @@ -92,12 +86,9 @@ EXPORT_SYMBOL(rt5025_reg_write); int rt5025_assign_bits(struct i2c_client *i2c, int reg, unsigned char mask, unsigned char data) { - struct rt5025_chip *chip = i2c_get_clientdata(i2c); unsigned char value; int ret; - mutex_lock(&chip->io_lock); - ret = rt5025_read_device(i2c, reg, 1, &value); if (ret < 0) @@ -106,7 +97,6 @@ int rt5025_assign_bits(struct i2c_client *i2c, int reg, value |= (data&mask); ret = i2c_smbus_write_byte_data(i2c, reg, value); out: - mutex_unlock(&chip->io_lock); return ret; } EXPORT_SYMBOL(rt5025_assign_bits); diff --git a/drivers/mfd/rt5036-i2c.c b/drivers/mfd/rt5036-i2c.c index 1d2d616971b3..db1324069055 100755 --- a/drivers/mfd/rt5036-i2c.c +++ b/drivers/mfd/rt5036-i2c.c @@ -66,28 +66,22 @@ EXPORT_SYMBOL(rt5036_reg_block_write); int rt5036_reg_read(struct i2c_client *i2c, int reg) { - struct rt5036_chip *chip = i2c_get_clientdata(i2c); int ret; RTINFO("I2C Read (client : 0x%x) reg = 0x%x\n", (unsigned int)i2c, (unsigned int)reg); - mutex_lock(&chip->io_lock); ret = i2c_smbus_read_byte_data(i2c, reg); - mutex_unlock(&chip->io_lock); return ret; } EXPORT_SYMBOL(rt5036_reg_read); int rt5036_reg_write(struct i2c_client *i2c, int reg, unsigned char data) { - struct rt5036_chip *chip = i2c_get_clientdata(i2c); int ret; RTINFO("I2C Write (client : 0x%x) reg = 0x%x, data = 0x%x\n", (unsigned int)i2c, (unsigned int)reg, (unsigned int)data); - mutex_lock(&chip->io_lock); ret = i2c_smbus_write_byte_data(i2c, reg, data); - mutex_unlock(&chip->io_lock); return ret; } EXPORT_SYMBOL(rt5036_reg_write); @@ -95,11 +89,9 @@ EXPORT_SYMBOL(rt5036_reg_write); int rt5036_assign_bits(struct i2c_client *i2c, int reg, unsigned char mask, unsigned char data) { - struct rt5036_chip *chip = i2c_get_clientdata(i2c); unsigned char value; int ret; - mutex_lock(&chip->io_lock); ret = rt5036_read_device(i2c, reg, 1, &value); if (ret < 0) @@ -108,7 +100,6 @@ int rt5036_assign_bits(struct i2c_client *i2c, int reg, value |= (data & mask); ret = i2c_smbus_write_byte_data(i2c, reg, value); out: - mutex_unlock(&chip->io_lock); return ret; } EXPORT_SYMBOL(rt5036_assign_bits);