mirror of
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2025-09-04 20:19:47 +08:00
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.
Cc: stable@vger.kernel.org
Fixes: c586f30bf7
("drm/nouveau/kms: Add format mod prop to base/ovly/nvdisp")
Signed-off-by: James Jones <jajones@nvidia.com>
Link: https://lore.kernel.org/r/20250811220017.1337-3-jajones@nvidia.com
Signed-off-by: Danilo Krummrich <dakr@kernel.org>
This commit is contained in:
parent
08fb45446e
commit
e2fe0c54fb
@ -795,6 +795,10 @@ static bool nv50_plane_format_mod_supported(struct drm_plane *plane,
|
|||||||
struct nouveau_drm *drm = nouveau_drm(plane->dev);
|
struct nouveau_drm *drm = nouveau_drm(plane->dev);
|
||||||
uint8_t i;
|
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) {
|
if (drm->client.device.info.chipset < 0xc0) {
|
||||||
const struct drm_format_info *info = drm_format_info(format);
|
const struct drm_format_info *info = drm_format_info(format);
|
||||||
const uint8_t kind = (modifier >> 12) & 0xff;
|
const uint8_t kind = (modifier >> 12) & 0xff;
|
||||||
|
Loading…
Reference in New Issue
Block a user