radeonfb i2c regression post-2.6.18.

Roger Leigh
2007-11-18T21:58:45Z

[-- Attachment #1: Type: text/plain, Size: 1791 bytes --]

Hi folks,

I'm using an Apple Cinema Display connected via DVI to an Apple Mac
Mini with Radeon 9200 graphics. This used to work fine, but with
kernels >= 2.6.19, the monitor powers off as soon as the framebuffer
is initialised, making for a less than usable system. I've tested
with 2.6.(19|2[012]), and I didn't see any related changes in 2.6.23.

The breakage occured in this commit:

http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commitdiff;h=7a45093b7caa9d3d5421274b4ba80fba5da17e19

Specifically, these lines:

- /* Release the DDC lines when done or the Apple Cinema HD display
- * will switch off
- */
- OUTREG(reg, INREG(reg) & ~(VGA_DDC_CLK_OUT_EN | VGA_DDC_DATA_OUT_EN));
- (void)INREG(reg);
+ u8 *edid = fb_ddc_read(&rinfo->i2c[conn-1].adapter);

BenH later applied a fix:

http://git.kernel.org/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commitdiff;h=4f71c5de19c27f2198105d3b26b398494d5c353b

but I'm not sure if this is related to the above, or was for a
separate problem. Either way, the monitor is still getting powered
off.

Due to the code reorganisation when the i2c stuff got moved into the
generic fbmon.c, I'm not sure where the workaround needs putting back
(if indeed this is where the problem lies).

I'm booting with video=ofonly to get a working system;
video=radeonfb:1680x1050-32@60 (with or without the additional
parameters) always results in a dead monitor as soon as the
framebuffer is set up.

Regards,
Roger

--
.''`. Roger Leigh
: :' : Debian GNU/Linux http://people.debian.org/~rleigh/
`. `' Printing on GNU/Linux? http://gutenprint.sourceforge.net/
`- GPG Public Key: 0x25BFB848 Please GPG sign your mail.

[-- Attachment #2: Type: application/pgp-signature, Size: 188 bytes --]