commit 4f71c5de19c27f2198105d3b26b398494d5c353b
tree 63373038978d4b5052a29667ede7591267154269
parent 1b9bb3c14c60324b54645ffefbe6d270f9fd191c
author Benjamin Herrenschmidt <[EMAIL PROTECTED]> 1163738100 +1100
committer Linus Torvalds <[EMAIL PROTECTED]> 1163743181 -0800

[PATCH] Fix radeon DDC regression

When radeonfb was changed to use the new "generic" ddc, a bit of
code initializing the GPIO lines was lost, causing it to not work
if the firmware didn't configure them properly, which seems to
happen on some cards.

Signed-off-by: Benjamin Herrenschmidt <[EMAIL PROTECTED]>
Signed-off-by: Linus Torvalds <[EMAIL PROTECTED]>

 drivers/video/aty/radeon_i2c.c |    8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/drivers/video/aty/radeon_i2c.c b/drivers/video/aty/radeon_i2c.c
index 6767545..869725a 100644
--- a/drivers/video/aty/radeon_i2c.c
+++ b/drivers/video/aty/radeon_i2c.c
@@ -139,7 +139,13 @@ void radeon_delete_i2c_busses(struct rad
 int radeon_probe_i2c_connector(struct radeonfb_info *rinfo, int conn,
                               u8 **out_edid)
-       u8 *edid = fb_ddc_read(&rinfo->i2c[conn-1].adapter);
+       u32 reg = rinfo->i2c[conn-1].ddc_reg;
+       u8 *edid;
+       OUTREG(reg, INREG(reg) &
+                       ~(VGA_DDC_DATA_OUTPUT | VGA_DDC_CLK_OUTPUT));
+       edid = fb_ddc_read(&rinfo->i2c[conn-1].adapter);
        if (out_edid)
                *out_edid = edid;
To unsubscribe from this list: send the line "unsubscribe git-commits-head" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at

Reply via email to