[WHY]
Overlay works similarly to MPO, but uses global alpha on both planes and
sets the desktop as the rear plane instead of the front plane
[HOW]
Ensure that top plane isn't overlay by checking global alpha before
applying the previously added MPO fix
Reviewed-by: Rodrigo Siqueira <rodrigo.siqueira@amd.com>
Signed-off-by: Michael Strauss <michael.strauss@amd.com>
Signed-off-by: Wayne Lin <wayne.lin@amd.com>
Tested-by: Daniel Wheeler <daniel.wheeler@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
 
                        while (top->top_pipe)
                                top = top->top_pipe; // Traverse to top pipe_ctx
-                       if (top->plane_state && top->plane_state->layer_index == 0)
-                               return true; // Front MPO plane not hidden
+                       if (top->plane_state && top->plane_state->layer_index == 0 && !top->plane_state->global_alpha)
+                               // Global alpha used by top plane for PIP overlay
+                               // Pre-multiplied/per-pixel alpha used by MPO
+                               // Check top plane's global alpha to ensure layer_index > 0 not caused by PIP
+                               return true; // MPO in use and front plane not hidden
                }
        }
        return false;