Linux-Hwmon Archive on lore.kernel.org
 help / color / Atom feed
* Re: [PATCH] hwmon: Reduce indentation level in __hwmon_device_register()
@ 2020-05-05  1:54 Guenter Roeck
  0 siblings, 0 replies; 2+ messages in thread
From: Guenter Roeck @ 2020-05-05  1:54 UTC (permalink / raw)
  To: Akinobu Mita; +Cc: linux-hwmon, Jean Delvare

On Mon, May 04, 2020 at 11:57:44PM +0900, Akinobu Mita wrote:
> Reduce indentation level in __hwmon_device_register() by preparing a
> helper function.
> 
> This just improves code readability.  No functional change.
> 

Applied.

Guenter

> Cc: Jean Delvare <jdelvare@suse.com>
> Cc: Guenter Roeck <linux@roeck-us.net>
> Signed-off-by: Akinobu Mita <akinobu.mita@gmail.com>
> ---
>  drivers/hwmon/hwmon.c | 68 ++++++++++++++++++++++++++-----------------
>  1 file changed, 42 insertions(+), 26 deletions(-)
> 
> diff --git a/drivers/hwmon/hwmon.c b/drivers/hwmon/hwmon.c
> index 6a30fb453f7a..dcd4445d4570 100644
> --- a/drivers/hwmon/hwmon.c
> +++ b/drivers/hwmon/hwmon.c
> @@ -179,8 +179,40 @@ static int hwmon_thermal_add_sensor(struct device *dev, int index)
>  
>  	return 0;
>  }
> +
> +static int hwmon_thermal_register_sensors(struct device *dev)
> +{
> +	struct hwmon_device *hwdev = to_hwmon_device(dev);
> +	const struct hwmon_chip_info *chip = hwdev->chip;
> +	const struct hwmon_channel_info **info = chip->info;
> +	void *drvdata = dev_get_drvdata(dev);
> +	int i;
> +
> +	for (i = 1; info[i]; i++) {
> +		int j;
> +
> +		if (info[i]->type != hwmon_temp)
> +			continue;
> +
> +		for (j = 0; info[i]->config[j]; j++) {
> +			int err;
> +
> +			if (!(info[i]->config[j] & HWMON_T_INPUT) ||
> +			    !chip->ops->is_visible(drvdata, hwmon_temp,
> +						   hwmon_temp_input, j))
> +				continue;
> +
> +			err = hwmon_thermal_add_sensor(dev, j);
> +			if (err)
> +				return err;
> +		}
> +	}
> +
> +	return 0;
> +}
> +
>  #else
> -static int hwmon_thermal_add_sensor(struct device *dev, int index)
> +static int hwmon_thermal_register_sensors(struct device *dev)
>  {
>  	return 0;
>  }
> @@ -596,7 +628,7 @@ __hwmon_device_register(struct device *dev, const char *name, void *drvdata,
>  {
>  	struct hwmon_device *hwdev;
>  	struct device *hdev;
> -	int i, j, err, id;
> +	int i, err, id;
>  
>  	/* Complain about invalid characters in hwmon name attribute */
>  	if (name && (!strlen(name) || strpbrk(name, "-* \t\n")))
> @@ -664,30 +696,14 @@ __hwmon_device_register(struct device *dev, const char *name, void *drvdata,
>  	if (dev && dev->of_node && chip && chip->ops->read &&
>  	    chip->info[0]->type == hwmon_chip &&
>  	    (chip->info[0]->config[0] & HWMON_C_REGISTER_TZ)) {
> -		const struct hwmon_channel_info **info = chip->info;
> -
> -		for (i = 1; info[i]; i++) {
> -			if (info[i]->type != hwmon_temp)
> -				continue;
> -
> -			for (j = 0; info[i]->config[j]; j++) {
> -				if (!chip->ops->is_visible(drvdata, hwmon_temp,
> -							   hwmon_temp_input, j))
> -					continue;
> -				if (info[i]->config[j] & HWMON_T_INPUT) {
> -					err = hwmon_thermal_add_sensor(hdev, j);
> -					if (err) {
> -						device_unregister(hdev);
> -						/*
> -						 * Don't worry about hwdev;
> -						 * hwmon_dev_release(), called
> -						 * from device_unregister(),
> -						 * will free it.
> -						 */
> -						goto ida_remove;
> -					}
> -				}
> -			}
> +		err = hwmon_thermal_register_sensors(hdev);
> +		if (err) {
> +			device_unregister(hdev);
> +			/*
> +			 * Don't worry about hwdev; hwmon_dev_release(), called
> +			 * from device_unregister(), will free it.
> +			 */
> +			goto ida_remove;
>  		}
>  	}
>  
> -- 
> 2.20.1
> 

^ permalink raw reply	[flat|nested] 2+ messages in thread

* [PATCH] hwmon: Reduce indentation level in __hwmon_device_register()
@ 2020-05-04 14:57 Akinobu Mita
  0 siblings, 0 replies; 2+ messages in thread
From: Akinobu Mita @ 2020-05-04 14:57 UTC (permalink / raw)
  To: linux-hwmon; +Cc: Akinobu Mita, Jean Delvare, Guenter Roeck

Reduce indentation level in __hwmon_device_register() by preparing a
helper function.

This just improves code readability.  No functional change.

Cc: Jean Delvare <jdelvare@suse.com>
Cc: Guenter Roeck <linux@roeck-us.net>
Signed-off-by: Akinobu Mita <akinobu.mita@gmail.com>
---
 drivers/hwmon/hwmon.c | 68 ++++++++++++++++++++++++++-----------------
 1 file changed, 42 insertions(+), 26 deletions(-)

diff --git a/drivers/hwmon/hwmon.c b/drivers/hwmon/hwmon.c
index 6a30fb453f7a..dcd4445d4570 100644
--- a/drivers/hwmon/hwmon.c
+++ b/drivers/hwmon/hwmon.c
@@ -179,8 +179,40 @@ static int hwmon_thermal_add_sensor(struct device *dev, int index)
 
 	return 0;
 }
+
+static int hwmon_thermal_register_sensors(struct device *dev)
+{
+	struct hwmon_device *hwdev = to_hwmon_device(dev);
+	const struct hwmon_chip_info *chip = hwdev->chip;
+	const struct hwmon_channel_info **info = chip->info;
+	void *drvdata = dev_get_drvdata(dev);
+	int i;
+
+	for (i = 1; info[i]; i++) {
+		int j;
+
+		if (info[i]->type != hwmon_temp)
+			continue;
+
+		for (j = 0; info[i]->config[j]; j++) {
+			int err;
+
+			if (!(info[i]->config[j] & HWMON_T_INPUT) ||
+			    !chip->ops->is_visible(drvdata, hwmon_temp,
+						   hwmon_temp_input, j))
+				continue;
+
+			err = hwmon_thermal_add_sensor(dev, j);
+			if (err)
+				return err;
+		}
+	}
+
+	return 0;
+}
+
 #else
-static int hwmon_thermal_add_sensor(struct device *dev, int index)
+static int hwmon_thermal_register_sensors(struct device *dev)
 {
 	return 0;
 }
@@ -596,7 +628,7 @@ __hwmon_device_register(struct device *dev, const char *name, void *drvdata,
 {
 	struct hwmon_device *hwdev;
 	struct device *hdev;
-	int i, j, err, id;
+	int i, err, id;
 
 	/* Complain about invalid characters in hwmon name attribute */
 	if (name && (!strlen(name) || strpbrk(name, "-* \t\n")))
@@ -664,30 +696,14 @@ __hwmon_device_register(struct device *dev, const char *name, void *drvdata,
 	if (dev && dev->of_node && chip && chip->ops->read &&
 	    chip->info[0]->type == hwmon_chip &&
 	    (chip->info[0]->config[0] & HWMON_C_REGISTER_TZ)) {
-		const struct hwmon_channel_info **info = chip->info;
-
-		for (i = 1; info[i]; i++) {
-			if (info[i]->type != hwmon_temp)
-				continue;
-
-			for (j = 0; info[i]->config[j]; j++) {
-				if (!chip->ops->is_visible(drvdata, hwmon_temp,
-							   hwmon_temp_input, j))
-					continue;
-				if (info[i]->config[j] & HWMON_T_INPUT) {
-					err = hwmon_thermal_add_sensor(hdev, j);
-					if (err) {
-						device_unregister(hdev);
-						/*
-						 * Don't worry about hwdev;
-						 * hwmon_dev_release(), called
-						 * from device_unregister(),
-						 * will free it.
-						 */
-						goto ida_remove;
-					}
-				}
-			}
+		err = hwmon_thermal_register_sensors(hdev);
+		if (err) {
+			device_unregister(hdev);
+			/*
+			 * Don't worry about hwdev; hwmon_dev_release(), called
+			 * from device_unregister(), will free it.
+			 */
+			goto ida_remove;
 		}
 	}
 
-- 
2.20.1


^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, back to index

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2020-05-05  1:54 [PATCH] hwmon: Reduce indentation level in __hwmon_device_register() Guenter Roeck
  -- strict thread matches above, loose matches on Subject: below --
2020-05-04 14:57 Akinobu Mita

Linux-Hwmon Archive on lore.kernel.org

Archives are clonable:
	git clone --mirror https://lore.kernel.org/linux-hwmon/0 linux-hwmon/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 linux-hwmon linux-hwmon/ https://lore.kernel.org/linux-hwmon \
		linux-hwmon@vger.kernel.org
	public-inbox-index linux-hwmon

Example config snippet for mirrors

Newsgroup available over NNTP:
	nntp://nntp.lore.kernel.org/org.kernel.vger.linux-hwmon


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git