From: Iker Perez del Palomar Sustatxa <iker.perez@xxxxxxxxxxxxxxx> The purpose of this change is to store the kind of device the kernel is working with. Signed-off-by: Iker Perez del Palomar Sustatxa <iker.perez@xxxxxxxxxxxxxxx> --- drivers/hwmon/lm75.c | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/drivers/hwmon/lm75.c b/drivers/hwmon/lm75.c index 3fb9c0a2d6d0..0209e0719784 100644 --- a/drivers/hwmon/lm75.c +++ b/drivers/hwmon/lm75.c @@ -68,6 +68,7 @@ struct lm75_data { u8 resolution; /* In bits, between 9 and 16 */ u8 resolution_limits; unsigned int sample_time; /* In ms */ + enum lm75_type kind; }; /*-----------------------------------------------------------------------*/ @@ -237,15 +238,16 @@ lm75_probe(struct i2c_client *client, const struct i2c_device_id *id) struct device *dev = &client->dev; struct device *hwmon_dev; struct lm75_data *data; + struct lm75_data device_data; int status, err; u8 set_mask, clr_mask; int new; - enum lm75_type kind; + data = &device_data; if (client->dev.of_node) - kind = (enum lm75_type)of_device_get_match_data(&client->dev); + data->kind = (enum lm75_type)of_device_get_match_data(&client->dev); else - kind = id->driver_data; + data->kind = id->driver_data; if (!i2c_check_functionality(client->adapter, I2C_FUNC_SMBUS_BYTE_DATA | I2C_FUNC_SMBUS_WORD_DATA)) @@ -267,7 +269,7 @@ lm75_probe(struct i2c_client *client, const struct i2c_device_id *id) set_mask = 0; clr_mask = LM75_SHUTDOWN; /* continuous conversions */ - switch (kind) { + switch (data->kind) { case adt75: clr_mask |= 1 << 5; /* not one-shot mode */ data->resolution = 12; -- 2.11.0