All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH 1/3] drivers/nouveau/kms/nv50-: Reject format modifiers for cursor planes
@ 2021-01-19  1:54 ` Lyude Paul
  0 siblings, 0 replies; 75+ messages in thread
From: Lyude Paul @ 2021-01-19  1:54 UTC (permalink / raw)
  To: nouveau
  Cc: James Jones, Martin Peres, Jeremy Cline, Simon Ser, stable,
	Ben Skeggs, David Airlie, Daniel Vetter, Christian König,
	Thomas Zimmermann, Nirmoy Das,
	open list:DRM DRIVER FOR NVIDIA GEFORCE/QUADRO GPUS, open list

Nvidia hardware doesn't actually support using tiling formats with the
cursor plane, only linear is allowed. In the future, we should write a
testcase for this.

Fixes: c586f30bf74c ("drm/nouveau/kms: Add format mod prop to base/ovly/nvdisp")
Cc: James Jones <jajones@nvidia.com>
Cc: Martin Peres <martin.peres@free.fr>
Cc: Jeremy Cline <jcline@redhat.com>
Cc: Simon Ser <contact@emersion.fr>
Cc: <stable@vger.kernel.org> # v5.8+
Signed-off-by: Lyude Paul <lyude@redhat.com>
---
 drivers/gpu/drm/nouveau/dispnv50/wndw.c | 17 +++++++++++++----
 1 file changed, 13 insertions(+), 4 deletions(-)

diff --git a/drivers/gpu/drm/nouveau/dispnv50/wndw.c b/drivers/gpu/drm/nouveau/dispnv50/wndw.c
index ce451242f79e..271de3a63f21 100644
--- a/drivers/gpu/drm/nouveau/dispnv50/wndw.c
+++ b/drivers/gpu/drm/nouveau/dispnv50/wndw.c
@@ -702,6 +702,11 @@ nv50_wndw_init(struct nv50_wndw *wndw)
 	nvif_notify_get(&wndw->notify);
 }
 
+static const u64 nv50_cursor_format_modifiers[] = {
+	DRM_FORMAT_MOD_LINEAR,
+	DRM_FORMAT_MOD_INVALID,
+};
+
 int
 nv50_wndw_new_(const struct nv50_wndw_func *func, struct drm_device *dev,
 	       enum drm_plane_type type, const char *name, int index,
@@ -713,6 +718,7 @@ nv50_wndw_new_(const struct nv50_wndw_func *func, struct drm_device *dev,
 	struct nvif_mmu *mmu = &drm->client.mmu;
 	struct nv50_disp *disp = nv50_disp(dev);
 	struct nv50_wndw *wndw;
+	const u64 *format_modifiers;
 	int nformat;
 	int ret;
 
@@ -728,10 +734,13 @@ nv50_wndw_new_(const struct nv50_wndw_func *func, struct drm_device *dev,
 
 	for (nformat = 0; format[nformat]; nformat++);
 
-	ret = drm_universal_plane_init(dev, &wndw->plane, heads, &nv50_wndw,
-				       format, nformat,
-				       nouveau_display(dev)->format_modifiers,
-				       type, "%s-%d", name, index);
+	if (type == DRM_PLANE_TYPE_CURSOR)
+		format_modifiers = nv50_cursor_format_modifiers;
+	else
+		format_modifiers = nouveau_display(dev)->format_modifiers;
+
+	ret = drm_universal_plane_init(dev, &wndw->plane, heads, &nv50_wndw, format, nformat,
+				       format_modifiers, type, "%s-%d", name, index);
 	if (ret) {
 		kfree(*pwndw);
 		*pwndw = NULL;
-- 
2.29.2


^ permalink raw reply related	[flat|nested] 75+ messages in thread

end of thread, other threads:[~2021-03-03 17:11 UTC | newest]

Thread overview: 75+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-01-19  1:54 [PATCH 1/3] drivers/nouveau/kms/nv50-: Reject format modifiers for cursor planes Lyude Paul
2021-01-19  1:54 ` Lyude Paul
2021-01-19  1:54 ` Lyude Paul
2021-01-19  1:54 ` [PATCH 2/3] drm/nouveau/kms/nv50-: Report max cursor size to userspace Lyude Paul
2021-01-19  1:54   ` Lyude Paul
2021-01-19  1:54   ` Lyude Paul
2021-01-19 10:22   ` Simon Ser
2021-01-19 10:22     ` Simon Ser
2021-01-19 10:22     ` Simon Ser
2021-02-23 14:15   ` Alex Riesen
2021-02-23 14:15     ` Alex Riesen
2021-02-23 14:15     ` [Nouveau] " Alex Riesen
2021-02-23 14:56     ` Ilia Mirkin
2021-02-23 14:56       ` Ilia Mirkin
2021-02-23 14:56       ` [Nouveau] " Ilia Mirkin
2021-02-23 15:36       ` Alex Riesen
2021-02-23 15:36         ` Alex Riesen
2021-02-23 15:36         ` [Nouveau] " Alex Riesen
2021-02-23 15:46         ` Ilia Mirkin
2021-02-23 15:46           ` Ilia Mirkin
2021-02-23 15:46           ` [Nouveau] " Ilia Mirkin
2021-02-23 15:51           ` Alex Riesen
2021-02-23 15:51             ` Alex Riesen
2021-02-23 15:51             ` [Nouveau] " Alex Riesen
2021-02-23 16:22             ` Alex Riesen
2021-02-23 16:22               ` Alex Riesen
2021-02-23 16:22               ` [Nouveau] " Alex Riesen
2021-02-23 18:13               ` Ilia Mirkin
2021-02-23 18:13                 ` Ilia Mirkin
2021-02-23 18:13                 ` [Nouveau] " Ilia Mirkin
2021-02-24  9:08                 ` Alex Riesen
2021-02-24  9:08                   ` Alex Riesen
2021-02-24  9:08                   ` [Nouveau] " Alex Riesen
2021-02-24 15:10                   ` Ilia Mirkin
2021-02-24 15:10                     ` Ilia Mirkin
2021-02-24 16:35                     ` [Nouveau] " Alex Riesen
2021-02-24 16:35                       ` Alex Riesen
2021-02-24 16:48                       ` [Nouveau] " Ilia Mirkin
2021-02-24 16:48                         ` Ilia Mirkin
2021-02-24 16:53                         ` [Nouveau] " Alex Riesen
2021-02-24 16:53                           ` Alex Riesen
2021-02-24 16:57                           ` [Nouveau] " Ilia Mirkin
2021-02-24 16:57                             ` Ilia Mirkin
2021-02-24 17:02                             ` [Nouveau] " Alex Riesen
2021-02-24 17:02                               ` Alex Riesen
2021-02-24 17:47                               ` [Nouveau] " Ilia Mirkin
2021-02-24 17:47                                 ` Ilia Mirkin
2021-02-27 12:28                                 ` [Nouveau] " Uwe Sauter
2021-02-27 21:26                                   ` Ilia Mirkin
2021-02-28 15:10                                     ` Uwe Sauter
2021-02-28 17:02                                       ` Ilia Mirkin
2021-02-28 17:59                                         ` Uwe Sauter
2021-02-28 19:10                                           ` Ilia Mirkin
2021-02-28 19:24                                             ` Uwe Sauter
2021-02-28 20:38                                               ` Ilia Mirkin
2021-03-03 12:41                                     ` Alex Riesen
2021-03-03 13:12                                       ` Ilia Mirkin
2021-03-03 13:25                                         ` Uwe Sauter
2021-03-03 13:33                                           ` Ilia Mirkin
2021-03-03 17:02                                             ` Uwe Sauter
2021-03-03 17:11                                               ` Lyude Paul
2021-03-03 16:51                                         ` Lyude Paul
2021-03-03 17:05                                           ` James Jones
2021-01-19  1:54 ` [PATCH 3/3] drm/nouveau/kms/nve4-nv138: Fix > 64x64 cursors Lyude Paul
2021-01-19  1:54   ` Lyude Paul
2021-01-19  1:54   ` Lyude Paul
2021-01-19 10:18 ` [PATCH 1/3] drivers/nouveau/kms/nv50-: Reject format modifiers for cursor planes Simon Ser
2021-01-19 10:18   ` Simon Ser
2021-01-19 10:18   ` Simon Ser
2021-01-19 15:50 ` Ville Syrjälä
2021-01-19 15:50   ` Ville Syrjälä
2021-01-19 15:50   ` Ville Syrjälä
2021-01-19 15:52 ` James Jones
2021-01-19 15:52   ` James Jones
2021-01-19 15:52   ` James Jones

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.