drm/mgag200: Pin displayed cursor BO to video memory
authorThomas Zimmermann <tzimmermann@suse.de>
Tue, 23 Jul 2019 07:54:23 +0000 (09:54 +0200)
committerThomas Zimmermann <tzimmermann@suse.de>
Wed, 24 Jul 2019 07:47:43 +0000 (09:47 +0200)
The cursor BO has to be pinned to video ram while it's being displayed.
With the current code, the BO might be pinned to system memory instead.
The patch fixes this problem.

Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
Acked-by: Sam Ravnborg <sam@ravnborg.org>
Fixes: 94dc57b10399 ("drm/mgag200: Rewrite cursor handling")
Cc: Gerd Hoffmann <kraxel@redhat.com>
Cc: Dave Airlie <airlied@redhat.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20190723075425.24028-2-tzimmermann@suse.de
drivers/gpu/drm/mgag200/mgag200_cursor.c

index 13f32df7e357694ff9dbbb08341dc7ec9927a159..a19975931c6d87153e4d8ca78a137e6e047a2800 100644 (file)
@@ -99,7 +99,7 @@ int mga_crtc_cursor_set(struct drm_crtc *crtc,
        }
 
        /* Pin and map up-coming buffer to write colour indices */
-       ret = drm_gem_vram_pin(pixels_next, 0);
+       ret = drm_gem_vram_pin(pixels_next, DRM_GEM_VRAM_PL_FLAG_VRAM);
        if (ret) {
                dev_err(&dev->pdev->dev,
                        "failed to pin cursor buffer: %d\n", ret);