summaryrefslogtreecommitdiff
path: root/sys/dev/pci/drm/drm_plane.c
diff options
context:
space:
mode:
Diffstat (limited to 'sys/dev/pci/drm/drm_plane.c')
-rw-r--r--sys/dev/pci/drm/drm_plane.c14
1 files changed, 7 insertions, 7 deletions
diff --git a/sys/dev/pci/drm/drm_plane.c b/sys/dev/pci/drm/drm_plane.c
index 15e06db5b60..2a3feb831f1 100644
--- a/sys/dev/pci/drm/drm_plane.c
+++ b/sys/dev/pci/drm/drm_plane.c
@@ -249,6 +249,13 @@ static int __drm_universal_plane_init(struct drm_device *dev,
if (WARN_ON(config->num_total_plane >= 32))
return -EINVAL;
+ /*
+ * First driver to need more than 64 formats needs to fix this. Each
+ * format is encoded as a bit and the current code only supports a u64.
+ */
+ if (WARN_ON(format_count > 64))
+ return -EINVAL;
+
WARN_ON(drm_drv_uses_atomic_modeset(dev) &&
(!funcs->atomic_destroy_state ||
!funcs->atomic_duplicate_state));
@@ -270,13 +277,6 @@ static int __drm_universal_plane_init(struct drm_device *dev,
return -ENOMEM;
}
- /*
- * First driver to need more than 64 formats needs to fix this. Each
- * format is encoded as a bit and the current code only supports a u64.
- */
- if (WARN_ON(format_count > 64))
- return -EINVAL;
-
if (format_modifiers) {
const uint64_t *temp_modifiers = format_modifiers;