diff mbox

[1/1] drm/mgag200: Fix to always set HiPri for G200e4

Message ID 28e036c63dc92edf4c2dff6a4c8ab0c6814211ef.1497288528.git.mathieu.larouche@matrox.com (mailing list archive)
State New, archived
Headers show

Commit Message

Mathieu Larouche June 13, 2017, 5:50 p.m. UTC
From: Mathieu Larouche <mathieu.larouche@matrox.com>

  - Changed the HiPri value for G200e4 to always be 0.
  - Added Bandwith limitation to block resolution above 1920x1200x60Hz
---
 drivers/gpu/drm/mgag200/mgag200_mode.c | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

Comments

Sean Paul June 14, 2017, 2:20 p.m. UTC | #1
On Tue, Jun 13, 2017 at 01:50:38PM -0400, mathieu.larouche@matrox.com wrote:
> From: Mathieu Larouche <mathieu.larouche@matrox.com>
> 
>   - Changed the HiPri value for G200e4 to always be 0.
>   - Added Bandwith limitation to block resolution above 1920x1200x60Hz

Hi Mathieu,
There's no Signed-off-by on this patch, can you please resend with the tag?

Thanks

> ---
>  drivers/gpu/drm/mgag200/mgag200_mode.c | 9 ++++++++-
>  1 file changed, 8 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/gpu/drm/mgag200/mgag200_mode.c b/drivers/gpu/drm/mgag200/mgag200_mode.c
> index 6b21cb2..292e8eb 100644
> --- a/drivers/gpu/drm/mgag200/mgag200_mode.c
> +++ b/drivers/gpu/drm/mgag200/mgag200_mode.c
> @@ -1133,7 +1133,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;
> @@ -1598,6 +1601,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)
> -- 
> 1.8.3.1
> 
> _______________________________________________
> dri-devel mailing list
> dri-devel@lists.freedesktop.org
> https://lists.freedesktop.org/mailman/listinfo/dri-devel
diff mbox

Patch

diff --git a/drivers/gpu/drm/mgag200/mgag200_mode.c b/drivers/gpu/drm/mgag200/mgag200_mode.c
index 6b21cb2..292e8eb 100644
--- a/drivers/gpu/drm/mgag200/mgag200_mode.c
+++ b/drivers/gpu/drm/mgag200/mgag200_mode.c
@@ -1133,7 +1133,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;
@@ -1598,6 +1601,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)