]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
staging: vchiq_arm: refactor goto instructions in vchiq_probe()
authorJavier Carrasco <javier.carrasco.cruz@gmail.com>
Mon, 14 Oct 2024 08:56:36 +0000 (10:56 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 16 Oct 2024 07:58:15 +0000 (09:58 +0200)
The 'failed_platform_init' and 'error_exit' labels do not simplify the
code, there is a single jump to them in the code, and the actions taken
from then on can be easily carried out where the goto occurs.

Signed-off-by: Javier Carrasco <javier.carrasco.cruz@gmail.com>
Reviewed-by: Dan Carpenter <dan.carpenter@linaro.org>
Reviewed-by: Umang Jain <umang.jain@ideasonboard.com>
Link: https://lore.kernel.org/r/20241014-vchiq_arm-of_node_put-v2-1-cafe0a4c2666@gmail.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/staging/vc04_services/interface/vchiq_arm/vchiq_arm.c

index 29e78700463f237b8032a9f2ec491bd2b4cf489a..ba57bfe614f68939b9555b2b0a8db0e62a4226c3 100644 (file)
@@ -1357,8 +1357,10 @@ static int vchiq_probe(struct platform_device *pdev)
        platform_set_drvdata(pdev, mgmt);
 
        ret = vchiq_platform_init(pdev, &mgmt->state);
-       if (ret)
-               goto failed_platform_init;
+       if (ret) {
+               dev_err(&pdev->dev, "arm: Could not initialize vchiq platform\n");
+               return ret;
+       }
 
        vchiq_debugfs_init(&mgmt->state);
 
@@ -1372,18 +1374,13 @@ static int vchiq_probe(struct platform_device *pdev)
        ret = vchiq_register_chrdev(&pdev->dev);
        if (ret) {
                dev_err(&pdev->dev, "arm: Failed to initialize vchiq cdev\n");
-               goto error_exit;
+               return ret;
        }
 
        bcm2835_audio = vchiq_device_register(&pdev->dev, "bcm2835-audio");
        bcm2835_camera = vchiq_device_register(&pdev->dev, "bcm2835-camera");
 
        return 0;
-
-failed_platform_init:
-       dev_err(&pdev->dev, "arm: Could not initialize vchiq platform\n");
-error_exit:
-       return ret;
 }
 
 static void vchiq_remove(struct platform_device *pdev)