diff options
Diffstat (limited to 'drivers/hwmon/atxp1.c')
-rw-r--r-- | drivers/hwmon/atxp1.c | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/drivers/hwmon/atxp1.c b/drivers/hwmon/atxp1.c index b0c490073c8e..728a1e8b9190 100644 --- a/drivers/hwmon/atxp1.c +++ b/drivers/hwmon/atxp1.c | |||
@@ -26,6 +26,7 @@ | |||
26 | #include <linux/hwmon.h> | 26 | #include <linux/hwmon.h> |
27 | #include <linux/hwmon-vid.h> | 27 | #include <linux/hwmon-vid.h> |
28 | #include <linux/err.h> | 28 | #include <linux/err.h> |
29 | #include <linux/mutex.h> | ||
29 | 30 | ||
30 | MODULE_LICENSE("GPL"); | 31 | MODULE_LICENSE("GPL"); |
31 | MODULE_DESCRIPTION("System voltages control via Attansic ATXP1"); | 32 | MODULE_DESCRIPTION("System voltages control via Attansic ATXP1"); |
@@ -60,7 +61,7 @@ static struct i2c_driver atxp1_driver = { | |||
60 | struct atxp1_data { | 61 | struct atxp1_data { |
61 | struct i2c_client client; | 62 | struct i2c_client client; |
62 | struct class_device *class_dev; | 63 | struct class_device *class_dev; |
63 | struct semaphore update_lock; | 64 | struct mutex update_lock; |
64 | unsigned long last_updated; | 65 | unsigned long last_updated; |
65 | u8 valid; | 66 | u8 valid; |
66 | struct { | 67 | struct { |
@@ -80,7 +81,7 @@ static struct atxp1_data * atxp1_update_device(struct device *dev) | |||
80 | client = to_i2c_client(dev); | 81 | client = to_i2c_client(dev); |
81 | data = i2c_get_clientdata(client); | 82 | data = i2c_get_clientdata(client); |
82 | 83 | ||
83 | down(&data->update_lock); | 84 | mutex_lock(&data->update_lock); |
84 | 85 | ||
85 | if (time_after(jiffies, data->last_updated + HZ) || !data->valid) { | 86 | if (time_after(jiffies, data->last_updated + HZ) || !data->valid) { |
86 | 87 | ||
@@ -93,7 +94,7 @@ static struct atxp1_data * atxp1_update_device(struct device *dev) | |||
93 | data->valid = 1; | 94 | data->valid = 1; |
94 | } | 95 | } |
95 | 96 | ||
96 | up(&data->update_lock); | 97 | mutex_unlock(&data->update_lock); |
97 | 98 | ||
98 | return(data); | 99 | return(data); |
99 | } | 100 | } |
@@ -309,7 +310,7 @@ static int atxp1_detect(struct i2c_adapter *adapter, int address, int kind) | |||
309 | 310 | ||
310 | data->valid = 0; | 311 | data->valid = 0; |
311 | 312 | ||
312 | init_MUTEX(&data->update_lock); | 313 | mutex_init(&data->update_lock); |
313 | 314 | ||
314 | err = i2c_attach_client(new_client); | 315 | err = i2c_attach_client(new_client); |
315 | 316 | ||