ATI i2c bus driver

Jean Delvare khali at
Tue Jan 6 23:08:26 CET 2004

OK, I got some code from the Gatos project. I took i2c-savage4 and
edited it in accordance with what I found there, but I can't get it to
work. If anyone could take a look and tell me where I'm wrong...

Registers are here:

I use these:

#define RADEON_GPIO_DVI_DDC                 0x0064
#define RADEON_GPIO_VGA_DDC                 0x0060
#       define RADEON_GPIO_Y_0              (1 <<  8)
#       define RADEON_GPIO_Y_1              (1 <<  9)
#       define RADEON_GPIO_EN_0             (1 << 16)
#       define RADEON_GPIO_EN_1             (1 << 17)

Also tried these but didn't help:

#define RADEON_GPIO_MONID                   0x0068
#define RADEON_GPIO_CRT2_DDC                0x006c

Code is here:

Functions I took my code from are RADEONI2CGetBits, RADEONI2CPutBits and
RADEONI2cInit. One thing I noticed is that set{scl,sda} seem to be

Attached is my driver. It doesn't work. Whatever base register I try
(DVI, VGA, CRT2...), both SDA and SCL lines are stuck to low (so says
i2c-algo-bit with bit_test=1). So I'm obviously missing something, maybe
because I never worked on this kind of hardware before. Any help


Jean Delvare
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: i2c-radeon.c
URL: <>

More information about the lm-sensors mailing list