diff options
| -rw-r--r-- | drivers/hwmon/tmp421.c | 14 |
1 files changed, 7 insertions, 7 deletions
diff --git a/drivers/hwmon/tmp421.c b/drivers/hwmon/tmp421.c index 4f7c051e2d7b..a97e299b233b 100644 --- a/drivers/hwmon/tmp421.c +++ b/drivers/hwmon/tmp421.c | |||
| @@ -61,9 +61,9 @@ static const u8 TMP421_TEMP_LSB[4] = { 0x10, 0x11, 0x12, 0x13 }; | |||
| 61 | #define TMP423_DEVICE_ID 0x23 | 61 | #define TMP423_DEVICE_ID 0x23 |
| 62 | 62 | ||
| 63 | static const struct i2c_device_id tmp421_id[] = { | 63 | static const struct i2c_device_id tmp421_id[] = { |
| 64 | { "tmp421", tmp421 }, | 64 | { "tmp421", 2 }, |
| 65 | { "tmp422", tmp422 }, | 65 | { "tmp422", 3 }, |
| 66 | { "tmp423", tmp423 }, | 66 | { "tmp423", 4 }, |
| 67 | { } | 67 | { } |
| 68 | }; | 68 | }; |
| 69 | MODULE_DEVICE_TABLE(i2c, tmp421_id); | 69 | MODULE_DEVICE_TABLE(i2c, tmp421_id); |
| @@ -73,7 +73,7 @@ struct tmp421_data { | |||
| 73 | struct mutex update_lock; | 73 | struct mutex update_lock; |
| 74 | char valid; | 74 | char valid; |
| 75 | unsigned long last_updated; | 75 | unsigned long last_updated; |
| 76 | int kind; | 76 | int channels; |
| 77 | u8 config; | 77 | u8 config; |
| 78 | s16 temp[4]; | 78 | s16 temp[4]; |
| 79 | }; | 79 | }; |
| @@ -107,7 +107,7 @@ static struct tmp421_data *tmp421_update_device(struct device *dev) | |||
| 107 | data->config = i2c_smbus_read_byte_data(client, | 107 | data->config = i2c_smbus_read_byte_data(client, |
| 108 | TMP421_CONFIG_REG_1); | 108 | TMP421_CONFIG_REG_1); |
| 109 | 109 | ||
| 110 | for (i = 0; i <= data->kind; i++) { | 110 | for (i = 0; i < data->channels; i++) { |
| 111 | data->temp[i] = i2c_smbus_read_byte_data(client, | 111 | data->temp[i] = i2c_smbus_read_byte_data(client, |
| 112 | TMP421_TEMP_MSB[i]) << 8; | 112 | TMP421_TEMP_MSB[i]) << 8; |
| 113 | data->temp[i] |= i2c_smbus_read_byte_data(client, | 113 | data->temp[i] |= i2c_smbus_read_byte_data(client, |
| @@ -166,7 +166,7 @@ static mode_t tmp421_is_visible(struct kobject *kobj, struct attribute *a, | |||
| 166 | devattr = container_of(a, struct device_attribute, attr); | 166 | devattr = container_of(a, struct device_attribute, attr); |
| 167 | index = to_sensor_dev_attr(devattr)->index; | 167 | index = to_sensor_dev_attr(devattr)->index; |
| 168 | 168 | ||
| 169 | if (data->kind > index) | 169 | if (index < data->channels) |
| 170 | return a->mode; | 170 | return a->mode; |
| 171 | 171 | ||
| 172 | return 0; | 172 | return 0; |
| @@ -271,7 +271,7 @@ static int tmp421_probe(struct i2c_client *client, | |||
| 271 | 271 | ||
| 272 | i2c_set_clientdata(client, data); | 272 | i2c_set_clientdata(client, data); |
| 273 | mutex_init(&data->update_lock); | 273 | mutex_init(&data->update_lock); |
| 274 | data->kind = id->driver_data; | 274 | data->channels = id->driver_data; |
| 275 | 275 | ||
| 276 | err = tmp421_init_client(client); | 276 | err = tmp421_init_client(client); |
| 277 | if (err) | 277 | if (err) |
