public inbox for linux-i2c@vger.kernel.org
 help / color / mirror / Atom feed
From: Guenter Roeck <linux@roeck-us.net>
To: Li Zetao <lizetao1@huawei.com>
Cc: jikos@kernel.org, bentiss@kernel.org, michael.zaidman@gmail.com,
	gupt21@gmail.com, djogorchock@gmail.com,
	roderick.colenbrander@sony.com, savicaleksa83@gmail.com,
	me@jackdoan.com, jdelvare@suse.com, mail@mariuszachmann.de,
	wilken.gottwalt@posteo.net, jonas@protocubo.io,
	mezin.alexander@gmail.com, linux-input@vger.kernel.org,
	linux-i2c@vger.kernel.org, linux-hwmon@vger.kernel.org
Subject: Re: [PATCH -next v2 10/15] hwmon: (corsair-cpro) Use devm_hid_hw_start_and_open in ccp_probe()
Date: Mon, 9 Sep 2024 09:59:41 -0700	[thread overview]
Message-ID: <79fd01a8-da8e-4fc0-bd33-c2e70e902b75@roeck-us.net> (raw)
In-Reply-To: <20240909012313.500341-11-lizetao1@huawei.com>

On Mon, Sep 09, 2024 at 09:23:08AM +0800, Li Zetao wrote:
> Currently, the corsair-cpro module needs to maintain hid resources
> by itself. Use devm_hid_hw_start_and_open helper to ensure that hid
> resources are consistent with the device life cycle, and release
> hid resources before device is released. At the same time, it can avoid
> the goto-release encoding, drop the out_hw_close and hid_hw_stop
> lables, and directly return the error code when an error occurs.
> 
> Signed-off-by: Li Zetao <lizetao1@huawei.com>

Acked-by: Guenter Roeck <linux@roeck-us.net>

