diff mbox series

[2/3] hwmon: (adm9240) Store i2c device instead of client in local data

Message ID 20210311073302.221954-2-linux@roeck-us.net (mailing list archive)
State Accepted
Headers show
Series [1/3] hwmon: (adm9240) Drop log messages from detect function | expand

Commit Message

Guenter Roeck March 11, 2021, 7:33 a.m. UTC
We only use the pointer to i2c_client to access &client->dev.
Store the device pointer directly instead of retrieving it
from i2c_client.

Cc: Chris Packham <Chris.Packham@alliedtelesis.co.nz>
Signed-off-by: Guenter Roeck <linux@roeck-us.net>
---
 drivers/hwmon/adm9240.c | 29 ++++++++++++++---------------
 1 file changed, 14 insertions(+), 15 deletions(-)

Comments

Chris Packham March 11, 2021, 9:10 p.m. UTC | #1
On 11/03/21 8:33 pm, Guenter Roeck wrote:
> We only use the pointer to i2c_client to access &client->dev.
> Store the device pointer directly instead of retrieving it
> from i2c_client.
>
> Cc: Chris Packham <Chris.Packham@alliedtelesis.co.nz>
> Signed-off-by: Guenter Roeck <linux@roeck-us.net>

Reviewed-by: Chris Packham <chris.packham@alliedtelesis.co.nz>
Tested-by: Chris Packham <chris.packham@alliedtelesis.co.nz>

