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

2003-08-01 Thread Simon Urbanek
On Saturday, July 26, 2003, at 01:08 PM, Michel Dänzer wrote:

On Tue, 2003-07-15 at 16:29, Benjamin Herrenschmidt wrote:
When did you try exactly ? I've seen more fixes for TMDS getting
in the CVS recently. I'm not sure what's up here, definitely not
something the doc explains. I suspect it's the path of pixel
data from the framebuffer to the TMDS transmitter that has an
endian problem, I fail to see why SURFACE_CNTL thing would fail,
or maybe it's a problem related to surface translation getting in
our way ?
I suspected that as well. If current CVS still doesn't work (works
perfectly here with an external CRT on an M9 in a TiBook IV), please 
try
this patch and post the RADEONInitCommonRegisters output.
Thanks for the info. I was out of town so I couldn't test it until now.

I built X from the current CVS just a few hours ago with the following 
results:

1) If I enable FBDev, then I get a nice picture on the TMDS screen, 
correct colors and nice 24 bit color depth. I also get a white screen 
on the ADC (VGA) screen. (After booting Ben's .21 kernel with radeon fb 
drivers you get white ADC screen and console DVI screen. When starting 
X the white screen goes black and then back to white; I'm running the 
radeonfb on boot at 8 bpp). The funny thing is that the mouse is 
correctly displayed on the corresponding screen (i.e. I can move the 
mouse from one screen to the other). But the ADC screen is otherwise 
totally white. It is evident that some weird overplotting is taking 
place since the DVI screen has some painting problems (it looks like 
the driver thinks that it paints in the ADC fb but in fact it's still 
on the DVI screen).
The nice thing here is that you can get back to the console without 
problems, but still the second screen is unusable.

2) If I disable FBDev, then the results are exactly same as the version 
of X I used when first reporting this problem: signal is only on the 
DVI screen (ADC is blanked), the colors are broken in that weird manner 
(half-split color bits). Getting back to the console is impossible 
since both screens get blanked once you try that.

I used your patch, but the info doesn't seem very helpful (btw the 
behavior was the same with/without the patch). I have attached logs 
from both runs.

I'm still very thankful for any help!

Ben, can we have the second framebuffer in the kernel *wink*? Your 
driver still seem to be only working one ;). It's just missing the 
second fb device :P

Cheers,
Simon


X-FbDevOff.log
Description: Binary data


X-FbDevOn.log
Description: Binary data


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

2003-06-04 Thread Simon Urbanek
On Wednesday, June 4, 2003, at 01:19 AM, Michel Dänzer wrote:

On Tue, 2003-06-03 at 15:22, Benjamin Herrenschmidt wrote:
On Fri, 2003-05-30 at 11:52, Simon Urbanek wrote:
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 officail 4.2.1
Michel Daenzer's 4.2.1 DRI build
Debian inoffical 4.3.0
latest CVS build (by myself) as of yesterday (4.3.99...)
Ok, CVS is the really interesting one. Michel, did you ever commit
the fix of SURFACE_CNTL ? That should fix the colors at least on
the main aperture
It's in, but only handles aperture 0. Can someone try
http://penguinppc.org/~daenzer/XFree86/radeon-ap1.diff or
http://penguinppc.org/~daenzer/XFree86/radeon_drv.o ?
I tried the patch, but without any visible results :(.

I was digging a bit more in the wrong colors issue and found out the 
following:
When I'm running the CRT,CRT layout (as opposed to the previous 
CRT,TMDS) the colors behave differently. In fact is seems like a common 
endianess-problem: the layout of colors is 0xBBGGRR00 in Mac big-endian 
notation, but the color on the screen written by the driver are 
0x00RRGGBB - that is the colors red and green are swapped and blue is 
never seen. This is true for both screens.

So the summary (CVS XFree):
* CRT,CRT mode: swapped 'byte-sex' causes wrong colors, otherwise both 
screens are OK
* CRT,TMDS mode: CRT screen is off, TMDS has split colors - i.e. the 
low and high 4 bits of the components are interlaced

I wanted to look at the code, but I can't seem to find any tech info on 
the Radeon chip - is it available to the chosen only after signing a 
NDA?

Any help, especially with the CRT+TMDS mode is highly appreciated!

Cheers,
Simon
PS: Additional info for Ben: In fact the kernel radeon driver works 
with the DFP *only* - in CRT,CRT layout the kernel hangs in the 
early-boot screen (and doesn't go further - no network etc.).

___
Devel mailing list
[EMAIL PROTECTED]
http://XFree86.Org/mailman/listinfo/devel


Problems with radeon driver (ATI Radeon 9000 If (RV250))

2003-06-01 Thread Simon Urbanek
Hi all,

I have several problems with the ATI Radeon drivers in XFree86 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. I found out that 
the sequence to set RGB colors (using most significant 4 bit only) is 
0x00G0RB00 (beware, Macs are big-endian), that is 0x00f0 is fully 
saturated green, 0xf000 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 0xNN0N. At any rate the 
lower 4 bits and higher 4 bits are split - and hence the colors are 
broken.

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, 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


XF86Config-4
Description: Binary data


x-log
Description: Binary data