Update to xf86-video-geode 2.11.13
This commit is contained in:
parent
e46d8ddd0d
commit
40a6c4a96f
@ -2,6 +2,7 @@ Copyright (C) 2003-2008 Advanced Micro Devices, Inc.
|
||||
Copyright (C) 2007 George Sapountzis
|
||||
Copyright (C) 2002 David Dawes
|
||||
Copyright (C) 2001 VA Linux Systems Inc., Fremont, California.
|
||||
Copyright (C) 2002 Keith Packard, member of The XFree86 Project, Inc.
|
||||
|
||||
LICENSE:
|
||||
|
||||
|
@ -1,3 +1,544 @@
|
||||
commit e420d7956afceeb41f20179cedc28d46aebdb29f
|
||||
Author: Martin-Éric Racine <martin-eric.racine@iki.fi>
|
||||
Date: Mon Dec 26 22:13:22 2011 +0200
|
||||
|
||||
Geode 2.11.13
|
||||
|
||||
This release mainly features a complete overhaul of the building scripts plus
|
||||
a cleanup of deprecated macros. The key benefit is that this Geode driver can
|
||||
finally build on FreeBSD and on other platforms not offering V4L2 support and
|
||||
that it can also build on a 64-bit host using its 32-bit personality.
|
||||
|
||||
Support for the Video Input Port (VIP) feature of the Geode LX found in 'ztv'
|
||||
is now documented and the source code saw the removal of deprecated Linux 2.4
|
||||
backward compatibility code. Compiling is skipped on platforms without V4L2.
|
||||
|
||||
Configuration for laptops featuring WXGA resolutions is finally documented.
|
||||
|
||||
Setting the GEODE_TRACE_FALL macro now enables composite operation tracing on
|
||||
this driver. This can be used to profile the performance during development.
|
||||
|
||||
Fixes to keep this driver compilable on recent X servers are also included.
|
||||
|
||||
VALIDATION PLATFORMS
|
||||
* Debian/stable (X server 1.7.7) on Artec DBE61 and Hercules EC-800.
|
||||
* Ubuntu/Precise (X server 1.10.4) on FIC ION603A.
|
||||
|
||||
Signed-off-by: Martin-Éric Racine <martin-eric.racine@iki.fi>
|
||||
|
||||
commit 7e7fe26882dada5878d5450e64c043ba7b0737fd
|
||||
Author: Martin-Éric Racine <martin-eric.racine@iki.fi>
|
||||
Date: Sun Dec 25 21:43:40 2011 +0200
|
||||
|
||||
Fix lx_display.c:360:9: warning: ISO C90 forbids mixed declarations and code
|
||||
|
||||
commit 515d232162c8ea2c5ecabf12b88b0bf4eb5102e7
|
||||
Author: Adam Jackson <ajax@redhat.com>
|
||||
Date: Mon Dec 19 17:47:38 2011 -0500
|
||||
|
||||
Fix for new vgaHW ABI
|
||||
|
||||
Signed-off-by: Adam Jackson <ajax@redhat.com>
|
||||
|
||||
commit 78052e0d3e28c7e6e08666d9ed2bcc64f5e93540
|
||||
Author: Gaetan Nadon <memsize@videotron.ca>
|
||||
Date: Tue Nov 29 12:02:32 2011 -0500
|
||||
|
||||
DCONDPMSSet: handle error return code on "write" to avoid a warning
|
||||
|
||||
The author of the write() system call has deemed important for the caller
|
||||
to check the return code. If not, the compiler issues a warning.
|
||||
|
||||
The patch handles a bad return code from write() just in the same way
|
||||
as the code does for the open() calls.
|
||||
|
||||
Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
|
||||
|
||||
commit db7155395e794eb276f853c7642f62727e29a0b9
|
||||
Author: Martin-Éric Racine <martin-eric.racine@iki.fi>
|
||||
Date: Tue Nov 29 23:49:06 2011 +0200
|
||||
|
||||
README: added example of ZTV loading to EC800 xorg.conf sample.
|
||||
|
||||
commit d072870e20c360fb0ec1baefc6abcb11a6d4687c
|
||||
Author: Gaetan Nadon <memsize@videotron.ca>
|
||||
Date: Tue Nov 29 14:20:17 2011 -0500
|
||||
|
||||
README: do not suggest compiling with xserver older than 1.3
|
||||
|
||||
This was done at one point in time by some drivers (3 that I remember)
|
||||
but the workarounds all have been removed since. The tarballs created
|
||||
by those drivers picked-up whatever code happened to be on the
|
||||
developer disk and was not in git. The code was not maintained
|
||||
and in fact did not work thereafter.
|
||||
|
||||
http://cgit.freedesktop.org/xorg/driver/xf86-video-intel/commit/configure.ac
|
||||
?id=84f69081abaeef8b05cafb64d3102eb2abdf9a8e
|
||||
|
||||
Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
|
||||
|
||||
commit 2890f6c431a6de0726c6c53a800074f95d71294e
|
||||
Author: Martin-Éric Racine <martin-eric.racine@iki.fi>
|
||||
Date: Thu Nov 24 21:47:35 2011 +0200
|
||||
|
||||
README: added info about how to calculate arbitrary laptop modelines.
|
||||
|
||||
commit e520739e9ce18a48df7d873de16022aec21d7d3c
|
||||
Author: Martin-Éric Racine <martin-eric.racine@iki.fi>
|
||||
Date: Mon Nov 21 22:47:23 2011 +0200
|
||||
|
||||
README: whitespace cleanup.
|
||||
|
||||
commit edb6a6380e0db6be06fe89e7d73dedbca945550f
|
||||
Author: Martin-Éric Racine <martin-eric.racine@iki.fi>
|
||||
Date: Mon Nov 21 22:42:41 2011 +0200
|
||||
|
||||
README: harmonize x.org versus freedesktop.org as much as possible.
|
||||
|
||||
commit 308430e8898e29ae111bf4f552f4d7554b96fda2
|
||||
Author: Martin-Éric Racine <martin-eric.racine@iki.fi>
|
||||
Date: Mon Nov 21 22:34:26 2011 +0200
|
||||
|
||||
README: add info about the Geode mailing list and Bugzilla component.
|
||||
|
||||
commit 1108f9cfac5b78fc9660174aa4df592ecd87d287
|
||||
Author: Gaetan Nadon <memsize@videotron.ca>
|
||||
Date: Mon Nov 14 14:52:21 2011 -0500
|
||||
|
||||
Remove unrequired large file descriptor partial support
|
||||
|
||||
The LFS "transitional extension" API is deprecated and is not available on FreeBSD.
|
||||
Large file support (64 bit) is not required on the geode 32 bit only architecture.
|
||||
|
||||
There are some hints that the LFS transional extension API were not used
|
||||
correclty. The variable holding the value is held in an unsigned long rather
|
||||
than in off_t. The msr open call did not use the O_LARGEFILE flag and did not
|
||||
check for EOVERFLOW.
|
||||
|
||||
Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
|
||||
|
||||
commit 0daee9eb57c826da120edf35c50e8947a43f19b2
|
||||
Author: Martin-Éric Racine <martin-eric.racine@iki.fi>
|
||||
Date: Mon Nov 21 10:54:10 2011 +0200
|
||||
|
||||
README: a little bit of proofreading wouldn't hurt now, would it?
|
||||
|
||||
commit d1c40f2d5baa2d964499412c7f1c443c9ee63626
|
||||
Author: Martin-Éric Racine <martin-eric.racine@iki.fi>
|
||||
Date: Mon Nov 21 10:24:29 2011 +0200
|
||||
|
||||
README: added a sample xorg.conf for 1024x600 and 800x480 laptops.
|
||||
|
||||
commit 8fc372b4e239005dda60f45737468f1e82571457
|
||||
Author: Gaetan Nadon <memsize@videotron.ca>
|
||||
Date: Sun Nov 20 15:58:03 2011 -0500
|
||||
|
||||
config: fix Autoconf warnings and improve comments
|
||||
|
||||
These changes have been done in all other video drivers.
|
||||
|
||||
Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
|
||||
|
||||
commit 725d6ddc0b0888af9b033ccb6ce88c9800a791f9
|
||||
Author: Gaetan Nadon <memsize@videotron.ca>
|
||||
Date: Sun Nov 20 15:35:29 2011 -0500
|
||||
|
||||
config: The compiler version to use is now set in XORG_DEFAULT_OPTIONS
|
||||
|
||||
In this case "now" means a couple of years ago. All of Xorg is compiled
|
||||
with AC_PROG_CC_C99. It shows up in config.log as CC='gcc -std=gnu99'.
|
||||
|
||||
The removed statement was resetting the compiler to C89 as it comes
|
||||
after XORG_DEFAULT_OPTIONS.
|
||||
|
||||
Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
|
||||
|
||||
commit 40aae069bb15cda123f5e08b757ca93166e62db8
|
||||
Author: Gaetan Nadon <memsize@videotron.ca>
|
||||
Date: Sun Nov 20 15:24:00 2011 -0500
|
||||
|
||||
config: remove a few dead/obsolete lines of code
|
||||
|
||||
HAVE_XEXTPROTO_71 not used in Makefile.
|
||||
AC_HEADER_STD is very obsolete.
|
||||
AC_SUBST([XORG_CFLAGS]) is redundant.
|
||||
DRIVER_NAME is correctly no longer used.
|
||||
AC_SUBST([moduledir]) has just been moved up.
|
||||
|
||||
Any erroneously removed statements above would result
|
||||
in a configuration failure.
|
||||
|
||||
Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
|
||||
|
||||
commit fa0e88bfe00baa648ab3b1184b56f7dc5536aa21
|
||||
Author: Gaetan Nadon <memsize@videotron.ca>
|
||||
Date: Sat Nov 19 15:33:33 2011 -0500
|
||||
|
||||
Move back ztv with geode driver
|
||||
|
||||
Now we have a clean separation between CPP flags and C Flags
|
||||
Only the C Flags apply to both geode and ztv driver, however
|
||||
it is not worth doing a per target compilation.
|
||||
|
||||
Should some flags become mutually exclusive and if we want to have
|
||||
both target in the same makefile, add the incompatible flag
|
||||
on the appropriate target, example:
|
||||
|
||||
geode_drv_la_CFLAGS = $(AM_CFLAGS) -newCFlag
|
||||
and/or
|
||||
geode_drv_la_CPPFLAGS = $(AM_CPPFLAGS) -newCPPFlag
|
||||
|
||||
Note that both AM_CFLAGS and AM_CPPFLAGS are picked-up by both
|
||||
geode and ztv driver target.
|
||||
|
||||
Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
|
||||
|
||||
commit 03529b7b35fa8d7b5bac277d6abe1caf0557301a
|
||||
Author: Gaetan Nadon <memsize@videotron.ca>
|
||||
Date: Sat Nov 19 13:22:32 2011 -0500
|
||||
|
||||
Separate compiler from pre-processor options
|
||||
|
||||
Clean-up what goes in AM_CFLAGS and AM_CPPFLAGS
|
||||
Use more descriptive names such that comments are not needed.
|
||||
|
||||
Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
|
||||
|
||||
commit ac99bf2c5cdf86f039a290397614ca042a56c8db
|
||||
Author: Gaetan Nadon <memsize@videotron.ca>
|
||||
Date: Fri Nov 18 16:36:12 2011 -0500
|
||||
|
||||
Detect 32bit support on 64bit OS and compile with -m32 if found
|
||||
|
||||
For gcc compiler only at the moment.
|
||||
The configuration reports if support is found or not, e.g.:
|
||||
|
||||
checking if gcc supports the -m32 Intel/AMD option... yes
|
||||
|
||||
The configuration C test relies on #include unistd.h which includes
|
||||
features.h which includes gnu/stubs.h which includes gnu/stubs-32.h
|
||||
which is missing on 64 bit system without the 32 bit library support.
|
||||
|
||||
Tested on x86_64 AMD64 CPU with/without libc6-dev-i386 which provides
|
||||
32 bit support. Remains to be tested on Geode and FreeBSD 32/64 bit.
|
||||
|
||||
The configuration does not attempt to decide if building should proceed
|
||||
or be aborted. If no 32 bit support then the build will die in the
|
||||
assembly code as it always did before.
|
||||
|
||||
The variable M32_CFLAGS provides the flag for the makefiles.
|
||||
The variable names and organization is subject to change.
|
||||
|
||||
Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
|
||||
|
||||
commit 3021c6df08004ec9ed846fec4000d798148eeb0e
|
||||
Author: Gaetan Nadon <memsize@videotron.ca>
|
||||
Date: Thu Nov 17 19:47:10 2011 -0500
|
||||
|
||||
geode source: streamline whitespace and sort alphabetically
|
||||
|
||||
No functional changes.
|
||||
|
||||
Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
|
||||
|
||||
commit c1993fa8e5bf07bbd43b09ae2ec27c287725d81e
|
||||
Author: Gaetan Nadon <memsize@videotron.ca>
|
||||
Date: Thu Nov 17 19:21:01 2011 -0500
|
||||
|
||||
Remove -I linux_v26 as the directory does not exist
|
||||
|
||||
Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
|
||||
|
||||
commit 4eaba919fccc7618aee0b2f58294e460640bedb9
|
||||
Author: Gaetan Nadon <memsize@videotron.ca>
|
||||
Date: Thu Nov 17 12:32:55 2011 -0500
|
||||
|
||||
Remove unused and misleading I386ARCH configuration code
|
||||
|
||||
The AM_CONDITIONAL I386ARCH is not used.
|
||||
|
||||
The AC_CHECK_DECLS is misleading as it suggests there could be some i*86
|
||||
system with a 64 bit architecture which is incorrect.
|
||||
It also provides false results on 64 bit computer.
|
||||
|
||||
The generated HAVE_DECL_XXX are not used anyway.
|
||||
|
||||
Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
|
||||
|
||||
commit 65275e62415ded849f9986a36ad55ca3c96dc331
|
||||
Author: Gaetan Nadon <memsize@videotron.ca>
|
||||
Date: Thu Nov 17 12:20:13 2011 -0500
|
||||
|
||||
Remove -DPNL_SUP for the ztv driver
|
||||
|
||||
Only the gx driver provide such a panel.
|
||||
|
||||
Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
|
||||
|
||||
commit 60c3f5f7e9482d29f043504860319aeead7b9a69
|
||||
Author: Gaetan Nadon <memsize@videotron.ca>
|
||||
Date: Thu Nov 17 09:32:24 2011 -0500
|
||||
|
||||
Remove duplicate warning variable and werror option
|
||||
|
||||
Use already existing:
|
||||
--enable-strict-compilation
|
||||
Enable all warnings from compiler and make them
|
||||
errors (default: disabled)
|
||||
which, byt the way was broken as it was not implemented in geode.
|
||||
|
||||
Use already existing CWARNINGFLAGS variable, so there is no need
|
||||
to define GCC_WARNINGS.
|
||||
|
||||
Both come from util-macros version 1.4 or later.
|
||||
http://cgit.freedesktop.org/xorg/util/macros/tree/xorg-macros.m4.in
|
||||
?id=03b04a6b5d61aafbd2705f7d29e58e0c92553a4a
|
||||
|
||||
If you configure with a later version of util-macros you may see new
|
||||
warnings appear as additional flags have been added over the years.
|
||||
|
||||
You get better support for platforms/compiler differences.
|
||||
|
||||
Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
|
||||
|
||||
commit 5f228208cc65348e35aa24b6cddae1df19b67fa5
|
||||
Author: Gaetan Nadon <memsize@videotron.ca>
|
||||
Date: Wed Nov 16 20:14:08 2011 -0500
|
||||
|
||||
Remove unrequired .s assembly files automake support
|
||||
|
||||
Only the suffixes .s, .S, and .sx are recognized by automake
|
||||
as being files containing assembly code.
|
||||
|
||||
http://www.gnu.org/software/automake/manual/automake.html#Assembly-Support
|
||||
|
||||
Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
|
||||
|
||||
commit fc9957114875edb94cba89a4f4f0e023f2c98bfb
|
||||
Author: Gaetan Nadon <memsize@videotron.ca>
|
||||
Date: Wed Nov 16 19:47:08 2011 -0500
|
||||
|
||||
Remove ztv LINUX_2_6 switch and dead code
|
||||
|
||||
The makefile defines LINUX_2_6 so the "else" code is dead.
|
||||
The port from kernel 2.4 is complete.
|
||||
|
||||
Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
|
||||
|
||||
commit 100576b3a0a38da7a957969745b2cf087929c478
|
||||
Author: Gaetan Nadon <memsize@videotron.ca>
|
||||
Date: Wed Nov 16 19:15:17 2011 -0500
|
||||
|
||||
Remove broken duplicate visibility configure option
|
||||
|
||||
This was added by commit f762b456 in 2007 and has been since implemented
|
||||
in the server which returns it in XORG_CFLAGS
|
||||
|
||||
pkg-config --cflags xorg-server
|
||||
|
||||
The server also takes care of platforms and compilers being used.
|
||||
Currently the visibility is set twice and even if you disable it,
|
||||
it is still passed through XORG_CFLAGS.
|
||||
|
||||
Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
|
||||
|
||||
commit 970d142abe2fa09b294dd2bfa860fe3bbcaa8c68
|
||||
Author: Gaetan Nadon <memsize@videotron.ca>
|
||||
Date: Wed Nov 16 17:01:48 2011 -0500
|
||||
|
||||
Remove unused LINUX_2_6 macro from geode driver makefile
|
||||
|
||||
It is used in ztv but not geode driver.
|
||||
In the wake of more platforms other than linux, might as well
|
||||
remove any source of confusion.
|
||||
|
||||
Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
|
||||
|
||||
commit 65625eac28af7cf3164e5560478cd18aaa0ac33e
|
||||
Author: Gaetan Nadon <memsize@videotron.ca>
|
||||
Date: Wed Nov 16 15:20:07 2011 -0500
|
||||
|
||||
Remove HAVE__GX HAVE_LX and OPT_ACCEL from ztv build
|
||||
|
||||
These macros are not used in z4l.c.
|
||||
|
||||
Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
|
||||
|
||||
commit dd8eadc53732ed2929e38c565240147165767625
|
||||
Author: Gaetan Nadon <memsize@videotron.ca>
|
||||
Date: Wed Nov 16 15:11:18 2011 -0500
|
||||
|
||||
Remove no longer used AMD_V4L2_VIDEO from makefiles
|
||||
|
||||
This macro has been removed every where from source code.
|
||||
|
||||
Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
|
||||
|
||||
commit fc19e7d2bd256663b4a731661a35abcf435eaf18
|
||||
Author: Gaetan Nadon <memsize@videotron.ca>
|
||||
Date: Wed Nov 16 14:07:10 2011 -0500
|
||||
|
||||
Add a configure option to enable/disable building the ztv driver
|
||||
|
||||
Even when V4L2 is available there are always reasons why distros
|
||||
may not want to build the driver.
|
||||
|
||||
This patch uses a common idiom in xorg.
|
||||
When no configure option is specified ztv is built iff v4l2 is detected (auto).
|
||||
When user issues --disable-ztv, the ztv driver is not built (no)
|
||||
When user issues --enable-ztv, the ztv driver is built (yes) if v4l2 is detected
|
||||
but the configuration fails if v4l2 is missing. Distros do not want silent
|
||||
failures when a feature is explicitly requested but cannot be built.
|
||||
|
||||
Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
|
||||
|
||||
commit 23b85b3fcd1439561f0693755a31f7fded50741b
|
||||
Author: Gaetan Nadon <memsize@videotron.ca>
|
||||
Date: Tue Nov 15 19:36:17 2011 -0500
|
||||
|
||||
Add conditional build for ztv
|
||||
|
||||
Detect the presence of Video4Linux V2 and do not build if missing.
|
||||
|
||||
The geode driver is no longer Linux only.
|
||||
|
||||
Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
|
||||
|
||||
commit e4b771572d7b0797a794340ab8fb8b1db91a5eb1
|
||||
Author: Gaetan Nadon <memsize@videotron.ca>
|
||||
Date: Tue Nov 15 18:02:34 2011 -0500
|
||||
|
||||
Move ztv driver to it's own directory
|
||||
|
||||
The convention is to have the video driver (geode) in the src subdir
|
||||
and any other targets (utils, apps, other drivers) in their own
|
||||
directory. It makes it much simpler to right a correct makefile
|
||||
and to set conditional compile.
|
||||
|
||||
This highlighted a few things to fix. For now, the directory includes
|
||||
have not been copied as they are required. The AM_CCASFLAGS is not required
|
||||
either as there is no assembler.
|
||||
|
||||
Other than that, the gcc command issued has no differences. Other unrequired
|
||||
defines could be removed later.
|
||||
|
||||
Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
|
||||
|
||||
commit 2b3767b9e424ce371c342c9c9a2f2ae1f61df1fd
|
||||
Author: Martin-Éric Racine <martin-eric.racine@iki.fi>
|
||||
Date: Sat Nov 19 02:29:20 2011 +0200
|
||||
|
||||
README: emphasize that "ztv" is the name of that VIP driver.
|
||||
|
||||
commit aa7cd847d821ed639f7d18a5114a13c324f6f227
|
||||
Author: Martin-Éric Racine <martin-eric.racine@iki.fi>
|
||||
Date: Sat Nov 19 02:17:22 2011 +0200
|
||||
|
||||
README: properly call the LX's video input port feature "VIP"
|
||||
|
||||
commit 9bbc7bc49f1d04d41d7e1750b81cfce45e4ddf42
|
||||
Author: Martin-Éric Racine <martin-eric.racine@iki.fi>
|
||||
Date: Thu Nov 17 02:15:27 2011 +0200
|
||||
|
||||
Added info about 'ztv' a.k.a. the V4L2 driver for LX in README.
|
||||
|
||||
commit 9e8a766cfb458cdc791f4c4a932fe51638a8bc73
|
||||
Author: Gaetan Nadon <memsize@videotron.ca>
|
||||
Date: Tue Nov 15 16:55:15 2011 -0500
|
||||
|
||||
Add gx_randr.c Copyright statement to COPYING
|
||||
|
||||
Signed-off-by: Gaetan Nadon <memsize@videotron.ca>
|
||||
|
||||
commit b724ff4045994fff721db4ab67f8aa418cc4f707
|
||||
Author: Martin-Éric Racine <martin-eric.racine@iki.fi>
|
||||
Date: Mon Nov 14 08:44:32 2011 +0200
|
||||
|
||||
Revert "Only enable z4l.c on Linux" until we have a consensus.
|
||||
|
||||
commit 587d4e40e58e70649968261f73b7fb2078349f4f
|
||||
Author: Martin-Éric Racine <martin-eric.racine@iki.fi>
|
||||
Date: Sun Nov 13 15:48:29 2011 +0200
|
||||
|
||||
Revised BSD check in geode_msr.c
|
||||
|
||||
commit ee52d73fd2c68740b1ff3cdb5b1bf2a6d941090d
|
||||
Author: Martin-Éric Racine <martin-eric.racine@iki.fi>
|
||||
Date: Sun Nov 13 03:40:01 2011 +0200
|
||||
|
||||
Move the z4l.c test to src/Makefile.am where it should be.
|
||||
|
||||
commit d193a42b3596ceb9dfaa66af71edd1f15ecc75bd
|
||||
Author: Martin-Éric Racine <martin-eric.racine@iki.fi>
|
||||
Date: Sun Nov 13 03:23:21 2011 +0200
|
||||
|
||||
Added two #ifdef to enable building on FreeBSD.
|
||||
|
||||
commit ee6296ecb8bf5c9b5e7fa3eade5fa45245b66d62
|
||||
Author: Martin-Éric Racine <martin-eric.racine@iki.fi>
|
||||
Date: Sun Nov 13 03:14:51 2011 +0200
|
||||
|
||||
Whitespace cleanup.
|
||||
|
||||
commit f6745f544feeb7443405f4b87043be9b721236b5
|
||||
Author: Martin-Éric Racine <martin-eric.racine@iki.fi>
|
||||
Date: Sun Nov 13 03:10:01 2011 +0200
|
||||
|
||||
Only enable z4l.c on Linux.
|
||||
|
||||
commit f15f4da59a80533f3864aa6c54b4471e272d5c80
|
||||
Author: Martin-Éric Racine <martin-eric.racine@iki.fi>
|
||||
Date: Wed Apr 6 22:13:09 2011 +0300
|
||||
|
||||
Added info about the Geode developers' IRC channel in README.
|
||||
|
||||
commit 3c1375afdb9e1be524adae98c3713397d50e3a3e
|
||||
Author: Martin-Éric Racine <martin-eric.racine@iki.fi>
|
||||
Date: Sun Mar 13 16:17:06 2011 +0200
|
||||
|
||||
Proofread and restructured the README for clarity.
|
||||
|
||||
commit 9d0986232cb417f41aee934b655cc0bbbae5f99b
|
||||
Author: Martin-Éric Racine <martin-eric.racine@iki.fi>
|
||||
Date: Sun Mar 13 15:21:31 2011 +0200
|
||||
|
||||
Added README section about supported resolutions.
|
||||
|
||||
Inverted two FAQ sections so as to bring the answer about WXGA
|
||||
right below this new supported resolutions section.
|
||||
|
||||
commit 8eab313cdf0cdc53ea936c7a9dd716d1000e1c56
|
||||
Author: Martin-Éric Racine <martin-eric.racine@iki.fi>
|
||||
Date: Sun Mar 13 15:10:28 2011 +0200
|
||||
|
||||
Removed README note about minimal version.
|
||||
|
||||
b9a5a86a402832fe699e43b3030932b50ae821a0 restored code compatibility
|
||||
with X server 1.4.
|
||||
|
||||
commit c465e19ff53db4be42dabcfafde510f79508c531
|
||||
Author: Priit Laes <plaes@plaes.org>
|
||||
Date: Sun Mar 13 03:40:53 2011 +0200
|
||||
|
||||
Add optional composite operation fallback tracing
|
||||
|
||||
Changing GEODE_TRACE_FALL to 1 allows to easily find the unaccelerated
|
||||
code paths in a given use case while working on driver performance.
|
||||
|
||||
Signed-off-by: Priit Laes <plaes@plaes.org>
|
||||
Signed-off-by: Mart Raudsepp <leio@gentoo.org>
|
||||
|
||||
commit 4fd7500bb16b80ea9aee8dc61c5b11e9deb8281f
|
||||
Author: Mart Raudsepp <leio@gentoo.org>
|
||||
Date: Sat Mar 12 22:17:19 2011 +0200
|
||||
|
||||
Fix parameter ordering for calloc/xnfcalloc calls
|
||||
|
||||
First argument is the number of elements and second the size of one
|
||||
element, not vice-versa.
|
||||
|
||||
Signed-off-by: Mart Raudsepp <leio@gentoo.org>
|
||||
|
||||
commit 1a23956758d17a8b4c1d8acebf8acc94358c37b9
|
||||
Author: Martin-Éric Racine <martin-eric.racine@iki.fi>
|
||||
Date: Sun Feb 13 21:52:55 2011 +0200
|
||||
|
@ -19,6 +19,7 @@
|
||||
# CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
|
||||
|
||||
SUBDIRS = src
|
||||
|
||||
MAINTAINERCLEANFILES = ChangeLog INSTALL
|
||||
EXTRA_DIST = autogen.sh
|
||||
|
||||
|
@ -96,7 +96,6 @@ ADMIN_MAN_DIR = @ADMIN_MAN_DIR@
|
||||
ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@
|
||||
AMDEP_FALSE = @AMDEP_FALSE@
|
||||
AMDEP_TRUE = @AMDEP_TRUE@
|
||||
AMD_CFLAGS = @AMD_CFLAGS@
|
||||
AMTAR = @AMTAR@
|
||||
AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
|
||||
APP_MAN_DIR = @APP_MAN_DIR@
|
||||
@ -106,69 +105,70 @@ AUTOCONF = @AUTOCONF@
|
||||
AUTOHEADER = @AUTOHEADER@
|
||||
AUTOMAKE = @AUTOMAKE@
|
||||
AWK = @AWK@
|
||||
BASE_CFLAGS = @BASE_CFLAGS@
|
||||
BUILD_ZTV_FALSE = @BUILD_ZTV_FALSE@
|
||||
BUILD_ZTV_TRUE = @BUILD_ZTV_TRUE@
|
||||
CC = @CC@
|
||||
CCAS = @CCAS@
|
||||
CCASFLAGS = @CCASFLAGS@
|
||||
CCDEPMODE = @CCDEPMODE@
|
||||
CFLAGS = @CFLAGS@
|
||||
CHANGELOG_CMD = @CHANGELOG_CMD@
|
||||
CPP = @CPP@
|
||||
CPPFLAGS = @CPPFLAGS@
|
||||
CWARNFLAGS = @CWARNFLAGS@
|
||||
CXX = @CXX@
|
||||
CXXCPP = @CXXCPP@
|
||||
CXXDEPMODE = @CXXDEPMODE@
|
||||
CXXFLAGS = @CXXFLAGS@
|
||||
CYGPATH_W = @CYGPATH_W@
|
||||
DEFS = @DEFS@
|
||||
DEPDIR = @DEPDIR@
|
||||
DLLTOOL = @DLLTOOL@
|
||||
DRIVER_MAN_DIR = @DRIVER_MAN_DIR@
|
||||
DRIVER_MAN_SUFFIX = @DRIVER_MAN_SUFFIX@
|
||||
DRIVER_NAME = @DRIVER_NAME@
|
||||
DSYMUTIL = @DSYMUTIL@
|
||||
ECHO = @ECHO@
|
||||
DUMPBIN = @DUMPBIN@
|
||||
ECHO_C = @ECHO_C@
|
||||
ECHO_N = @ECHO_N@
|
||||
ECHO_T = @ECHO_T@
|
||||
EGREP = @EGREP@
|
||||
EXEEXT = @EXEEXT@
|
||||
F77 = @F77@
|
||||
FFLAGS = @FFLAGS@
|
||||
FGREP = @FGREP@
|
||||
FILE_MAN_DIR = @FILE_MAN_DIR@
|
||||
FILE_MAN_SUFFIX = @FILE_MAN_SUFFIX@
|
||||
GREP = @GREP@
|
||||
HAVE_XEXTPROTO_71_FALSE = @HAVE_XEXTPROTO_71_FALSE@
|
||||
HAVE_XEXTPROTO_71_TRUE = @HAVE_XEXTPROTO_71_TRUE@
|
||||
I386ARCH_FALSE = @I386ARCH_FALSE@
|
||||
I386ARCH_TRUE = @I386ARCH_TRUE@
|
||||
INSTALL_CMD = @INSTALL_CMD@
|
||||
INSTALL_DATA = @INSTALL_DATA@
|
||||
INSTALL_PROGRAM = @INSTALL_PROGRAM@
|
||||
INSTALL_SCRIPT = @INSTALL_SCRIPT@
|
||||
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
|
||||
LD = @LD@
|
||||
LDFLAGS = @LDFLAGS@
|
||||
LIBOBJS = @LIBOBJS@
|
||||
LIBS = @LIBS@
|
||||
LIBTOOL = @LIBTOOL@
|
||||
LIB_MAN_DIR = @LIB_MAN_DIR@
|
||||
LIB_MAN_SUFFIX = @LIB_MAN_SUFFIX@
|
||||
LIPO = @LIPO@
|
||||
LN_S = @LN_S@
|
||||
LTLIBOBJS = @LTLIBOBJS@
|
||||
M32_CFLAGS = @M32_CFLAGS@
|
||||
MAINT = @MAINT@
|
||||
MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
|
||||
MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
|
||||
MAKEINFO = @MAKEINFO@
|
||||
MANIFEST_TOOL = @MANIFEST_TOOL@
|
||||
MAN_SUBSTS = @MAN_SUBSTS@
|
||||
MISC_MAN_DIR = @MISC_MAN_DIR@
|
||||
MISC_MAN_SUFFIX = @MISC_MAN_SUFFIX@
|
||||
NM = @NM@
|
||||
NMEDIT = @NMEDIT@
|
||||
OBJDUMP = @OBJDUMP@
|
||||
OBJEXT = @OBJEXT@
|
||||
OTOOL = @OTOOL@
|
||||
OTOOL64 = @OTOOL64@
|
||||
PACKAGE = @PACKAGE@
|
||||
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
|
||||
PACKAGE_NAME = @PACKAGE_NAME@
|
||||
PACKAGE_STRING = @PACKAGE_STRING@
|
||||
PACKAGE_TARNAME = @PACKAGE_TARNAME@
|
||||
PACKAGE_VERSION = @PACKAGE_VERSION@
|
||||
PANEL_CPPFLAGS = @PANEL_CPPFLAGS@
|
||||
PATH_SEPARATOR = @PATH_SEPARATOR@
|
||||
PCIACCESS_CFLAGS = @PCIACCESS_CFLAGS@
|
||||
PCIACCESS_LIBS = @PCIACCESS_LIBS@
|
||||
@ -185,13 +185,11 @@ XEXT_LIBS = @XEXT_LIBS@
|
||||
XORG_CFLAGS = @XORG_CFLAGS@
|
||||
XORG_LIBS = @XORG_LIBS@
|
||||
XORG_MAN_PAGE = @XORG_MAN_PAGE@
|
||||
ac_ct_AR = @ac_ct_AR@
|
||||
ac_ct_CC = @ac_ct_CC@
|
||||
ac_ct_CXX = @ac_ct_CXX@
|
||||
ac_ct_F77 = @ac_ct_F77@
|
||||
ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
|
||||
am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
|
||||
am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
|
||||
am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
|
||||
am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
|
||||
am__include = @am__include@
|
||||
am__leading_dot = @am__leading_dot@
|
||||
am__quote = @am__quote@
|
||||
|
@ -1,28 +1,21 @@
|
||||
xf86-video-geode -- AMD Geode GX and LX graphics driver for X.org
|
||||
=================================================================
|
||||
README last updated: 2009-09-09
|
||||
README last updated: 2011-11-24
|
||||
|
||||
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 =
|
||||
1.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.
|
||||
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".
|
||||
|
||||
= Roadmap =
|
||||
2.DEPENDENCIES
|
||||
|
||||
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.
|
||||
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.
|
||||
|
||||
3.ROADMAP
|
||||
|
||||
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.
|
||||
@ -31,7 +24,7 @@ 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)
|
||||
* Geode GX (a.k.a. GX2) PCI ID 0x100B:0x0030 (re-branded GX2)
|
||||
|
||||
xf86-video-nsc
|
||||
* Geode GX2 (a.k.a. GX2) PCI ID 0x100B:0x0030 (a.k.a. "Red Cloud")
|
||||
@ -44,50 +37,122 @@ xf86-video-cyrix
|
||||
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 =
|
||||
4.MAXIMUM RESOLUTIONS
|
||||
|
||||
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.
|
||||
The driver supports all maximum resolutions advertised by AMD, namely:
|
||||
|
||||
#ifdef'ing the changes from f1268f3ba8404129d358db3bb1e66f3841f7018a
|
||||
and b28abde0276ddd7f687242f3886f98b0e49a7fc2 might make it possible
|
||||
to build this driver against older X servers. Patches are welcome.
|
||||
LX: 1920x1440 (CRT) and 1600x1200 (TFT)
|
||||
GX: 1600x1200 (CRT) and 1280x1024 (TFT)
|
||||
SC: 1280x1024 (CRT/TFT) *** Currently unsupported by this driver ***
|
||||
|
||||
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.
|
||||
5.CONFIGURATION OPTIONS
|
||||
|
||||
If necessary, it might be possible to create autoconf macros to make
|
||||
this driver compile against older X servers, following this example:
|
||||
You can specify driver options in /etc/X11/xorg.conf in the usual fashion:
|
||||
|
||||
http://lists.freedesktop.org/archives/xorg-commit/2007-February/010341.html
|
||||
Section "Device"
|
||||
Identifier "AMD Geode"
|
||||
Driver "geode"
|
||||
Option "OptionName" "value"
|
||||
...
|
||||
EndSection
|
||||
|
||||
Patches accomplishing the same trick for the Geode driver are welcome.
|
||||
The following options may be added to such a Device section:
|
||||
|
||||
= FAQ =
|
||||
5.1.COMMON OPTIONS
|
||||
|
||||
Q: Why doesn't screen rotation work?
|
||||
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)
|
||||
|
||||
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
|
||||
5.2.GX-SPECIFIC OPTIONS
|
||||
|
||||
Q: Why doesn't this GEODE driver work at WXGA (wide screen) resolutions?
|
||||
AccelMethod: "XAA" (default) or "EXA"
|
||||
PanelGeometry: Specify the geometry of the attached panel ("<width>x<height>")
|
||||
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?
|
||||
|
||||
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?
|
||||
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?
|
||||
|
||||
A: See http://www.x.org/wiki/Development/Documentation/ServerDebugging
|
||||
and follow the instructions.
|
||||
and follow the instructions found there.
|
||||
|
||||
Q: How do I test development snapshots from the upstream GIT repository?
|
||||
|
||||
A: Run the following commands from a command line interpreter shell...
|
||||
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
|
||||
@ -101,40 +166,27 @@ A: Run the following commands from a command line interpreter shell...
|
||||
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".
|
||||
and submit the patches to the Geode X.org mailing list or to Bugzilla
|
||||
against product "xorg" component "Driver/geode".
|
||||
|
||||
= Configuration options =
|
||||
7.PROJECT CONTACTS
|
||||
|
||||
You can specify the Geode driver in the normal fashion:
|
||||
Project homepage:
|
||||
http://www.x.org/wiki/GeodeDriver
|
||||
|
||||
Section "Device"
|
||||
Identifier "AMD Geode"
|
||||
Driver "geode"
|
||||
Option "blah" "blah"
|
||||
...
|
||||
EndSection
|
||||
Mailing list:
|
||||
http://lists.freedesktop.org/mailman/listinfo/xorg-driver-geode
|
||||
|
||||
The following options may be added to the section:
|
||||
Bug reports:
|
||||
https://bugs.freedesktop.org/enter_bug.cgi?product=xorg&component=Driver%2Fgeode
|
||||
|
||||
== Common options ==
|
||||
Code browser:
|
||||
http://cgit.freedesktop.org/xorg/driver/xf86-video-geode
|
||||
|
||||
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 a orientation to start with - LEFT, INVERT, CCW
|
||||
SWCursor: Enable software cursors (essentially disabling HW cursor support)
|
||||
Code repository:
|
||||
git://anongit.freedesktop.org/git/xorg/driver/xf86-video-geode
|
||||
|
||||
== GX-specific options ==
|
||||
IRC channel:
|
||||
#geode on the Freenode network.
|
||||
|
||||
AccelMethod: "XAA" (default) or "EXA"
|
||||
PanelGeometry: Specify the geometry of the attached panel ("<width>x<height>")
|
||||
OSMImageBuffers: Set the number of image buffers (XAA only)
|
||||
OSMColorExpBuffers: Set the number of color expansion buffers (XAA only)
|
||||
|
||||
== LX-specific options ==
|
||||
|
||||
ExaScratch: Specify the amount of extra EXA scratch buffer (in bytes)
|
||||
|
||||
= EOF =
|
||||
.EOF.
|
||||
|
10262
driver/xf86-video-geode/aclocal.m4
vendored
10262
driver/xf86-video-geode/aclocal.m4
vendored
File diff suppressed because it is too large
Load Diff
@ -2,24 +2,15 @@
|
||||
|
||||
#include "xorg-server.h"
|
||||
|
||||
/* Define to 1 if you have the declaration of `amd64', and to 0 if you don't.
|
||||
*/
|
||||
#undef HAVE_DECL_AMD64
|
||||
|
||||
/* Define to 1 if you have the declaration of `_LP64', and to 0 if you don't.
|
||||
*/
|
||||
#undef HAVE_DECL__LP64
|
||||
|
||||
/* Define to 1 if you have the declaration of `__amd64__', and to 0 if you
|
||||
don't. */
|
||||
#undef HAVE_DECL___AMD64__
|
||||
|
||||
/* Define to 1 if you have the <dlfcn.h> header file. */
|
||||
#undef HAVE_DLFCN_H
|
||||
|
||||
/* Define to 1 if you have the <inttypes.h> header file. */
|
||||
#undef HAVE_INTTYPES_H
|
||||
|
||||
/* Define to 1 if you have the <linux/videodev2.h> header file. */
|
||||
#undef HAVE_LINUX_VIDEODEV2_H
|
||||
|
||||
/* Define to 1 if you have the <memory.h> header file. */
|
||||
#undef HAVE_MEMORY_H
|
||||
|
||||
@ -47,6 +38,10 @@
|
||||
/* xextproto 7.1 available */
|
||||
#undef HAVE_XEXTPROTO_71
|
||||
|
||||
/* Define to the sub-directory in which libtool stores uninstalled libraries.
|
||||
*/
|
||||
#undef LT_OBJDIR
|
||||
|
||||
/* Name of package */
|
||||
#undef PACKAGE
|
||||
|
||||
|
30632
driver/xf86-video-geode/configure
vendored
30632
driver/xf86-video-geode/configure
vendored
File diff suppressed because it is too large
Load Diff
@ -20,81 +20,115 @@
|
||||
#
|
||||
# Process this file with autoconf to produce a configure script
|
||||
|
||||
# Initialize Autoconf
|
||||
AC_PREREQ(2.59)
|
||||
AC_INIT([xf86-video-geode],
|
||||
[2.11.12],
|
||||
[2.11.13],
|
||||
[https://bugs.freedesktop.org/enter_bug.cgi?product=xorg&component=Driver%2Fgeode],
|
||||
[xf86-video-geode],
|
||||
[http://www.x.org/wiki/GeodeDriver])
|
||||
|
||||
AC_CONFIG_SRCDIR([Makefile.am])
|
||||
AM_CONFIG_HEADER([config.h])
|
||||
AC_CONFIG_HEADERS([config.h])
|
||||
AC_CONFIG_AUX_DIR(.)
|
||||
|
||||
# Initialize Automake
|
||||
AM_INIT_AUTOMAKE([foreign dist-bzip2])
|
||||
AM_MAINTAINER_MODE
|
||||
|
||||
# Initialize libtool
|
||||
AC_DISABLE_STATIC
|
||||
AC_PROG_LIBTOOL
|
||||
|
||||
# Require xorg-macros: XORG_DEFAULT_OPTIONS
|
||||
m4_ifndef([XORG_MACROS_VERSION],
|
||||
[m4_fatal([must install xorg-macros 1.4 or later before running autoconf/autogen])])
|
||||
XORG_MACROS_VERSION(1.4)
|
||||
XORG_DEFAULT_OPTIONS
|
||||
|
||||
AM_INIT_AUTOMAKE([foreign dist-bzip2])
|
||||
|
||||
AM_MAINTAINER_MODE
|
||||
|
||||
# Checks for programs.
|
||||
AC_DISABLE_STATIC
|
||||
AC_PROG_LIBTOOL
|
||||
AC_PROG_CC
|
||||
AM_PROG_AS
|
||||
|
||||
AH_TOP([#include "xorg-server.h"])
|
||||
|
||||
# -----------------------------------------------------------------------------
|
||||
# Configuration options
|
||||
# -----------------------------------------------------------------------------
|
||||
# Define a configure option for an alternate input module directory
|
||||
AC_ARG_WITH(xorg-module-dir,
|
||||
AC_HELP_STRING([--with-xorg-module-dir=DIR],
|
||||
AS_HELP_STRING([--with-xorg-module-dir=DIR],
|
||||
[Default xorg module directory [[default=$libdir/xorg/modules]]]),
|
||||
[moduledir="$withval"],
|
||||
[moduledir="$libdir/xorg/modules"])
|
||||
AC_SUBST([moduledir])
|
||||
|
||||
# Define a configure option to enable/disable lcd panel support
|
||||
AC_ARG_ENABLE(geodegx-panel,
|
||||
AC_HELP_STRING([--disable-geodegx-panel],
|
||||
AS_HELP_STRING([--disable-geodegx-panel],
|
||||
[Disable support for flatpanels with the Geode GX]),
|
||||
[ ],
|
||||
[ AMD_CFLAGS="-DPNL_SUP $AMD_CFLAGS" ])
|
||||
[ PANEL_CPPFLAGS=-DPNL_SUP ])
|
||||
AC_SUBST(PANEL_CPPFLAGS)
|
||||
|
||||
AC_ARG_ENABLE(werror, AC_HELP_STRING([--enable-werror],
|
||||
[Treat warnings as errors (default: disabled)]),
|
||||
[WERROR=$enableval], [WERROR=no])
|
||||
AC_ARG_ENABLE(visibility,
|
||||
AC_HELP_STRING([--enable-visibility],
|
||||
[Enable GCC visibility optimizations]),
|
||||
[ AMD_CFLAGS="$AMD_CFLAGS -fvisibility=hidden" ],
|
||||
[ : ])
|
||||
# Define a configure option to enable/disable ztv
|
||||
AC_ARG_ENABLE(ztv,
|
||||
AS_HELP_STRING([--enable-ztv],
|
||||
[Enable Video For Linux based ZTV driver (default: auto-detected)]),
|
||||
[ztv=$enableval],
|
||||
[ztv=auto])
|
||||
|
||||
if test "x$GCC" = "xyes"; then
|
||||
GCC_WARNINGS1="-Wall -Wpointer-arith -Wstrict-prototypes"
|
||||
GCC_WARNINGS2="-Wmissing-prototypes -Wmissing-declarations"
|
||||
GCC_WARNINGS3="-Wnested-externs -fno-strict-aliasing"
|
||||
GCC_WARNINGS="$GCC_WARNINGS1 $GCC_WARNINGS2 $GCC_WARNINGS3"
|
||||
if test "x$WERROR" = "xyes"; then
|
||||
GCC_WARNINGS="${GCC_WARNINGS} -Werror"
|
||||
# Check for Video4Linux Version 2 (V4L2) availability
|
||||
AC_CHECK_HEADERS([linux/videodev2.h],[v4l2=yes],[v4l2=no])
|
||||
if test "x$ztv" != "xno" ; then
|
||||
if test "x$v4l2" = "xno" ; then
|
||||
if test "x$ztv" = "xyes" ; then
|
||||
# User really wants ztv but V4L2 is not found
|
||||
AC_MSG_ERROR([ZTV driver requested, but videodev2.h not found.])
|
||||
fi
|
||||
else
|
||||
BUILD_ZTV=yes
|
||||
fi
|
||||
AMD_CFLAGS="$GCC_WARNINGS $AMD_CFLAGS"
|
||||
fi
|
||||
AM_CONDITIONAL(BUILD_ZTV, [test "x$BUILD_ZTV" = xyes])
|
||||
|
||||
# Checks for extensions
|
||||
# Check if GCC supports compiling in 32 bit mode for 64 bit computers
|
||||
case $host_cpu in
|
||||
x86_64*|amd64*)
|
||||
if test "x$GCC" = xyes ; then
|
||||
SAVE_CFLAGS="$CFLAGS"
|
||||
CFLAGS="$CFLAGS -m32"
|
||||
AC_MSG_CHECKING([if $CC supports the -m32 Intel/AMD option])
|
||||
AC_COMPILE_IFELSE([AC_LANG_SOURCE([[
|
||||
#include <unistd.h>
|
||||
int
|
||||
main ()
|
||||
{
|
||||
;
|
||||
return 0;
|
||||
}]])],
|
||||
[m32_support=yes; M32_CFLAGS=-m32],
|
||||
[m32_support=no])
|
||||
AC_MSG_RESULT([$m32_support])
|
||||
CFLAGS="$SAVE_CFLAGS"
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
AC_SUBST([M32_CFLAGS])
|
||||
|
||||
# Store the list of server defined optional extensions in REQUIRED_MODULES
|
||||
XORG_DRIVER_CHECK_EXT(RANDR, randrproto)
|
||||
XORG_DRIVER_CHECK_EXT(RENDER, renderproto)
|
||||
XORG_DRIVER_CHECK_EXT(XV, videoproto)
|
||||
XORG_DRIVER_CHECK_EXT(DPMSExtension, xextproto)
|
||||
|
||||
# Checks for pkg-config packages
|
||||
# Obtain compiler/linker options for the Geode driver dependencies
|
||||
PKG_CHECK_MODULES(XORG, [xorg-server xproto fontsproto $REQUIRED_MODULES])
|
||||
PKG_CHECK_MODULES(XEXT, [xextproto >= 7.0.99.1],
|
||||
HAVE_XEXTPROTO_71="yes"; AC_DEFINE(HAVE_XEXTPROTO_71, 1, [xextproto 7.1 available]),
|
||||
HAVE_XEXTPROTO_71="no")
|
||||
AM_CONDITIONAL(HAVE_XEXTPROTO_71, [ test "$HAVE_XEXTPROTO_71" = "yes" ])
|
||||
|
||||
# Checks for libraries.
|
||||
# Checks for libpciaccess support.
|
||||
SAVE_CPPFLAGS="$CPPFLAGS"
|
||||
CPPFLAGS="$CPPFLAGS $XORG_CFLAGS"
|
||||
AC_CHECK_DECL(XSERVER_LIBPCIACCESS,
|
||||
@ -102,37 +136,13 @@ AC_CHECK_DECL(XSERVER_LIBPCIACCESS,
|
||||
[#include "xorg-server.h"])
|
||||
CPPFLAGS="$SAVE_CPPFLAGS"
|
||||
|
||||
# Checks for header files.
|
||||
AC_HEADER_STDC
|
||||
|
||||
if test "x$XSERVER_LIBPCIACCESS" = xyes; then
|
||||
PKG_CHECK_MODULES([PCIACCESS], [pciaccess >= 0.8.0])
|
||||
XORG_CFLAGS="$XORG_CFLAGS $PCIACCESS_CFLAGS"
|
||||
fi
|
||||
|
||||
AC_SUBST([XORG_CFLAGS])
|
||||
AC_SUBST([moduledir])
|
||||
AC_SUBST([AMD_CFLAGS])
|
||||
|
||||
is386=false
|
||||
|
||||
case $host_cpu in
|
||||
i*86)
|
||||
is386=true
|
||||
;;
|
||||
esac
|
||||
|
||||
# Unset is386 if compiling for AMD64/EM64T
|
||||
if test $is386 = true ; then
|
||||
AC_CHECK_DECLS([_LP64, __amd64__, amd64], [is386=false])
|
||||
fi
|
||||
|
||||
AM_CONDITIONAL([I386ARCH], [test $is386 = true])
|
||||
|
||||
DRIVER_NAME=geode
|
||||
AC_SUBST([DRIVER_NAME])
|
||||
|
||||
AC_OUTPUT([
|
||||
AC_CONFIG_FILES([
|
||||
Makefile
|
||||
src/Makefile
|
||||
])
|
||||
AC_OUTPUT
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -28,48 +28,46 @@ AM_CPPFLAGS = \
|
||||
-I$(top_srcdir)/src/cim \
|
||||
-I$(top_srcdir)/src/gfx \
|
||||
-I$(top_srcdir)/src/panel \
|
||||
-I$(top_srcdir)/linux_v26
|
||||
$(PANEL_CPPFLAGS) \
|
||||
-DHAVE_GX \
|
||||
-DHAVE_LX \
|
||||
-DOPT_ACCEL
|
||||
|
||||
# -DPNL_SUP is now provided by AMD_CFLAGS
|
||||
#
|
||||
AM_CFLAGS = @XORG_CFLAGS@ \
|
||||
-DHAVE_GX -DHAVE_LX -DOPT_ACCEL \
|
||||
-DLINUX_2_6 @AMD_CFLAGS@
|
||||
AM_CFLAGS = $(XORG_CFLAGS) $(CWARNFLAGS) $(M32_CFLAGS)
|
||||
|
||||
AM_CCASFLAGS = @XORG_CFLAGS@
|
||||
geode_drv_la_LTLIBRARIES = geode_drv.la
|
||||
geode_drv_la_LDFLAGS = -module -avoid-version
|
||||
geode_drv_ladir = @moduledir@/drivers
|
||||
geode_drv_ladir = $(moduledir)/drivers
|
||||
|
||||
geode_drv_la_SOURCES = \
|
||||
geode.h \
|
||||
geode_blend.h \
|
||||
geode_fourcc.h \
|
||||
cimarron.c \
|
||||
cim_dev.h \
|
||||
geode_driver.c \
|
||||
durango.c \
|
||||
geode_blend.h \
|
||||
geode_common.c \
|
||||
geode_dcon.c \
|
||||
geode_ddc.c \
|
||||
geode_driver.c \
|
||||
geode_fourcc.h \
|
||||
geode.h \
|
||||
geode_msr.c \
|
||||
gx_driver.c\
|
||||
geode_pcirename.h \
|
||||
gx_accel.c \
|
||||
gx_cursor.c \
|
||||
gx_video.c \
|
||||
gx_driver.c \
|
||||
gx_randr.c \
|
||||
gx_regacc.c \
|
||||
gx_rotate.c \
|
||||
gx_randr.c \
|
||||
durango.c \
|
||||
panel.c \
|
||||
lx_driver.c \
|
||||
gx_video.c \
|
||||
lx_cursor.c \
|
||||
lx_memory.c \
|
||||
lx_panel.c \
|
||||
lx_output.c \
|
||||
lx_display.c \
|
||||
lx_video.c \
|
||||
lx_driver.c \
|
||||
lx_exa.c \
|
||||
cimarron.c \
|
||||
geode_pcirename.h
|
||||
lx_memory.c \
|
||||
lx_output.c \
|
||||
lx_panel.c \
|
||||
lx_video.c \
|
||||
panel.c
|
||||
|
||||
EXTRA_DIST = \
|
||||
cim/cim_defs.h \
|
||||
|
@ -81,12 +81,12 @@ am__installdirs = "$(DESTDIR)$(geode_drv_ladir)"
|
||||
geode_drv_laLTLIBRARIES_INSTALL = $(INSTALL)
|
||||
LTLIBRARIES = $(geode_drv_la_LTLIBRARIES)
|
||||
geode_drv_la_LIBADD =
|
||||
am_geode_drv_la_OBJECTS = geode_driver.lo geode_common.lo \
|
||||
geode_dcon.lo geode_ddc.lo geode_msr.lo gx_driver.lo \
|
||||
gx_accel.lo gx_cursor.lo gx_video.lo gx_regacc.lo gx_rotate.lo \
|
||||
gx_randr.lo durango.lo panel.lo lx_driver.lo lx_cursor.lo \
|
||||
lx_memory.lo lx_panel.lo lx_output.lo lx_display.lo \
|
||||
lx_video.lo lx_exa.lo cimarron.lo
|
||||
am_geode_drv_la_OBJECTS = cimarron.lo durango.lo geode_common.lo \
|
||||
geode_dcon.lo geode_ddc.lo geode_driver.lo geode_msr.lo \
|
||||
gx_accel.lo gx_cursor.lo gx_driver.lo gx_randr.lo gx_regacc.lo \
|
||||
gx_rotate.lo gx_video.lo lx_cursor.lo lx_display.lo \
|
||||
lx_driver.lo lx_exa.lo lx_memory.lo lx_output.lo lx_panel.lo \
|
||||
lx_video.lo panel.lo
|
||||
geode_drv_la_OBJECTS = $(am_geode_drv_la_OBJECTS)
|
||||
DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir)
|
||||
depcomp = $(SHELL) $(top_srcdir)/depcomp
|
||||
@ -109,7 +109,6 @@ ADMIN_MAN_DIR = @ADMIN_MAN_DIR@
|
||||
ADMIN_MAN_SUFFIX = @ADMIN_MAN_SUFFIX@
|
||||
AMDEP_FALSE = @AMDEP_FALSE@
|
||||
AMDEP_TRUE = @AMDEP_TRUE@
|
||||
AMD_CFLAGS = @AMD_CFLAGS@
|
||||
AMTAR = @AMTAR@
|
||||
AM_DEFAULT_VERBOSITY = @AM_DEFAULT_VERBOSITY@
|
||||
APP_MAN_DIR = @APP_MAN_DIR@
|
||||
@ -119,69 +118,70 @@ AUTOCONF = @AUTOCONF@
|
||||
AUTOHEADER = @AUTOHEADER@
|
||||
AUTOMAKE = @AUTOMAKE@
|
||||
AWK = @AWK@
|
||||
BASE_CFLAGS = @BASE_CFLAGS@
|
||||
BUILD_ZTV_FALSE = @BUILD_ZTV_FALSE@
|
||||
BUILD_ZTV_TRUE = @BUILD_ZTV_TRUE@
|
||||
CC = @CC@
|
||||
CCAS = @CCAS@
|
||||
CCASFLAGS = @CCASFLAGS@
|
||||
CCDEPMODE = @CCDEPMODE@
|
||||
CFLAGS = @CFLAGS@
|
||||
CHANGELOG_CMD = @CHANGELOG_CMD@
|
||||
CPP = @CPP@
|
||||
CPPFLAGS = @CPPFLAGS@
|
||||
CWARNFLAGS = @CWARNFLAGS@
|
||||
CXX = @CXX@
|
||||
CXXCPP = @CXXCPP@
|
||||
CXXDEPMODE = @CXXDEPMODE@
|
||||
CXXFLAGS = @CXXFLAGS@
|
||||
CYGPATH_W = @CYGPATH_W@
|
||||
DEFS = @DEFS@
|
||||
DEPDIR = @DEPDIR@
|
||||
DLLTOOL = @DLLTOOL@
|
||||
DRIVER_MAN_DIR = @DRIVER_MAN_DIR@
|
||||
DRIVER_MAN_SUFFIX = @DRIVER_MAN_SUFFIX@
|
||||
DRIVER_NAME = @DRIVER_NAME@
|
||||
DSYMUTIL = @DSYMUTIL@
|
||||
ECHO = @ECHO@
|
||||
DUMPBIN = @DUMPBIN@
|
||||
ECHO_C = @ECHO_C@
|
||||
ECHO_N = @ECHO_N@
|
||||
ECHO_T = @ECHO_T@
|
||||
EGREP = @EGREP@
|
||||
EXEEXT = @EXEEXT@
|
||||
F77 = @F77@
|
||||
FFLAGS = @FFLAGS@
|
||||
FGREP = @FGREP@
|
||||
FILE_MAN_DIR = @FILE_MAN_DIR@
|
||||
FILE_MAN_SUFFIX = @FILE_MAN_SUFFIX@
|
||||
GREP = @GREP@
|
||||
HAVE_XEXTPROTO_71_FALSE = @HAVE_XEXTPROTO_71_FALSE@
|
||||
HAVE_XEXTPROTO_71_TRUE = @HAVE_XEXTPROTO_71_TRUE@
|
||||
I386ARCH_FALSE = @I386ARCH_FALSE@
|
||||
I386ARCH_TRUE = @I386ARCH_TRUE@
|
||||
INSTALL_CMD = @INSTALL_CMD@
|
||||
INSTALL_DATA = @INSTALL_DATA@
|
||||
INSTALL_PROGRAM = @INSTALL_PROGRAM@
|
||||
INSTALL_SCRIPT = @INSTALL_SCRIPT@
|
||||
INSTALL_STRIP_PROGRAM = @INSTALL_STRIP_PROGRAM@
|
||||
LD = @LD@
|
||||
LDFLAGS = @LDFLAGS@
|
||||
LIBOBJS = @LIBOBJS@
|
||||
LIBS = @LIBS@
|
||||
LIBTOOL = @LIBTOOL@
|
||||
LIB_MAN_DIR = @LIB_MAN_DIR@
|
||||
LIB_MAN_SUFFIX = @LIB_MAN_SUFFIX@
|
||||
LIPO = @LIPO@
|
||||
LN_S = @LN_S@
|
||||
LTLIBOBJS = @LTLIBOBJS@
|
||||
M32_CFLAGS = @M32_CFLAGS@
|
||||
MAINT = @MAINT@
|
||||
MAINTAINER_MODE_FALSE = @MAINTAINER_MODE_FALSE@
|
||||
MAINTAINER_MODE_TRUE = @MAINTAINER_MODE_TRUE@
|
||||
MAKEINFO = @MAKEINFO@
|
||||
MANIFEST_TOOL = @MANIFEST_TOOL@
|
||||
MAN_SUBSTS = @MAN_SUBSTS@
|
||||
MISC_MAN_DIR = @MISC_MAN_DIR@
|
||||
MISC_MAN_SUFFIX = @MISC_MAN_SUFFIX@
|
||||
NM = @NM@
|
||||
NMEDIT = @NMEDIT@
|
||||
OBJDUMP = @OBJDUMP@
|
||||
OBJEXT = @OBJEXT@
|
||||
OTOOL = @OTOOL@
|
||||
OTOOL64 = @OTOOL64@
|
||||
PACKAGE = @PACKAGE@
|
||||
PACKAGE_BUGREPORT = @PACKAGE_BUGREPORT@
|
||||
PACKAGE_NAME = @PACKAGE_NAME@
|
||||
PACKAGE_STRING = @PACKAGE_STRING@
|
||||
PACKAGE_TARNAME = @PACKAGE_TARNAME@
|
||||
PACKAGE_VERSION = @PACKAGE_VERSION@
|
||||
PANEL_CPPFLAGS = @PANEL_CPPFLAGS@
|
||||
PATH_SEPARATOR = @PATH_SEPARATOR@
|
||||
PCIACCESS_CFLAGS = @PCIACCESS_CFLAGS@
|
||||
PCIACCESS_LIBS = @PCIACCESS_LIBS@
|
||||
@ -198,13 +198,11 @@ XEXT_LIBS = @XEXT_LIBS@
|
||||
XORG_CFLAGS = @XORG_CFLAGS@
|
||||
XORG_LIBS = @XORG_LIBS@
|
||||
XORG_MAN_PAGE = @XORG_MAN_PAGE@
|
||||
ac_ct_AR = @ac_ct_AR@
|
||||
ac_ct_CC = @ac_ct_CC@
|
||||
ac_ct_CXX = @ac_ct_CXX@
|
||||
ac_ct_F77 = @ac_ct_F77@
|
||||
ac_ct_DUMPBIN = @ac_ct_DUMPBIN@
|
||||
am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
|
||||
am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
|
||||
am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
|
||||
am__fastdepCXX_TRUE = @am__fastdepCXX_TRUE@
|
||||
am__include = @am__include@
|
||||
am__leading_dot = @am__leading_dot@
|
||||
am__quote = @am__quote@
|
||||
@ -250,48 +248,44 @@ AM_CPPFLAGS = \
|
||||
-I$(top_srcdir)/src/cim \
|
||||
-I$(top_srcdir)/src/gfx \
|
||||
-I$(top_srcdir)/src/panel \
|
||||
-I$(top_srcdir)/linux_v26
|
||||
$(PANEL_CPPFLAGS) \
|
||||
-DHAVE_GX \
|
||||
-DHAVE_LX \
|
||||
-DOPT_ACCEL
|
||||
|
||||
|
||||
# -DPNL_SUP is now provided by AMD_CFLAGS
|
||||
#
|
||||
AM_CFLAGS = @XORG_CFLAGS@ \
|
||||
-DHAVE_GX -DHAVE_LX -DOPT_ACCEL \
|
||||
-DLINUX_2_6 @AMD_CFLAGS@
|
||||
|
||||
AM_CCASFLAGS = @XORG_CFLAGS@
|
||||
AM_CFLAGS = $(XORG_CFLAGS) $(CWARNFLAGS) $(M32_CFLAGS)
|
||||
geode_drv_la_LTLIBRARIES = geode_drv.la
|
||||
geode_drv_la_LDFLAGS = -module -avoid-version
|
||||
geode_drv_ladir = @moduledir@/drivers
|
||||
geode_drv_ladir = $(moduledir)/drivers
|
||||
geode_drv_la_SOURCES = \
|
||||
geode.h \
|
||||
geode_blend.h \
|
||||
geode_fourcc.h \
|
||||
cimarron.c \
|
||||
cim_dev.h \
|
||||
geode_driver.c \
|
||||
durango.c \
|
||||
geode_blend.h \
|
||||
geode_common.c \
|
||||
geode_dcon.c \
|
||||
geode_ddc.c \
|
||||
geode_driver.c \
|
||||
geode_fourcc.h \
|
||||
geode.h \
|
||||
geode_msr.c \
|
||||
gx_driver.c\
|
||||
geode_pcirename.h \
|
||||
gx_accel.c \
|
||||
gx_cursor.c \
|
||||
gx_video.c \
|
||||
gx_driver.c \
|
||||
gx_randr.c \
|
||||
gx_regacc.c \
|
||||
gx_rotate.c \
|
||||
gx_randr.c \
|
||||
durango.c \
|
||||
panel.c \
|
||||
lx_driver.c \
|
||||
gx_video.c \
|
||||
lx_cursor.c \
|
||||
lx_memory.c \
|
||||
lx_panel.c \
|
||||
lx_output.c \
|
||||
lx_display.c \
|
||||
lx_video.c \
|
||||
lx_driver.c \
|
||||
lx_exa.c \
|
||||
cimarron.c \
|
||||
geode_pcirename.h
|
||||
lx_memory.c \
|
||||
lx_output.c \
|
||||
lx_panel.c \
|
||||
lx_video.c \
|
||||
panel.c
|
||||
|
||||
EXTRA_DIST = \
|
||||
cim/cim_defs.h \
|
||||
|
@ -32,8 +32,6 @@
|
||||
#include "config.h"
|
||||
#endif
|
||||
|
||||
#define _LARGEFILE64_SOURCE
|
||||
|
||||
#include <unistd.h>
|
||||
#include <errno.h>
|
||||
#include <compiler.h>
|
||||
|
@ -101,9 +101,14 @@ DCONDPMSSet(ScrnInfoPtr pScrni, int mode)
|
||||
break;
|
||||
}
|
||||
|
||||
write(fd, value, sizeof(value));
|
||||
ret = write(fd, value, sizeof(value));
|
||||
close(fd);
|
||||
|
||||
if (ret < 0) {
|
||||
failed = 1;
|
||||
return 0;
|
||||
}
|
||||
|
||||
return 1;
|
||||
}
|
||||
|
||||
|
@ -7,7 +7,10 @@
|
||||
#endif
|
||||
|
||||
#include <errno.h>
|
||||
#include <fcntl.h>
|
||||
#ifdef HAVE_CONFIG_H
|
||||
#include "config.h"
|
||||
#endif
|
||||
|
||||
#include <stdio.h>
|
||||
#include <unistd.h>
|
||||
|
||||
@ -65,7 +68,7 @@ GeodeReadMSR(unsigned long addr, unsigned long *lo, unsigned long *hi)
|
||||
if (fd == -1)
|
||||
return -1;
|
||||
|
||||
ret = lseek64(fd, (off64_t) addr, SEEK_SET);
|
||||
ret = lseek(fd, (off_t) addr, SEEK_SET);
|
||||
|
||||
if (ret == -1)
|
||||
return -1;
|
||||
@ -103,7 +106,7 @@ GeodeWriteMSR(unsigned long addr, unsigned long lo, unsigned long hi)
|
||||
if (fd == -1)
|
||||
return -1;
|
||||
|
||||
if (lseek64(fd, (off64_t) addr, SEEK_SET) == -1)
|
||||
if (lseek(fd, (off_t) addr, SEEK_SET) == -1)
|
||||
return -1;
|
||||
|
||||
data[0] = lo;
|
||||
|
@ -426,7 +426,7 @@ GXPreInit(ScrnInfoPtr pScrni, int flags)
|
||||
return FALSE;
|
||||
#endif
|
||||
|
||||
pGeode = pScrni->driverPrivate = xnfcalloc(sizeof(GeodeRec), 1);
|
||||
pGeode = pScrni->driverPrivate = xnfcalloc(1, sizeof(GeodeRec));
|
||||
|
||||
if (pGeode == NULL)
|
||||
return FALSE;
|
||||
@ -445,9 +445,11 @@ GXPreInit(ScrnInfoPtr pScrni, int flags)
|
||||
if (pGeode->useVGA) {
|
||||
if (!xf86LoadSubModule(pScrni, "vgahw") || !vgaHWGetHWRec(pScrni))
|
||||
pGeode->useVGA = FALSE;
|
||||
else
|
||||
vgaHWSetStdFuncs(VGAHWPTR(pScrni));
|
||||
|
||||
#if INT10_SUPPORT
|
||||
pGeode->vesa = calloc(sizeof(VESARec), 1);
|
||||
pGeode->vesa = calloc(1, sizeof(VESARec));
|
||||
#endif
|
||||
}
|
||||
|
||||
@ -649,7 +651,7 @@ GXPreInit(ScrnInfoPtr pScrni, int flags)
|
||||
else
|
||||
pScrni->videoRam = pGeode->pEnt->device->videoRam;
|
||||
|
||||
GeodeClockRange = (ClockRangePtr) xnfcalloc(sizeof(ClockRange), 1);
|
||||
GeodeClockRange = (ClockRangePtr) xnfcalloc(1, sizeof(ClockRange));
|
||||
GeodeClockRange->next = NULL;
|
||||
GeodeClockRange->minClock = 25175;
|
||||
GeodeClockRange->maxClock = 229500;
|
||||
@ -1259,11 +1261,11 @@ GXScreenInit(int scrnIndex, ScreenPtr pScrn, int argc, char **argv)
|
||||
}
|
||||
} else {
|
||||
pGeode->AccelImageWriteBuffers =
|
||||
calloc(sizeof(pGeode->AccelImageWriteBuffers[0]),
|
||||
pGeode->NoOfImgBuffers);
|
||||
calloc(pGeode->NoOfImgBuffers,
|
||||
sizeof(pGeode->AccelImageWriteBuffers[0]));
|
||||
pGeode->AccelColorExpandBuffers =
|
||||
calloc(sizeof(pGeode->AccelColorExpandBuffers[0]),
|
||||
pGeode->NoOfColorExpandLines);
|
||||
calloc(pGeode->NoOfColorExpandLines,
|
||||
sizeof(pGeode->AccelColorExpandBuffers[0]));
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -353,7 +353,7 @@ GXRandRInit(ScreenPtr pScreen, int rotation)
|
||||
return FALSE;
|
||||
#endif
|
||||
|
||||
pRandr = calloc(sizeof(XF86RandRInfoRec), 1);
|
||||
pRandr = calloc(1, sizeof(XF86RandRInfoRec));
|
||||
if (pRandr == NULL)
|
||||
return FALSE;
|
||||
|
||||
|
@ -354,10 +354,11 @@ lx_crtc_gamma_set(xf86CrtcPtr crtc, CARD16 * red, CARD16 * green,
|
||||
*/
|
||||
|
||||
for (i = 0; i < 256; i++) {
|
||||
unsigned int val;
|
||||
(*red) &= 0xff00;
|
||||
(*green) &= 0xff00;
|
||||
(*blue) &= 0xff00;
|
||||
unsigned int val = (*(red++) << 8) | *(green++) | (*(blue++) >> 8);
|
||||
val = (*(red++) << 8) | *(green++) | (*(blue++) >> 8);
|
||||
|
||||
df_set_video_palette_entry(i, val);
|
||||
}
|
||||
@ -577,7 +578,7 @@ LXSetupCrtc(ScrnInfoPtr pScrni)
|
||||
return;
|
||||
}
|
||||
|
||||
lxpriv = xnfcalloc(sizeof(LXCrtcPrivateRec), 1);
|
||||
lxpriv = xnfcalloc(1, sizeof(LXCrtcPrivateRec));
|
||||
|
||||
if (!lxpriv) {
|
||||
xf86CrtcDestroy(crtc);
|
||||
|
@ -300,7 +300,7 @@ LXPreInit(ScrnInfoPtr pScrni, int flags)
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
pGeode = pScrni->driverPrivate = xnfcalloc(sizeof(GeodeRec), 1);
|
||||
pGeode = pScrni->driverPrivate = xnfcalloc(1, sizeof(GeodeRec));
|
||||
|
||||
if (pGeode == NULL)
|
||||
return FALSE;
|
||||
@ -312,8 +312,10 @@ LXPreInit(ScrnInfoPtr pScrni, int flags)
|
||||
if (pGeode->useVGA) {
|
||||
if (!xf86LoadSubModule(pScrni, "vgahw") || !vgaHWGetHWRec(pScrni))
|
||||
pGeode->useVGA = FALSE;
|
||||
else
|
||||
vgaHWSetStdFuncs(VGAHWPTR(pScrni));
|
||||
|
||||
pGeode->vesa = calloc(sizeof(VESARec), 1);
|
||||
pGeode->vesa = calloc(1, sizeof(VESARec));
|
||||
}
|
||||
|
||||
cim_rdmsr = LXReadMSR;
|
||||
|
@ -48,6 +48,19 @@
|
||||
#define F(x) IntToxFixed(x)
|
||||
#define I(x) xFixedToInt(x)
|
||||
|
||||
#define GEODE_TRACE_FALL 0
|
||||
|
||||
#if GEODE_TRACE_FALL
|
||||
#define GEODE_FALLBACK(x) \
|
||||
do { \
|
||||
ErrorF("%s: ", __FUNCTION__); \
|
||||
ErrorF x; \
|
||||
return FALSE; \
|
||||
} while (0)
|
||||
#else
|
||||
#define GEODE_FALLBACK(x) return FALSE
|
||||
#endif
|
||||
|
||||
static const struct exa_format_t
|
||||
{
|
||||
int exa;
|
||||
@ -532,10 +545,8 @@ lx_check_composite(int op, PicturePtr pSrc, PicturePtr pMsk, PicturePtr pDst)
|
||||
GeodeRec *pGeode = GEODEPTR_FROM_PICTURE(pDst);
|
||||
const struct exa_format_t *srcFmt, *dstFmt;
|
||||
|
||||
/* Check that the operation is supported */
|
||||
|
||||
if (op > PictOpAdd)
|
||||
return FALSE;
|
||||
GEODE_FALLBACK(("Operation %d is not supported\n", op));
|
||||
|
||||
/* FIXME: Meet this conditions from the debug for PictOpAdd.
|
||||
* Any Other possibilities? Add a judge for the future supplement */
|
||||
@ -551,15 +562,13 @@ lx_check_composite(int op, PicturePtr pSrc, PicturePtr pMsk, PicturePtr pDst)
|
||||
pDst->format == PICT_a8 && !pMsk)
|
||||
return TRUE;
|
||||
|
||||
/* We need the off-screen buffer to do the multipass work */
|
||||
|
||||
if (usesPasses(op)) {
|
||||
if (pGeode->exaBfrOffset == 0 || !pMsk)
|
||||
return FALSE;
|
||||
GEODE_FALLBACK(("Multipass operation requires off-screen buffer\n"));
|
||||
}
|
||||
|
||||
if (pMsk && op == PictOpAdd)
|
||||
return FALSE;
|
||||
GEODE_FALLBACK(("PictOpAdd with mask is not supported\n"));
|
||||
|
||||
/* Check that the filter matches what we support */
|
||||
|
||||
@ -571,17 +580,15 @@ lx_check_composite(int op, PicturePtr pSrc, PicturePtr pMsk, PicturePtr pDst)
|
||||
break;
|
||||
|
||||
default:
|
||||
/* WE don't support bilinear or convolution filters */
|
||||
return FALSE;
|
||||
GEODE_FALLBACK(("Bilinear or convolution filters are not supported\n"));
|
||||
}
|
||||
|
||||
/* We don't support any mask transforms */
|
||||
if (pMsk && pMsk->transform)
|
||||
return FALSE;
|
||||
GEODE_FALLBACK(("Mask transforms are not supported\n"));
|
||||
|
||||
/* XXX - don't know if we can do any hwaccel on solid fills or gradient types */
|
||||
if (pSrc->pSourcePict || (pMsk && pMsk->pSourcePict))
|
||||
return FALSE;
|
||||
GEODE_FALLBACK(("Solid fills or gradient types are not supported\n"));
|
||||
|
||||
/* Keep an eye out for source rotation transforms - those we can
|
||||
* do something about */
|
||||
@ -590,13 +597,12 @@ lx_check_composite(int op, PicturePtr pSrc, PicturePtr pMsk, PicturePtr pDst)
|
||||
exaScratch.transform = NULL;
|
||||
|
||||
if (pSrc->transform && !lx_process_transform(pSrc))
|
||||
return FALSE;
|
||||
GEODE_FALLBACK(("Transform operation is non-trivial\n"));
|
||||
|
||||
/* XXX - I don't understand PICT_a8 enough - so I'm punting */
|
||||
|
||||
if ((op != PictOpAdd) && (pSrc->format == PICT_a8 ||
|
||||
pDst->format == PICT_a8))
|
||||
return FALSE;
|
||||
GEODE_FALLBACK(("PICT_a8 as src or dst format is unsupported\n"));
|
||||
|
||||
if (pMsk && op != PictOpClear) {
|
||||
struct blend_ops_t *opPtr = &lx_alpha_ops[op * 2];
|
||||
@ -605,21 +611,21 @@ lx_check_composite(int op, PicturePtr pSrc, PicturePtr pMsk, PicturePtr pDst)
|
||||
/* Direction 0 indicates src->dst, 1 indiates dst->src */
|
||||
if (((direction == 0) && (pSrc->pDrawable->bitsPerPixel < 16)) ||
|
||||
((direction == 1) && (pDst->pDrawable->bitsPerPixel < 16))) {
|
||||
ErrorF("Can't do mask blending with less then 16bpp\n");
|
||||
ErrorF("Mask blending unsupported with <16bpp\n");
|
||||
return FALSE;
|
||||
}
|
||||
/* We can only do masks with a 8bpp or a 4bpp mask */
|
||||
if (pMsk->format != PICT_a8 && pMsk->format != PICT_a4)
|
||||
return FALSE;
|
||||
GEODE_FALLBACK(("Masks can be only done with a 8bpp or 4bpp depth\n"));
|
||||
|
||||
/* The pSrc should be 1x1 pixel if the pMsk is not zero */
|
||||
if (pSrc->pDrawable->width != 1 || pSrc->pDrawable->height != 1)
|
||||
return FALSE;
|
||||
GEODE_FALLBACK(("pSrc should be 1x1 pixel if pMsk is not zero\n"));
|
||||
/* FIXME: In lx_prepare_composite, there are no variables to record the
|
||||
* one pixel source's width and height when the mask is not zero.
|
||||
* That will lead to bigger region to render instead of one pixel in lx
|
||||
* _do_composite, so we should fallback currently to avoid this */
|
||||
if (!pSrc->repeat)
|
||||
return FALSE;
|
||||
GEODE_FALLBACK(("FIXME: unzero mask might lead to bigger rendering region than 1x1 pixels\n"));
|
||||
}
|
||||
|
||||
/* Get the formats for the source and destination */
|
||||
@ -638,21 +644,19 @@ lx_check_composite(int op, PicturePtr pSrc, PicturePtr pMsk, PicturePtr pDst)
|
||||
/* If a mask is enabled, the alpha will come from there */
|
||||
|
||||
if (!pMsk && (!srcFmt->alphabits && usesSrcAlpha(op)))
|
||||
return FALSE;
|
||||
GEODE_FALLBACK(("Operation requires src alpha, but alphabits is unset\n"));
|
||||
|
||||
if (!pMsk && (!dstFmt->alphabits && usesDstAlpha(op)))
|
||||
return FALSE;
|
||||
GEODE_FALLBACK(("Operation requires dst alpha, but alphabits is unset\n"));
|
||||
|
||||
/* FIXME: See a way around this! */
|
||||
|
||||
if (srcFmt->alphabits == 0 && dstFmt->alphabits != 0)
|
||||
return FALSE;
|
||||
GEODE_FALLBACK(("src_alphabits=0, dst_alphabits!=0\n"));
|
||||
|
||||
/* If this is a rotate operation, then make sure the src and dst
|
||||
* formats are the same */
|
||||
|
||||
if (exaScratch.rotate != RR_Rotate_0 && srcFmt != dstFmt) {
|
||||
ErrorF("EXA: Can't rotate and convert formats at the same time\n");
|
||||
ErrorF("EXA: Unable to rotate and convert formats at the same time\n");
|
||||
return FALSE;
|
||||
}
|
||||
return TRUE;
|
||||
|
@ -190,7 +190,6 @@ IoCtl(int fd, unsigned int fn, void *arg, int flag)
|
||||
static void
|
||||
z4l_ovly_unmap(Z4lPortPrivRec * pPriv)
|
||||
{
|
||||
#ifdef LINUX_2_6
|
||||
int i, nbfrs;
|
||||
|
||||
nbfrs = pPriv->nbfrs;
|
||||
@ -200,12 +199,6 @@ z4l_ovly_unmap(Z4lPortPrivRec * pPriv)
|
||||
pPriv->bfrs[i].start = NULL;
|
||||
}
|
||||
}
|
||||
#else
|
||||
if (pPriv->bfrs[0].start != NULL) {
|
||||
munmap((void *)pPriv->bfrs[0].start, pPriv->bufsz);
|
||||
pPriv->bfrs[0].start = NULL;
|
||||
}
|
||||
#endif
|
||||
pPriv->nbfrs = -1;
|
||||
pPriv->bufsz = -1;
|
||||
pPriv->last = -1;
|
||||
@ -252,27 +245,12 @@ z4l_ovly_map(Z4lPortPrivRec * pPriv, int dir)
|
||||
pPriv->bufsz = bsz;
|
||||
}
|
||||
|
||||
#ifdef LINUX_2_6
|
||||
for (i = 0; i < pPriv->nbfrs; ++i) {
|
||||
pPriv->bfrs[i].start = mmap(NULL, bfr.length, PROT_READ | PROT_WRITE,
|
||||
MAP_SHARED, fd, pPriv->bfrs[i].offset);
|
||||
if (pPriv->bfrs[i].start == MAP_FAILED)
|
||||
goto xit;
|
||||
}
|
||||
#else
|
||||
pPriv->bfrs[0].offset = 0;
|
||||
pPriv->bfrs[0].start =
|
||||
mmap(NULL, pPriv->bufsz, PROT_READ | PROT_WRITE, MAP_SHARED, fd, 0);
|
||||
|
||||
if (pPriv->bfrs[0].start == MAP_FAILED) {
|
||||
pPriv->bfrs[0].start = NULL;
|
||||
goto xit;
|
||||
}
|
||||
|
||||
offset = (unsigned long)pPriv->bfrs[0].start;
|
||||
for (i = 1; i < pPriv->nbfrs; ++i)
|
||||
pPriv->bfrs[i].start = (void *)(offset + pPriv->bfrs[i].offset);
|
||||
#endif
|
||||
|
||||
for (i = 0; i < pPriv->nbfrs; ++i) {
|
||||
DBLOG(3, "bfr %d ofs %#lx adr %p sz %lu\n", i, pPriv->bfrs[i].offset,
|
||||
|
Loading…
Reference in New Issue
Block a user