]> git.itanic.dy.fi Git - linux-stable/commitdiff
carl9170: devres-ing input_allocate_device
authorChristian Lamparter <chunkeey@gmail.com>
Wed, 2 Mar 2022 19:51:36 +0000 (20:51 +0100)
committerKalle Valo <quic_kvalo@quicinc.com>
Thu, 10 Mar 2022 15:53:59 +0000 (17:53 +0200)
devres will take care of freeing the input_device once
it is no longer needed.

Signed-off-by: Christian Lamparter <chunkeey@gmail.com>
Signed-off-by: Kalle Valo <quic_kvalo@quicinc.com>
Link: https://lore.kernel.org/r/f81a6ff3b02116c6a448c42eecb546ea5d46c108.1646250537.git.chunkeey@gmail.com
drivers/net/wireless/ath/carl9170/main.c

index 9495b3da1978d9438f6897e5d6f903e17df14d7e..e833052e90561200a9ff459efc685a67b7813027 100644 (file)
@@ -1494,7 +1494,7 @@ static int carl9170_register_wps_button(struct ar9170 *ar)
        if (!(ar->features & CARL9170_WPS_BUTTON))
                return 0;
 
-       input = input_allocate_device();
+       input = devm_input_allocate_device(&ar->udev->dev);
        if (!input)
                return -ENOMEM;
 
@@ -1512,10 +1512,8 @@ static int carl9170_register_wps_button(struct ar9170 *ar)
        input_set_capability(input, EV_KEY, KEY_WPS_BUTTON);
 
        err = input_register_device(input);
-       if (err) {
-               input_free_device(input);
+       if (err)
                return err;
-       }
 
        ar->wps.pbc = input;
        return 0;
@@ -2038,13 +2036,6 @@ void carl9170_unregister(struct ar9170 *ar)
        carl9170_debugfs_unregister(ar);
 #endif /* CONFIG_CARL9170_DEBUGFS */
 
-#ifdef CONFIG_CARL9170_WPC
-       if (ar->wps.pbc) {
-               input_unregister_device(ar->wps.pbc);
-               ar->wps.pbc = NULL;
-       }
-#endif /* CONFIG_CARL9170_WPC */
-
        carl9170_cancel_worker(ar);
        cancel_work_sync(&ar->restart_work);