README revision 05cf1079
1f29dbc25Smrgxf86-video-geode -- AMD Geode GX and LX graphics driver for X.org
2f29dbc25Smrg=================================================================
304007ebaSmrgREADME last updated: 2011-11-24
4f29dbc25Smrg
504007ebaSmrg1.INTRODUCTION
6f29dbc25Smrg
7f29dbc25SmrgThis is the X graphics driver for the AMD Geode GX and LX processors.
804007ebaSmrgThe GX component supports both XAA and EXA for graphics acceleration.
904007ebaSmrgThe LX component supports EXA, including compositing. Both support Xv 
1004007ebaSmrgoverlay and dynamic rotation with XRandR. Additionally, a V4L2 driver
1104007ebaSmrgfor the LX's video input port (VIP) feature is provided as "ztv".
12f29dbc25Smrg
1304007ebaSmrg2.DEPENDENCIES
14f29dbc25Smrg
1504007ebaSmrgSince version 2.9.0, this driver depends on X server 1.3 or greater,
1604007ebaSmrgbecause it utilizes the new common DDC probing libraries from X.Org.
1704007ebaSmrg
1804007ebaSmrg3.ROADMAP
19f29dbc25Smrg
20f29dbc25SmrgSupport for old GX1 Geodes by Cyrix and NSC will be reintroduced soon,
21f29dbc25Smrgat which point xf86-video-cyrix and xf86-video-nsc will be retired.
22f29dbc25Smrg
23f29dbc25SmrgUntil then, the current situation for Geode coverage is as follow:
24f29dbc25Smrg 
25f29dbc25Smrgxf86-video-geode
26f29dbc25Smrg * Geode LX      (a.k.a. GX3) PCI ID 0x1022:0x2081
2704007ebaSmrg * Geode GX      (a.k.a. GX2) PCI ID 0x100B:0x0030 (re-branded GX2)
28f29dbc25Smrg
29f29dbc25Smrgxf86-video-nsc
30f29dbc25Smrg * Geode GX2     (a.k.a. GX2) PCI ID 0x100B:0x0030 (a.k.a. "Red Cloud")
31f29dbc25Smrg * Geode SCx200  (a.k.a. GX1) PCI ID 0x100B:0x0504 
32f29dbc25Smrg * Geode SC1400  (a.k.a. GX1) PCI ID 0x100B:0x0104 
33f29dbc25Smrg
34f29dbc25Smrgxf86-video-cyrix
35f29dbc25Smrg * Geode MediaGX (a.k.a. GX1) PCI ID 0x1078:0x0104 
36f29dbc25Smrg
37f29dbc25SmrgPlease note that both NSC and GEODE support GX2. This is indeed correct.
38f29dbc25SmrgHowever, only GEODE has up-to-date code, while NSC is deprecated. 
39f29dbc25Smrg
4004007ebaSmrg4.MAXIMUM RESOLUTIONS
41f29dbc25Smrg
4204007ebaSmrgThe driver supports all maximum resolutions advertised by AMD, namely:
43f29dbc25Smrg
4404007ebaSmrgLX: 1920x1440 (CRT) and 1600x1200 (TFT)
4504007ebaSmrgGX: 1600x1200 (CRT) and 1280x1024 (TFT)
4604007ebaSmrgSC: 1280x1024 (CRT/TFT) *** Currently unsupported by this driver ***
47f29dbc25Smrg
4804007ebaSmrg5.CONFIGURATION OPTIONS
49f29dbc25Smrg
5004007ebaSmrgYou can specify driver options in /etc/X11/xorg.conf in the usual fashion:
51f29dbc25Smrg
5204007ebaSmrgSection "Device"
5304007ebaSmrg	Identifier "AMD Geode"
5404007ebaSmrg	Driver "geode"
5504007ebaSmrg	Option "OptionName" "value"
5604007ebaSmrg	...
5704007ebaSmrgEndSection
58f29dbc25Smrg
5904007ebaSmrgThe following options may be added to such a Device section:
60f29dbc25Smrg
6104007ebaSmrg5.1.COMMON OPTIONS
62f29dbc25Smrg
6304007ebaSmrgFBSize: Specify the size of the video space (in bytes)
6404007ebaSmrgNoAccel: Disable hardware assisted acceleration
6504007ebaSmrgNoCompression: Disable video bandwidth compression
6604007ebaSmrgNoPanel: Disable panel support
6704007ebaSmrgRotate: Select an initial orientation - LEFT, INVERT, CCW
6804007ebaSmrgSWCursor: Enable software cursors (essentially disabling HW cursor support)
69170d5fdcSmrg
7004007ebaSmrg5.2.GX-SPECIFIC OPTIONS
7104007ebaSmrg
7204007ebaSmrgAccelMethod: "XAA" (default) or "EXA"
7304007ebaSmrgPanelGeometry: Specify the geometry of the attached panel ("<width>x<height>")
7404007ebaSmrgOSMImageBuffers: Set the number of image buffers (XAA only)
7504007ebaSmrgOSMColorExpBuffers: Set the number of color expansion buffers (XAA only)
76170d5fdcSmrg
7704007ebaSmrg5.3.LX-SPECIFIC OPTIONS
7804007ebaSmrg
7904007ebaSmrgExaScratch: Specify the amount of extra EXA scratch buffer (in bytes)
8004007ebaSmrg
8104007ebaSmrg6.FREQUENTLY ASKED QUESTIONS (FAQ)
8204007ebaSmrg
8304007ebaSmrgQ: Why doesn't the GEODE driver work at WXGA (wide screen) resolutions?
84f29dbc25Smrg
85f29dbc25SmrgA: Make sure that TFT Panel support is disabled in the BIOS settings, 
86f29dbc25Smrg   otherwise resolutions will be restricted to traditional VGA modes. 
87f29dbc25Smrg   The GEODE offers a choice between CRT-only, CRT+TFT, TFT-only for
88f29dbc25Smrg   output device and selecting CRT-only removes the VGA restriction.
89f29dbc25Smrg
9004007ebaSmrgQ: How can these hardcoded modes be expanded to support a WXGA laptop?
9104007ebaSmrg
9204007ebaSmrgA: By adding the desired modes to /etc/X11/xorg.conf as follow:
9304007ebaSmrg
9404007ebaSmrg   1) Use either the "cvt" or "gtf" command to determine the modeline:
9504007ebaSmrg
9604007ebaSmrg      cvt 1024 600 60
9704007ebaSmrg
9804007ebaSmrg      Where 1024x600 is the resolution and 60 the refresh rate. 
9904007ebaSmrg      The resulting modeline using "gtf" is:
10004007ebaSmrg
10104007ebaSmrgModeline "1024x600" 48.96 1024 1064 1168 1312 600 601 604 622 -hsync +vsync
10204007ebaSmrg
10304007ebaSmrg   2) Add it to the bottom of the "Monitor" section in /etc/X11/xorg.conf.
10404007ebaSmrg      In this example, we created entries for two modes and configured the
10504007ebaSmrg      larger resolution to be our preferred choice.
10604007ebaSmrg
10704007ebaSmrg#############################################################
10804007ebaSmrg# /etc/X11/xorg.conf for 1024x600 and 800x480 laptop panels #
10904007ebaSmrg#############################################################
11004007ebaSmrg#### By J.KASPER and B.HIBRY #### for Hercules eCafe 800 ####
11104007ebaSmrg#############################################################
11204007ebaSmrgSection "Module"
11304007ebaSmrg    Load  "ztv"
11404007ebaSmrgEndSection
11504007ebaSmrgSection "Device"
11604007ebaSmrg    Identifier	"card0"
11704007ebaSmrg    Driver	"geode"
11804007ebaSmrg    BusID	"PCI:0:1:1"
11904007ebaSmrg    Option	"PanelMode" "33450 800 840 968 1056 480 490 492 525"
12004007ebaSmrgEndSection
12104007ebaSmrgSection "Monitor"
12204007ebaSmrg    Identifier	"monitor0"
12304007ebaSmrg    Modeline  "1024x768" 64.56 1024 1056 1296 1328 768 783 791 807 -hsync +vsync
12404007ebaSmrg    Modeline  "1024x600" 48.96 1024 1064 1168 1312 600 601 604 622 -hsync +vsync
12504007ebaSmrg    Modeline   "800x480" 33.45  800  840  968 1056 480 490 492 525 -hsync +vsync
12604007ebaSmrg    Option	"dpms"
12704007ebaSmrgEndSection
12804007ebaSmrgSection "Screen"
12904007ebaSmrg    Identifier	"Default Screen"
13004007ebaSmrg    Monitor	"monitor0"
13104007ebaSmrg    Device	"card0"
13204007ebaSmrg    DefaultDepth 24
13304007ebaSmrg    Subsection "Display"
13404007ebaSmrg        Depth 24
13504007ebaSmrg        Modes "1024x600" "1024x768" "800x480"
13604007ebaSmrg    EndSubsection        
13704007ebaSmrgEndSection
13804007ebaSmrg### EOF ###
13904007ebaSmrg
14004007ebaSmrgQ: Why doesn't screen rotation work?
14104007ebaSmrg
14204007ebaSmrgA: Make sure that a sufficient amount of video RAM is reserved in the BIOS,
14304007ebaSmrg   otherwise rotation will fail and this error message appear in Xorg.log:
14404007ebaSmrg
14504007ebaSmrg      Couldn't allocate the shadow memory for rotation
14604007ebaSmrg      You need XX bytes, but only YY bytes are available
14704007ebaSmrg
14804007ebaSmrgQ: How do I produce useful information whenever submitting a bug report?
149f29dbc25Smrg
15005cf1079SmrgA: See https://www.x.org/wiki/Development/Documentation/ServerDebugging
15104007ebaSmrg   and follow the instructions found there.
152f29dbc25Smrg
153f29dbc25SmrgQ: How do I test development snapshots from the upstream GIT repository?
154f29dbc25Smrg
15504007ebaSmrgA: Run the following commands from a command line interpreter shell:
156f29dbc25Smrg   1. git clone git://anongit.freedesktop.org/git/xorg/driver/xf86-video-geode 
157f29dbc25Smrg   2. Debian/Ubuntu:  apt-get install autoconf automake libtool xutils-dev
158f29dbc25Smrg                      apt-get install build-dep xserver-xorg-video-geode
159f29dbc25Smrg     Fedora/Red Hat:  yum install autoconf automake libtool xorg-x11-util-macros
160f29dbc25Smrg                      yum-builddep xorg-x11-drv-geode
161f29dbc25Smrg   3. cd xf86-video-geode
162f29dbc25Smrg   4. ./autogen.sh
163f29dbc25Smrg   5. make distcheck
164f29dbc25Smrg   ...then install the driver manually.
165f29dbc25Smrg
166f29dbc25SmrgQ: What is the preferred method for submitting patches to this driver?
167f29dbc25Smrg
16805cf1079SmrgA: See https://www.x.org/wiki/Development/Documentation/SubmittingPatches
16905cf1079Smrg   and submit the patches to the Geode X.org mailing list or to gitlab
17005cf1079Smrg   in the xf86-video-geode project.
171f29dbc25Smrg
17204007ebaSmrg7.PROJECT CONTACTS
173f29dbc25Smrg
17404007ebaSmrgProject homepage:
17505cf1079Smrghttps://www.x.org/wiki/GeodeDriver
176f29dbc25Smrg
17704007ebaSmrgMailing list:
17805cf1079Smrghttps://lists.x.org/mailman/listinfo/xorg-driver-geode
179f29dbc25Smrg
18004007ebaSmrgBug reports:
18105cf1079Smrghttps://gitlab.freedesktop.org/xorg/driver/xf86-video-geode/issues
182f29dbc25Smrg
18304007ebaSmrgCode repository:
18405cf1079Smrghttps://gitlab.freedesktop.org/xorg/driver/xf86-video-geode
185f29dbc25Smrg
18604007ebaSmrgIRC channel:
18704007ebaSmrg#geode on the Freenode network.
188f29dbc25Smrg
18904007ebaSmrg.EOF.
190