No DVI output on ATI Xpress 200 - reopen
Alex Deucher
alexdeucher at gmail.com
Mon Jul 23 16:07:17 PDT 2012
On Mon, Jul 23, 2012 at 6:29 PM, Przemysław Tomczyk
<tomczyk.przemek at gmail.com> wrote:
> so.
> the box has 2 monitors (different) connected, thru VGA and DVI-D
> after inserting i2c-dev and eeprom modules, i've run i2cdetect from
> debian's i2c-tools package. output was:
>
> i2c-0 smbus SMBus PIIX4 adapter at 0b00 SMBus adapter
> i2c-1 i2c Radeon i2c bit bus DVI_DDC I2C adapter
> i2c-2 i2c Radeon i2c bit bus VGA_DDC I2C adapter
> i2c-3 i2c Radeon i2c bit bus MONID I2C adapter
> i2c-4 i2c Radeon i2c bit bus GPIOPAD_MASK I2C adapter
>
> package contains also script called "ddcmon" that probes busses on
> given address, defaulting to 0x50, for something that looks like
> eeprom and contains data that can be interpreted as EDID block.
>
> running it with default arguments, i got VGA monitor's EDID on default
> addres on bus 3. scanning busses 1-4 for addresses 1-4096 (does it
> even make sense? ;-) ) gave no other hits.
>
> and now, i've disconnected VGA, leaving only DVI, and the same - bus 3
> address 0x50 contains VGA's EDID.
>
> after reboot with only DVI connected, theres no EDIDs found anywhere.
>
> then, hw_i2c option of radeon module. got one more bus:
> i2c-0 smbus SMBus PIIX4 adapter at 0b00 SMBus adapter
> i2c-1 i2c Radeon i2c hw bus DVI_DDC I2C adapter
> i2c-2 i2c Radeon i2c hw bus VGA_DDC I2C adapter
> i2c-3 i2c Radeon i2c hw bus MM_I2C I2C adapter
> i2c-4 i2c Radeon i2c bit bus MONID I2C adapter
> i2c-5 i2c Radeon i2c bit bus GPIOPAD_MASK I2C adapter
>
> edid of VGA is on 4th bus, 0x50 address - so standard one.
>
> after disabling drm modesetting (no X running) , DVI remained active.
> but no i2c busses :-/
> get-edid from read-edid package managed to get proper edid (only one -
> even with 2 monitors connected) but using interrupt call:
> Read EDID
> Performing real mode VBE call
> Interrupt 0x10 ax=0x4f15 bx=0x1 cx=0x0
> Function supported
> Call successful
>
> concluding: i have no idea where from get DVI edid after kms kicks in :-(
The vbios indicates it should use the gpio pad i2c setup in the i2c
table for DVI ddc (GPIOPAD_MASK i2c bus), but it's possible the oem
wired it up to something else. You could use something like the
hacked up libx86 in the following package
(http://people.freedesktop.org/~airlied/xresprobe-mjg59-0.4.21.tar.gz)
to snoop what the vbe ddc implementation is doing when you use
read_edid to read the EDID via vbe. You should be able to look at the
register stream and see what gpio register and bits it is using. Once
you find out, I can help you add support to the driver.
Alex
More information about the xorg-driver-ati
mailing list