]> www.infradead.org Git - users/jedix/linux-maple.git/commitdiff
drm/mgag200: Fix to always set HiPri for G200e4 V2
authorMathieu Larouche <mathieu.larouche@matrox.com>
Wed, 14 Jun 2017 14:39:42 +0000 (10:39 -0400)
committerKirtikar Kashyap <kirtikar.kashyap@oracle.com>
Thu, 13 Jul 2017 22:11:47 +0000 (15:11 -0700)
  - Changed the HiPri value for G200e4 to always be 0.
  - Added Bandwith limitation to block resolution above 1920x1200x60Hz

Signed-off-by: Mathieu Larouche <mathieu.larouche@matrox.com>
Acked-by: Dave Airlie <airlied@redhat.com>
[seanpaul removed some trailing whitespace from the patch]
Signed-off-by: Sean Paul <seanpaul@chromium.org>
Link: http://patchwork.freedesktop.org/patch/msgid/ec0f8568d7ec41904dfe593c5deccf3f062d7bd8.1497450944.git.mathieu.larouche@matrox.com
(cherry picked from commit 0cbb738108927916a659b5b0b96e386fcd7cc6e1)

Orabug: 26427049

Signed-off-by: Kirtikar Kashyap <kirtikar.kashyap@oracle.com>
Reviewed-by: Jack Vogel <jack.vogel@oracle.com>
drivers/gpu/drm/mgag200/mgag200_mode.c

index ad4b9010dfb0bbed135185e9f64aed98c3239a24..8f404659d52ede5482a57ebf3a5f9bc34ad2f4f0 100644 (file)
@@ -1030,7 +1030,10 @@ static int mga_crtc_mode_set(struct drm_crtc *crtc,
 
 
        if (IS_G200_SE(mdev)) {
-               if (mdev->unique_rev_id >= 0x02) {
+               if  (mdev->unique_rev_id >= 0x04) {
+                       WREG8(MGAREG_CRTCEXT_INDEX, 0x06);
+                       WREG8(MGAREG_CRTCEXT_DATA, 0);
+               } else if (mdev->unique_rev_id >= 0x02) {
                        u8 hi_pri_lvl;
                        u32 bpp;
                        u32 mb;
@@ -1503,6 +1506,10 @@ static int mga_vga_mode_valid(struct drm_connector *connector,
                        if (mga_vga_calculate_mode_bandwidth(mode, bpp)
                                > (30100 * 1024))
                                return MODE_BANDWIDTH;
+               } else {
+                       if (mga_vga_calculate_mode_bandwidth(mode, bpp)
+                               > (55000 * 1024))
+                               return MODE_BANDWIDTH;
                }
        } else if (mdev->type == G200_WB) {
                if (mode->hdisplay > 1280)