ASoC: blackfin: Use common error handling code in sport_create()
authorMarkus Elfring <elfring@users.sourceforge.net>
Fri, 11 Aug 2017 20:02:47 +0000 (22:02 +0200)
committerMark Brown <broonie@kernel.org>
Mon, 14 Aug 2017 16:28:18 +0000 (17:28 +0100)
Add a jump target so that a bit of exception handling can be better reused
at the end of this function.

Signed-off-by: Markus Elfring <elfring@users.sourceforge.net>
Signed-off-by: Mark Brown <broonie@kernel.org>
sound/soc/blackfin/bf6xx-sport.c

index 1bc3e0a..fcddebf 100644 (file)
@@ -394,19 +394,18 @@ struct sport_device *sport_create(struct platform_device *pdev)
        sport->pdev = pdev;
 
        ret = sport_get_resource(sport);
-       if (ret) {
-               kfree(sport);
-               return NULL;
-       }
+       if (ret)
+               goto free_data;
 
        ret = sport_request_resource(sport);
-       if (ret) {
-               kfree(sport);
-               return NULL;
-       }
+       if (ret)
+               goto free_data;
 
        dev_dbg(dev, "SPORT create success\n");
        return sport;
+free_data:
+       kfree(sport);
+       return NULL;
 }
 EXPORT_SYMBOL(sport_create);