summaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
authorBen Skeggs <bskeggs@redhat.com>2019-05-29 15:44:57 +1000
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2019-10-07 18:59:12 +0200
commitecce6020a0527642ecced073b126cba1cf99c2e5 (patch)
treecd3fbe80167451ba7eedd0727fa783e4f2c61452 /drivers
parent6ad134a3308353072ac634906fe16fe2059ae73f (diff)
downloadlinux-stable-ecce6020a0527642ecced073b126cba1cf99c2e5.tar.gz
linux-stable-ecce6020a0527642ecced073b126cba1cf99c2e5.tar.bz2
linux-stable-ecce6020a0527642ecced073b126cba1cf99c2e5.zip
drm/nouveau/kms/tu102-: disable input lut when input is already FP16
[ Upstream commit 1e339ab2ac3c769c1b06b9fb7d532f8495ebc56d ] On Turing, an input LUT is required to transform inputs in fixed-point formats to FP16 for the internal display pipe. We provide an identity mapping whenever a window is enabled for this reason. HW has error checks to ensure when the input is already FP16, that the input LUT is also disabled. Signed-off-by: Ben Skeggs <bskeggs@redhat.com> Signed-off-by: Sasha Levin <sashal@kernel.org>
Diffstat (limited to 'drivers')
-rw-r--r--drivers/gpu/drm/nouveau/dispnv50/wndw.c4
1 files changed, 3 insertions, 1 deletions
diff --git a/drivers/gpu/drm/nouveau/dispnv50/wndw.c b/drivers/gpu/drm/nouveau/dispnv50/wndw.c
index 283ff690350e..50303ec194bb 100644
--- a/drivers/gpu/drm/nouveau/dispnv50/wndw.c
+++ b/drivers/gpu/drm/nouveau/dispnv50/wndw.c
@@ -320,7 +320,9 @@ nv50_wndw_atomic_check_lut(struct nv50_wndw *wndw,
asyh->wndw.olut &= ~BIT(wndw->id);
}
- if (!ilut && wndw->func->ilut_identity) {
+ if (!ilut && wndw->func->ilut_identity &&
+ asyw->state.fb->format->format != DRM_FORMAT_XBGR16161616F &&
+ asyw->state.fb->format->format != DRM_FORMAT_ABGR16161616F) {
static struct drm_property_blob dummy = {};
ilut = &dummy;
}