Information for ARK Logic Chipset Users Harm Hanemaayer (H.Hanemaayer@inter.nl.net) 17 January 1997 1. Supported chipsets The "ark" driver in the SVGA server is for ARK Logic graphics chipsets. The following chipsets are supported: ARK1000PV (ark1000pv) Chipset with 32-bit DRAM interface, supports fast DRAM timing, for VESA and PCI bus. Has powerful "coprocessor" for graphics acceleration. The max supported resolution/refresh depends on the RAMDAC used on the card; expect 256 colors up to 80 or 110 MHz dot clock; 16bpp is also supported, as is 24bpp (packed). ARK1000VL (ark1000vl) Older chip, VLB only. More or less compatible with ARK1000PV. It has is not been tested. You may have to disable acceleration and linear addressing. ARK2000PV (ark2000pv) 64-bit version of the ARK1000PV. Note that an ARK2000PV equipped with 1Mb of DRAM is about equivalent to the same card with an ARK1000PV chip; 2Mb is required for 64-bit operation. Again the RAMDAC used on the card determines the max supported dot clocks. At 8bpp, multiplexing over a 16-bit RAMDAC path is not yet sup- ported so expect dot clocks up to 110 MHz; 16bpp and 32bpp are supported, as well as experimental packed 24bpp, depending on the RAMDAC. ARK2000MT (ark2000mt) This is a newer chip, compatible with the AR2000PV. The ARK2000MI is not yet supported. The chipset may not be detected automatically. In this case use a line like Chipset "ark1000pv" in the Device section of the XF86Config file. Any options must also be specified in this section. 2. Supported RAMDACs If no RAMDAC is specified, a standard RAMDAC supporting 256 colors up to 80 MHz dot clock frequency is assumed. The following RAMDAC types can be speci- fied in the Device section of the XF86Config file (e.g. Ramdac "att20c490"): att20c490 Industry-standard 8-bit RAMDAC. The RAMDAC used on the basic Her- cules Stingray Pro is compatible. 16bpp color depth is supported up to 40 or 55 MHz, depending on the DAC speed rating. Packed 24bpp is supported up to about 36 MHz. att20c498 Industry-standard 16-bit RAMDAC. The RAMDAC used on the Hercules Stingray Pro/V and the Stingray 64/V is compatible. 16bpp is sup- ported up to 80 MHz or 110 MHz dot clock frequency, 32bpp is sup- ported up to 40 or 55 MHz. zoomdac This is the actual DAC used by the Hercules Stingray Pro/V and 64/V. It is treated mostly as an ATT20C498, but with dot clock limits set correctly (16bpp up to 55 MHz with ARK1000PV, up to at least 110 MHz with ARK2000PV). In addition, packed 24bpp is sup- ported (up to 36 MHz with ARK1000PV, not yet on the ARK2000PV), and 32bpp is also supported on the ARK2000PV (up to 55 MHz) This RAMDAC should be auto-detected. stg1700 Completely untested. ics5342 This is a clockchip/RAMDAC combination and is used on the Diamond Stealth 64 Graphics 2001 and newer Hercules cards that use the ARK2000MT. It is supported at 16bpp and 32bpp in addition to 256 color mode. 32bpp mode may not work. The Dacspeed keyword can be used to indicate the speed rating of the RAMDAC, but it must be used with care. The raw clock frequency may exceed 80 MHz. Both the ARK chips and some of the RAMDACs are specified for raw speeds up to 120 MHz, but this might violate FCC regulations or otherwise be unstable. High dot clock 8bpp modes (e.g. 135 MHz) are normally achieved by sending 2 pixels at at time over a 16-bit DAC path (the raw clock would be 67.5 MHz for 135 MHz dot clock), a mode of operation that is not yet supported by this driver. No high-dot clock configurations have been tested. The driver now limits the maximum dot clocks according to the DRAM speed (bandwidth). Because it is not possible to determine the memory clock speed (except on the ICS5342), the driver assumes a default of 60 MHz. On an ARK1000PV, that allows 8bpp up to 109 MHz, 16bpp up to 55 MHz, 24bpp up to 36 MHz, and 32bpp up to 27 MHz. On an ARK2000PV with 2MB memory, it allows 16bpp up to 110 MHz, 24bpp up to 72 MHz, and 32bpp up to 55 MHz. If you know what your real memory clock is, you can specify it with the MCLK keyword, for example MCLK 70. To run XF86_SVGA at 16 bpp, pass options to the X server as follows: startx -- -bpp 16 5-6-5 RGB ('64K color', XGA) startx -- -bpp 16 -weight 555 5-5-5 RGB ('Hicolor') startx -- -bpp 24 8-8-8 RGB (packed 24-bit truecolor) startx -- -bpp 32 8-8-8 RGB (32-bit pixel truecolor) 3. Acceleration The driver takes full advantage of the new XAA (XFree86 Acceleration Archi- tecture) in the SVGA server. In fact the ARK driver was the initial XAA development platform. Most common graphics operations are accelerated, including most types of rectangular and non-rectangular filling, screen-to- screen BitBLTs, line drawing, and text and bitmap expansion. Expect over 300k xstones on a 2MB ARK2000PV/MT. At 24bpp, acceleration is less complete, but curiously, greyscale colors per- mit faster drawing. If you suspect a problem with acceleration, use the "noaccel" option. If text or bitmaps do not seem to be rendered correctly, you could try the "xaa_no_col_exp" option. To disable the pixmap cache, use "no_pixmap_cache". The hardware cursor is disabled by default. With unmodified mode timings, there used to be two horizontal lines and a band following the mouse pointer over the screen. The driver now automatically modifies the mode timing to eliminate this effect; this has not been tested on all possible configura- tions. Use the "hw_cursor" option to enable the hardware cursor. Linear addressing is the default mode of operation. If the server does not start correctly, you may want to try the "no_linear" option. The older ARK1000VL is probably not compatible with acceleration. Use the "noaccel" and "no_linear" options. 4. Basic configuration It is recommended that you generate an XF86Config file using the `XF86Setup' or `xf86config' programs, which should produce a working high-resolution 8bpp configuration, although the modelines might need reshuffling for optimal screen refresh. You may want to include mode timings in the Monitor section that better fit your monitor (e.g. 1152x864 modes). In order to prevent stress on your monitor, it is recommended that you turn off your monitor during clock probing (X -probeonly), which also happens if you start the server with no Clocks line present in the Device section of the XF86Config. The following Clocks line can be used for the Hercules Stingray Pro, Pro/V and older 64/V using an ARK Logic clock generator (so there's no need to probe clocks for this card, just insert the following line in the Device section of the XF86Config file): Clocks 25.175 28.3 40 72 50 77 36 44.9 Clocks 128.43 118.8 80 31.5 110 63.96 74.19 95 The higher frequencies have not been tested, there might be a mismatch in the 60-80 MHz range. 5. Features that may be expected in upcoming beta releases o Support for high dot clocks (>80 MHz, up to 135 MHz) at 8bpp by sending two pixels at a time over a 16-bit RAMDAC path on an ARK2000PV/MT with supported RAMDAC. o Support for packed-24bpp mode up to 72 MHz on an ARK2000PV with ZoomDAC. o The acceleration may be further optimized and stabilized. o Existing problems may be fixed. o Support for the ARK2000MI, if it materializes. 6. Tested configurations. Hercules Stringray Pro (ARK1000PV + ATT20C490-compatible RAMDAC) Supported at 8bpp, 16bpp and 24bpp. Fixed set of clocks. There seems to be a restriction to the mode timings at 24bpp; the last horizontal number (HTotal) must be divisible by 4 but not by 8. If the modeline is wrong, the colors would be incorrect. The driver automatically corrects the mode timing. Hercules Stingray Pro/V (ARK1000PV + IC Works ZoomDAC) Supported at 8bpp, 16bpp and 24bpp. Fixed set of clocks. The same restrictions above exist for the 24bpp mode. Problems with textmode restoration have been reported on some OS's. Hercules Stingray 64/V (ARK2000PV + IC Works ZoomDAC) Supported at 8bpp, 16bpp and 32bpp. Fixed set of clocks. Prob- lems with textmode restoration have been reported on some OS's. Hercules Stingray 64 with ARK2000MT + ICS5342 Clockchip/RAMDAC This may also apply to other cards with the ICS5342, such as the Diamond Stealth 64 Graphics 2001. Use RAMDAC "ics5342". Pro- grammable clockchip (don't specify any Clocks lines). Supported at 8bpp, 16bpp and 32bpp. 32bpp has been reported not to work. This configuration has not been tested with a post-3.2 server. If are having driver-related problems that are not addressed by this docu- ment, you can try contacting the XFree86 team (the current driver maintainer can be reached at H.Hanemaayer@inter.nl.net), or post in the Usenet newsgroup comp.windows.x.i386unix. In fact, reports (success or failure) are very welcome, especially on config- urations that have not been tested. You can do this via the bug report form (or send mail to XFree86@XFree86.org). You may want to keep an eye on forthcoming beta releases at the XFree86 web site . Generated from XFree86: xc/programs/Xserver/hw/xfree86/doc/sgml/ark.sgml,v 3.9 1997/01/25 03:22:20 dawes Exp $ $XConsortium: ark.sgml /main/6 1996/10/28 05:24:04 kaleb $