info = (struct intel_device_info *)&dev_priv->info;
 
+       /*
+        * Skylake and Broxton currently don't expose the topmost plane as its
+        * use is exclusive with the legacy cursor and we only want to expose
+        * one of those, not both. Until we can safely expose the topmost plane
+        * as a DRM_PLANE_TYPE_CURSOR with all the features exposed/supported,
+        * we don't expose the topmost plane at all to prevent ABI breakage
+        * down the line.
+        */
        if (IS_BROXTON(dev)) {
-               info->num_sprites[PIPE_A] = 3;
-               info->num_sprites[PIPE_B] = 3;
-               info->num_sprites[PIPE_C] = 2;
-       } else if (IS_VALLEYVIEW(dev) || INTEL_INFO(dev)->gen == 9)
+               info->num_sprites[PIPE_A] = 2;
+               info->num_sprites[PIPE_B] = 2;
+               info->num_sprites[PIPE_C] = 1;
+       } else if (IS_VALLEYVIEW(dev))
                for_each_pipe(dev_priv, pipe)
                        info->num_sprites[pipe] = 2;
        else