File 1006-drm-mgag200-Fix-to-always-set-HiPri-for-G200e4.patch of Package drm
From: Mathieu Larouche <mathieu.larouche@matrox.com>
Date: Tue Jun 13 17:50:38 UTC 2017
Subject: drm/mgag200: Fix to always set HiPri for G200e4
Patch-mainline: Submitted, dri-devel ML
References: bsc#1015452, bsc#995542
This patch was tested by Matrox and Lenovo and submitted via
https://lists.freedesktop.org/archives/dri-devel/2017-June/144176.html
- 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>
Signed-off-by: Stefan Dirsch <sndirsch@suse.de>
Reviewed-by: Stefan Dirsch <sndirsch@suse.de>
Acked-by: Takashi Iwai <tiwai@suse.de>
---
drivers/gpu/drm/mgag200/mgag200_mode.c | 9 ++++++++-
1 file changed, 8 insertions(+), 1 deletion(-)
--- a/drivers/gpu/drm/mgag200/mgag200_mode.c
+++ b/drivers/gpu/drm/mgag200/mgag200_mode.c
@@ -1172,7 +1172,10 @@ static int mga_crtc_mode_set(struct drm_
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;
@@ -1637,6 +1640,10 @@ static int mga_vga_mode_valid(struct drm
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)