| From 91f8f105f2b82b4a38dee2d74760bc39d40ec42c Mon Sep 17 00:00:00 2001 |
| From: Christopher Harvey <charvey@matrox.com> |
| Date: Fri, 31 May 2013 20:33:07 +0000 |
| Subject: drm/mgag200: Add missing write to index before accessing data register |
| |
| From: Christopher Harvey <charvey@matrox.com> |
| |
| commit 91f8f105f2b82b4a38dee2d74760bc39d40ec42c upstream. |
| |
| This is a bug fix for some versions of g200se cards while doing |
| mode-setting. |
| |
| Signed-off-by: Christopher Harvey <charvey@matrox.com> |
| Tested-by: Julia Lemire <jlemire@matrox.com> |
| Acked-by: Julia Lemire <jlemire@matrox.com> |
| Signed-off-by: Dave Airlie <airlied@gmail.com> |
| Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> |
| |
| --- |
| drivers/gpu/drm/mgag200/mgag200_mode.c | 9 +++++---- |
| 1 file changed, 5 insertions(+), 4 deletions(-) |
| |
| --- a/drivers/gpu/drm/mgag200/mgag200_mode.c |
| +++ b/drivers/gpu/drm/mgag200/mgag200_mode.c |
| @@ -1041,13 +1041,14 @@ static int mga_crtc_mode_set(struct drm_ |
| else |
| hi_pri_lvl = 5; |
| |
| - WREG8(0x1fde, 0x06); |
| - WREG8(0x1fdf, hi_pri_lvl); |
| + WREG8(MGAREG_CRTCEXT_INDEX, 0x06); |
| + WREG8(MGAREG_CRTCEXT_DATA, hi_pri_lvl); |
| } else { |
| + WREG8(MGAREG_CRTCEXT_INDEX, 0x06); |
| if (mdev->reg_1e24 >= 0x01) |
| - WREG8(0x1fdf, 0x03); |
| + WREG8(MGAREG_CRTCEXT_DATA, 0x03); |
| else |
| - WREG8(0x1fdf, 0x04); |
| + WREG8(MGAREG_CRTCEXT_DATA, 0x04); |
| } |
| } |
| return 0; |