README revision 170d5fdc
1f29dbc25Smrgxf86-video-geode -- AMD Geode GX and LX graphics driver for X.org
2f29dbc25Smrg=================================================================
3f29dbc25SmrgREADME last updated: 2009-09-09
4f29dbc25Smrg
5f29dbc25SmrgGIT repository:
6f29dbc25Smrg        git://anongit.freedesktop.org/git/xorg/driver/xf86-video-geode
7f29dbc25Smrg
8f29dbc25SmrgGitweb browser:
9f29dbc25Smrg        http://cgit.freedesktop.org/xorg/driver/xf86-video-geode
10f29dbc25Smrg
11f29dbc25SmrgProject homepage:
12f29dbc25Smrg	http://www.x.org/wiki/GeodeDriver
13f29dbc25Smrg
14f29dbc25Smrg= Introduction =
15f29dbc25Smrg
16f29dbc25SmrgThis is the X graphics driver for the AMD Geode GX and LX processors.
17f29dbc25SmrgThe GX driver features XAA and EXA support for graphics acceleration,
18f29dbc25Smrgand the LX driver supports EXA (including compositing).  Both drivers
19f29dbc25Smrgsupport dynamic rotation with XRandR, and Xv overlay support.
20f29dbc25Smrg
21f29dbc25Smrg= Roadmap =
22f29dbc25Smrg
23f29dbc25SmrgSupport for X servers older than 1.4 is expected to be dropped in the
24f29dbc25Smrgnear future.  If your distribution still hasn't upgraded, please urge 
25f29dbc25Smrgthem to get around it soon.
26f29dbc25Smrg
27f29dbc25SmrgSupport for old GX1 Geodes by Cyrix and NSC will be reintroduced soon,
28f29dbc25Smrgat which point xf86-video-cyrix and xf86-video-nsc will be retired.
29f29dbc25Smrg
30f29dbc25SmrgUntil then, the current situation for Geode coverage is as follow:
31f29dbc25Smrg 
32f29dbc25Smrgxf86-video-geode
33f29dbc25Smrg * Geode LX      (a.k.a. GX3) PCI ID 0x1022:0x2081
34f29dbc25Smrg * Geode GX      (a.k.a. GX2) PCI ID 0x100B:0x0030 (rebranded GX2)
35f29dbc25Smrg
36f29dbc25Smrgxf86-video-nsc
37f29dbc25Smrg * Geode GX2     (a.k.a. GX2) PCI ID 0x100B:0x0030 (a.k.a. "Red Cloud")
38f29dbc25Smrg * Geode SCx200  (a.k.a. GX1) PCI ID 0x100B:0x0504 
39f29dbc25Smrg * Geode SC1400  (a.k.a. GX1) PCI ID 0x100B:0x0104 
40f29dbc25Smrg
41f29dbc25Smrgxf86-video-cyrix
42f29dbc25Smrg * Geode MediaGX (a.k.a. GX1) PCI ID 0x1078:0x0104 
43f29dbc25Smrg
44f29dbc25SmrgPlease note that both NSC and GEODE support GX2. This is indeed correct.
45f29dbc25SmrgHowever, only GEODE has up-to-date code, while NSC is deprecated. 
46f29dbc25Smrg
47f29dbc25Smrg= Dependencies =
48f29dbc25Smrg
49f29dbc25SmrgAs of version 2.11.4, this driver depends upon X server 1.5 or newer,
50f29dbc25Smrgbecause the GX Randr code utilizes dixSetPrivate whose API was modified 
51f29dbc25Smrgin a non backward-compatible way.
52f29dbc25Smrg
53f29dbc25Smrg  #ifdef'ing the changes from f1268f3ba8404129d358db3bb1e66f3841f7018a 
54f29dbc25Smrg  and b28abde0276ddd7f687242f3886f98b0e49a7fc2 might make it possible
55f29dbc25Smrg  to build this driver against older X servers. Patches are welcome.
56f29dbc25Smrg
57f29dbc25SmrgAs of version 2.9.0, this driver depends on X server 1.3 or newer,
58f29dbc25Smrgbecause it utilizes the new common DDC probing libraries from X.Org.
59f29dbc25Smrg
60f29dbc25Smrg  If necessary, it might be possible to create autoconf macros to make 
61f29dbc25Smrg  this driver compile against older X servers, following this example:
62f29dbc25Smrg
63f29dbc25Smrg  http://lists.freedesktop.org/archives/xorg-commit/2007-February/010341.html
64f29dbc25Smrg
65f29dbc25Smrg  Patches accomplishing the same trick for the Geode driver are welcome.
66f29dbc25Smrg
67f29dbc25Smrg= FAQ =
68f29dbc25Smrg
69170d5fdcSmrgQ: Why doesn't screen rotation work?
70170d5fdcSmrg
71170d5fdcSmrgA: Make sure that a sufficient amount of video RAM is reserved in the BIOS,
72170d5fdcSmrg   otherwise rotation will fail and this error message appear in Xorg.log:
73170d5fdcSmrg      Couldn't allocate the shadow memory for rotation
74170d5fdcSmrg      You need XX bytes, but only YY bytes are available
75170d5fdcSmrg
76f29dbc25SmrgQ: Why doesn't this GEODE driver work at WXGA (wide screen) resolutions?
77f29dbc25Smrg
78f29dbc25SmrgA: Make sure that TFT Panel support is disabled in the BIOS settings, 
79f29dbc25Smrg   otherwise resolutions will be restricted to traditional VGA modes. 
80f29dbc25Smrg   The GEODE offers a choice between CRT-only, CRT+TFT, TFT-only for
81f29dbc25Smrg   output device and selecting CRT-only removes the VGA restriction.
82f29dbc25Smrg
83f29dbc25SmrgQ: How do I produce useful information whenever submiting a bug report?
84f29dbc25Smrg
85f29dbc25SmrgA: See http://www.x.org/wiki/Development/Documentation/ServerDebugging
86f29dbc25Smrg   and follow the instructions.
87f29dbc25Smrg
88f29dbc25SmrgQ: How do I test development snapshots from the upstream GIT repository?
89f29dbc25Smrg
90f29dbc25SmrgA: Run the following commands from a command line interpreter shell...
91f29dbc25Smrg   1. git clone git://anongit.freedesktop.org/git/xorg/driver/xf86-video-geode 
92f29dbc25Smrg   2. Debian/Ubuntu:  apt-get install autoconf automake libtool xutils-dev
93f29dbc25Smrg                      apt-get install build-dep xserver-xorg-video-geode
94f29dbc25Smrg     Fedora/Red Hat:  yum install autoconf automake libtool xorg-x11-util-macros
95f29dbc25Smrg                      yum-builddep xorg-x11-drv-geode
96f29dbc25Smrg   3. cd xf86-video-geode
97f29dbc25Smrg   4. ./autogen.sh
98f29dbc25Smrg   5. make distcheck
99f29dbc25Smrg   ...then install the driver manually.
100f29dbc25Smrg
101f29dbc25SmrgQ: What is the preferred method for submitting patches to this driver?
102f29dbc25Smrg
103f29dbc25SmrgA: See http://www.x.org/wiki/Development/Documentation/SubmittingPatches
104f29dbc25Smrg   and submit the patches as attachments to the Geode X.org mailing list
105f29dbc25Smrg   or to the X.org Bugzilla against component "Driver/geode".
106f29dbc25Smrg
107f29dbc25Smrg= Configuration options =
108f29dbc25Smrg
109f29dbc25SmrgYou can specify the Geode driver in the normal fashion:
110f29dbc25Smrg
111f29dbc25SmrgSection "Device"
112f29dbc25Smrg	Identifier "AMD Geode"
113f29dbc25Smrg	Driver "geode"
114f29dbc25Smrg	Option "blah" "blah"
115f29dbc25Smrg	...
116f29dbc25SmrgEndSection
117f29dbc25Smrg
118f29dbc25SmrgThe following options may be added to the section:
119f29dbc25Smrg
120170d5fdcSmrg== Common options ==
121f29dbc25Smrg
122170d5fdcSmrgFBSize: Specify the size of the video space (in bytes)
123f29dbc25SmrgNoAccel: Disable hardware assisted acceleration
124170d5fdcSmrgNoCompression: Disable video bandwidth compression
125f29dbc25SmrgNoPanel: Disable panel support
126170d5fdcSmrgRotate: Select a orientation to start with - LEFT, INVERT, CCW
127170d5fdcSmrgSWCursor: Enable software cursors (essentially disabling HW cursor support)
128170d5fdcSmrg
129170d5fdcSmrg== GX-specific options ==
130170d5fdcSmrg
131170d5fdcSmrgAccelMethod: "XAA" (default) or "EXA"
132170d5fdcSmrgPanelGeometry: Specify the geometry of the attached panel ("<width>x<height>")
133f29dbc25SmrgOSMImageBuffers: Set the number of image buffers (XAA only)
134f29dbc25SmrgOSMColorExpBuffers: Set the number of color expansion buffers (XAA only)
135f29dbc25Smrg
136170d5fdcSmrg== LX-specific options ==
137f29dbc25Smrg
138f29dbc25SmrgExaScratch: Specify the amount of extra EXA scratch buffer (in bytes)
139f29dbc25Smrg
140f29dbc25Smrg= EOF =
141