Commit Graph

2618 Commits

Author SHA1 Message Date
Tiago Vignatti
113e66a1ff xfree86: remove unused PCI header
Signed-off-by: Tiago Vignatti <tiago.vignatti@nokia.com>
2009-08-18 12:19:34 +03:00
Aaron Zang
48ee555833 Add new VT support for OpenSolaris & future Solaris releases
Signed-off-by: Aaron Zang <Aaron.Zang@Sun.COM>
Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>
2009-08-13 21:56:06 -07:00
Alan Coopersmith
613e76ff90 Remove support for Solaris x86 releases older than Solaris 8
If you want to run a pre-1999 kernel, you'll need a pre-2009 X server

[Some pre-Solaris 8 VT support is left by this patch to allow reuse by
 the new Solaris VT support that follows in the next patch.]

Signed-off-by: Aaron Zang <Aaron.Zang@Sun.COM>
Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>
2009-08-13 21:56:05 -07:00
Matt Turner
8ce4fde76f Fix build on Alpha 2009-08-12 14:45:13 -04:00
Dave Airlie
e94c7c42ce parser: make libxf86config_internal.la not installed. 2009-08-07 13:36:52 +10:00
Dave Airlie
5fb188b547 ddx: fix xf86Config.a generation
We were generating a shared library, but this lib is foobar, the parser
requires some symbols from the X server or from the program its being linked
into. If the program its being linked into (say a python .so) has symbol
visibility enabled then it will fail to dynamic link, also if this .so has
symbol visiblity enabled it will fail to dynamic link.

Screw it go back to a .a file really unless someone cleans it up properly.

Signed-off-by: Dave Airlie <airlied@redhat.com>
2009-08-07 12:05:51 +10:00
Tiago Vignatti
8c0085c715 xfree86: remove more RAC junky
Signed-off-by: Tiago Vignatti <tiago.vignatti@nokia.com>
2009-08-05 22:52:35 +03:00
Tiago Vignatti
444723273a xfree86: reorganize pci code
- xf86PciVideoInfo doesn't need to be global
- remove unused macros

Signed-off-by: Tiago Vignatti <tiago.vignatti@nokia.com>
2009-08-05 22:48:02 +03:00
Tiago Vignatti
20169414e1 xfree86: remove unused functions
RAC trash.

Signed-off-by: Tiago Vignatti <tiago.vignatti@nokia.com>
2009-08-05 22:44:19 +03:00
Michel Dänzer
842373104d Add support for RENDER BGRA formats. 2009-08-04 23:23:21 +02:00
Alan Coopersmith
0bf7eaf305 Ansify function arguments in VTsw_noop.c
Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>
2009-08-03 23:16:17 -07:00
Alan Coopersmith
5da9b255a6 Fix blddir != srcdir builds of solaris-*.il files
Fixes http://bugs.freedesktop.org/show_bug.cgi?id=17509

Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>
2009-08-03 19:54:57 -07:00
Oliver McFadden
b83c682e7e xf86Xinput: xf86PostButtonEventP must set POINTER_ACCELERATE for relative events.
Thanks to Peter Hutterer for spotting this bug.
2009-08-03 02:50:01 +03:00
Oliver McFadden
8da0ff2d51 xf86Xinput: Add the xf86Post(Proximity|Button|Key)EventP helper functions.
xf86PostKeyboardEvent also makes use of xf86PostKeyEventP to avoid code
duplication, and the valuator verification has been split into the
XI_VERIFY_VALUATORS macro.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-07-30 08:43:13 +10:00
Peter Hutterer
4e9b2938cd include: untangle events.h from the SDK headers.
InternalEvents shouldn't be used anywhere outside the X server itself. Split
up into events.h for opaque typedefs for the events needed by various
headers and eventstr.h for the actual struct definitions.

eventstr.h must only be included by code that requires internal events and
is not part of the SDK.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-07-30 08:43:13 +10:00
Tiago Vignatti
52e9ef5664 xfree86: remove some RAC junk
Signed-off-by: Tiago Vignatti <tiago.vignatti@nokia.com>
2009-07-28 19:04:59 +03:00
Tiago Vignatti
d57361bb9a doc: remove outdated PCI/RAC/Domain notes
Signed-off-by: Tiago Vignatti <tiago.vignatti@nokia.com>
2009-07-28 18:56:40 +03:00
Tiago Vignatti
7b3d05ebd5 xfree86: remove pci debug macros
there's no effect when their are enabled.

Signed-off-by: Tiago Vignatti <tiago.vignatti@nokia.com>
2009-07-28 18:45:16 +03:00
Tiago Vignatti
6089d9cfde xfree86: remove RAC/resource doc
Signed-off-by: Tiago Vignatti <tiago.vignatti@nokia.com>
2009-07-28 18:29:35 +03:00
Tiago Vignatti
c553161e17 xfree86: delete devices probe code (-probe and -probeonly options)
Inside a windowing system, it's not the place to probe for devices. Goodbye
-probe and -probeonly.

Signed-off-by: Tiago Vignatti <tiago.vignatti@nokia.com>
2009-07-28 18:20:22 +03:00
Tiago Vignatti
c09779f95a xfree86: delete stupid video driver dump (-modalias option)
Such stupid and ugly way to dump PCI information! Oh boy... Anyway, this
doesn't belong to the X server at all. Go away!

Signed-off-by: Tiago Vignatti <tiago.vignatti@nokia.com>
2009-07-28 18:20:18 +03:00
Dave Airlie
8898203b0d sbus: fixup for rac removal 2009-07-28 19:35:37 +10:00
Dave Airlie
4b42448a23 xserver: remove RAC/resource handling code.
This changes the ABI, but since the video ABI is at 6 already
it should be fine.

driver changes are in the pipeline after this.

Signed-off-by: Dave Airlie <airlied@redhat.com>
2009-07-28 15:14:28 +10:00
Dave Airlie
0a168401c4 pci: add support for pci is boot vga call.
This allows us to ask the kernel for the boot VGA device
instead of nasty guessing.
2009-07-28 14:19:24 +10:00
Tiago Vignatti
1e1dbd1e46 xfree86: "Staticize" functions in xf86AutoConfig.c
Signed-off-by: Tiago Vignatti <tiago.vignatti@nokia.com>
2009-07-24 13:25:42 +03:00
Michel Dänzer
9dc8106ba0 randr12: Add compatibility for XF86VidMode gamma ramps.
Fixes screensaver fadeout effects.

