mirror of
https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
synced 2025-01-26 02:25:00 -05:00
drm/nouveau/kms/nv50: skip core channel cursor update on position-only changes
The DRM core used to only call prepare_fb/cleanup_fb() when a plane's framebuffer changed, which achieved the desired effect. It's apparently now up to the driver to decide on its own. Signed-off-by: Ben Skeggs <bskeggs@redhat.com> Cc: stable@vger.kernel.org [4.11+]
This commit is contained in:
parent
36601c2b36
commit
e6db95799b
1 changed files with 7 additions and 3 deletions
|
@ -1119,9 +1119,13 @@ static void
|
||||||
nv50_curs_prepare(struct nv50_wndw *wndw, struct nv50_head_atom *asyh,
|
nv50_curs_prepare(struct nv50_wndw *wndw, struct nv50_head_atom *asyh,
|
||||||
struct nv50_wndw_atom *asyw)
|
struct nv50_wndw_atom *asyw)
|
||||||
{
|
{
|
||||||
asyh->curs.handle = nv50_disp(wndw->plane.dev)->mast.base.vram.handle;
|
u32 handle = nv50_disp(wndw->plane.dev)->mast.base.vram.handle;
|
||||||
asyh->curs.offset = asyw->image.offset;
|
u32 offset = asyw->image.offset;
|
||||||
asyh->set.curs = asyh->curs.visible;
|
if (asyh->curs.handle != handle || asyh->curs.offset != offset) {
|
||||||
|
asyh->curs.handle = handle;
|
||||||
|
asyh->curs.offset = offset;
|
||||||
|
asyh->set.curs = asyh->curs.visible;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
|
|
Loading…
Add table
Reference in a new issue