drm/sun4i: backend: Remove ARGB spoofing
authorMaxime Ripard <maxime.ripard@bootlin.com>
Fri, 16 Feb 2018 17:39:36 +0000 (18:39 +0100)
committerMaxime Ripard <maxime.ripard@bootlin.com>
Thu, 22 Feb 2018 15:20:59 +0000 (16:20 +0100)
We've had some code for quite some time to prevent the alpha bug from
happening on the lowest primary plane. Since we now check for this in our
atomic_check, we can simply remove it.

Reviewed-by: Chen-Yu Tsai <wens@csie.org>
Signed-off-by: Maxime Ripard <maxime.ripard@bootlin.com>
Link: https://patchwork.freedesktop.org/patch/msgid/965180afd8169ccaa848f061d16a2c1a9ec4d289.1518802627.git-series.maxime.ripard@bootlin.com
drivers/gpu/drm/sun4i/sun4i_backend.c

index f387420..092ade4 100644 (file)
@@ -92,13 +92,8 @@ void sun4i_backend_layer_enable(struct sun4i_backend *backend,
                           SUN4I_BACKEND_MODCTL_LAY_EN(layer), val);
 }
 
-static int sun4i_backend_drm_format_to_layer(struct drm_plane *plane,
-                                            u32 format, u32 *mode)
+static int sun4i_backend_drm_format_to_layer(u32 format, u32 *mode)
 {
-       if (plane && (plane->type == DRM_PLANE_TYPE_PRIMARY) &&
-           (format == DRM_FORMAT_ARGB8888))
-               format = DRM_FORMAT_XRGB8888;
-
        switch (format) {
        case DRM_FORMAT_ARGB8888:
                *mode = SUN4I_BACKEND_LAY_FBFMT_ARGB8888;
@@ -191,8 +186,7 @@ int sun4i_backend_update_layer_formats(struct sun4i_backend *backend,
        DRM_DEBUG_DRIVER("Switching display backend interlaced mode %s\n",
                         interlaced ? "on" : "off");
 
-       ret = sun4i_backend_drm_format_to_layer(plane, fb->format->format,
-                                               &val);
+       ret = sun4i_backend_drm_format_to_layer(fb->format->format, &val);
        if (ret) {
                DRM_DEBUG_DRIVER("Invalid format\n");
                return ret;
@@ -211,7 +205,7 @@ int sun4i_backend_update_layer_frontend(struct sun4i_backend *backend,
        u32 val;
        int ret;
 
-       ret = sun4i_backend_drm_format_to_layer(NULL, fmt, &val);
+       ret = sun4i_backend_drm_format_to_layer(fmt, &val);
        if (ret) {
                DRM_DEBUG_DRIVER("Invalid format\n");
                return ret;