OSDN Git Service

drm/mgag200: Update mode registers after plane registers
authorThomas Zimmermann <tzimmermann@suse.de>
Fri, 15 May 2020 08:32:24 +0000 (10:32 +0200)
committerThomas Zimmermann <tzimmermann@suse.de>
Tue, 19 May 2020 07:41:33 +0000 (09:41 +0200)
Setting the plane registers first and the mode registers afterwards
reproduces the sequence used by atomic helpers. Done in preparation
of switching to simple KMS helpers.

Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
Tested-by: John Donnelly <John.p.donnelly@oracle.com>
Acked-by: Sam Ravnborg <sam@ravnborg.org>
Acked-by: Emil Velikov <emil.velikov@collabora.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20200515083233.32036-7-tzimmermann@suse.de
drivers/gpu/drm/mgag200/mgag200_mode.c

index 2007d7a..4dba0a3 100644 (file)
@@ -1145,8 +1145,6 @@ static int mga_crtc_mode_set(struct drm_crtc *crtc,
        WREG_CRT(15, 0);
        WREG_CRT(19, pitch & 0xFF);
 
-       mgag200_set_mode_regs(mdev, mode);
-
        ext_vga[0] = 0;
 
        /* TODO interlace */
@@ -1182,6 +1180,8 @@ static int mga_crtc_mode_set(struct drm_crtc *crtc,
 
        mga_crtc_do_set_base(mdev, fb, old_fb);
 
+       mgag200_set_mode_regs(mdev, mode);
+
        /* reset tagfifo */
        if (mdev->type == G200_ER) {
                u32 mem_ctl = RREG32(MGAREG_MEMCTL);