From: Christopher Harvey Date: Fri, 12 Apr 2013 20:42:19 +0000 (+0000) Subject: drm/mgag200: Don't change unrelated registers during modeset X-Git-Url: https://git.karo-electronics.de/?a=commitdiff_plain;h=9d8aa55ff6bd21f573581a29da32ad746f2edcfb;p=linux-beck.git drm/mgag200: Don't change unrelated registers during modeset Registers in indices below 0x18 are totally unrelated to modesetting, so don't write 0's, or anything else into them on modeset. Most of these registers are hardware cursor related, so this existing code interferes with hardware cursor development. Signed-off-by: Christopher Harvey Tested-by: Julia Lemire Acked-by: Julia Lemire Acked-by: Mathieu Larouche Signed-off-by: Dave Airlie --- diff --git a/drivers/gpu/drm/mgag200/mgag200_mode.c b/drivers/gpu/drm/mgag200/mgag200_mode.c index 7337013a4a0e..2affe7af6cbb 100644 --- a/drivers/gpu/drm/mgag200/mgag200_mode.c +++ b/drivers/gpu/drm/mgag200/mgag200_mode.c @@ -832,11 +832,7 @@ static int mga_crtc_mode_set(struct drm_crtc *crtc, for (i = 0; i < sizeof(dacvalue); i++) { - if ((i <= 0x03) || - (i == 0x07) || - (i == 0x0b) || - (i == 0x0f) || - ((i >= 0x13) && (i <= 0x17)) || + if ((i <= 0x17) || (i == 0x1b) || (i == 0x1c) || ((i >= 0x1f) && (i <= 0x29)) ||