From: Jackie Liu <liuyun01@xxxxxxxxxx> Use devm_hwmon_device_register_with_info() and remove hwmon_dev from kraken2_priv_data struct as it is not needed anymore. Signed-off-by: Jackie Liu <liuyun01@xxxxxxxxxx> --- drivers/hwmon/nzxt-kraken2.c | 17 +++++++---------- 1 file changed, 7 insertions(+), 10 deletions(-) diff --git a/drivers/hwmon/nzxt-kraken2.c b/drivers/hwmon/nzxt-kraken2.c index 89f7ea4f42d4..cd644ca12fb4 100644 --- a/drivers/hwmon/nzxt-kraken2.c +++ b/drivers/hwmon/nzxt-kraken2.c @@ -29,7 +29,6 @@ static const char *const kraken2_fan_label[] = { struct kraken2_priv_data { struct hid_device *hid_dev; - struct device *hwmon_dev; s32 temp_input[1]; u16 fan_input[2]; unsigned long updated; /* jiffies */ @@ -133,6 +132,7 @@ static int kraken2_probe(struct hid_device *hdev, const struct hid_device_id *id) { struct kraken2_priv_data *priv; + struct device *hwmon_dev; int ret; priv = devm_kzalloc(&hdev->dev, sizeof(*priv), GFP_KERNEL); @@ -170,11 +170,12 @@ static int kraken2_probe(struct hid_device *hdev, goto fail_and_close; } - priv->hwmon_dev = hwmon_device_register_with_info(&hdev->dev, "kraken2", - priv, &kraken2_chip_info, - NULL); - if (IS_ERR(priv->hwmon_dev)) { - ret = PTR_ERR(priv->hwmon_dev); + hwmon_dev = + devm_hwmon_device_register_with_info(&hdev->dev, "kraken2", + priv, &kraken2_chip_info, + NULL); + ret = PTR_ERR_OR_ZERO(hwmon_dev); + if (ret) { hid_err(hdev, "hwmon registration failed with %d\n", ret); goto fail_and_close; } @@ -190,10 +191,6 @@ static int kraken2_probe(struct hid_device *hdev, static void kraken2_remove(struct hid_device *hdev) { - struct kraken2_priv_data *priv = hid_get_drvdata(hdev); - - hwmon_device_unregister(priv->hwmon_dev); - hid_hw_close(hdev); hid_hw_stop(hdev); } -- 2.25.1