README.TXT Driver File Contents (vga_ns5530_linux.zip)

GEODE XSERVER DISPLAY DRIVER FOR LINUX

Author: Peter Lohmann


1.0	Installing XFree86 Source

This source tree mirrors the files which need to be added to or replaced
in the /usr/X11R6 tree.  The source files will be under /usr/X11R6/xc.
The installation of Linux will not include the source code for the XFree86
X-Window system, even if the option to install 'everything' is selected.

To get the source code for XFree86, copy the file XFree86-3.3.6-20.src.rpm
from the Linux Disk 2 under /mnt/cdrom/SRPMS.  Use the package manager
to extract the 3 compressed source files, then install each of them under
/usr/X11R6.  The package manager (for RedHat Linux) may be used to get
the XFree86 source package by doing these steps from the command-line:

	[put RedHat Linux Disk 2 in the CDROM drive]
	mount /dev/cdrom /mnt/cdrom
	rpm -U --force /mnt/cdrom/SRPMS/XFree86-3.3.6-20.src.rpm
	umount /mnt/cdrom

This package will put the 3 compressed files into /usr/src/redhat/SOURCES.

The 3 compressed files are: X336src-1.tar.bz, X336src-2.tar.bz, and 
X336src-3.tar.bz.  The first of the files contains the source code.  The
other 2 contain mostly documentation.  To reduce the size of the installation,
install only the first compressed file (X336src-1.tar.bz).  The compressed
XFree86 files in the tar+bzip format (*.tar.bz) may be uncompressed and placed 
in the correct location by moving it to the /usr/X11R6 directory and executing
the tar command like this:

	tar xfvI X336src.tar.bz

The will un-tar the archive, pass it through the bzip filter, build the
directory tree, and be verbose about what is happening.  After this, an 
'xc' subdirectory will exist with all of the source code for XFree86.  

After the 'xc' tree is created, copy the files under revision control into 
their respective places in the 'xc' tree.

This procedure works for RedHat Linux 6.2, and will probably work for other
distributions of Linux as well.


2.0	XFree86 4.0.x

There are many significant changes to XFree86 reflected in the 4.0.1 release.
To use XFree86 4.0, download the source (or binaries) from:

http://www.xfree86.org/

The *.tar.bz files ("tar balls") will be extracted and installed in a similar
fasion as the XFree86 3.3.6 files.

There is only one Xserver in 4.0: XFree86.  It will load the modules/drivers
that it needs at run-time.  These drivers are located at:

/usr/X11R6/lib/modules/drivers

The XF86Config file format has changed, too.  The Xconfigurator program may 
not be available to create this file, so you may have to use xf86config, instead.  

For a more comprehensive description of changes, visit the XFree86 web site 
and go to the documentation section.


3.0	Understanding the Xserver

The Xserver manages client connections and responds on behalf of clients
to user interface events (mouse, keyboard input) and protocol requests
(graphics).  It is divided into 4 major pieces: 

  - device independent layer (DIX): code shared among all implementations
  - OS layer: code which is different between operating systems but shared
    among all devices of an operating system
  - device dependent layer (DDX): code which is potentially different between
    operating systems and graphics devices
  - extension interface: the standard way to add features to the X server

For more information on this, see the xc/doc directory.



4.0	Building the Xserver

Before doing a build, copy the /usr/X11R6/bin directory to /usr/X11R6/bin.bak.
A complete build of XFree86 can take 2-8 hours, depending on processor speed,
available memory, build options, etc.  To reduce the build time, remove from
the build configuration the Xservers and components that are not needed (e.g.,
XF86_MONO, XF86_VGA16, etc.).

To prevent the unnecessary building of components not needed or not modified,
edit the /usr/X11R6/xc/config/cf/xf86site.def file.  The comments in this file
will help you determine the consequences of changing what is commented and
un-commented.  For example, to only build the XF86_SVGA server, un-comment
all of the lines in the section where each of the 'Intel x86' servers is 
'#define-d' to 'NO' -- except for 'XF86SVGAServer'.  Further in that same
file you may un-comment which server to specifically install, which of the
SVGA drivers to build, whether or not to build the fonts, etc.

To initiate a full build, open a shell window and switch to the '/usr/X11R6/xc'
directory.  Enter 'make World >& world.out'.  This will start the build process.
If all of the configuration parameters are correct, this step will only needed
once.  Only the XF86_SVGA image will need to be replaced after modifications to 
the driver.  This image uses library archive libdriver256.a, which is built
from the driver objects.


4.1	LinkKit

