Even if flushing the command buffer doesn't succeed, the
G2D calls would still return zero. Fix this by just passing
the flush return code.

Signed-off-by: Tobias Jakobi <tjak...@math.uni-bielefeld.de>
---
 exynos/exynos_fimg2d.c | 20 +++++---------------
 1 file changed, 5 insertions(+), 15 deletions(-)

diff --git a/exynos/exynos_fimg2d.c b/exynos/exynos_fimg2d.c
index 86ae898..5ea42e6 100644
--- a/exynos/exynos_fimg2d.c
+++ b/exynos/exynos_fimg2d.c
@@ -330,9 +330,7 @@ g2d_solid_fill(struct g2d_context *ctx, struct g2d_image 
*img,
        bitblt.data.fast_solid_color_fill_en = 1;
        g2d_add_cmd(ctx, BITBLT_COMMAND_REG, bitblt.val);
 
-       g2d_flush(ctx);
-
-       return 0;
+       return g2d_flush(ctx);
 }
 
 /**
@@ -415,9 +413,7 @@ g2d_copy(struct g2d_context *ctx, struct g2d_image *src,
        rop4.data.unmasked_rop3 = G2D_ROP3_SRC;
        g2d_add_cmd(ctx, ROP4_REG, rop4.val);
 
-       g2d_flush(ctx);
-
-       return 0;
+       return g2d_flush(ctx);
 }
 
 /**
@@ -527,9 +523,7 @@ g2d_copy_with_scale(struct g2d_context *ctx, struct 
g2d_image *src,
        pt.data.y = dst_y + dst_h;
        g2d_add_cmd(ctx, DST_RIGHT_BOTTOM_REG, pt.val);
 
-       g2d_flush(ctx);
-
-       return 0;
+       return g2d_flush(ctx);
 }
 
 /**
@@ -636,9 +630,7 @@ g2d_blend(struct g2d_context *ctx, struct g2d_image *src,
        pt.data.y = dst_y + h;
        g2d_add_cmd(ctx, DST_RIGHT_BOTTOM_REG, pt.val);
 
-       g2d_flush(ctx);
-
-       return 0;
+       return g2d_flush(ctx);
 }
 
 /**
@@ -766,7 +758,5 @@ g2d_scale_and_blend(struct g2d_context *ctx, struct 
g2d_image *src,
        pt.data.y = dst_y + dst_h;
        g2d_add_cmd(ctx, DST_RIGHT_BOTTOM_REG, pt.val);
 
-       g2d_flush(ctx);
-
-       return 0;
+       return g2d_flush(ctx);
 }
-- 
2.0.5

--
To unsubscribe from this list: send the line "unsubscribe linux-samsung-soc" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to