Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit d3922b69 authored by Mathieu Larouche's avatar Mathieu Larouche Committed by Dave Airlie
Browse files

drm/mgag200: Black screen fix for G200e rev 4



- Fixed black screen for some resolutions of G200e rev4
- Fixed testm & testn which had predetermined value.

Reported-by: default avatarJan Beulich <jbeulich@suse.com>

Signed-off-by: default avatarMathieu Larouche <mathieu.larouche@matrox.com>
Cc: stable@vger.kernel.org
Signed-off-by: default avatarDave Airlie <airlied@redhat.com>
parent afe705be
Loading
Loading
Loading
Loading
+9 −1
Original line number Diff line number Diff line
@@ -182,7 +182,7 @@ static int mga_g200se_set_plls(struct mga_device *mdev, long clock)
			}
		}

		fvv = pllreffreq * testn / testm;
		fvv = pllreffreq * (n + 1) / (m + 1);
		fvv = (fvv - 800000) / 50000;

		if (fvv > 15)
@@ -202,6 +202,14 @@ static int mga_g200se_set_plls(struct mga_device *mdev, long clock)
	WREG_DAC(MGA1064_PIX_PLLC_M, m);
	WREG_DAC(MGA1064_PIX_PLLC_N, n);
	WREG_DAC(MGA1064_PIX_PLLC_P, p);

	if (mdev->unique_rev_id >= 0x04) {
		WREG_DAC(0x1a, 0x09);
		msleep(20);
		WREG_DAC(0x1a, 0x01);

	}

	return 0;
}