2007-12-04 15:20:01 -07:00
|
|
|
*********************
|
|
|
|
* radeonhd conntest *
|
|
|
|
*********************
|
|
|
|
|
|
|
|
A helper utility to test the status of the connectors of the AMD GPG
|
|
|
|
Radeon R5xx and R6xx graphics devices.
|
|
|
|
|
|
|
|
Build:
|
|
|
|
------
|
|
|
|
|
|
|
|
* Make sure the pciutils development files and zlib are installed.
|
|
|
|
* Descend into xf86-video-radeonhd/utils/conntest/
|
|
|
|
* Run "make".
|
|
|
|
|
|
|
|
Usage:
|
|
|
|
------
|
|
|
|
|
|
|
|
As root run:
|
2008-04-19 07:41:45 -06:00
|
|
|
./rhd_conntest <pci tag> [-d] [-s] [-x num]
|
2007-12-04 15:20:01 -07:00
|
|
|
|
|
|
|
<pci tag> is in the form <bus>:<device>.<function>, the most common position
|
|
|
|
is 1:0.0. lspci happily provides you with this information.
|
2008-04-19 07:41:45 -06:00
|
|
|
|
2007-12-04 15:20:01 -07:00
|
|
|
The optional option -s will scan the known I2C for additional slaves (besides
|
|
|
|
the DDC slave on 0xA0). Depending on your hardware this may take long.
|
|
|
|
|
2008-04-19 07:41:45 -06:00
|
|
|
The optional argument -x <num> will dump <num> bytes of data from the
|
|
|
|
available DDC slaves. <num> must not be higher than 256.
|
|
|
|
|
2007-12-04 15:20:01 -07:00
|
|
|
To dump the content of the VBIOS run:
|
|
|
|
./rhd_conntest <pci tag> -d
|
|
|
|
This will dump the VBIOS to the file:
|
|
|
|
<device_id>.<subsystem_vendor_id>.<subsystem_id>.vga.rom
|
|
|
|
to the current directory. Should the id information be unavailable the VBIOS
|
|
|
|
will be dumped to the file 'posted.vga.rom'.
|
|
|
|
|
|
|
|
DO NOT try to run rhd_conntest on the secondary PCI function. (1:0.1 in our
|
|
|
|
example). For R5xx this is just a fake device to fool some Microsoft operating
|
|
|
|
systems, and is of no use to us. For R6xx this is a HDMI sound device, and is
|
|
|
|
of no use for a video driver.
|
|
|
|
|
|
|
|
Background information:
|
|
|
|
-----------------------
|
|
|
|
|
|
|
|
R5xx and R6xx standalone cards usually have either 1 VGA and 1 DVI-I or 2
|
|
|
|
DVI-I connectors. Since we are not handling TV encoders yet in our driver, any
|
|
|
|
s-video or composite connector is still ignored at this point. Laptops with
|
|
|
|
R5xx or R6xx style hardware usually come with one panel and one VGA or DVI-I
|
|
|
|
connector.
|
|
|
|
|
|
|
|
These connectors share many things in them.
|
|
|
|
|
|
|
|
In case of a DVI-I, they connect up to two outputs: A TMDS encoder (DVI) and a
|
|
|
|
DAC (analog VGA/CRT); with a DDC bus (Display Data Channel) and a HPD pin (Hot
|
|
|
|
Plug Detect).
|
|
|
|
|
|
|
|
For a VGA connector, this is only a single DAC and a DDC bus.
|
|
|
|
|
|
|
|
For a Panel, this is using the LVDS encoder and possibly a DDC bus.
|
|
|
|
|
|
|
|
Currently up to 4 outputs are possible: DACA, DACB, TMDSA and LVTMA. DACA and
|
|
|
|
DACB are fully load detect capable, and our utility is able to do this for
|
|
|
|
you. TMDSA is also able to do load detection. LVTMA is a shared LVDS/TMDS
|
|
|
|
encoder. Sadly this lacks load detection and will not detect whether a DVI
|
|
|
|
cable is attached. If LVDS is initialised by the BIOS, then this utility will
|
|
|
|
gdump further information as well.
|
|
|
|
|
|
|
|
When looking at the component side of the graphics card, the PCI-E/AGP/PCI
|
|
|
|
should be seen as down, the connectors will be on the left hand side now.
|
|
|
|
As a convention, we treat the connector that is now towards the top of the
|
|
|
|
card as the first to go into our connector list. Please adhere to this
|
|
|
|
convention, or you and your fellow users will at one point be led into
|
|
|
|
confusion.
|
|
|
|
|
|
|
|
If there is anything unclear here, please contact the developers.
|
|
|
|
|
|
|
|
Procedure for standalone graphics cards:
|
|
|
|
----------------------------------------
|
|
|
|
|
|
|
|
Please read carefully through the background information section first, it
|
|
|
|
introduces important concepts and notions needed to successfully add connector
|
|
|
|
support for your card.
|
|
|
|
|
|
|
|
Create a small text file. Each step, mention which cable was connected where.
|
|
|
|
|
2008-01-05 10:28:11 -07:00
|
|
|
Go over each connector separately, and connect the analogue (VGA) cable once
|
2007-12-04 15:20:01 -07:00
|
|
|
and connect the DVI cable once (when possible). Each time running rhd_conntest
|
|
|
|
and saving the data rhd_conntest spews out.
|
|
|
|
|
|
|
|
Make sure that only one cable is attached at each time.
|
|
|
|
|
|
|
|
The resulting file, plus further information about the make and model of your
|
|
|
|
board will hopefully provide all the information the developers of the
|
|
|
|
radeonhd driver need.
|
|
|
|
|
|
|
|
Procedure for laptops:
|
|
|
|
----------------------
|
|
|
|
|
|
|
|
Please read carefully through the background information section first, it
|
|
|
|
introduces important concepts and notions needed to successfully add connector
|
|
|
|
support for your card.
|
|
|
|
|
|
|
|
Create a small text file. Each step, mention which cable was connected where.
|
|
|
|
|
|
|
|
First, run rhd_conntest without an external monitor attached. This will show
|
|
|
|
us if or whether a DDC bus is attached to the internal panel. Save the data.
|
|
|
|
|
|
|
|
Then attach a monitor through the analogue (VGA) connection, use the adaptor
|
|
|
|
plug when needed. Run rhd_conntest and save the data.
|
|
|
|
|
|
|
|
When available, attach a monitor through its DVI connection. Run rhd_conntest
|
|
|
|
and save the data.
|
|
|
|
|
|
|
|
The resulting file, plus further information about the make and model of your
|
|
|
|
laptop will hopefully provide all the information the developers of the
|
|
|
|
radeonhd driver need.
|
|
|
|
|
|
|
|
Where to get help and send results:
|
|
|
|
-----------------------------------
|
|
|
|
|
|
|
|
There is the mailing list: radeonhd@opensuse.org
|
|
|
|
You can subscribe to this list by sending a mail to:
|
|
|
|
radeonhd+subscribe@opensuse.org
|
|
|
|
|
|
|
|
There is also an irc channel on freenode.net that's called #radeonhd.
|
|
|
|
|
|
|
|
Authors:
|
|
|
|
--------
|
|
|
|
|
|
|
|
Luc Verhaegen (aka libv) and Egbert Eich (aka egbert), reusing code from their
|
|
|
|
driver.
|