i2c-smbus: Use device_lock/device_unlock
Use the new device locking/unlocking API. Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au> Signed-off-by: Jean Delvare <khali@linux-fr.org>
This commit is contained in:
committed by
Jean Delvare
parent
daf9fe2ee9
commit
f635a1e74b
@@ -22,7 +22,6 @@
|
|||||||
#include <linux/kernel.h>
|
#include <linux/kernel.h>
|
||||||
#include <linux/module.h>
|
#include <linux/module.h>
|
||||||
#include <linux/device.h>
|
#include <linux/device.h>
|
||||||
#include <linux/semaphore.h>
|
|
||||||
#include <linux/interrupt.h>
|
#include <linux/interrupt.h>
|
||||||
#include <linux/workqueue.h>
|
#include <linux/workqueue.h>
|
||||||
#include <linux/i2c.h>
|
#include <linux/i2c.h>
|
||||||
@@ -55,7 +54,7 @@ static int smbus_do_alert(struct device *dev, void *addrp)
|
|||||||
* Drivers should either disable alerts, or provide at least
|
* Drivers should either disable alerts, or provide at least
|
||||||
* a minimal handler. Lock so client->driver won't change.
|
* a minimal handler. Lock so client->driver won't change.
|
||||||
*/
|
*/
|
||||||
down(&dev->sem);
|
device_lock(dev);
|
||||||
if (client->driver) {
|
if (client->driver) {
|
||||||
if (client->driver->alert)
|
if (client->driver->alert)
|
||||||
client->driver->alert(client, data->flag);
|
client->driver->alert(client, data->flag);
|
||||||
@@ -63,7 +62,7 @@ static int smbus_do_alert(struct device *dev, void *addrp)
|
|||||||
dev_warn(&client->dev, "no driver alert()!\n");
|
dev_warn(&client->dev, "no driver alert()!\n");
|
||||||
} else
|
} else
|
||||||
dev_dbg(&client->dev, "alert with no driver\n");
|
dev_dbg(&client->dev, "alert with no driver\n");
|
||||||
up(&dev->sem);
|
device_unlock(dev);
|
||||||
|
|
||||||
/* Stop iterating after we find the device */
|
/* Stop iterating after we find the device */
|
||||||
return -EBUSY;
|
return -EBUSY;
|
||||||
|
Reference in New Issue
Block a user