]> git.baikalelectronics.ru Git - kernel.git/commit
drm/nouveau/dispnv50: Restore pushing of all data.
authorBastian Beranek <bastian.beischer@rwth-aachen.de>
Thu, 21 Jan 2021 14:27:36 +0000 (15:27 +0100)
committerBen Skeggs <bskeggs@redhat.com>
Fri, 29 Jan 2021 01:02:14 +0000 (11:02 +1000)
commitf9470b307d0a83b4a9b02773b5fb5d2ee33d960a
treecc7c10184647cfb8678ddfa8f89a784b13cc06bb
parentc21a9feaf6e872ec83131344de422645beff30ba
drm/nouveau/dispnv50: Restore pushing of all data.

Commit f492594d206ef6bcf1ea603a85b43d27766b3a1a introduced a regression for
NV50, which lead to visual artifacts, tearing and eventual crashes.

In the changes of f492594d206ef6bcf1ea603a85b43d27766b3a1a only the first line
was correctly translated to the new NVIDIA header macros:

- PUSH_NVSQ(push, NV827C, 0x0110, 0,
- 0x0114, 0);
+ PUSH_MTHD(push, NV827C, SET_PROCESSING,
+   NVDEF(NV827C, SET_PROCESSING, USE_GAIN_OFS, DISABLE));

The lower part ("0x0114, 0") was probably omitted by accident.

This patch restores the push of the missing data and fixes the regression.

Signed-off-by: Bastian Beranek <bastian.beischer@rwth-aachen.de>
Fixes: f492594d206ef ("drm/nouveau/kms/nv50-: use NVIDIA's headers for wndw image_set()")
Link: https://gitlab.freedesktop.org/drm/nouveau/-/issues/14
Signed-off-by: Ben Skeggs <bskeggs@redhat.com>
drivers/gpu/drm/nouveau/dispnv50/base507c.c
drivers/gpu/drm/nouveau/dispnv50/base827c.c