}
 #endif
 
-static int validate_overlay(struct drm_atomic_state *state)
-{
-       int i;
-       struct drm_plane *plane;
-       struct drm_plane_state *new_plane_state;
-       struct drm_plane_state *primary_state, *overlay_state = NULL;
-
-       /* Check if primary plane is contained inside overlay */
-       for_each_new_plane_in_state_reverse(state, plane, new_plane_state, i) {
-               if (plane->type == DRM_PLANE_TYPE_OVERLAY) {
-                       if (drm_atomic_plane_disabling(plane->state, new_plane_state))
-                               return 0;
-
-                       overlay_state = new_plane_state;
-                       continue;
-               }
-       }
-
-       /* check if we're making changes to the overlay plane */
-       if (!overlay_state)
-               return 0;
-
-       /* check if overlay plane is enabled */
-       if (!overlay_state->crtc)
-               return 0;
-
-       /* find the primary plane for the CRTC that the overlay is enabled on */
-       primary_state = drm_atomic_get_plane_state(state, overlay_state->crtc->primary);
-       if (IS_ERR(primary_state))
-               return PTR_ERR(primary_state);
-
-       /* check if primary plane is enabled */
-       if (!primary_state->crtc)
-               return 0;
-
-       /* Perform the bounds check to ensure the overlay plane covers the primary */
-       if (primary_state->crtc_x < overlay_state->crtc_x ||
-           primary_state->crtc_y < overlay_state->crtc_y ||
-           primary_state->crtc_x + primary_state->crtc_w > overlay_state->crtc_x + overlay_state->crtc_w ||
-           primary_state->crtc_y + primary_state->crtc_h > overlay_state->crtc_y + overlay_state->crtc_h) {
-               DRM_DEBUG_ATOMIC("Overlay plane is enabled with hardware cursor but does not fully cover primary plane\n");
-               return -EINVAL;
-       }
-
-       return 0;
-}
-
 /**
  * amdgpu_dm_atomic_check() - Atomic check implementation for AMDgpu DM.
  * @dev: The DRM device
                        goto fail;
        }
 
-       ret = validate_overlay(state);
-       if (ret)
-               goto fail;
-
        /* Add new/modified planes */
        for_each_oldnew_plane_in_state_reverse(state, plane, old_plane_state, new_plane_state, i) {
                ret = dm_update_plane_state(dc, state, plane,