> ---
> v1 -> v2: Adjust commit information
> v1:
> https://lore.kernel.org/all/20240904123607.3407364-15-lizetao1@huawei.com/
> 
>  drivers/hwmon/corsair-cpro.c | 24 +++++-------------------
>  1 file changed, 5 insertions(+), 19 deletions(-)
> 
> diff --git a/drivers/hwmon/corsair-cpro.c b/drivers/hwmon/corsair-cpro.c
> index e1a7f7aa7f80..7bba30840f32 100644
> --- a/drivers/hwmon/corsair-cpro.c
> +++ b/drivers/hwmon/corsair-cpro.c
> @@ -601,14 +601,10 @@ static int ccp_probe(struct hid_device *hdev, const struct hid_device_id *id)
>  	if (ret)
>  		return ret;
>  
> -	ret = hid_hw_start(hdev, HID_CONNECT_HIDRAW);
> +	ret = devm_hid_hw_start_and_open(hdev, HID_CONNECT_HIDRAW);
>  	if (ret)
>  		return ret;
>  
> -	ret = hid_hw_open(hdev);
> -	if (ret)
> -		goto out_hw_stop;
> -
>  	ccp->hdev = hdev;
>  	hid_set_drvdata(hdev, ccp);
>  
> @@ -621,28 +617,20 @@ static int ccp_probe(struct hid_device *hdev, const struct hid_device_id *id)
>  	/* temp and fan connection status only updates when device is powered on */
>  	ret = get_temp_cnct(ccp);
>  	if (ret)
> -		goto out_hw_close;
> +		return ret;
>  
>  	ret = get_fan_cnct(ccp);
>  	if (ret)
> -		goto out_hw_close;
> +		return ret;
>  
>  	ccp_debugfs_init(ccp);
>  
>  	ccp->hwmon_dev = hwmon_device_register_with_info(&hdev->dev, "corsaircpro",
>  							 ccp, &ccp_chip_info, NULL);
> -	if (IS_ERR(ccp->hwmon_dev)) {
> -		ret = PTR_ERR(ccp->hwmon_dev);
> -		goto out_hw_close;
> -	}
> +	if (IS_ERR(ccp->hwmon_dev))
> +		return PTR_ERR(ccp->hwmon_dev);
>  
>  	return 0;
> -
> -out_hw_close:
> -	hid_hw_close(hdev);
> -out_hw_stop:
> -	hid_hw_stop(hdev);
> -	return ret;
>  }
>  
>  static void ccp_remove(struct hid_device *hdev)
> @@ -651,8 +639,6 @@ static void ccp_remove(struct hid_device *hdev)
>  
>  	debugfs_remove_recursive(ccp->debugfs);
>  	hwmon_device_unregister(ccp->hwmon_dev);
> -	hid_hw_close(hdev);
> -	hid_hw_stop(hdev);
>  }
>  
>  static const struct hid_device_id ccp_devices[] = {
> -- 
> 2.34.1
> 
> 

  reply	other threads:[~2024-09-09 16:59 UTC|newest]

Thread overview: 30+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-09-09  1:22 [PATCH -next v2 00/15] HID: convert to devm_hid_hw_start_and_open() Li Zetao
2024-09-09  1:22 ` [PATCH -next v2 01/15] HID: core: Use devm_add_action_or_reset helper to manage hid resources Li Zetao
2024-09-09  1:23 ` [PATCH -next v2 02/15] HID: cp2112: Use devm_hid_hw_start_and_open in cp2112_probe() Li Zetao
2024-09-09  1:23 ` [PATCH -next v2 03/15] HID: ft260: Use devm_hid_hw_start_and_open in ft260_probe() Li Zetao
2024-09-09  1:23 ` [PATCH -next v2 04/15] HID: mcp2200: Use devm_hid_hw_start_and_open in mcp2200_probe() Li Zetao
2024-09-09  1:23 ` [PATCH -next v2 05/15] HID: mcp2221: Use devm_hid_hw_start_and_open in mcp2221_probe() Li Zetao
2024-09-09  1:23 ` [PATCH -next v2 06/15] HID: nintendo: Use devm_hid_hw_start_and_open in nintendo_hid_probe() Li Zetao
2024-09-09  1:23 ` [PATCH -next v2 07/15] HID: playstation: Use devm_hid_hw_start_and_open in ps_probe() Li Zetao
2024-09-09  1:23 ` [PATCH -next v2 08/15] hwmon: (aquacomputer_d5next) Use devm_hid_hw_start_and_open in aqc_probe() Li Zetao
2024-09-09 16:57   ` Guenter Roeck
2024-09-09 17:29   ` Aleksa Savic
2024-09-09  1:23 ` [PATCH -next v2 09/15] hwmon: Use devm_hid_hw_start_and_open in rog_ryujin_probe() Li Zetao
2024-09-09 16:59   ` Guenter Roeck
2024-09-09 17:32   ` Aleksa Savic
2024-09-09  1:23 ` [PATCH -next v2 10/15] hwmon: (corsair-cpro) Use devm_hid_hw_start_and_open in ccp_probe() Li Zetao
2024-09-09 16:59   ` Guenter Roeck [this message]
2024-09-09 18:05   ` Marius Zachmann
2024-09-09  1:23 ` [PATCH -next v2 11/15] hwmon: (corsair-psu) Use devm_hid_hw_start_and_open in corsairpsu_probe() Li Zetao
2024-09-09 17:00   ` Guenter Roeck
2024-09-09  1:23 ` [PATCH -next v2 12/15] hwmon: (gigabyte_waterforce) Use devm_hid_hw_start_and_open in waterforce_probe() Li Zetao
2024-09-09 17:00   ` Guenter Roeck
2024-09-09 17:37   ` Aleksa Savic
2024-09-09  1:23 ` [PATCH -next v2 13/15] hwmon: (nzxt-kraken2) Use devm_hid_hw_start_and_open in kraken2_probe() Li Zetao
2024-09-09 17:00   ` Guenter Roeck
2024-09-09 18:23   ` Jonas Malaco
2024-09-09  1:23 ` [PATCH -next v2 14/15] hwmon: (nzxt-kraken3) Use devm_hid_hw_start_and_open in kraken3_probe() Li Zetao
2024-09-09 17:01   ` Guenter Roeck
2024-09-09 17:44   ` Aleksa Savic
2024-09-09  1:23 ` [PATCH -next v2 15/15] hwmon: (nzxt-smart2) Use devm_hid_hw_start_and_open in nzxt_smart2_hid_probe() Li Zetao
2024-09-09 17:01   ` Guenter Roeck

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=79fd01a8-da8e-4fc0-bd33-c2e70e902b75@roeck-us.net \
    --to=linux@roeck-us.net \
    --cc=bentiss@kernel.org \
    --cc=djogorchock@gmail.com \
    --cc=gupt21@gmail.com \
    --cc=jdelvare@suse.com \
    --cc=jikos@kernel.org \
    --cc=jonas@protocubo.io \
    --cc=linux-hwmon@vger.kernel.org \
    --cc=linux-i2c@vger.kernel.org \
    --cc=linux-input@vger.kernel.org \
    --cc=lizetao1@huawei.com \
    --cc=mail@mariuszachmann.de \
    --cc=me@jackdoan.com \
    --cc=mezin.alexander@gmail.com \
    --cc=michael.zaidman@gmail.com \
    --cc=roderick.colenbrander@sony.com \
    --cc=savicaleksa83@gmail.com \
    --cc=wilken.gottwalt@posteo.net \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox