break;
        case DRM_FORMAT_NV12:
                if (INTEL_GEN(dev_priv) < 9 || IS_SKYLAKE(dev_priv) ||
-                   IS_BROXTON(dev_priv) || INTEL_GEN(dev_priv) >= 11) {
+                   IS_BROXTON(dev_priv)) {
                        DRM_DEBUG_KMS("unsupported pixel format: %s\n",
                                      drm_get_format_name(mode_cmd->pixel_format,
                                                          &format_name));
 
 static bool skl_plane_has_planar(struct drm_i915_private *dev_priv,
                                 enum pipe pipe, enum plane_id plane_id)
 {
-       /*
-        * FIXME: ICL requires two hardware planes for scanning out NV12
-        * framebuffers. Do not advertize support until this is implemented.
-        */
        if (INTEL_GEN(dev_priv) >= 11)
-               return false;
+               return plane_id <= PLANE_SPRITE3;
 
        if (IS_SKYLAKE(dev_priv) || IS_BROXTON(dev_priv))
                return false;