The XFree86 build tree also includes a 'LinkKit'.  The Link Kit has everything 
that is needed to re-link the server.  You can write a new driver and build a 
new server without having the server source installed.  


4.2	Integrating New Driver Source

Use the 'crlf' utility to remove MSDOS-style CRLFs in the code.  The file 'crlf.c'
is provided.  Execute 'cc crlf.c' to build this utilty.  If the source code 
includes MSDOS-style CRLFs, then the correct Makefile will not be built with 
'make Makefiles' and the source will fail to build.

The Makefile is generated from the 'Imakefile' during the process of 'make Makefiles'.


The National-specific driver code will be located at:

For XFree86 3.3.x:
/usr/X11R6/xc/programs/Xserver/hw/xfree86/vga256/drivers/geode

For XFree86 4.x.x:
/usr/X11R6/xc/programs/Xserver/hw/xfree86/drivers/geode

The durango code (graphics abstraction package) is located in a subdirectory
of geode called 'gfx'.  A symbolic link is used to bring the code into
the driver build.  From the geode directory, use the following command
to create the link:

	ln -s gfx/durango.c durango.c



5.0	Configuring the Xserver

Before configuring the Xserver, copy /etc/X11/XF86Config to XF86Config.bak.
Run 'Xconfigurator'.  This will create a new XF86Config file.  Select 'Geode'
or 'MediaGX' from the available display adapters.  The list of display adapters
is read from /usr/X11R6/lib/X11/Cards.  Select your monitor or 'custom'.  When
asked to 'Probe' or 'Dont Probe', select 'Dont Probe' for legacy Cyrix display
hardware and 'Probe' for newer hardware.  If you do not want the Xserver
to start right away after booting, do not select the default button to start
X after booting.


6.0	Recovering from Failure to Start X

To boot without starting the Xserver, enter 'linux 4' at the LILO boot prompt.
This will initialize the system to run-level 4.  'linux' is the name of the
kernel image.  It may be a different name if a new kernel was built and set
as the boot image.  After logging-on as root, run Xconfigurator and answer
'no' to the question of whether to run the Xserver automatically at startup.

Start the Xserver from the command-line with: 'startx >& startx.out'.  This 
will provide Xserver error messages.  Better, you can open the file
/var/log/XFree86.0.log after invoking the Xserver.


7.0	Interactively Debugging the XFree86

Debugging XFree86 can be difficult.  You can use gdb to interactively debug
the server from another system.  You can use a special module-aware gdb to
debug modules.

In the Xfree86 4.x distributions, see the file: 
/usr/X11R6/xc/programs/Xserver/xfree86/DebuggingHints for useful tips.


8.0	Testing the Xserver

There are some programs to test the Xserver.  'xvidtune' will allow you to switch
between display resolutions and to sync the display with the monitor.  'vgatest'
lets you test a specific VGA resolution.  'dumpreg' will display the VGA registers.
Use 'xdpyinfo' to see which extensions are included, or run X with '-showconfig' 
flag to show which drivers are included.  To explicitly start the Xserver, enter
'xinit -- ./XF86_SVGA -bpp 16' for 16bpp.  'x11perf' and 'x11perfcomp' allow
performance benchmarking of the Xserver.


9.0	Framebuffer Devices



10.0	Useful Information and Documentation

"How to add an (S)VGA driver to XFree86" by David E. Wexelblat.  This is a small
	text file which is part of the XFree86 documentation.
"{The Concise Guide to} XFree86 For Linux" by Aron Hsiao.  This is a book which
	covers the configuration and use of XFree86 for Linux.  
	ISBN 0-7897-2182-1

http://www.xfree86.org
http://www.x.org
/usr/X11R6/


11.0	Known Problems
  - xfs: Font server fails to start.  Even a straight build of xfs from the distribution
source will fail to load.




Download Driver Pack

How To Update Drivers Manually

After your driver has been downloaded, follow these simple steps to install it.

  • Expand the archive file (if the download file is in zip or rar format).

  • If the expanded file has an .exe extension, double click it and follow the installation instructions.

  • Otherwise, open Device Manager by right-clicking the Start menu and selecting Device Manager.

  • Find the device and model you want to update in the device list.

  • Double-click on it to open the Properties dialog box.

  • From the Properties dialog box, select the Driver tab.

  • Click the Update Driver button, then follow the instructions.

Very important: You must reboot your system to ensure that any driver updates have taken effect.

For more help, visit our Driver Support section for step-by-step videos on how to install drivers for every file type.

server: web5, load: 1.05