[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]

[K12OSN] How to build custom Xserver



I have a tar file for cyrix media gx hardware ,according to Jim i have
to build a custom Xserver for my hardware ,
I need help for the List so i can bundle the hardware as LTSP
workstation.
Currently it is supporting only color depth 8 bit.

i am attaching spec sheet of the Xserver.

I will be very grateful for guidance

regards
Dinesh K

XFree86 v3.3.6 on Kernel v2.2.14(RedHat v6.2) graphics driver specification 

Version 1.2.4	03/28/2001

Table of Contents
----------------- 
  - Overview/General Description
  - Installation Instructions
  - Test Plan
  - Design


Overview/General Description
---------------------------- 

This is the National Semiconductor Linux XFree86 v3.3.6 driver on 
Linux Kernel 2.2.14(RedHat v6.2). 
This version supports Pyramid and its predecessors and SCx200.
This version following features:
  1. Mode support
	640x480 8/16 Bpp @60,72,75,85Hz
	800x600 8/16 Bpp @60,72,75,85Hz
	1024x768 8/16 Bpp @60,70,75,85Hz
	1280x1024 8 Bpp @60,75,85Hz
	1280x1024 16 Bpp @60,75,85Hz - This mode is supported only on Pyramid.

  2. Hardware cursor
  3. FillRectSolid
  4. 8x8PatternColorExpand
  5. ScreenToScreenCopy
  6. BresenhamLine
  7. NTSC and PAL TV Support on Cygnus.
  8. DGA Support
  9. TFT, DSTN Panel support on Centurus and Dorado.


Installation Instructions
------------------------- 

  Pl. refer to the release notes.

Test Plan
--------- 
The XFree86 Sample Video Driver is a set of source code files that are compiled along 
with the XFree86 source code to build a SVGA server for the X Windows graphics system. 
X Windows the major graphical windowing system for Linux. The version of XFree86 to be 
tested is 3.3.6, which is included in RedHat 6.2 as version 3.3.6-20. The latest audio 
driver should be used with the testing.
1.1	Video Modes
	To test the different resolutions, the XF86Config file must be setup for all of the modes. 

	Once the different modes have been setup, use Control-Alt-Plus (+ off the numpad) to 
	switch modes. Use Control-Alt-Function# to switch back to a text console and verify 
	that the text is not corrupted. Each mode should go through a quick run through of 
	the apps. Each refresh rate needs to be verified.
1.1.1	The Window Manager
	The standard window managers are Enlightenment or KDM. Enlightenment is the default 
	window manager (WM) for the GNOME install of RedHat 6.2, while KDM is the WM for KDE 
	install of RedHat. These programs provide the same basic functionality of controlling 
	window placement, menus, hotkeys, and virtual desktops. Use the menus, start 
	applications, iconify the applications, move the windows, change window movement 
	options, use the virtual desktop.
1.1.2	Netscape
	Use Netscape to browse the local HTML tree.
1.1.3	Quake
	Install and play quake w/ sound.
1.1.4	DOOM
	Install and play DOOM
1.1.5	xanim
	Play AVI and MPEG files with xanim. AVI codec support is limited, and MPEG audio 
	is not supported.
1.1.6	RealPlayer
	Play Real Video files. A network connection may be necessary.
1.2	Testers
	It has yet to be determined what resolution(s) this should be run at.
1.2.1	xtest (TET)
	Need to make instructions and build binaries of this.
1.3	Benchmarks
	It has yet to be determined what resolution(s) this should be run at.
1.3.1	x11perf

	Run the x11perf to calculate performance. To run this without a WM, you need to create 
	an '.xinitrc' file with the command to execute x11perf and log the results:
	.xinitrc should contain
	x11perf -v1.3 -rop GXcopy GXxor -all > datafile
	The output of this is run through Xmark:
		Xmark datafile
	The results of the Xmark should be posted.
1.4	Stability
	Run the stress script. This runs 'find' on the filesystem, a kernel build, a MPEG file, 
	and DOOM. Run this overnight and make sure the system is still running in the morning.
1.5	DGA
	"dga" is the only app. which enables and tests DGA Interface.

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

The Driver is based on Durango. Durango is a graphics software support package 
designed to assist in the development of display drivers and embeded applications. 
The core of this package is source code that performs most of the graphics related 
functionality fot he National Semiconductor Geode family of products. Device driver 
development time is reduced by using these routines to access the hardware.

The available device driver interfaces have been implemented using Durango. The current
code has   
  1. Mode support
	640x480 8/16 Bpp @60,72,75,85Hz
	800x600 8/16 Bpp @60,72,75,85Hz
	1024x768 8/16 Bpp @60,70,75,85Hz
	1280x1024 8 Bpp @60,75,85Hz
	1280x1024 16 Bpp @60,75,85Hz - This mode is supported only on Pyramid.

  2. Hardware cursor
  3. FillRectSolid
  4. 8x8PatternColorExpand
  5. ScreenToScreenCopy
  6. BresenhamLine
  7. NTSC and PAL TV Support on Cygnus.
  8. DGA Support
  9. TFT, DSTN Panel support on Centurus and Dorado.

The graphics mode set is acheived by putting the softvga to sleep and 
taking control of the hardware by switching to the desired mode. In Text mode
the softvga is given the cotrol back for text mode handling.
The Hardware accelerated rendring are acheived by calling appropriate Durango
API's.

[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]