<!DOCTYPE linuxdoc PUBLIC "-//Xorg//DTD linuxdoc//EN" [
<!ENTITY % defs SYSTEM "defs.ent"> %defs;
]>

<article>
<title> Information for Alliance Promotion chipset users
<author> Lo&iuml;c Greni&eacute; (<email>grenie@math.jussieu.fr</email>),
	 Henrik Harmsen (<email>Henrik.Harmsen@erv.ericsson.se</email>)
<date> 6 March 2000
<ident>
$Id: apm.sgml,v 1.2 2004/04/23 19:23:59 eich Exp $ 
</ident>
<toc>

<sect> Support chipsets
<p>
The apm driver in the SVGA server is for Alliance Promotion
graphics chipsets. The following chipsets are supported:

<itemize>
<item> 6422

	Old chipset. The driver is still very unstable and has computer
	crashes. You should use XFree86 3.3.x for this chipset.


<item> AT24

	As found in Diamond Stealth Video 2500. Quite similar to AT3D.

<item> AT25, AT3D

	AT3D is found in Hercules Stingray 128/3D. Most other Voodoo
	Rush based cards use the AT25 which is identical except it
	doesn't have the 3D stuff in it.
</itemize>

<sect> Acceleration
<p>
The apm driver uses the XAA in the 
SVGA server. It has support for the following acceleration:

<itemize>
<item> Bitblts (rectangle copy operation)
<item> Lines (solid, single pixel)
<item> Filled rectangles
<item> CPU->Screen image transfers.
<item> CPU->Screen colour expansion (text accel).
<item> Screen->Screen colour expansion (cached text accel).
<item> Mono 8x8 pattern fill. Not for 6422.
<item> Colour 8x8 pattern fill (in 8bpp). Not for 6422.
<item> Hardware cursor.
<item> Pixmap caching.
</itemize>

All in 8, 16 and 32 bpp modes. In 24bpp mode only Bitblts and Filled rectangles
is supported.  Also VESA DPMS power save mode is fully supported with "standby",
"suspend" and "off" modes (set with with the "xset dpms" command).

<sect> DGA
<p>
Full DGA 2.0 support with framebuffer access and drawing acceleration.

<sect> Video
<p>
It has limited hardware support for video decoding on the AT24 and AT25/3D. It can
also display an image in YUV colours inside the desktop. There are some more exotic
formats such as YUV 4.1.1, YUV 4.0.0 and RGB 8,16.32bpp.

<sect> Shadow framebuffer
<p>
There is a mode, called shadow framebuffer, where the graphics are used
to display the images. All rendering is done in memory in a so-called shadow
framebuffer. This mode is useful if you need lots of reading in the video
memory and to use it you will have to put
<verb>
  Option "ShadowFB"
</verb>

in your xorg.conf file.

<sect> Configuration
<p>
First: Run the xorgconfig program to create a correct
configuration.

You can turn off hardware cursor by inserting the following line in the
Device section of the xorg.conf file:
<verb>
  Option "SWcursor"
</verb>

Or turn off hardware acceleration:
<verb>
  Option "noaccel"
</verb>

Or turn off MMIO

<verb>
  Option "nolinear"
</verb>

Do not specify either the amount of video RAM or which chipset
in the config file.  It is better to let the driver probe for this. Also 
don't put any "clocks" line in the device section since these chips have
a fully programmable clock that can almost take any modeline you throw
at it. It might though  fail at some specific clock values but in that case 
you should just try a slightly different clock and it should work.

<sect> glide2x
<p>
There is support for the XF86Rush extension for use with the glide2x library.

<sect> Questions
<p>
Any questions regarding this driver should be sent to Lo&iuml;c
Greni&eacute;. It should be possible to add support for the 3210 chipset
if someone needs it.


</article>