Also make all RandR 1.2 compatibility code for XF86VidMode operate only on the
CRTC associated with the compatibility output, not all CRTCs at once.
2009-07-21 14:34:47 +02:00
Adam Jackson
a98acb2907 s/xf86EnableOutputs/xf86CollectEnabledOutputs/ for clarity 2009-07-17 15:23:39 -04:00
Adam Jackson
8fab7f72f2 randr: Add Option "Primary" to Monitor sections 2009-07-17 15:23:30 -04:00
Adam Jackson
053bb92145 xfree86: Remove xf86SetPriority
GetClocks is pretty doomed to begin with, this really isn't going to
make it worse.
2009-07-17 15:03:57 -04:00
Adam Jackson
3637945a45 loader: Remove a useless check. 2009-07-17 15:03:57 -04:00
Adam Jackson
ef2bb08c76 loader: remove dead LoaderCheckUnresolved 2009-07-17 15:03:57 -04:00
Adam Jackson
06a2784232 loader: Remove useless TestFree() macro 2009-07-17 15:03:57 -04:00
Adam Jackson
087745b809 fbdevhw: Remove pointless OS check, this never gets built on non-Linux 2009-07-17 15:03:56 -04:00
Adam Jackson
892c93553a fbdevhw: Remove a #if 0 2009-07-17 15:03:56 -04:00
Adam Jackson
e5712f2926 fbdevhw: simplify some #if 1 2009-07-17 15:03:56 -04:00
Adam Jackson
8868bb4131 randr: Un-duplicate the reduced blanking check. 2009-07-17 15:03:56 -04:00
Adam Jackson
453ee39bc6 xfree86: Fix some misleading comments 2009-07-17 15:03:56 -04:00
Adam Jackson
2c57a7aa07 xfree86: Remove some #if 0
This code all lives in xf86Modes.c now anyway
2009-07-17 15:03:56 -04:00
Adam Jackson
1a8c89683f xfree86: Remove TargetRefresh option
This was a vestige from the days before we'd make the mode list from the
EDID data, and from CRT technology when you could reasonably assume that
higher refresh rates were better.  Also it did not function as advertised,
acting as a high-pass filter instead of a band-pass.
2009-07-17 15:03:56 -04:00
Adam Jackson
0bb9a7e165 displayid: Implement mode decoding. 2009-07-17 14:48:55 -04:00
Adam Jackson
2f1a9c5baa ddc: s/xf86DDCMonitorSet/xf86EdidMonitorSet/
Since we need a second path for DisplayID.
2009-07-17 13:42:57 -04:00
Adam Jackson
d0cb4f5a91 ddc: Refactor root window property code 2009-07-17 13:42:54 -04:00
Adam Jackson
14103b7812 ddc: Don't try to publish a root window property for DisplayID 2009-07-17 13:33:13 -04:00
Adam Jackson
c302a5ff49 ddc: Skeleton for xf86DoDisplayID() 2009-07-17 13:33:13 -04:00
Adam Jackson
0b36f68efb ddc: mv xf86DDC.c ddc.c 2009-07-17 13:33:13 -04:00
Adam Jackson
8eb82168fc ddc: Give DisplayID a place to hang its hat 2009-07-17 13:33:12 -04:00
Adam Jackson
ace0fe09ae ddc: Yet more code motion 2009-07-17 13:33:12 -04:00
Adam Jackson
3a350688bb ddc: Code motion to eliminate forward decls 2009-07-17 13:33:12 -04:00
Adam Jackson
8797831f82 ddc: Update a comment. 2009-07-17 13:33:12 -04:00
Oliver McFadden
66eabbebaf Coverity Prevent: RESOURCE_LEAK in xf86CrtcSetInitialGamma 2009-07-16 18:50:22 +03:00
Oliver McFadden
464e8ad733 Coverity Prevent: NEGATIVE_RETURNS in fbdev_open_pci:
Event var_tested_neg: Variable "fd" tested NEGATIVE
At conditional (1): "fd != -1" taking false path
335  		    if (fd != -1) {

Event negative_returns: Tracked variable "fd" was passed to a negative sink.
347  		close(fd);
2009-07-16 17:53:35 +03:00
Peter Hutterer
d3f6b43a24 Update to xextproto 7.0.99.1.
xextproto had Xlib client headers moved into libXext.
Protocol header files are named fooproto.h, header files with constants
foo.h or fooconst.h where foo.h was already in use for client-side headers.
2009-07-15 17:00:05 +10:00
Tiago Vignatti
686e486730 xfree86: remove a bunch of unused pci headers
Signed-off-by: Tiago Vignatti <tiago.vignatti@nokia.com>
2009-07-14 17:11:13 +03:00
Peter Hutterer
ad508c93c2 xfree86: switch to byte counting functions
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-07-14 10:13:44 +10:00
Alan Coopersmith
78aedbe609 Fix int10 module build after typo in commit 2638e9899
Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>
2009-07-10 17:35:57 -07:00
Tiago Vignatti
2638e9899e configure: introduce --{enable,disable}-int10-module
Not all chipsets need to rely on the int10 scheme to do its daily work.

Well, the ideal would be to remove all int10 module from the server. I'll try
to provide some patches "soon" for this. Something like:
    http://cgit.freedesktop.org/~vignatti/libx86/

Signed-off-by: Tiago Vignatti <tiago.vignatti@nokia.com>
Acked-by: Oliver McFadden <oliver.mcfadden@nokia.com>
2009-07-10 16:36:51 +03:00
Tiago Vignatti
42d95a3853 configure: introduce --{enable,disable}-vbe
Not all drivers need this kind of access as well.

Signed-off-by: Tiago Vignatti <tiago.vignatti@nokia.com>
Acked-by: Oliver McFadden <oliver.mcfadden@nokia.com>
2009-07-10 16:36:32 +03:00
Tiago Vignatti
53d6493051 configure: introduce --{enable,disable}-vgahw
Not all drivers need this kind of access.

Signed-off-by: Tiago Vignatti <tiago.vignatti@nokia.com>
Acked-by: Oliver McFadden <oliver.mcfadden@nokia.com>
2009-07-10 16:36:01 +03:00
Tiago Vignatti
aafcae79d1 xfree86: remove unused vbe header file
Signed-off-by: Tiago Vignatti <tiago.vignatti@nokia.com>
Acked-by: Oliver McFadden <oliver.mcfadden@nokia.com>
2009-07-10 16:34:09 +03:00
Adam Jackson
e812103382 config: drop i810.
The driver assuredly no longer builds against 1.7.  Please don't feel
compelled to fix it.
2009-07-09 10:58:17 -04:00
Keith Packard
5aec727452 Remove old DRI2 buffer alloc/free interfaces
These old interfaces are no longer supported by the server, removing them
requires bumping the video driver ABI. Note that this is not guaranteed to
be the last change in ABI version 6.

Signed-off-by: Keith Packard <keithp@keithp.com>
Reviewed-by: Eric Anholt <eric@anholt.net>
2009-07-06 12:01:22 -07:00
Keith Packard
2e2c5b216c dri2: Preserve compatibility with 1.6 DRI2 API/ABI
The old DRI2 buffer allocation API wasn't great, but there's no reason to
make the server stop working with those drivers. This patch has the
X server adapting to the API provided by the driver, using the new API where
available and falling back to the old API as necessary. A warning will be
placed in the log file when the old API is in use.

Signed-off-by: Keith Packard <keithp@keithp.com>
2009-07-06 12:01:12 -07:00
Matthias Hopf
43ee8d2ead Unclaim PCI slot if driver probing fails.
Otherwise no subsequent driver will be able to claim this pci slot.
Example for this: fbdev tries to claim, but framebuffer device is not
available. Later on VESA cannot claim the device.
2009-07-06 18:38:26 +02:00
Peter Hutterer
b773b4e8e0 s/MAX_DEVICES/MAXDEVICES/ updates.
The number of input devices is MAXDEVICES, not MAX_DEVICES (f781a752e6)
Two comments updated to refer to MAXDEVICES.

MAX_FUNCS in sigio.c was set to 16 if MAX_DEVICES was undefined. If more
than 15 physical input devices were present, this could result in a
failure to install the SIGIO handler for any device above 15.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-07-06 12:58:39 +10:00
Peter Hutterer
97e29ffb5b xfree86: fix wrong IsMaster() check causing crashes.
Crashes caused by dereferencing NULL if the path was executed for a floating
slave device.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-07-03 09:56:37 +10:00
Felix Kuehling
3525d14056 Export symbols needed by the RandR implementation in fglrx
GIT change
http://cgit.freedesktop.org/xorg/xserver/commit/?id=45c8bd0fe54273039fdaa1eeeafb81b5774f2c75
changed the default symbol visibility of the Xserver. As a result 2 symbols
that are needed by the RandR 1.2/1.3 implementation in the fglrx driver are no
longer visible:

xf86configptr
xf86CursorScreenKey

We would like to get these two symbols _X_EXPORT'ed before Xserver 1.7 is
released. Otherwise it will be problematic for fglrx to support RandR 1.3 on
Xserver 1.7.

In the future, we may want to sync our RandR implementation to later versions
of the RandR implementation in hw/xfree86/modes. Therefore it would be nice if
all symbols used by the Xserver RandR implementation were _X_EXPORT'ed in the
future.
2009-06-30 20:07:30 -04:00
Adam Jackson
5c1afac5ee EDID: Fix timing class names to match the spec 2009-06-29 11:17:59 -04:00
Rémi Cardona
9480725af0 xfree86: DIST_SUBDIRS should not contain variables
This patch reverts a change done in commit
800d4ceb94 to add conditional XAA support

Signed-off-by: Rémi Cardona <remi@gentoo.org>
2009-06-24 10:15:33 +02:00
Tiago Vignatti
800d4ceb94 configure: Provide the --enable/disable-xaa option.
Acked-by: Daniel Stone <daniel@fooishbar.org>
2009-06-24 00:26:06 +03:00
Oliver McFadden
ce3d539ac6 xf86Config: Avoid attempting to load non-compiled modules.
Acked-by: Daniel Stone <daniel@fooishbar.org>
2009-06-24 00:25:39 +03:00
Michel Dänzer
df597709d7 dri2: Don't crash if pPriv is NULL. 2009-06-23 16:45:39 +02:00
Ben Skeggs
048697ccfa quirk: use first detailed timing as preferred for PEA prod 9003 (rh#492359)
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-06-23 15:55:25 +10:00
Adam Jackson
eb35402d0a pci: Dump vendor/devices ids in the printed device list 2009-06-19 12:42:07 -04:00
Søren Sandmann Pedersen
c733660428 Use pixman_version_string() instead of PIXMAN_VERSION_STRING
Pointed out by Julien Cristau.
2009-06-19 08:37:54 -04:00
Dave Airlie
aef6b904eb fbdev: make entity fail if PCI claimed already.
bad kitty fbdev, been shipping this in Fedora for a while now
2009-06-19 13:28:21 +10:00
Søren Sandmann Pedersen
d9b5e77a0e Print the current version of pixman. 2009-06-18 12:36:10 -04:00
Peter Hutterer
66089e9129 xfree86: fix SWCursor check in xf86CursorSetCursor.
Wrong check for inputInfo.pointer resulted in a SW cursor being rendered when
the pointer left the screen (in a Xinerama setup).
We must call the sprite rendering function if
- SW cursors are enabled, or
- The current device is not the VCP and not attached to the VCP.

Reported-by: Gordon Yuan <GordonYuan@viatech.com.cn>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-06-18 15:04:38 +10:00
Benjamin Close
14581afb47 xfree86: correctly define barriers for FreeBSD amd64
Previously when compiling on freebsd amd64 we'd end up at xi86
block (line 1315) which would define mem_barrier and write_mem_barrier
to be NOP's. Instead they should be valid, as per the linux amd64 setup.

This stops the hangs experienced by many when using the nv driver
which would hang due to out of order dma requests as noticed in
http://bugs.freedesktop.org/show_bug.cgi?id=3168

Signed-off-by: Benjamin Close <Benjamin.Close@clearchain.com>
2009-06-17 15:58:03 +09:30
Peter Hutterer
a30fef9956 input: Add labels to buttons and valuators - ABI_XINPUT_VERSION 7
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-06-18 14:41:47 +10:00
Peter Hutterer
4ddb002b68 xfree86: fix two compiler warnings in xf86vmode.c
xf86vmode.c:1578: warning: pointer targets in passing argument 1 of
‘SwapShorts’ differ in signedness
../../../../include/misc.h:231: note: expected ‘short int *’ but argument is
of type ‘CARD16 *’

xf86vmode.c:1543: warning: unused variable ‘i’

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-06-17 09:05:22 +10:00
Peter Hutterer
9d039ef504 xfree86: silence a few int10 compiler warnings.
'format ‘%#x’ expects type ‘unsigned int’, but argument 2 has type ‘CARD32’'
and similar.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-06-17 09:05:22 +10:00
Adam Jackson
fb882b3da1 EDID: Carp about 1.4 monitors with no preferred refresh rate
You would think, having finally tightened down the spec, that
monitor vendors would bother to implement what the spec actually
mandates.  You would be wrong.
2009-06-16 14:58:10 -04:00
Dave Airlie
0de58c88ab xfree86: move didLock assignment down to where the function pointer is valid.
crtc->funcs->lock is NULL, so it's no use calling it here. Move it down so
it's actually defined before we use it.

Introduced with 6f59a81600.

Tested-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-06-11 14:24:42 +10:00
Benjamin Defnet
6f59a81600 hw/xf86/modes: Set crtc mode/rotation/transform before calling set_mode_major
This moves code out of each implementation of set_mode_major and back into
the X server. The real feature here is that the transform is now available
in the crtc for use by either xf86CrtcRotate or whatever the driver wants to
do. Without this change, the transform was lost for drivers providing the
set_mode_major interface.

Note that users of this API will want to stop smashing the transformPresent
field, and could also stop setting mode/x/y/rotation for new enough X servers,
but there's no reason to make that change as it will break things when
running against older X servers.

Signed-off-by: Keith Packard <keithp@keithp.com>
Acked-by: Daniel Stone <daniel@fooishbar.org>
2009-06-09 16:23:38 -07:00
Adam Jackson
746e7b22e1 cvt: Allow multiple-of-60Hz refresh rates for reduced blanking.
Doing so generates the same timings as given in the DMT spec for
120Hz RB, so we should be set there.  Other rates might be legal
too but why push our luck.
2009-06-09 16:20:11 -04:00
Dave Airlie
b6c16fc7da crtc/gamma: check xf86_config is valid before using it.
If you have multiple cards, some that support randr 1.2 and some that don't
you can get a null dereference in here.

Signed-off-by: Dave Airlie <airlied@redhat.com>
2009-06-05 12:04:03 +10:00
Peter Hutterer
993daf0649 Merge branch 'master' into xi2 2009-06-04 15:11:36 +10:00
Adam Jackson
e1e8c7ddd7 s/MIN/min/, s/MAX/max/ (#2968) 2009-06-03 13:45:42 -04:00
Peter Hutterer
6de67d3206 Merge branch 'master' into xi2 2009-06-03 16:11:33 +10:00
Matthias Hopf
75795637c7 Revert "randr: Setting gamma: inverse logic looks more sane"
This reverts commit 79138eec1b.
2009-06-02 18:41:36 +02:00
Adam Jackson
71a83d68ab xfree86: Remove loader symbol list ABI stubs
These have been nops since 2006 and functionally void since 7.0.
2009-05-28 15:32:03 -04:00
Peter Hutterer
d7aef3f663 Merge branch 'master' into xi2
Conflicts:
	Xext/geext.c
	Xi/chdevcur.c
	Xi/extgrbdev.c
	Xi/xiproperty.c
	configure.ac
	dix/ptrveloc.c
	hw/xfree86/common/xf86Config.c
	mi/mipointer.h
	test/input.c
	xkb/xkb.c
2009-05-28 17:20:58 +10:00
Adam Jackson
2107becb0c xfree86: Remove unused (and useless) xf86{Add,Delete}ModuleInfo 2009-05-27 17:13:19 -04:00
Federico Mena Quintero
e08c6a0752 randr: bug #21554 - re-probe outputs when coming back from laptop unsuspend
Make xf86 RANDR wrap the EnterVT call chain, so it can re-probe the
outputs when a laptop comes back from suspend/unsuspend (actually, any
time that we enter our VT again).  The X server should then send RR*
events to clients, so they can cope with a monitor that was unplugged
while the laptop was suspended.

Signed-off-by: Federico Mena Quintero <federico@novell.com>
2009-05-27 15:57:29 -04:00
Matthieu Herrb
c70511931c fix typo in cabff9007 which led to an unintialized memory read and a crash. 2009-05-24 10:33:40 +02:00
Adam Jackson
99e22b86c5 EDID: Add modes from Established Timings III descriptor to mode pool
EDID 1.4, section 3.10.3.9
2009-05-22 13:27:16 -04:00
Peter Hutterer
eeffb83fea ABI_XINPUT_VERSION 6 2009-05-22 15:44:57 +10:00
Peter Hutterer
b12d302df8 Input: rename DeviceIntRec->isMaster to ->type.
isMaster is not enough as long as we differ between master pointers and
keyboard. With flexible device classes, the usual checks for whether a
master device is a pointer (currently check for ->button, ->valuators or
->key) do not work as an SD may post an event through a master and mess this
check up.

Example, a device with valuators but no buttons would remove the button
class from the VCP and thus result in the
IsPointerDevice(inputInfo.pointer) == FALSE.

This will become worse in the future when new device classes are introduced
that aren't provided in the current system (e.g. a switch class).

This patch replaces isMaster with "type", one of SLAVE, MASTER_POINTER and
MASTER_KEYBOARD. All checks for dev->isMaster are replaced with an
IsMaster(dev).
2009-05-22 15:44:50 +10:00
Peter Hutterer
cabff9007a xfree86: treat other drivers as mouse drivers in the config.
Historically, if no input device was referenced in the ServerLayout,
the server would pick the first "mouse" device found in the xorg.conf.
This patch gives evdev, synaptics, vmmouse and void the same status. If
there is a section in the config file using this driver - use it as the core
pointer.

Device selection is in driver-order, not in config-order. If a "mouse"
device is listed after a "synaptics" device, the "mouse" device gets
preference. This replicates the original behaviour.

This code only takes effect if AllowEmptyInput is off and there is no core
pointer in the server layout.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-05-22 12:24:21 +10:00
Adam Jackson
a2c5ee36b2 EDID: Be more cautious about finding vendor blocks.
Many old monitors zero-fill the detailed descriptors, so check for that
to avoid a useless warning like:

(WW) RADEON(0): Unknown vendor-specific block 0
2009-05-21 10:20:48 -04:00
Peter Hutterer
5b5e3fa277 xfree86: treat other drivers as mouse drivers in the config.
Historically, if no input device was referenced in the ServerLayout,
the server would pick the first "mouse" device found in the xorg.conf.
This patch gives evdev, synaptics, vmmouse and void the same status. If
there is a section in the config file using this driver - use it as the core
pointer.

Device selection is in driver-order, not in config-order. If a "mouse"
device is listed after a "synaptics" device, the "mouse" device gets
preference. This replicates the original behaviour.

This code only takes effect if AllowEmptyInput is off and there is no core
pointer in the server layout.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-05-21 11:59:16 +10:00
Matthias Hopf
79138eec1b randr: Setting gamma: inverse logic looks more sane 2009-05-20 12:43:24 +02:00
Peter Hutterer
47a89b1cba Xi: remove DeviceIsPointerType
This approach is broken anyway. DIPT only checked for the XInput type
"MOUSE" and the only user of this is xf86ActivateDevice when it sets the
Activate/DeactivateGrab functions.
Since synaptics and wacom set their own types, evdev only sets MOUSE for,
well, mice half the devices didn't have this set correctly anyway.

Instead, ActivatePointerGrab should be merged together with
ActivateKeyboardGrab.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-05-20 16:22:24 +10:00
Peter Hutterer
273890924b input: reduce the number of superfluous hierarchy events
There's only two reasons for hierarchy events:
- device is added, removed, etc. In this case we want to send the event as
  it happens.
- devices are added in a XIChangeDeviceHierarchy request. In this case we
  only want one event cumulating all changes.
2009-05-16 12:20:58 +10:00
Peter Hutterer
e3f296d91d xfree86: Remove superfluous ifdef DEBUG checks.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-05-16 12:20:57 +10:00
Peter Hutterer
2f6253376d xfree86: Remove superfluous ifdef DEBUG checks.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-05-16 12:01:23 +10:00
David Marx
94c5093c8b Solaris: Make sure non-inline versions of asm routines end with ret statements
Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>
2009-05-15 11:24:15 -07:00
Julien Cristau
2be5eecb4b xfree86: add edid quirk for Samsung Syncmaster 2333HD
It reports vertical size in cm in the detailed mode.
X.Org bug#21750 <http://bugs.freedesktop.org/show_bug.cgi?id=21750>

Reported-by: Peter Poklop <Peter.Poklop@gmx.at>
Signed-off-by: Julien Cristau <jcristau@debian.org>
2009-05-15 17:35:30 +02:00
Matt Turner
c1bbac2708 Fix mem_barrier() on Alpha
Some clean up (da086901c6) went a bit
too far and removed the needed mem_barrier macro on Alpha.

This re-adds it.
2009-05-14 16:03:04 -04:00
Julien Cristau
4cc33190ef xfree86: Add two __FreeBSD_kernel__ checks
Debian bug#525475 <http://bugs.debian.org/525475>

Reported-by: Petr Salinger <Petr.Salinger@seznam.cz>
Signed-off-by: Julien Cristau <jcristau@debian.org>
2009-05-14 17:03:11 +02:00
Adam Jackson
c66cf7b64c Update several of my and/or Red Hat's licenses to standard form. 2009-05-14 07:02:44 -04:00
Michel Dänzer
2c1190f888 randr12: Initialize and keep track of updates to VidMode extension gamma value.
This way clients querying the gamma value via the VidMode extension at least
get the last value set via the same, rather than always something bogus.

Signed-off-by: Michel Dänzer <daenzer@vmware.com>
2009-05-14 11:39:16 +02:00
Michel Dänzer
fc3ce861cd randr12: Fix calculation of gamma ramp values.
The reciprocal gamma value was missed in the first copy and this mistake was
propagated to the second one.

Signed-off-by: Michel Dänzer <daenzer@vmware.com>
2009-05-14 11:35:25 +02:00
Jerome Glisse
f250eea2e9 DRI2: update DRI2 private drawable width & height according to X drawable 2009-05-11 22:53:53 +02:00
Alan Coopersmith
b680bda34d Fix a couple off-by-one array boundary checks.
Error: Write outside array bounds at Xext/geext.c:406
        in function 'GEWindowSetMask' [Symbolic analysis]
       In array dereference of cli->nextSib[extension] with index 'extension'
       Array size is 128 elements (of 4 bytes each), index <= 128

Error: Buffer overflow at dix/events.c:592
	in function 'SetMaskForEvent' [Symbolic analysis]
       In array dereference of filters[deviceid] with index 'deviceid'
       Array size is 20 elements (of 512 bytes each), index >= 0 and index <= 20

Error: Read buffer overflow at hw/xfree86/loader/loader.c:226
	in function 'LoaderOpen' [Symbolic analysis]
       In array dereference of refCount[new_handle] with index 'new_handle'
       Array size is 256 elements (of 4 bytes each), index >= 1 and index <= 256

These bugs were found using the Parfait source code analysis tool.
For more information see http://research.sun.com/projects/parfait

Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>
Signed-off-by: Adam Jackson <ajax@redhat.com>
Acked-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-05-08 12:27:11 -07:00
Peter Hutterer
0d947aa8e8 xfree86: fix xf86PostMotionEventP type checking
We only put internal events into the queue now, so let's check for ET_Motion
rather than the MotionNotify.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-05-08 14:33:23 +10:00
Peter Hutterer
7ab5e9b97c xfree86: fix xf86PostMotionEventP type checking
We only put internal events into the queue now, so let's check for ET_Motion
rather than the MotionNotify.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-05-08 14:24:12 +10:00
Jesse Barnes
94648bb797 Don't prepare outputs & crtcs if set_mode_major is present
A driver with this hook will take care of preparing the outputs & crtcs,
so calling the prepare functions will just cause unnecessary flicker.

Fixes bug #21077
2009-05-04 15:38:22 -07:00
Ian Romanick
0d9d3f3e36 DRI2: Force allocation of real-front buffer for non-windows as well
For redirected rendering we end up with pixmaps (which the app thinks are
windows) that are double buffered.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Tested-by: Pierre Willenbrock <pierre@pirsoft.de>
2009-05-01 09:47:12 -07:00
Peter Hutterer
44044adc92 xfree86: print a message if NIDR fails due to AutoAddDevices off.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-05-01 09:07:39 +10:00
Eamon Walsh
57aff88c7d Fix most remaining deprecated resource lookups.
Callsites updated to use dixLookupResourceBy{Type,Class}.
TODO: Audit access modes to make sure they reflect the usage.
2009-04-29 01:04:37 -04:00
Peter Hutterer
737b49199a xfree86: restore default off for DontZap
Zapping is triggered by xkb these days, so note in the man page that it's the
Terminate_Server action. Since it's XKB, personal preferences towards or
against zapping should be achieved through xkb rulesets.
If Terminate_Server is not in the xkb actions, then we can't zap anyway and we
don't need a default of DontZap "on".

This patch restores the old meaning of DontZap - disallow zapping altogether,
regardless of XKB's current keymap.
Ideally, this patch should be accompanied by b0f64bdab00db652e in
xkeyboard-config.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-04-28 16:17:16 +10:00
Peter Hutterer
c2c515ead3 dix: remove all but main() from main.c
All other functions are pushed into where they seemed to fit.
main.c is now linked separately into libmain.a and linked in by the various
DDXs.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-04-28 16:03:56 +10:00
Peter Hutterer
987579c930 dix: remove all but main() from main.c
All other functions are pushed into where they seemed to fit.
main.c is now linked separately into libmain.a and linked in by the various
DDXs.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-04-28 15:57:14 +10:00
Alan Coopersmith
2a2a7fa685 Solaris: use <sys/agpgart.h> instead of stale copy in Xorg sources
Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>
2009-04-27 21:08:35 -07:00
Ian Romanick
ff6c7764c2 DRI2: Implement protocol for DRI2GetBuffersWithFormat
This change implements the protocol for DRI2GetBuffersWithFormat, but
the bulk of the differences are the changes to the extension / driver
interface to make this function work.  The old CreateBuffers and
DeleteBuffers routines are replaced with CreateBuffer and DeleteBuffer
(both singular).

This allows drivers to allocate buffers for a drawable one at a time.
As a result, 3D drivers can now allocate the (fake) front-buffer for a
window only when it is needed.  Since 3D drivers only ask for the
front-buffer on demand, the real front-buffer is always created.  This
allows CopyRegion impelemenations of SwapBuffers to continue working.
As with previous version of this code, if the client asks for the
front-buffer for a window, we instead give it the fake front-buffer.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
Reviewed-by: Kristian Høgsberg <krh@redhat.com>
2009-04-24 12:49:19 -07:00
Ian Romanick
28ddfc88d8 DRI2: Add interface for drivers to query DRI2 extension version
Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
2009-04-24 12:24:07 -07:00
Joel Bosveld
a1c98f7fa9 Correct fcntl(F_SETOWN) error check in non-Solaris sigio code
commit 64b7f96dca accidentally inverted the comparison, could
result in crashes on some systems later on.

Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>
2009-04-24 10:12:26 -07:00
Alan Coopersmith
64b7f96dca Add SIGIO/SIGPOLL support for Solaris
Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>
2009-04-24 00:23:52 -07:00
Alan Coopersmith
0c467b1f99 Add casts to generated entries in sdksyms.c to silence type mismatch warnings
Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>
2009-04-24 00:23:51 -07:00
Alan Coopersmith
7d0f7518c2 Fix byte swapping of XF86VidMode{Get,Set}GammaRamp
Fixes OpenSolaris Bug 8315:
Xorg segfaults when screensaver fades in cross-endian xdmcp session
<http://defect.opensolaris.org/bz/show_bug.cgi?id=8315>

Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>
2009-04-24 00:23:50 -07:00
Julien Cristau
0dfb97f15f Bug#21324: Add quirk for Iiyama Vision Master 450
Reported-by: Jeremy Henty <onepoint@starurchin.org>
Signed-off-by: Julien Cristau <jcristau@debian.org>
2009-04-22 20:02:38 +02:00
Ian Romanick
44227ef1b7 DRI2: Send the version the code actually supports
This prevents building an older server with a new dri2proto.h from
resulting in a DRI2 extension module that lies about the version it
supports.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
2009-04-20 20:58:56 -07:00
Adam Jackson
ad76656f88 randr: Accept gamma set requests from XF86VidMode clients too 2009-04-17 17:47:54 -04:00
Samuel Thibault
74d27c8b5b Fix build on hurd-i386
http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=523970
2009-04-15 15:49:25 +02:00
Dave Airlie
faf7dfa099 randr12: looking up these bits if randr isn't initialised is bad.
When xinerama is enabled we don't get randr protocol, but the
driver might still want randr internals
2009-04-15 18:39:55 +10:00
Ander Conselvan de Oliveira
efa31092d6 xfree86: Remove device from inputInfo.devices if ActivateDevice failed.
After the call to xf86ActivateDevice, the new device will be added to
inputInfo.devices. However, if the subsequent call to ActivateDevice
fails, the correponding InputInfoRec for the device is deleted but an
entry still remains in inputInfo.devices. This might lead to a server
crash later on (on InitAndStartDevices for instance) when the device
control proc would be called for an invalid device.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-04-15 12:17:57 +10:00
Peter Hutterer
d79bad0aa7 xfree86: don't synthesise a mouse section if synaptics devices are found.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-04-15 12:17:57 +10:00
Eric Anholt
f0543ae4ec Fix unused var warning from pci cleanups. 2009-04-14 10:35:44 -04:00
Ian Romanick
567cf67959 DRI2: Synchronize the contents of the real and fake front-buffers
Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
2009-04-10 12:00:36 -07:00
Ian Romanick
f1a995d149 DRI2: Do not send the real front buffer of a window to the client
Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
2009-04-10 12:00:36 -07:00
Ian Romanick
aa2928325f DRI2: Add fake front-buffer to request list for windows
If a front-buffer is requested for a window, add the fake front-buffer
to the list of requested buffers.

Signed-off-by: Ian Romanick <ian.d.romanick@intel.com>
2009-04-10 12:00:35 -07:00
Alan Coopersmith
a0b6a363dc Lift fatal signal handlers from DDX'es up to a common DIX implementation
Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>
2009-04-09 17:10:12 -07:00
Peter Hutterer
6b467bf879 xfree86: shut up compiler warnings - typecast to InternalEvent
Reported-by: Eric Anholt <eric@anholt.net>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-04-09 20:50:32 +10:00
Peter Hutterer
8a2a184da7 xfree86: fix use of uninitialized variable in DGAProcessPointerEvent.
Reported-by: Eric Anholt <eric@anholt.net>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-04-09 20:50:32 +10:00
Eamon Walsh
3a0ee199dc config: fix crash caused by strdup(NULL) 2009-04-09 02:29:28 -04:00
Alan Coopersmith
66539cc05d Don't leak default font path when appending built-ins
Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>
2009-04-07 10:08:56 -07:00
Adam Jackson
69e73e5ce0 config: Remove useless xf86conf{{m,c,re}alloc},free} macros 2009-04-06 17:56:49 -04:00
Adam Jackson
485946120a config: s/xf86configStrdup/strdup/ 2009-04-06 17:51:35 -04:00
Adam Jackson
aa6fbc2a36 Remove some OS/2 leftovers. 2009-04-06 10:58:47 -04:00
Julien Cristau
e1338d2714 xfree86: Remove unused DEFAULT_UNRESOLVED and DEFAULT_BEST_REFRESH macros 2009-04-04 23:47:36 +02:00
Adam Jackson
6574ab092f DPMS: Remove the defaultDPMS* variables 2009-04-03 18:22:20 -04:00
Adam Jackson
c1cf36ee29 DPMS: Simplify command line parsing 2009-04-03 18:22:20 -04:00
Adam Jackson
2d0a4fff79 DPMS: Remove unused DPMSGet() 2009-04-03 18:22:20 -04:00
Adam Jackson
a99b0ab918 DPMS: Fix cast abuse 2009-04-03 18:22:19 -04:00
Alan Coopersmith
1c101d75d4 Don't leak canonical module name and patterns if module is built-in
Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>
Acked-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-04-01 15:56:55 -07:00
Tormod Volden
b1dab580bd xfree86: edid quirk for Philips LCD LP154W01-TLAJ
This panel reports its vertical size in cm.

X.Org bug#21000 <http://bugs.freedesktop.org/show_bug.cgi?id=21000>

Signed-off-by: Tormod Volden <debian.tormod@gmail.com>
Signed-off-by: Julien Cristau <jcristau@debian.org>
2009-04-01 20:05:23 +02:00
Adam Jackson
7d94414cf4 input: Remove xf86ReloadInputDevs hack
We have input hotplug now, no need to fake it.
2009-04-01 09:42:06 -04:00
Adam Jackson
89887fadc9 APM: Don't carp if not available. 2009-03-31 15:09:57 -04:00
Adam Jackson
c74220b853 APM: Use general handlers, not input handlers.
Otherwise APM events get treated as input events, which messes up idle
time accounting and screensavers and such.  Not, we hope, that anyone
is using APM anymore.
2009-03-30 14:56:15 -04:00
Adam Jackson
8e7facfe30 config: Fall back to vesa for Intel Poulsbo. 2009-03-27 15:48:17 -04:00
Simon Thum
1a71862d33 dix/xfree86: simplified velocity approximation algorithm
Replace multi-stage filtering with simple linear velocity,
tracked several instances backwards. A heuristic ensures
only approximately linear motion is considered, so velocity
remains valid in any case. Numerical stability is much
better, and nothing changes to people who didn't tune the
advanced features of the previous algorithm.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-03-20 14:48:57 +10:00
Peter Hutterer
be6dc9023b xfree86: remove a superfluous assignment.
If dev is NULL, we don't have a VCP and that means we have other issues
anyway.
2009-03-16 13:29:07 +10:00
Adam Jackson
fc5e8dc4a2 Unexport xf86SetPriority 2009-03-13 14:00:37 -04:00
Ander Conselvan de Oliveira
544cd9e7b5 Honour Option "DPMS" "off" on xorg.conf
Signed-off-by: James Cloos <cloos@jhcloos.com>
2009-03-12 14:50:59 -04:00
Simon Thum
7abb72c5c7 xfree86: remove obsolete code
remove a few lines which redo part of the pointer acceleration
init. Properties is the way to go for them.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-03-12 11:03:29 +10:00
Matthias Hopf
cadf65a6e1 randr: Nuke broken set_origin shortcut
Shortcut is impossible to implement this way, because we don't know for sure
whether the crtc of an output has changed or not.
2009-03-10 15:49:49 +01:00
Winfried Grünewald
d1338a9480 [hw/xfree86] Fix StaticGray cmap.
Fix this bug report:

,----< from http://bugzilla.freedesktop.org/show_bug.cgi?id=20504 >
| Using the Visual StaticGray (8 bit depth) is missing one gray level.
| The gray level of index zero and index one are the same and all
| other levels are shifted by one. The max level (255) cannot be used.
`----

Signed-off-by: James Cloos <cloos@jhcloos.com>
2009-03-06 12:59:35 -05:00
Tomas Carnecky
57bed76e21 Remove dead EXTENSION_PROC_ARGS define
Signed-off-by: Tomas Carnecky <tom@dbservice.com>
2009-03-04 10:29:34 -05:00
Tomas Carnecky
a6fb9f4ccf Remove dead XTest code from extmod
Signed-off-by: Tomas Carnecky <tom@dbservice.com>
2009-03-04 10:27:30 -05:00
Topi Kanerva
c4081fee09 Make DGA optional. 2009-03-04 10:23:10 -05:00
Peter Hutterer
d84a2f855d xfree86: Add linebreak to two debug statements.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-03-03 16:53:11 +10:00
Adam Jackson
8a6ed44a8b randr: Fix thinko in xf86TargetPreferred
The only-one-output case would only work right if that also happened to
be the zeroth output.  Oops.
2009-03-02 14:26:23 -05:00
Adam Jackson
8c6b4a8276 DDC: Redo extended device probe slightly.
We'll now only mention the E-EDID segment register if the device is
actually E-EDID-capable.  While we're here, check for DDC/CI and
standard EEPROM support too.
2009-02-27 12:45:19 -05:00
Michel Dänzer
de022f8e63 Revert "EXA: Handle separate alpha maps properly in Composite fallback."
This reverts commit 170cf1270d.

Conflicts:

	exa/exa_render.c
2009-02-27 16:37:27 +01:00
Jon TURNEY
d0dd649035 Remove references to rgb.txt from files section of Xserver and Xorg man pages
The references to this file in the server code were removed in commit dda10c9066

Signed-off-by: Jon TURNEY <jon.turney@dronecode.org.uk>
2009-02-27 14:42:59 +00:00
Keith Packard
c090f5514d Pre-clip panning coordinates to keep crtc within panning region
There is a separate panning region check, but that doesn't work under
transformation, so just pre-clip the mouse coordinates when computing the
panning offsets. This leaves the case where panning constants are changing
unresolved.

Signed-off-by: Keith Packard <keithp@keithp.com>
2009-02-25 10:14:36 -08:00
Michel Dänzer
170cf1270d EXA: Handle separate alpha maps properly in Composite fallback.
Fixes https://bugs.freedesktop.org/show_bug.cgi?id=18710 .

As this can't work without new EXA_PREPARE_AUX* indices, this requires a major
version bump, so we can also drop the UploadToScratch driver hook and
ExaOffscreenSwap*(). So this also fixes
http://bugs.freedesktop.org/show_bug.cgi?id=20213 .

Moreover, introduce EXA_DRIVER_KNOWN_MAJOR to break compilation of drivers
which may not be able to handle EXA_PREPARE_AUX*, giving instructions how to
make them build again in the #error message.

Signed-off-by: Michel Dänzer <daenzer@vmware.com>
2009-02-24 09:22:09 +01:00
Michel Dänzer
ef320bdd5e DRI1: Make DRICreateDrawable return TRUE for pixmaps.
GLX_EXT_texture_from_pixmap was broken since commit
a26c77ff43 ('glx: fix retval checks when failures
occur for drawable creation.')

Signed-off-by: Michel Dänzer <daenzer@vmware.com>
2009-02-23 16:52:51 +01:00
Adam Tkac
1df6716281 xfree86: don't try to UnInit virtual devices in DIDR. (#20087)
DeleteInputDeviceRequest function doesn't handle "virtual" devices well.
TightVNC libvnc.so module to X (which makes bare Xorg VNC capable) uses such
kind of devices.

Bare Xvnc (it is something like Xvfb) simply uses AddInputDevice &
RegisterDevice functions. Xvnc uses DeleteInputDeviceRequest from Xi/stubs.c
so everything works fine (now I see that DeleteInputDeviceRequest in
Xi/stubs.c should call RemoveDevice function, shouldn't it? :) )

Situation is quite different when you use libvnc.so module. It uses same
schema as Xvnc, so it simply calls AddInputDevice & RegisterDevice. Thus
device is created correctly. When server is terminated it calls
DeleteInputDeviceRequest (now from hw/xfree86/common/xf86Xinput.c) for each
device. Here is the difference - Xvnc calls DeleteInputDeviceRequest from
Xi/stubs.c as I wrote above. Thus Xorg gets sigsegv because "VNC" devices
don't have real input driver.

X.Org Bug 20087 <http://bugs.freedesktop.org/show_bug.cgi?id=20087>

[This isn't really a fix (libVNC should behave correctly) but not crashing the
server sounds like an improvement.]
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-02-23 18:54:56 +10:00
Peter Hutterer
47f136ed6f mi: change custom handlers to internal events
This should re-enable DGA, but XQuartz needs to be changed to internal events
too now.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-02-23 17:52:40 +10:00
Peter Hutterer
a371853698 dix: Deliver{Grabbed|Focused|Device}Events API changed to InternalEvents.
With the API change, we can now purge the XI conversion from POE.

Note: this commit breaks DGA even more.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-02-23 17:52:39 +10:00
Peter Hutterer
8829d966a6 Xi: support InternalEvents in UpdateDeviceState, parts of POE and EnqueueEvent
Note that this breaks DGA. Life is tough.

EnqueueEvent is a somewhat half-baked solution, we immediately drop back into
XI and store them. But it should in theory work.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>

Don't let the dcce be random data.
2009-02-23 17:52:39 +10:00
Alan Coopersmith
ab61033700 Add Extensions section to xorg.conf man page
Extensions section was added in X11R6.8.0 and documented in the release notes:
   http://www.x.org/archive/X11R6.8.0/doc/RELNOTES2.html#3
but never made it into the man page.

Also fix a bonus typo.

Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>
2009-02-20 16:11:38 -08:00
Alan Coopersmith
e0a451eb7c Obsolete InputDevices keyword in xorg.conf Files section
Was only used to provide a list of input devices that XF86-Misc could use,
now that XF86-Misc is gone, was parsed and logged, then completely ignored.

(Depends on previous patch that introduces OBSOLETE_TOKEN in parser to
 make obsolete keywords like InputDevices & RgbPath be non-fatal errors.)

Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>
Acked-by: Adam Jackson <ajax@redhat.com>
2009-02-18 14:50:25 -08:00
Alan Coopersmith
d2cf562bba Make RgbPath keyword in xorg.conf a non-fatal error
Xorg shouldn't refuse to run just because the user has an xorg.conf that
had the previously-used RgbPath keyword in it.

Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>
Acked-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-02-18 14:49:23 -08:00
Keith Packard
5394b7e662 Eliminate the shadow clear on transform change
When the crtc transformation changes, the entire crtc must be repainted.
This was being done by clearing the shadow and then painting the rectangle
containing the screen image; the clear being required as the screen image
may not fill the crtc. When changing the transform rapidly, this leads to
flashing. Eliminate the clear by painting the entire crtc instead of just
the screen rectangle.

Signed-off-by: Keith Packard <keithp@keithp.com>
2009-02-17 11:09:08 -08:00
Keith Packard
76f18b94bd Add XkbDir to Files config file section
The XKB base directory was not configuable through the config file.

Signed-off-by: Keith Packard <keithp@keithp.com>
2009-02-17 11:01:15 -08:00
Chris Ball
a932744d98 Build fix, remove export of pciBusAddrToHostAddr
a9d7d659.. (PCI: Remove pciBusAddrToHostAddr and associated nonsense)
removes pciBusAddrToHostAddr(), but not its prototype, resulting in:

./.libs/libxorg.a(sdksyms.o):(.data.rel+0xe64): undefined reference to
`pciBusAddrToHostAddr'

Signed-off-by: Chris Ball <cjb@laptop.org>
2009-02-16 18:29:33 -05:00
Julien Cristau
ab331aa76f xfree86: ModeDebug is a boolean, not a string
Signed-off-by: Julien Cristau <jcristau@debian.org>
2009-02-16 23:08:09 +01:00
Adam Jackson
a9d7d659a0 PCI: Remove pciBusAddrToHostAddr and associated nonsense
This was all a glorified no-op.  We rely on pciaccess to create device
maps anyway, so we should have no reason to care about what the host
address is.

Acked-by: Ian Romanick <ian.d.romanick at intel.com>
Signed-off-by: Adam Jackson <ajax@redhat.com>
2009-02-16 16:46:39 -05:00
Adam Jackson
be8c3d4022 Linux: Remove dead USE_DEV_FB #ifdefs 2009-02-16 16:44:55 -05:00
David Nusinow
6198373ff2 xorg.conf (5) refer to mousedrv (4). Debian #394058
Signed-off-by: Julien Cristau <jcristau@debian.org>
2009-02-16 15:05:38 +01:00
Chris Ball
45e14f5153 Build fix for xf86EdidModes.c
Commit 20ac314.. forgets to declare hsize/vsize/refresh.
2009-02-13 20:32:02 -05:00
Adam Jackson
ae68be3126 Input: Don't re-block SIGIO in xf86SigioReadInput()
It's already blocked on the way in, because we asked for it to be
blocked at sigaction() time.
2009-02-13 17:25:32 -05:00
Adam Jackson
20ac3140ce EDID: Hack for 1366x768 in standard timing descriptors
All you get for standard timing descriptors is horizontal size in
multiples of 8 pixels (which means you can't say 1366) and height in
terms of aspect ratio (which means you can't say 768).  You'd like to
just fuzzy-match this by walking the DMT list for sufficiently close
modes, but you can't because DMT is useless and only defines a 1360x768
mode, because it's _also_ specified in terms of character cells despite
providing pixel exact timings.  Neither can you use CVT or GTF to
generate the timings, because they _also_ believe that modes have to be
a multiple of 8 pixels.

You'd also hope you could find a timing definition for this in CEA, but
you can't because CEA only defines transmission formats that actually
exist.  So there's 480p, 720p, and 1080p, but no 768p.  And why would
there be, after all, the encoded signal is never 768p so obviously no
one would ever make a display in that format.

So instead, make a CVT mode since that's likely to be handled well by
just about everything, smash the horizontal active down by 2, and shift
the sync pulse by 1.  Underscanning the hard way.

Pass the suicide.
2009-02-13 15:12:06 -05:00
Adam Jackson
bcafdfbed6 RANDR: Validate entire mode list for interlace and doublescan
Otherwise drivers have to refuse interlace twice: once in the output
config, and once in ->valid_mode() to catch output and config modes.
If you can't do interlaced modes, asking nicely for it in the config
isn't going to suddenly make it work.
2009-02-13 14:06:07 -05:00
Alan Coopersmith
ac470dfb4f Check for and report errors writing xorg.conf.new from Xorg -configure
Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>
2009-02-12 18:34:22 -08:00
Alan Coopersmith
bd713794ce Correct error message if specified config file is not found
By making the "Unable to open config file" header a warning, it was
not appearing with the filename when a config file was specified and
not found.   Now we make it an error message again, but only issue
the error if a filename was specified - if none was specified, then
we don't even issue a warning, just the "Using autoconfig" info message.

Signed-off-by: Alan Coopersmith <alan.coopersmith@sun.com>
2009-02-12 18:23:59 -08:00
Eric Anholt
619c4d60eb glx: Replace broken GLX visual setup with a fixed "all" mode.
With trying to match depths so that you didn't end up with a depth 24
fbconfig for the 32-bit composite visual, I broke the alpha bits on the depth
24 X visual, which angered other applications.  But in fixing that, the
pickFBconfigs code for "minimal" also could end up breaking GLX visuals if
the same FBconfig was chosen for more than one X visual.
We have no reason to not expose as many visuals as possible, but the old
"all" mode didn't match any existing X visuals to GLX visuals, so normal
GL apps didn't work at all.

Instead, replace it with a simple combination of the two modes: Create GLX
visuals by picking unique FBconfigs with as many features as possible for
each X visual in order.  Then, for all remaining FBconfigs that are
appropriate for display, add a corresponding X and GLX visual.

This gets all applications (even ones that aren't smart enough to do FBconfigs)
get all the options to get the visual configuration they want.  The only
potential downside is that the composite ARGB visual is unique and gets a
nearly full-featured GLX visual (except that the root visual might have taken
the tastiest FBconfig), which means that a dumb compositing manager could
waste resources. Write compositing managers using FBconfigs instead, please.
2009-02-10 17:59:03 -08:00
Matt Turner
da086901c6 Remove unused barrier macros on alpha. 2009-02-06 18:31:12 -05:00
Adam Jackson
db83671519 Revert "Bus: Remove xf86SetAccessFuncs() and related machinery"
This reverts commit 2fe79990e3.

Reminder: nvidia uses this, because other parts of RAC are broken in
worse ways, and it needs to disable that.
2009-02-04 23:27:32 -05:00
Adam Jackson
2fe79990e3 Bus: Remove xf86SetAccessFuncs() and related machinery
Only mga was using this, and even then only behind an ifdef that no one
ever built.  Not a great idea in the first place.
2009-02-04 22:49:37 -05:00
Adam Jackson
9ff6180161 Bus: Delete some obfuscatory macros 2009-02-04 22:49:33 -05:00
Adam Jackson
8eca37cb89 Bus: Remove unused xf86ExtractTypeFromList 2009-02-04 22:48:52 -05:00
Adam Jackson
b013111e98 Bus: make the resource list static. 2009-02-04 22:47:54 -05:00
Adam Jackson
bde028dd8d loader: Remove icache flushes on alpha.
If libdl doesn't already get this right for you, you have two problems.
2009-02-04 22:44:20 -05:00
Adam Jackson
910a1e88d2 loader: Remove a vestige of archive support 2009-02-04 22:44:16 -05:00
Adam Jackson
366f23c6eb loader: Remove useless call to LoaderGetOS
We know what OS you're running on anyway, it's printed in the uname
string at the top of the log.
2009-02-04 22:44:12 -05:00
Adam Jackson
05e415a5a3 loader: Simplify loader magic 2009-02-04 22:44:06 -05:00
Adam Jackson
bf1ca06a16 loader: Make a comment slightly less stupid 2009-02-04 22:44:01 -05:00
Adam Jackson
499908aeca loader: code motion. 2009-02-04 22:43:57 -05:00
Adam Jackson
28b6b1519c loader: Simplify handle allocation and refcounting. 2009-02-04 22:43:52 -05:00
Keith Packard
7968823cbc Handle the combination of panning and crtc transforms
This patch gets the shadow scanout buffer repainted on panning area changes.
It does not, however, track the mouse correctly.

Signed-off-by: Keith Packard <keithp@keithp.com>
2009-02-03 20:21:07 -08:00
Keith Packard
763df9eec7 Damage re-used shadow scanout buffer using new transforms.
When the shadow scanout buffer can be re-used, the underlying framebuffer
area must be damaged so that the scanout will be repainted. This patch
delays the addition of that damaged area until after the transform in the
crtc has been updated, otherwise the old transform would have been used and
the wrong area repainted.

Signed-off-by: Keith Packard <keithp@keithp.com>
2009-02-03 20:21:02 -08:00
Tomas Carnecky
7a3ddef3bc fbdevHWGetRec() doesn't return the private data
Signed-off-by: Tomas Carnecky <tom@dbservice.com>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-02-04 09:53:03 +10:00
Tomas Carnecky
9f60d127b5 Fix "warning: braces around scalar initializer"
Signed-off-by: Tomas Carnecky <tom@dbservice.com>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-02-04 09:45:03 +10:00
Tomas Carnecky
731a907ac2 Fix "warning: XXX defined but not used"
generic.c:80: warning: ‘read_legacy_video_BIOS’ defined but not used

Signed-off-by: Tomas Carnecky <tom@dbservice.com>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-02-04 09:41:40 +10:00
Tomas Carnecky
bc57efffe6 Fix "warning: unused variable XXX"
events.c:4614: warning: unused variable ‘kbd’
xkbUtils.c:361: warning: unused variable ‘maxKeysPerMod’
xf86Events.c:409: warning: unused variable ‘ke’
generic.c:131: warning: unused variable ‘cs’
generic.c:130: warning: unused variable ‘size’
xf86RandR12.c:591: warning: unused variable ‘crtc’

Signed-off-by: Tomas Carnecky <tom@dbservice.com>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-02-04 09:41:25 +10:00
Aaron Plattner
01879e583b Don't enable XAA offscreen pixmaps with Option "XaaOffscreenPixmaps" "no".
xf86IsOptionSet is rarely the right function to use for boolean options because
it returns TRUE whenever the option is present, even if its value is "no",
"off", "0", etc.
2009-02-03 13:49:19 -08:00
Manuel Bouyer
0055fe66d5 netbsd: Force the use of ev56 instructions for register access on ev56.
This avoids 32-bit access which might affect other registers.  The linux code
uses gcc flags to get this to happen, but this seems like more of a sure thing.
2009-02-01 09:15:51 -08:00
Manuel Bouyer
1375c1b07d netbsd: Fix alpha ev6 support.
Bug #19721
2009-02-01 09:12:40 -08:00
Pierre Willenbrock
29b3b88dc7 Prevent double unref of glxdrawables
Found by valgrind. Bug #18917.
2009-02-01 09:06:43 -08:00
Eric Anholt
f716e3f344 modes: Protect xf86_crtc_supports_gamma() from non-RandR 1.2 drivers. 2009-01-30 20:10:21 -08:00
Keith Packard
ea309e4745 Make crtc_notify wrap/unwrap code do nothing unless mode code is inuse
Drivers not using the new hw/xfree86/modes code would crash in DRI due to
that code trying to monitor CRTC changes.

Signed-off-by: Keith Packard <keithp@keithp.com>
2009-01-30 14:19:41 -08:00
Keith Packard
fff00df94d Ignore EDID-supplied monitor physical sizes for core screen size
We report the EDID values in RandR, and we let people configure whatever
they like for the screen in xorg.conf. Reporting the EDID values in the core
means applications get inconsistent font sizes in the default configuration.

Signed-off-by: Keith Packard <keithp@keithp.com>
2009-01-30 14:16:12 -08:00
Matt Turner
15ac25627e Remove extra / from Loading module line
In the X log, upon module load, it prints a line similar to the following.

> (II) Loading /usr/lib64/xorg/modules/extensions//libdbe.so

The attached patch removes the extra / before the module name.

Code already exists in hw/xfree86/loader/loadmod.c:InitPathList to add a
trailing slash if needed, removing the one added by sprintf is harmless.

Signed-off-by: James Cloos <cloos@jhcloos.com>
2009-01-29 14:40:27 -05:00
Maarten Maathuis
3903e23153 XKB: ifdef XKB is dead, yet it was still present in a few places. 2009-01-29 12:42:57 +01:00
Paulo Cesar Pereira de Andrade
c7d62d74bb Explicitly add libxorg_la_LIBADD to libxorg_la_DEPENDENCIES
Otherwise, for example, when hacking config/*.c, it is required to
run make clean on that directory, to ensure the proper libconfig.a
will be linked in the generated Xorg binary.
2009-01-25 19:19:01 -02:00
Adam Jackson
0fb4390526 Remove xorgcfg 'Options' list. 2009-01-22 01:13:17 -05:00
Daniel Stone
4fa3872dc2 Input: Remove core keysyms from KeyClassRec
Instead of always keeping two copies of the keymap, only generate the
core keymap from the XKB keymap when we really need to, and use the XKB
keymap as the canonical keymap.

Signed-off-by: Daniel Stone <daniel@fooishbar.org>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-01-22 15:08:59 +11:00
Daniel Stone
6727ee9408 Input: Remove state from KeyClassRec
We already have state fully stored within XKB, so instead of duplicating it,
just generate the values to send to clients when required.

Signed-off-by: Daniel Stone <daniel@fooishbar.org>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-01-22 15:08:55 +11:00
Daniel Stone
08363c5830 Input: Overhaul keyboard initialisation process
XkbInitKeyboardDeviceStruct is now the only valid keyboard
initialisation: all the details are hidden behind here.  This now makes
it impossible to supply a core keymap at startup.

If dev->key is valid, dev->key->xkbInfo->desc is also valid.

Signed-off-by: Daniel Stone <daniel@fooishbar.org>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-01-22 15:08:51 +11:00
Daniel Stone
40877c6680 XKB: Make XKB mandatory
No more #ifdef XKB, because you can't disable the build, and no more
noXkbExtension either.

Signed-off-by: Daniel Stone <daniel@fooishbar.org>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-01-22 15:06:25 +11:00
Adam Jackson
0d3c3dad21 Don't include fontmod.h 2009-01-20 23:46:48 -05:00
Daniel Stone
d929ba6886 XFree86: Input: Fail NIDR if we can't enable devices
If we can't enable a device, bail out of NewInputDeviceRequest rather than
blithely continuing. Also, be more verbose when initialization failed. Also,
be more verbose when initialization failed. Also, be more verbose when
initialization failed. Also, be more verbose when initialization failed.

Signed-off-by: Daniel Stone <daniel@fooishbar.org>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-01-20 15:32:19 +11:00
Dan Nicholson
64f924fbf5 Kill off --with-mesa-source completely
There were a few spots left in the source that were using the
--with-mesa-source defined headers or the now removed $(top_srcdir)/GL
directory. These aren't needed anymore as all the necessary source for
GLX is in $(top_srcdir)/glx.

Signed-off-by: Dan Nicholson <dbn.lists@gmail.com>
2009-01-18 09:49:06 -08:00
Dan Nicholson
e1c8ee2157 Don't reuse PKG_CHECK_MODULES identifiers
Using GL for the PKG_CHECK_MODULES identifier multiple times means only
the first call will actually be used. Later calls will be skipped due to
GL_CFLAGS and GL_LIBS already being set. This changes DRI to using a
different identifier and DMX to just reusing GL_CFLAGS.

Signed-off-by: Dan Nicholson <dbn.lists@gmail.com>
2009-01-18 09:49:06 -08:00
Peter Hutterer
b339052340 xfree86: always force RAW mode under linux.
The previous check for AEI on left us with the possibility that AEI is forced
off in the config, but devices are added through evdev nonetheless. A keyboard
added this way can CTRL+C the server. Even when we use kbd, we can set the
mode to RAW, so it's safer alround to to so.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2009-01-16 16:21:16 +10:00
Simon Thum
1d54479cb3 xfree86: init properties when ptraccel configuration is found.
Signed-off-by: Peter Hutterer <peter.hutterer@redhat.com>
Signed-off-by: Simon Thum <simon.thum@gmx.de>
2009-01-15 09:28:55 +10:00
Julien Cristau
31439195c5 xfree86: linuxPci.c needs a prototype for xf86AccResFromOS 2009-01-11 08:54:11 +01:00
Julien Cristau
a00dbd0015 xfree86: use %zu to format size_t arguments 2009-01-11 08:54:11 +01:00
Julien Cristau
17c8cb5099 xfree86: don't mix declarations and code 2009-01-11 08:54:11 +01:00
Julien Cristau
aec4c0caca xfree86: ANSI cleanups 2009-01-11 08:54:11 +01:00
Julien Cristau
7a05c8b1e7 xfree86/linux: fix log flood on acpid open error
When we can't open the acpid socket, warn once, not once every second
2009-01-11 05:36:12 +01:00
Xiang, Haihao
5f3188228e avoid a potential endless loop.
Previously it is possible that creating rotation data, then cleaning
up and creating again so that pScreen->BlockHandler and
xf86_config->BlockHandler all point to xf86RotateBlockHandler.
See bug #19343.
2009-01-09 09:37:56 -08:00
Adam Jackson
0c6987df3b XAA: Disable offscreen pixmaps by default.
Say Option "XaaOffscreenPixmaps" to turn them back on.

Apropos of bugs #13795 and #15098.  But this still isn't correct.
2009-01-08 11:11:39 -05:00
Paulo Cesar Pereira de Andrade
9a313fb031 Don't call free, use xfree macro.
There are several other direct calls to free, check
% egrep '\<free\(' `find . -name \*.c`
but they are free'ing memory from explicit malloc calls.
This one was not intended, and corrected, so that it would
both, follow the conventions everywhere (and work on some
libc that doesn't like free(0)), and make it easier to use
malloc wrappers.
2009-01-07 23:07:01 -02:00
Paulo Cesar Pereira de Andrade
49b93df8a3 Default to use standard bitmap fonts, with builtins as fallback
The builtin-fonts configure option was removed, as it at best should
have been a runtime option. Instead, now it always register all "font
path element" backends, and adds built-ins fonts at the end of the
default font path.
  This should be a more reasonable solution, to "correct" the most
common Xorg FAQ (could not open default font 'fixed'), and also don't
break by default applications that use only the standard/historical
X Font rendering.
2009-01-07 19:37:03 -02:00
Rémi Cardona
1badeb78b0 Include Xmd.h from edid.h 2009-01-07 09:31:17 -05:00