Merge tag 'drm-msm-next-2022-05-09' of https://gitlab.freedesktop.org/drm/msm into...
[linux-2.6-microblaze.git] / drivers / gpu / drm / vc4 / vc4_txp.c
index 3447eb6..3579d48 100644 (file)
@@ -298,12 +298,18 @@ static void vc4_txp_connector_atomic_commit(struct drm_connector *conn,
        if (WARN_ON(i == ARRAY_SIZE(drm_fmts)))
                return;
 
-       ctrl = TXP_GO | TXP_VSTART_AT_EOF | TXP_EI |
+       ctrl = TXP_GO | TXP_EI |
               VC4_SET_FIELD(0xf, TXP_BYTE_ENABLE) |
               VC4_SET_FIELD(txp_fmts[i], TXP_FORMAT);
 
        if (fb->format->has_alpha)
                ctrl |= TXP_ALPHA_ENABLE;
+       else
+               /*
+                * If TXP_ALPHA_ENABLE isn't set and TXP_ALPHA_INVERT is, the
+                * hardware will force the output padding to be 0xff.
+                */
+               ctrl |= TXP_ALPHA_INVERT;
 
        gem = drm_fb_cma_get_gem_obj(fb, 0);
        TXP_WRITE(TXP_DST_PTR, gem->paddr + fb->offsets[0]);