[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 <benh@kernel.crashing.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
This commit is contained in:
parent
1b9bb3c14c
commit
4f71c5de19
1 changed files with 7 additions and 1 deletions
|
@ -139,7 +139,13 @@ void radeon_delete_i2c_busses(struct radeonfb_info *rinfo)
|
||||||
int radeon_probe_i2c_connector(struct radeonfb_info *rinfo, int conn,
|
int radeon_probe_i2c_connector(struct radeonfb_info *rinfo, int conn,
|
||||||
u8 **out_edid)
|
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)
|
if (out_edid)
|
||||||
*out_edid = edid;
|
*out_edid = edid;
|
||||||
|
|
Reference in a new issue