diff options
author | Laurent Pinchart <laurent.pinchart@ideasonboard.com> | 2018-03-02 22:38:21 +0300 |
---|---|---|
committer | Tomi Valkeinen <tomi.valkeinen@ti.com> | 2018-09-03 16:13:27 +0300 |
commit | 66aacfe22d53137eab511b3f4d674ddd40a7b1ac (patch) | |
tree | bb3a142be75d25c274af2673ae09da2afdb4fba6 /drivers/gpu/drm/omapdrm/dss/venc.c | |
parent | a25edf0ea6de6780ef9e8dc489a5c14599c48326 (diff) | |
download | linux-66aacfe22d53137eab511b3f4d674ddd40a7b1ac.tar.xz |
drm/omap: dss: Cleanup error paths in output init functions
Rename the jump labels according to the cleanup they perform, not the
location they're accessed from, and move functions from error checks to
cleanup paths, and move reference handling to simplify cleanup.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
Reviewed-by: Sebastian Reichel <sebastian.reichel@collabora.co.uk>
Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
Diffstat (limited to 'drivers/gpu/drm/omapdrm/dss/venc.c')
-rw-r--r-- | drivers/gpu/drm/omapdrm/dss/venc.c | 7 |
1 files changed, 3 insertions, 4 deletions
diff --git a/drivers/gpu/drm/omapdrm/dss/venc.c b/drivers/gpu/drm/omapdrm/dss/venc.c index dd9af335dba0..93c3e5250a63 100644 --- a/drivers/gpu/drm/omapdrm/dss/venc.c +++ b/drivers/gpu/drm/omapdrm/dss/venc.c @@ -867,7 +867,7 @@ static int venc_bind(struct device *dev, struct device *master, void *data) r = venc_runtime_get(venc); if (r) - goto err_runtime_get; + goto err_pm_disable; rev_id = (u8)(venc_read_reg(venc, VENC_REV_ID) & 0xff); dev_dbg(&pdev->dev, "OMAP VENC rev %d\n", rev_id); @@ -877,7 +877,7 @@ static int venc_bind(struct device *dev, struct device *master, void *data) r = venc_probe_of(venc); if (r) { DSSERR("Invalid DT data\n"); - goto err_probe_of; + goto err_pm_disable; } venc->debugfs = dss_debugfs_create_file(dss, "venc", venc_dump_regs, @@ -887,8 +887,7 @@ static int venc_bind(struct device *dev, struct device *master, void *data) return 0; -err_probe_of: -err_runtime_get: +err_pm_disable: pm_runtime_disable(&pdev->dev); err_free: kfree(venc); |