KMS/radeon regression: failure to set modes on CEDAR & TAHITI; v3.11 vs 3.12-rc5/rc7

Jerome Glisse j.glisse at gmail.com
Wed Nov 6 14:43:45 PST 2013


On Wed, Nov 06, 2013 at 05:48:55PM +0000, Robin H. Johnson wrote:
> On Wed, Nov 06, 2013 at 12:16:31PM -0500, Alex Deucher wrote:
> > On Wed, Nov 6, 2013 at 12:14 PM, Robin H. Johnson <robbat2 at gentoo.org> wrote:
> > > (Resending to dri-devel because the first one didn't make it).
> > >
> > > I apologize for not sending this sooner, but I wanted to be really sure that I
> > > wasn't introducing the bug elsewhere, and I was lacking time to even narrow it
> > > down this far.
> > >
> > > TL;DR:
> > > 3.11 kernel does proper modeset for dual 1920x1200 outputs
> > > 3.12-rc5/rc7 kernel fails to do proper modeset, blank screen after radeon loaded
> > Can you bisect?
> I have the next step in the bisect prepared (taking an educated guess
> and deciding that rc1 was probably also bad, because the changes after
> rc1 were minimal), but this is my primary box for getting work done; so
> I haven't rebooted since writing my email and preparing that next
> kernel.
> 

Possible fix attached.

Cheers,
Jerome

> -- 
> Robin Hugh Johnson
> Gentoo Linux: Developer, Trustee & Infrastructure Lead
> E-Mail     : robbat2 at gentoo.org
> GnuPG FP   : 11ACBA4F 4778E3F6 E4EDF38E B27B944E 34884E85
> _______________________________________________
> dri-devel mailing list
> dri-devel at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/dri-devel
-------------- next part --------------
>From c3d9451b9183182678e5faa62622992dbff80cdf Mon Sep 17 00:00:00 2001
From: Jerome Glisse <jglisse at redhat.com>
Date: Wed, 6 Nov 2013 17:42:02 -0500
Subject: [PATCH] radeon/i2c: do not count reg index in number of i2c byte we
 are writting.

Useless to count the register index in number of bytes we are writting.

Signed-off-by: Jerome Glisse <jglisse at redhat.com>
---
 drivers/gpu/drm/radeon/atombios_i2c.c | 6 ++++--
 1 file changed, 4 insertions(+), 2 deletions(-)

diff --git a/drivers/gpu/drm/radeon/atombios_i2c.c b/drivers/gpu/drm/radeon/atombios_i2c.c
index deaf98c..0652ee0 100644
--- a/drivers/gpu/drm/radeon/atombios_i2c.c
+++ b/drivers/gpu/drm/radeon/atombios_i2c.c
@@ -56,8 +56,10 @@ static int radeon_process_i2c_ch(struct radeon_i2c_chan *chan,
 			return -EINVAL;
 		}
 		args.ucRegIndex = buf[0];
-		if (num > 1)
-			memcpy(&out, &buf[1], num - 1);
+		if (num > 1) {
+			num--;
+			memcpy(&out, &buf[1], num);
+		}
 		args.lpI2CDataOut = cpu_to_le16(out);
 	} else {
 		if (num > ATOM_MAX_HW_I2C_READ) {
-- 
1.8.3.1



More information about the dri-devel mailing list