]> git.hungrycats.org Git - linux/commitdiff
coda: fix error path in case of missing pdata on non-DT platform
authorPhilipp Zabel <p.zabel@pengutronix.de>
Fri, 26 Feb 2016 11:21:35 +0000 (08:21 -0300)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 20 Apr 2016 06:45:21 +0000 (15:45 +0900)
commit bc717d5e92c8c079280eb4acbe335c6f25041aa2 upstream.

If we bail out this early, v4l2_device_register() has not been called
yet, so no need to call v4l2_device_unregister().

Fixes: b7bd660a51f0 ("[media] coda: Call v4l2_device_unregister() from a single location")
Reported-by: Michael Olbrich <m.olbrich@pengutronix.de>
Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
Reviewed-by: Fabio Estevam <fabio.estevam@nxp.com>
Signed-off-by: Mauro Carvalho Chehab <mchehab@osg.samsung.com>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/media/platform/coda/coda-common.c

index 2d782ce94a67bfec8be38d254559adebecad9c6b..7ae89c68478399841f92317c9444950240469966 100644 (file)
@@ -2118,14 +2118,12 @@ static int coda_probe(struct platform_device *pdev)
 
        pdev_id = of_id ? of_id->data : platform_get_device_id(pdev);
 
-       if (of_id) {
+       if (of_id)
                dev->devtype = of_id->data;
-       } else if (pdev_id) {
+       else if (pdev_id)
                dev->devtype = &coda_devdata[pdev_id->driver_data];
-       } else {
-               ret = -EINVAL;
-               goto err_v4l2_register;
-       }
+       else
+               return -EINVAL;
 
        spin_lock_init(&dev->irqlock);
        INIT_LIST_HEAD(&dev->instances);