> ---
>   drivers/hwmon/adm9240.c | 29 ++++++++++++++---------------
>   1 file changed, 14 insertions(+), 15 deletions(-)
>
> diff --git a/drivers/hwmon/adm9240.c b/drivers/hwmon/adm9240.c
> index 3bbdd662c9e4..7404082c7a3f 100644
> --- a/drivers/hwmon/adm9240.c
> +++ b/drivers/hwmon/adm9240.c
> @@ -123,7 +123,7 @@ static inline unsigned int AOUT_FROM_REG(u8 reg)
>   
>   /* per client data */
>   struct adm9240_data {
> -	struct i2c_client *client;
> +	struct device *dev;
>   	struct regmap *regmap;
>   	struct mutex update_lock;
>   	char valid;
> @@ -160,7 +160,7 @@ static int adm9240_write_fan_div(struct adm9240_data *data, int nr,
>   	err = regmap_write(data->regmap, ADM9240_REG_VID_FAN_DIV, reg);
>   	if (err < 0)
>   		return err;
> -	dev_dbg(&data->client->dev,
> +	dev_dbg(data->dev,
>   		"fan%d clock divider changed from %u to %u\n",
>   		nr + 1, 1 << old, 1 << fan_div);
>   
> @@ -507,7 +507,6 @@ static ssize_t fan_min_store(struct device *dev,
>   {
>   	struct sensor_device_attribute *attr = to_sensor_dev_attr(devattr);
>   	struct adm9240_data *data = dev_get_drvdata(dev);
> -	struct i2c_client *client = data->client;
>   	int nr = attr->index;
>   	u8 new_div;
>   	unsigned long val;
> @@ -523,14 +522,14 @@ static ssize_t fan_min_store(struct device *dev,
>   		data->fan_min[nr] = 255;
>   		new_div = data->fan_div[nr];
>   
> -		dev_dbg(&client->dev, "fan%u low limit set disabled\n",
> +		dev_dbg(data->dev, "fan%u low limit set disabled\n",
>   				nr + 1);
>   
>   	} else if (val < 1350000 / (8 * 254)) {
>   		new_div = 3;
>   		data->fan_min[nr] = 254;
>   
> -		dev_dbg(&client->dev, "fan%u low limit set minimum %u\n",
> +		dev_dbg(data->dev, "fan%u low limit set minimum %u\n",
>   				nr + 1, FAN_FROM_REG(254, 1 << new_div));
>   
>   	} else {
> @@ -546,7 +545,7 @@ static ssize_t fan_min_store(struct device *dev,
>   
>   		data->fan_min[nr] = new_min;
>   
> -		dev_dbg(&client->dev, "fan%u low limit set fan speed %u\n",
> +		dev_dbg(data->dev, "fan%u low limit set fan speed %u\n",
>   				nr + 1, FAN_FROM_REG(new_min, 1 << new_div));
>   	}
>   
> @@ -663,7 +662,7 @@ static ssize_t alarm_store(struct device *dev, struct device_attribute *attr,
>   	mutex_unlock(&data->update_lock);
>   	if (err < 0)
>   		return err;
> -	dev_dbg(&data->client->dev, "chassis intrusion latch cleared\n");
> +	dev_dbg(data->dev, "chassis intrusion latch cleared\n");
>   
>   	return count;
>   }
> @@ -755,7 +754,7 @@ static int adm9240_detect(struct i2c_client *new_client,
>   	return 0;
>   }
>   
> -static int adm9240_init_client(struct i2c_client *client, struct adm9240_data *data)
> +static int adm9240_init_client(struct adm9240_data *data)
>   {
>   	u8 conf, mode;
>   	int err;
> @@ -770,13 +769,13 @@ static int adm9240_init_client(struct i2c_client *client, struct adm9240_data *d
>   
>   	data->vrm = vid_which_vrm(); /* need this to report vid as mV */
>   
> -	dev_info(&client->dev, "Using VRM: %d.%d\n", data->vrm / 10,
> -			data->vrm % 10);
> +	dev_info(data->dev, "Using VRM: %d.%d\n", data->vrm / 10,
> +		 data->vrm % 10);
>   
>   	if (conf & 1) { /* measurement cycle running: report state */
>   
> -		dev_info(&client->dev, "status: config 0x%02x mode %u\n",
> -				conf, mode);
> +		dev_info(data->dev, "status: config 0x%02x mode %u\n",
> +			 conf, mode);
>   
>   	} else { /* cold start: open limits before starting chip */
>   		int i;
> @@ -809,7 +808,7 @@ static int adm9240_init_client(struct i2c_client *client, struct adm9240_data *d
>   		if (err < 0)
>   			return err;
>   
> -		dev_info(&client->dev,
> +		dev_info(data->dev,
>   			 "cold start: config was 0x%02x mode %u\n", conf, mode);
>   	}
>   
> @@ -834,13 +833,13 @@ static int adm9240_probe(struct i2c_client *new_client)
>   	if (!data)
>   		return -ENOMEM;
>   
> -	data->client = new_client;
> +	data->dev = dev;
>   	mutex_init(&data->update_lock);
>   	data->regmap = devm_regmap_init_i2c(new_client, &adm9240_regmap_config);
>   	if (IS_ERR(data->regmap))
>   		return PTR_ERR(data->regmap);
>   
> -	err = adm9240_init_client(new_client, data);
> +	err = adm9240_init_client(data);
>   	if (err < 0)
>   		return err;
>
diff mbox series

Patch

diff --git a/drivers/hwmon/adm9240.c b/drivers/hwmon/adm9240.c
index 3bbdd662c9e4..7404082c7a3f 100644
--- a/drivers/hwmon/adm9240.c
+++ b/drivers/hwmon/adm9240.c
@@ -123,7 +123,7 @@  static inline unsigned int AOUT_FROM_REG(u8 reg)
 
 /* per client data */
 struct adm9240_data {
-	struct i2c_client *client;
+	struct device *dev;
 	struct regmap *regmap;
 	struct mutex update_lock;
 	char valid;
@@ -160,7 +160,7 @@  static int adm9240_write_fan_div(struct adm9240_data *data, int nr,
 	err = regmap_write(data->regmap, ADM9240_REG_VID_FAN_DIV, reg);
 	if (err < 0)
 		return err;
-	dev_dbg(&data->client->dev,
+	dev_dbg(data->dev,
 		"fan%d clock divider changed from %u to %u\n",
 		nr + 1, 1 << old, 1 << fan_div);
 
@@ -507,7 +507,6 @@  static ssize_t fan_min_store(struct device *dev,
 {
 	struct sensor_device_attribute *attr = to_sensor_dev_attr(devattr);
 	struct adm9240_data *data = dev_get_drvdata(dev);
-	struct i2c_client *client = data->client;
 	int nr = attr->index;
 	u8 new_div;
 	unsigned long val;
@@ -523,14 +522,14 @@  static ssize_t fan_min_store(struct device *dev,
 		data->fan_min[nr] = 255;
 		new_div = data->fan_div[nr];
 
-		dev_dbg(&client->dev, "fan%u low limit set disabled\n",
+		dev_dbg(data->dev, "fan%u low limit set disabled\n",
 				nr + 1);
 
 	} else if (val < 1350000 / (8 * 254)) {
 		new_div = 3;
 		data->fan_min[nr] = 254;
 
-		dev_dbg(&client->dev, "fan%u low limit set minimum %u\n",
+		dev_dbg(data->dev, "fan%u low limit set minimum %u\n",
 				nr + 1, FAN_FROM_REG(254, 1 << new_div));
 
 	} else {
@@ -546,7 +545,7 @@  static ssize_t fan_min_store(struct device *dev,
 
 		data->fan_min[nr] = new_min;
 
-		dev_dbg(&client->dev, "fan%u low limit set fan speed %u\n",
+		dev_dbg(data->dev, "fan%u low limit set fan speed %u\n",
 				nr + 1, FAN_FROM_REG(new_min, 1 << new_div));
 	}
 
@@ -663,7 +662,7 @@  static ssize_t alarm_store(struct device *dev, struct device_attribute *attr,
 	mutex_unlock(&data->update_lock);
 	if (err < 0)
 		return err;
-	dev_dbg(&data->client->dev, "chassis intrusion latch cleared\n");
+	dev_dbg(data->dev, "chassis intrusion latch cleared\n");
 
 	return count;
 }
@@ -755,7 +754,7 @@  static int adm9240_detect(struct i2c_client *new_client,
 	return 0;
 }
 
-static int adm9240_init_client(struct i2c_client *client, struct adm9240_data *data)
+static int adm9240_init_client(struct adm9240_data *data)
 {
 	u8 conf, mode;
 	int err;
@@ -770,13 +769,13 @@  static int adm9240_init_client(struct i2c_client *client, struct adm9240_data *d
 
 	data->vrm = vid_which_vrm(); /* need this to report vid as mV */
 
-	dev_info(&client->dev, "Using VRM: %d.%d\n", data->vrm / 10,
-			data->vrm % 10);
+	dev_info(data->dev, "Using VRM: %d.%d\n", data->vrm / 10,
+		 data->vrm % 10);
 
 	if (conf & 1) { /* measurement cycle running: report state */
 
-		dev_info(&client->dev, "status: config 0x%02x mode %u\n",
-				conf, mode);
+		dev_info(data->dev, "status: config 0x%02x mode %u\n",
+			 conf, mode);
 
 	} else { /* cold start: open limits before starting chip */
 		int i;
@@ -809,7 +808,7 @@  static int adm9240_init_client(struct i2c_client *client, struct adm9240_data *d
 		if (err < 0)
 			return err;
 
-		dev_info(&client->dev,
+		dev_info(data->dev,
 			 "cold start: config was 0x%02x mode %u\n", conf, mode);
 	}
 
@@ -834,13 +833,13 @@  static int adm9240_probe(struct i2c_client *new_client)
 	if (!data)
 		return -ENOMEM;
 
-	data->client = new_client;
+	data->dev = dev;
 	mutex_init(&data->update_lock);
 	data->regmap = devm_regmap_init_i2c(new_client, &adm9240_regmap_config);
 	if (IS_ERR(data->regmap))
 		return PTR_ERR(data->regmap);
 
-	err = adm9240_init_client(new_client, data);
+	err = adm9240_init_client(data);
 	if (err < 0)
 		return err;