]> git.ipfire.org Git - thirdparty/kernel/stable.git/commitdiff
platform/chrome: cros_ec: remove unneeded label and if-condition
authorTzung-Bi Shih <tzungbi@kernel.org>
Thu, 21 Aug 2025 15:08:43 +0000 (11:08 -0400)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 28 Aug 2025 14:24:32 +0000 (16:24 +0200)
[ Upstream commit 554ec02c97254962bbb0a8776c3160d294fc7e51 ]

Both `ec_dev->ec` and `ec_dev->pd` are initialized to NULL at the
beginning of cros_ec_register().  Also, platform_device_unregister()
takes care if the given platform_device is NULL.

Remove the unneeded goto-label and if-condition.

Signed-off-by: Tzung-Bi Shih <tzungbi@kernel.org>
Reviewed-by: Guenter Roeck <groeck@chromium.org>
Link: https://lore.kernel.org/r/20230308031247.2866401-1-tzungbi@kernel.org
Stable-dep-of: e23749534619 ("platform/chrome: cros_ec: Unregister notifier in cros_ec_unregister()")
Signed-off-by: Sasha Levin <sashal@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/platform/chrome/cros_ec.c

index c5c0b273a8d7acaede76a34986f406a37b8a517a..f75b735b36ef46aac95b02a9232b7301152b3cd4 100644 (file)
@@ -207,7 +207,7 @@ int cros_ec_register(struct cros_ec_device *ec_dev)
        err = cros_ec_query_all(ec_dev);
        if (err) {
                dev_err(dev, "Cannot identify the EC: error %d\n", err);
-               goto destroy_mutex;
+               goto exit;
        }
 
        if (ec_dev->irq > 0) {
@@ -219,7 +219,7 @@ int cros_ec_register(struct cros_ec_device *ec_dev)
                if (err) {
                        dev_err(dev, "Failed to request IRQ %d: %d",
                                ec_dev->irq, err);
-                       goto destroy_mutex;
+                       goto exit;
                }
        }
 
@@ -231,7 +231,7 @@ int cros_ec_register(struct cros_ec_device *ec_dev)
                dev_err(ec_dev->dev,
                        "Failed to create CrOS EC platform device\n");
                err = PTR_ERR(ec_dev->ec);
-               goto destroy_mutex;
+               goto exit;
        }
 
        if (ec_dev->max_passthru) {
@@ -297,7 +297,6 @@ int cros_ec_register(struct cros_ec_device *ec_dev)
 exit:
        platform_device_unregister(ec_dev->ec);
        platform_device_unregister(ec_dev->pd);
-destroy_mutex:
        mutex_destroy(&ec_dev->lock);
        lockdep_unregister_key(&ec_dev->lockdep_key);
        return err;
@@ -314,8 +313,7 @@ EXPORT_SYMBOL(cros_ec_register);
  */
 void cros_ec_unregister(struct cros_ec_device *ec_dev)
 {
-       if (ec_dev->pd)
-               platform_device_unregister(ec_dev->pd);
+       platform_device_unregister(ec_dev->pd);
        platform_device_unregister(ec_dev->ec);
        mutex_destroy(&ec_dev->lock);
        lockdep_unregister_key(&ec_dev->lockdep_key);