[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Radeon 9000 If (RV250), Mac G4 (Wintunnel) problems with XFree86



Hi all,

I have several problems with the ATI Radeon drivers in XFree on my Mac G4
Windtunnel (dual 1.4GHz).

Summary:
1) CRT + TMDS dual head configuration doesn't work
2) In all configurations colors are completely wrong
3) closing X blanks all monitors

I have tested following versions of XFree86:
Debian sid "official" 4.2.1
Michel Daenzer's 4.2.1 DRI build
Debian "inofficial" 4.3.0
latest CVS build (by myself) as of yesterday (4.3.99...)

The first two worked even worse (no image at all), so in the following I'll refer to the later two which produce exactly the same results.

Problem 1)
I have a TMDS flat panel (DVI-D) on the DVI port of the card and an analog flat panel on the ADC port (via ADC2VGA cable). Both panels get correctly detected (see attached log file), but the analog one gets no signal after X is started.

Option "MonitorLayout" "CRT, TMDS" doesn't help (nothing really changes, since both monitors get correctly detected even wihtout this). I tried all tricks I could think of, but the analog one (on the ADC port) gets no signal (even after X closes).

Funny enough, using a DVI2VGA adapter and analog input of the *digital* panel causes both panels to work - i.e. changing the mode of the *panel that works* causes the other one to start working as well. This means that "CRT, CRT" combination works. It is really annoying since I have a digital panel and I don't want to run it in analog mode which sucks.

Problem 2)
No matter what combination (dual or single head) the colors are always wrong. This is independent of the depth used (every time differently "wrong" colors of course).

I analyzed it for the 24-bit mode using the digital panel. I wrote a small proggy that writes directly to the frame buffer and the sequence to set RGB colors (each most significant 4 bit) is 0x00G0RB00 (beware, Macs are big-endian), that is 0x00f00000 is fully saturated green, 0x0000f000 fully saturated red etc. Since the least significant 4 bits are hard to distinguish visually I can't tell for sure but it looks like they are located at 0xNN0N0000. At any rate the lower 4 bits and higher 4 bits are split.

Problem 3)
Shutting down X blanks both screens - i.e. the frame buffer is not correctly restored. This is somewhat painful since after closing X you can access the
box via ssh only.

Other relevant info:
kernel is 2.4.20-ben10 (the devel versions crash), frame buffer works only with "video=ofonly". The system is debian "sid" (up-to-date). The CVS version of XFree86 was compiled using gcc 3.2 on the same machine.

I don't know who's working on the radeon driver, but any help would be appreciated. I'd be delighted to help to track all this further down if possible ...

Cheers,
Simon

Attachment: XF86Config-4
Description: Binary data

Attachment: x-log
Description: Binary data


Reply to: