head 1.1; branch 1.1.1; access; symbols netbsd-11-0-RC4:1.1.1.5 netbsd-11-0-RC3:1.1.1.5 netbsd-11-0-RC2:1.1.1.5 netbsd-11-0-RC1:1.1.1.5 netbsd-11:1.1.1.5.0.2 netbsd-11-base:1.1.1.5 netbsd-10-1-RELEASE:1.1.1.4 netbsd-8-3-RELEASE:1.1.1.3 netbsd-9-4-RELEASE:1.1.1.3 netbsd-10-0-RELEASE:1.1.1.4 netbsd-10-0-RC6:1.1.1.4 netbsd-10-0-RC5:1.1.1.4 netbsd-10-0-RC4:1.1.1.4 netbsd-10-0-RC3:1.1.1.4 netbsd-10-0-RC2:1.1.1.4 netbsd-10-0-RC1:1.1.1.4 xf86-video-geode-2-11-21:1.1.1.5 netbsd-10:1.1.1.4.0.2 netbsd-10-base:1.1.1.4 netbsd-9-3-RELEASE:1.1.1.3 netbsd-9-2-RELEASE:1.1.1.3 netbsd-9-1-RELEASE:1.1.1.3 netbsd-8-2-RELEASE:1.1.1.3 xf86-video-geode-2-11-20:1.1.1.4 netbsd-9-0-RELEASE:1.1.1.3 netbsd-9-0-RC2:1.1.1.3 netbsd-9-0-RC1:1.1.1.3 netbsd-9:1.1.1.3.0.10 netbsd-9-base:1.1.1.3 netbsd-8-1-RELEASE:1.1.1.3 netbsd-8-1-RC1:1.1.1.3 netbsd-7-2-RELEASE:1.1.1.3 netbsd-8-0-RELEASE:1.1.1.3 netbsd-8-0-RC2:1.1.1.3 netbsd-8-0-RC1:1.1.1.3 netbsd-7-1-2-RELEASE:1.1.1.3 netbsd-7-1-1-RELEASE:1.1.1.3 netbsd-8:1.1.1.3.0.8 netbsd-8-base:1.1.1.3 netbsd-7-1:1.1.1.3.0.6 netbsd-7-1-RELEASE:1.1.1.3 xf86-video-geode-2-11-19:1.1.1.3 netbsd-7-1-RC2:1.1.1.3 netbsd-7-1-RC1:1.1.1.3 netbsd-7-0-2-RELEASE:1.1.1.3 xf86-video-geode-2-11-18:1.1.1.3 netbsd-7-0-1-RELEASE:1.1.1.3 netbsd-7-0:1.1.1.3.0.4 netbsd-7-0-RELEASE:1.1.1.3 netbsd-7-0-RC3:1.1.1.3 netbsd-7-0-RC2:1.1.1.3 xf86-video-geode-2-11-17:1.1.1.3 netbsd-7-0-RC1:1.1.1.3 netbsd-6-0-6-RELEASE:1.1.1.2 netbsd-6-1-5-RELEASE:1.1.1.2 netbsd-7:1.1.1.3.0.2 netbsd-7-base:1.1.1.3 netbsd-6-1-4-RELEASE:1.1.1.2 netbsd-6-0-5-RELEASE:1.1.1.2 riastradh-xf86-video-intel-2-7-1-pre-2-21-15:1.1.1.3 xf86-video-geode-2-11-15:1.1.1.3 riastradh-drm2:1.1.1.2.0.8 riastradh-drm2-base:1.1.1.2 netbsd-6-1-3-RELEASE:1.1.1.2 netbsd-6-0-4-RELEASE:1.1.1.2 netbsd-6-1-2-RELEASE:1.1.1.2 netbsd-6-0-3-RELEASE:1.1.1.2 netbsd-6-1-1-RELEASE:1.1.1.2 netbsd-6-1:1.1.1.2.0.6 netbsd-6-0-2-RELEASE:1.1.1.2 netbsd-6-1-RELEASE:1.1.1.2 netbsd-6-1-RC4:1.1.1.2 netbsd-6-1-RC3:1.1.1.2 netbsd-6-1-RC2:1.1.1.2 netbsd-6-1-RC1:1.1.1.2 netbsd-6-0-1-RELEASE:1.1.1.2 netbsd-6-0:1.1.1.2.0.4 netbsd-6-0-RELEASE:1.1.1.2 netbsd-6-0-RC2:1.1.1.2 netbsd-6-0-RC1:1.1.1.2 netbsd-6:1.1.1.2.0.2 netbsd-6-base:1.1.1.2 xf86-video-geode-2-11-12:1.1.1.2 xf86-video-geode-2-11-10:1.1.1.2 xf86-video-geode-2-11-8:1.1.1.1 xorg:1.1.1; locks; strict; comment @# @; 1.1 date 2010.05.28.01.01.11; author mrg; state Exp; branches 1.1.1.1; next ; 1.1.1.1 date 2010.05.28.01.01.11; author mrg; state Exp; branches; next 1.1.1.2; 1.1.1.2 date 2010.11.21.04.45.09; author mrg; state Exp; branches; next 1.1.1.3; 1.1.1.3 date 2014.03.20.06.54.20; author mrg; state Exp; branches; next 1.1.1.4; commitid eCkPkmFgwLWNcptx; 1.1.1.4 date 2020.02.23.06.17.12; author mrg; state Exp; branches; next 1.1.1.5; commitid BhfGPWXIw5crnLXB; 1.1.1.5 date 2023.06.19.09.02.13; author mrg; state Exp; branches; next ; commitid BrUW6Vt02JAEkxtE; desc @@ 1.1 log @Initial revision @ text @xf86-video-geode -- AMD Geode GX and LX graphics driver for X.org ================================================================= README last updated: 2009-09-09 GIT repository: git://anongit.freedesktop.org/git/xorg/driver/xf86-video-geode Gitweb browser: http://cgit.freedesktop.org/xorg/driver/xf86-video-geode Project homepage: http://www.x.org/wiki/GeodeDriver = Introduction = This is the X graphics driver for the AMD Geode GX and LX processors. The GX driver features XAA and EXA support for graphics acceleration, and the LX driver supports EXA (including compositing). Both drivers support dynamic rotation with XRandR, and Xv overlay support. = Roadmap = Support for X servers older than 1.4 is expected to be dropped in the near future. If your distribution still hasn't upgraded, please urge them to get around it soon. Support for old GX1 Geodes by Cyrix and NSC will be reintroduced soon, at which point xf86-video-cyrix and xf86-video-nsc will be retired. Until then, the current situation for Geode coverage is as follow: xf86-video-geode * Geode LX (a.k.a. GX3) PCI ID 0x1022:0x2081 * Geode GX (a.k.a. GX2) PCI ID 0x100B:0x0030 (rebranded GX2) xf86-video-nsc * Geode GX2 (a.k.a. GX2) PCI ID 0x100B:0x0030 (a.k.a. "Red Cloud") * Geode SCx200 (a.k.a. GX1) PCI ID 0x100B:0x0504 * Geode SC1400 (a.k.a. GX1) PCI ID 0x100B:0x0104 xf86-video-cyrix * Geode MediaGX (a.k.a. GX1) PCI ID 0x1078:0x0104 Please note that both NSC and GEODE support GX2. This is indeed correct. However, only GEODE has up-to-date code, while NSC is deprecated. = Dependencies = As of version 2.11.4, this driver depends upon X server 1.5 or newer, because the GX Randr code utilizes dixSetPrivate whose API was modified in a non backward-compatible way. #ifdef'ing the changes from f1268f3ba8404129d358db3bb1e66f3841f7018a and b28abde0276ddd7f687242f3886f98b0e49a7fc2 might make it possible to build this driver against older X servers. Patches are welcome. As of version 2.9.0, this driver depends on X server 1.3 or newer, because it utilizes the new common DDC probing libraries from X.Org. If necessary, it might be possible to create autoconf macros to make this driver compile against older X servers, following this example: http://lists.freedesktop.org/archives/xorg-commit/2007-February/010341.html Patches accomplishing the same trick for the Geode driver are welcome. = FAQ = Q: Why doesn't this GEODE driver work at WXGA (wide screen) resolutions? A: Make sure that TFT Panel support is disabled in the BIOS settings, otherwise resolutions will be restricted to traditional VGA modes. The GEODE offers a choice between CRT-only, CRT+TFT, TFT-only for output device and selecting CRT-only removes the VGA restriction. Q: How do I produce useful information whenever submiting a bug report? A: See http://www.x.org/wiki/Development/Documentation/ServerDebugging and follow the instructions. Q: How do I test development snapshots from the upstream GIT repository? A: Run the following commands from a command line interpreter shell... 1. git clone git://anongit.freedesktop.org/git/xorg/driver/xf86-video-geode 2. Debian/Ubuntu: apt-get install autoconf automake libtool xutils-dev apt-get install build-dep xserver-xorg-video-geode Fedora/Red Hat: yum install autoconf automake libtool xorg-x11-util-macros yum-builddep xorg-x11-drv-geode 3. cd xf86-video-geode 4. ./autogen.sh 5. make distcheck ...then install the driver manually. Q: What is the preferred method for submitting patches to this driver? A: See http://www.x.org/wiki/Development/Documentation/SubmittingPatches and submit the patches as attachments to the Geode X.org mailing list or to the X.org Bugzilla against component "Driver/geode". = Configuration options = You can specify the Geode driver in the normal fashion: Section "Device" Identifier "AMD Geode" Driver "geode" Option "blah" "blah" ... EndSection The following options may be added to the section: == GX == SWCursor: Enable software cursors (essentially disabling HW cursor support) NoCompression: Disable video bandwidth compression NoAccel: Disable hardware assisted acceleration AccelMethod: "XAA" (default) or "EXA" Rotate: Select a orientation to start with - LEFT, INVERT, CCW NoPanel: Disable panel support OSMImageBuffers: Set the number of image buffers (XAA only) OSMColorExpBuffers: Set the number of color expansion buffers (XAA only) FBSize: Specify the size of the video space (in bytes) PanelGeometry: Specify the geometry of the attached panel ("x") == LX == SWCursor: Enable software cursors (essentially disabling HW cursor support) NoCompression: Disable video bandwidth compression NoAccel: Disable hardware assisted acceleration Rotate: Select a orientation to start with - LEFT, INVERT, CCW NoPanel: Disable panel support ExaScratch: Specify the amount of extra EXA scratch buffer (in bytes) FBSize: Specify the size of the video space (in bytes) = EOF = @ 1.1.1.1 log @initial import of xf86-video-geode-2.11.8 @ text @@ 1.1.1.2 log @initial import of xf86-video-geode-2.11.10 @ text @a68 7 Q: Why doesn't screen rotation work? A: Make sure that a sufficient amount of video RAM is reserved in the BIOS, otherwise rotation will fail and this error message appear in Xorg.log: Couldn't allocate the shadow memory for rotation You need XX bytes, but only YY bytes are available d113 1 a113 1 == Common options == d115 2 a116 1 FBSize: Specify the size of the video space (in bytes) d118 2 a119 1 NoCompression: Disable video bandwidth compression a120 7 Rotate: Select a orientation to start with - LEFT, INVERT, CCW SWCursor: Enable software cursors (essentially disabling HW cursor support) == GX-specific options == AccelMethod: "XAA" (default) or "EXA" PanelGeometry: Specify the geometry of the attached panel ("x") d123 2 d126 1 a126 1 == LX-specific options == d128 5 d134 1 @ 1.1.1.3 log @initial import of xf86-video-geode-2.11.15 @ text @d3 1 a3 1 README last updated: 2011-11-24 d5 2 a6 1 1.INTRODUCTION d8 2 a9 5 This is the X graphics driver for the AMD Geode GX and LX processors. The GX component supports both XAA and EXA for graphics acceleration. The LX component supports EXA, including compositing. Both support Xv overlay and dynamic rotation with XRandR. Additionally, a V4L2 driver for the LX's video input port (VIP) feature is provided as "ztv". d11 2 a12 1 2.DEPENDENCIES d14 1 a14 2 Since version 2.9.0, this driver depends on X server 1.3 or greater, because it utilizes the new common DDC probing libraries from X.Org. d16 10 a25 1 3.ROADMAP d34 1 a34 1 * Geode GX (a.k.a. GX2) PCI ID 0x100B:0x0030 (re-branded GX2) d47 1 a47 1 4.MAXIMUM RESOLUTIONS d49 3 a51 1 The driver supports all maximum resolutions advertised by AMD, namely: d53 3 a55 3 LX: 1920x1440 (CRT) and 1600x1200 (TFT) GX: 1600x1200 (CRT) and 1280x1024 (TFT) SC: 1280x1024 (CRT/TFT) *** Currently unsupported by this driver *** d57 2 a58 1 5.CONFIGURATION OPTIONS d60 2 a61 1 You can specify driver options in /etc/X11/xorg.conf in the usual fashion: d63 1 a63 6 Section "Device" Identifier "AMD Geode" Driver "geode" Option "OptionName" "value" ... EndSection d65 1 a65 1 The following options may be added to such a Device section: d67 1 a67 1 5.1.COMMON OPTIONS d69 1 a69 6 FBSize: Specify the size of the video space (in bytes) NoAccel: Disable hardware assisted acceleration NoCompression: Disable video bandwidth compression NoPanel: Disable panel support Rotate: Select an initial orientation - LEFT, INVERT, CCW SWCursor: Enable software cursors (essentially disabling HW cursor support) d71 4 a74 1 5.2.GX-SPECIFIC OPTIONS d76 1 a76 12 AccelMethod: "XAA" (default) or "EXA" PanelGeometry: Specify the geometry of the attached panel ("x") OSMImageBuffers: Set the number of image buffers (XAA only) OSMColorExpBuffers: Set the number of color expansion buffers (XAA only) 5.3.LX-SPECIFIC OPTIONS ExaScratch: Specify the amount of extra EXA scratch buffer (in bytes) 6.FREQUENTLY ASKED QUESTIONS (FAQ) Q: Why doesn't the GEODE driver work at WXGA (wide screen) resolutions? d83 1 a83 59 Q: How can these hardcoded modes be expanded to support a WXGA laptop? A: By adding the desired modes to /etc/X11/xorg.conf as follow: 1) Use either the "cvt" or "gtf" command to determine the modeline: cvt 1024 600 60 Where 1024x600 is the resolution and 60 the refresh rate. The resulting modeline using "gtf" is: Modeline "1024x600" 48.96 1024 1064 1168 1312 600 601 604 622 -hsync +vsync 2) Add it to the bottom of the "Monitor" section in /etc/X11/xorg.conf. In this example, we created entries for two modes and configured the larger resolution to be our preferred choice. ############################################################# # /etc/X11/xorg.conf for 1024x600 and 800x480 laptop panels # ############################################################# #### By J.KASPER and B.HIBRY #### for Hercules eCafe 800 #### ############################################################# Section "Module" Load "ztv" EndSection Section "Device" Identifier "card0" Driver "geode" BusID "PCI:0:1:1" Option "PanelMode" "33450 800 840 968 1056 480 490 492 525" EndSection Section "Monitor" Identifier "monitor0" Modeline "1024x768" 64.56 1024 1056 1296 1328 768 783 791 807 -hsync +vsync Modeline "1024x600" 48.96 1024 1064 1168 1312 600 601 604 622 -hsync +vsync Modeline "800x480" 33.45 800 840 968 1056 480 490 492 525 -hsync +vsync Option "dpms" EndSection Section "Screen" Identifier "Default Screen" Monitor "monitor0" Device "card0" DefaultDepth 24 Subsection "Display" Depth 24 Modes "1024x600" "1024x768" "800x480" EndSubsection EndSection ### EOF ### Q: Why doesn't screen rotation work? A: Make sure that a sufficient amount of video RAM is reserved in the BIOS, otherwise rotation will fail and this error message appear in Xorg.log: Couldn't allocate the shadow memory for rotation You need XX bytes, but only YY bytes are available Q: How do I produce useful information whenever submitting a bug report? d86 1 a86 1 and follow the instructions found there. d90 1 a90 1 A: Run the following commands from a command line interpreter shell: d104 6 a109 2 and submit the patches to the Geode X.org mailing list or to Bugzilla against product "xorg" component "Driver/geode". d111 6 a116 1 7.PROJECT CONTACTS d118 1 a118 2 Project homepage: http://www.x.org/wiki/GeodeDriver d120 1 a120 2 Mailing list: http://lists.freedesktop.org/mailman/listinfo/xorg-driver-geode d122 6 a127 2 Bug reports: https://bugs.freedesktop.org/enter_bug.cgi?product=xorg&component=Driver%2Fgeode d129 6 a134 2 Code browser: http://cgit.freedesktop.org/xorg/driver/xf86-video-geode d136 1 a136 2 Code repository: git://anongit.freedesktop.org/git/xorg/driver/xf86-video-geode d138 1 a138 2 IRC channel: #geode on the Freenode network. d140 1 a140 1 .EOF. @ 1.1.1.4 log @initial import of xf86-video-geode-2.11.20 @ text @d150 1 a150 1 A: See https://www.x.org/wiki/Development/Documentation/ServerDebugging d168 3 a170 3 A: See https://www.x.org/wiki/Development/Documentation/SubmittingPatches and submit the patches to the Geode X.org mailing list or to gitlab in the xf86-video-geode project. d175 1 a175 1 https://www.x.org/wiki/GeodeDriver d178 1 a178 1 https://lists.x.org/mailman/listinfo/xorg-driver-geode d181 4 a184 1 https://gitlab.freedesktop.org/xorg/driver/xf86-video-geode/issues d187 1 a187 1 https://gitlab.freedesktop.org/xorg/driver/xf86-video-geode @ 1.1.1.5 log @initial import of xf86-video-geode-2.11.21 @ text @d3 1 a3 1 README last updated: 2020-12-15 a47 5 Additionally, on the LX, the driver can DCC probe the display and calculate the clockrate for the maximum resolution supported by the display. However, this won't work on LX platforms with GPIO configured for serial console. On such hardware, the resolution must be specified in /etc/X11/xorg.conf. a82 15 Q: Why doesn't the GEODE driver work on recent Linux kernels? A: Since kernel 4.x Linux has strong memory protection. If the kernel is booted with a frame buffer (e.g. vesafb) it reserves the video memory for itself. Disabling this requires booting the kernel in non-graphic mode. On GRUB, this is configured by this /etc/default/grub option: GRUB_GFXPAYLOAD_LINUX=text Alternately, adding iomem=relaxed to GRUB_CMDLINE_LINUX_DEFAULT will allow the video memory to be accessed by vesafb and the GEODE driver. Once either option has been added and the GRUB configuration refreshed, the GEODE driver will launch on recent kernels as previously. @