[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20250811220017.1337-3-jajones@nvidia.com>
Date: Mon, 11 Aug 2025 15:00:16 -0700
From: James Jones <jajones@...dia.com>
To: Danilo Krummrich <dakr@...nel.org>,
Lyude Paul <lyude@...hat.com>,
Faith Ekstrand <faith.ekstrand@...labora.com>
Cc: nouveau@...ts.freedesktop.org,
dri-devel@...ts.freedesktop.org,
linux-kernel@...r.kernel.org,
David Airlie <airlied@...il.com>,
Simona Vetter <simona@...ll.ch>,
Joel Fernandes <joelagnelf@...dia.com>,
James Jones <jajones@...dia.com>
Subject: [PATCH 2/3] drm/nouveau/disp: Always accept linear modifier
On some chipsets, which block-linear modifiers are
supported is format-specific. However, linear
modifiers are always be supported. The prior
modifier filtering logic was not accounting for
the linear case.
Fixes: c586f30bf74c ("drm/nouveau/kms: Add format mod prop to base/ovly/nvdisp")
Signed-off-by: James Jones <jajones@...dia.com>
---
drivers/gpu/drm/nouveau/dispnv50/wndw.c | 4 ++++
1 file changed, 4 insertions(+)
diff --git a/drivers/gpu/drm/nouveau/dispnv50/wndw.c b/drivers/gpu/drm/nouveau/dispnv50/wndw.c
index 11d5b923d6e7..e2c55f4b9c5a 100644
--- a/drivers/gpu/drm/nouveau/dispnv50/wndw.c
+++ b/drivers/gpu/drm/nouveau/dispnv50/wndw.c
@@ -795,6 +795,10 @@ static bool nv50_plane_format_mod_supported(struct drm_plane *plane,
struct nouveau_drm *drm = nouveau_drm(plane->dev);
uint8_t i;
+ /* All chipsets can display all formats in linear layout */
+ if (modifier == DRM_FORMAT_MOD_LINEAR)
+ return true;
+
if (drm->client.device.info.chipset < 0xc0) {
const struct drm_format_info *info = drm_format_info(format);
const uint8_t kind = (modifier >> 12) & 0xff;
--
2.50.1
Powered by blists - more mailing lists