Here is more information for you on the problems I am having with the IGP
patched Radeon driver in non-native RMX modes.

Just for sanity's sake can someone send me an XF86Config and server log for
the Radeon driver from a computer that works correctly in non-native
resolutions with the Radeon IGP mobile chipset?  

OK, I figured out how to read the registers under Windows, and they were
just a little different in RMX stretched modes than under Linux.  However,
sticking the Windows values into the registers manually in the Linux driver
doesn't make any difference.  I tried this for all the registers in
RADEONInitFPRegisters() and most of the ones in RADEONInitCommonRegisters()
and RADEONInitPllRegisters().  None of them made any difference.

I noticed that my panel does not return any DDC information and my card
defaults to using RMX. Is this the case for the cards that you have tested?
Should RMX work correctly? What should the modelines look like when using
RMX if I use xvidtune to print them out?

I also noticed when trying to troubleshoot that hooking a second monitor to
the external monitor port and using the "clone" options doesn't work. If
the X server is started with the external monitor plugged in, it will not
work at all. The log looks all right with the external monitor's DDC info
correctly detected, but nothing is shown on the screen and the monitor says
it is not receiving a signal. It doesn't matter whether the external
monitor is an analog monitor or a panel. If the external monitor is
connected after the X server is started, then an image appears on the screen
but the server does not honor the "CloneHSync" and "CloneVRefresh" settings.
Switching to some modes runs the monitor outside the ranges specified by
these settings! More specifically, as the logical resolution goes down the
dot clock, horizontal and vertical frequencies go up. Since the physical
resolution is staying the same, I would expect these values all to remain
constant. In fact the modelines for RMX stretched resolutions in the log all
show them having the same dot clock and frequencies as the default physical
resolution. When an analog monitor is hooked up during these RMX modes the
screen is distorted (shrunken and off-center) but can be corrected by using
the monitors controls. When an LCD is connected during these RMX modes, the
effect displayed is similar to the problem I have on the laptop's primary
panel! Therefore, I wonder if the server is mistakenly trying to drive the
panel at a higher dot clock and frequencies just as it is mistakenly trying
to drive the external monitor faster than it should and my panel just can't
handle anything besides 65MHz / 48.3KHz / 60Hz. Is this possible? 
Unfortunately, I cannot figure out where in the driver the actual timings
used by the card are set.  It would _really_ help if I had any kind of
documentation at all on how the Radeon cards are programmed or how the
XFree86 Radeon driver works.

As another test, I tried setting up my XF86Config file to have two separate
device and screen sections for the external monitor rather than using the
clone settings. This caused a hard lock of the computer with some messages
in the log stating "Idle timed out, resetting engine..." but I may have had
my config file set up wrong (the documentation is vague on this type of setup).

So here's the scorecard for my system so far:

Works
=====
Accelerated 2D at native panel resolution

Doesn't Work
============
* Non-native resolutions (AKA RMX modes)
* External monitor on external connector using clone modes (mostly broken
  but kind of works in certain situations)
* External monitor on external connector using separate screen and device
  sections in the XF86Config
* 3D

So the driver is pretty much broken at least on my Radeon IGP320M.

Thanks,
Carl Thompson

Quoting hy0 <[EMAIL PROTECTED]>:

> 
> ----- Original Message -----
> From: "Carl Thompson" <[EMAIL PROTECTED]>
> To: "hy0" <[EMAIL PROTECTED]>
> Sent: Thursday, March 20, 2003 4:02 AM
> Subject: Re: Problem in experimental Radeon IGP driver
> 
> 
> > The system works fine under Windows XP using non-native resolutions.
> > Using the XFree86 VESA driver, the screen is not stretched in lower
> than
> > native resolutions so it just uses the middle of the screen and does
> not
> > have this problem.  Playing with the BIOS setting makes no difference.
> > The color depth of the X server makes no difference.
> >
> > Yeah, I was thinking that the driver does not initialize the card
> > properly and other cards more tolerant of it or default to the correct
> > state.
> >
> > Can you send me or point me to documentation on how to program the
> > stretch feature on Radeons?  I have some time to take a look at it
> > myself if I can get some documentation.
> 
> Unfortunally, ATI doesn't have this part of document available for
> external
> developers. Most things for stretching control are in
> RADEONInitFPRegisters
> function. There are two registers that are most important for the H
> strech:
> RADEON_FP_HORZ_STRETCH and RADEON_FP_GEN_CNTL. You can print them out in
> RADEONRestoreFPRegisters and I can double check them if they are correct
> on
> your system.
> 
> > Thank you,
> > Carl Thompson
> >
> > PS: Any idea about getting 3D support working on the Radeon IGP chips?
> 
> I don't have time to do this at present. Hopefully some DRI developers
> can
> take this up...
> 
> Regards,
> Hui
> 
> 
> 




_______________________________________________
XFree86 mailing list
[EMAIL PROTECTED]
http://XFree86.Org/mailman/listinfo/xfree86

Reply via email to