Commit Graph

366 Commits

Author SHA1 Message Date
Marc Aurele La France
83080809f9 xfree86: deal with pitch that isn't a multiple of the granularity
When the pitch isn't a multiple of the granularity, allocate more space to
compensate.
2006-12-24 06:28:52 +02:00
Daniel Stone
e59aeac1ff xfree86: remove stray debug line 2006-12-08 21:31:50 +02:00
Michel Dänzer
729fca33a4 Revert "xfree86 DDX: Delete DDX screens in ddxGiveUp()."
This reverts commit a6381e6984.

See https://bugs.freedesktop.org/show_bug.cgi?id=9224 .
2006-12-07 12:09:18 +01:00
Daniel Stone
8884a73a3f xfree86/input: re-add support for disabling drag events 2006-12-06 23:24:24 +02:00
Alan Coopersmith
f9f7d7f3be Check for __sparc as well as __sparc__ for compatibility with Sun cc
(gcc defines __sparc__, Sun cc defines __sparc)
2006-12-04 13:36:30 -08:00
Michel Dänzer
a6381e6984 xfree86 DDX: Delete DDX screens in ddxGiveUp().
This allows video drivers to clean up in the FreeScreen hook things they set up
in the PreInit hook.
2006-11-29 19:25:09 +01:00
Eric Anholt
16f8f10dc2 Move mode handling helpers from ddcProperty.c to xf86Mode.c. 2006-11-27 16:21:31 -08:00
Eric Anholt
b4b0d901d9 Merge branch 'randr-1.2'
Conflicts:

	dix/events.c
	dix/getevents.c
	hw/xfree86/common/xf86Mode.c
	hw/xfree86/dri/Makefile.am
	hw/xfree86/os-support/drm/xf86drm.c
	hw/xfree86/os-support/xf86drm.h
2006-11-27 15:43:15 -08:00
Eric Anholt
d6cd0313c7 Add some mode helper functions from the intel driver.
This also removes static from some other functions that had been copied out
to at least the intel driver, but perhaps others that were doing mode list
handling.
2006-11-27 14:46:50 -08:00
Aaron Plattner
64de3baf85 Add a -showDefaultLibPath option.
A corollary to the previous change, this option prints $libdir.
2006-11-22 14:46:51 -08:00
Aaron Plattner
0a2a6e4070 Add a -showDefaultModulePath option.
As discussed on the mailing list, people would rather have an X command-line
option to print the module path so installers can know where to put modules,
rather than the installers using `pkg-config --variable=moduledir xorg-server`,
since some distros choose not to install xorg-server.pc.
2006-11-22 14:43:37 -08:00
Matthias Hopf
26d2e45bdb Bug #9023: Only check mice for "mouse" or "void" if identifier is != NULL. 2006-11-14 15:33:07 +01:00
Keith Packard
ec77a95a02 Allow RandR objects to be created before the associated ScreenRec.
xf86 drivers need to create RandR object in the PreInit stage,
before the ScreenRec is allocated. Changing the RandR DIX code
to permit this required the addition of functions that later associate the
objects with the related screen.

An additional change is that modes are now global, and no longer associated
with a specific screen. This change actually makes mode management cleaner
as there is no more per-screen list of modes to deal with.

This changes the RandR 1.2 ABI/API for drivers.
2006-11-08 21:36:35 -08:00
Dave Airlie
fd91630b73 make X server use system libdrm - this requires libdrm >= 2.3.0
This patch blacklists the load "drm" line, moves some functions in dri module
links dri module against libdrm, and removes the X copy of libdrm
2006-11-09 09:30:33 +11:00
Daniel Stone
e7900d68c3 remove trailing whitespace
Whitespace police in full effect.
2006-11-08 15:36:47 +02:00
Daniel Stone
2035f115b7 xfree86: remove xf86Keymap.h 2006-11-08 15:30:03 +02:00
Daniel Stone
809e2841aa xfree86: add general handler, port ACPI to it (bug #5665)
Add 'general' handler registration, which will not trigger DPMS when an
event comes in.
Make ACPI use this.
2006-11-08 15:30:03 +02:00
Daniel Stone
844090a5b5 xfree86/xf86misc: warning fixes 2006-11-08 15:29:15 +02:00
Adam Jackson
05f1c30246 Merge branch 'autoconfig-for-7.2' 2006-11-07 18:42:54 -05:00
Keith Packard
028bbdc041 Merge master back to randr-1.2 2006-11-04 17:46:26 -08:00
Aaron Plattner
97fd471a62 Fix standard VESA modes.
The built-in mode timings were off slightly for the 640x480@60, 640x480@72,
and 1024x768@75 modes.
2006-11-03 14:06:32 -08:00
Matthias Hopf
16c5043fc0 Fix 2 warnings. 2006-11-03 18:59:51 +01:00
Keith Packard
543b397277 Merge branch 'origin' into randr-1.2 2006-11-02 19:00:35 -08:00
Daniel Stone
1d65429a9e xfree86: don't attempt to enable and disable non-DIX devices
Don't try to enable and disable devices with no entry in the DIX, such as
the evdev brain.
2006-11-02 04:12:55 +02:00
Daniel Stone
ba9f5138fc xfree86: allow starting with no input devices
Add a server flag (AllowEmptyInput), which will inhibit adding the
standard keyboard and mouse drivers, if there are no input devices in the
config file.
2006-11-02 03:16:10 +02:00
Daniel Stone
81728558a0 input: add non-keyboard bell ringing function
Add a generic 'ring the bell' function (console bell on Linux and BSD,
/dev/audio on Solaris), and add DDX functions for this.  Make this the
core keyboard's bell.
Port Xvfb and Xnest to this.
Port XFree86 to this, with OS-specific hooks for Linux, BSD, and Solaris
taken from foo_io.c in the old layer.
2006-11-01 23:10:26 +02:00
Daniel Stone
96e32805d1 Xi: disallow changing core keyboard and pointer
Just short-circuit the change core keyboard/pointer requests.
2006-10-29 03:43:34 +03:00
Daniel Stone
cdc8a4b7b2 Merge branch 'master' of git+ssh://git.freedesktop.org/git/xorg/xserver into input-hotplug 2006-10-26 00:28:30 +03:00
Michel Dänzer
becbda6d51 Fix test for Option "IgnoreABI".
This option has plenty of potential for wasting the time of bug triagers
without pretending it's always on.
2006-10-25 11:39:27 +02:00
Keith Packard
59511974db Merge branch 'master' into randr-1.2 2006-10-24 17:26:20 -07:00
Daniel Stone
0514d53e10 xfree86: remove motion history handling
Remove motion history handling, as we now deal with this in the DIX.
2006-10-25 01:10:44 +03:00
Daniel Stone
2a74b8a91d xfree86: re-bump input abi to 1.0, yet again 2006-10-25 01:04:53 +03:00
Daniel Stone
0cd6a3d8ef xfree86/input: add proximity support, free valuators
Re-add support for proximity events, and remember to both va_end our
varargs, and free our valuators.
2006-10-23 06:56:07 +03:00
Daniel Stone
c8f76fb3a4 xfree86/input: disallow pointer device changes, fix drag event calculation
Don't allow users to change the core pointer.
Fix xf86SendDragEvents to check the device button state, not the core
pointer's.
Remove unused xf86CheckButton.
2006-10-23 05:12:15 +03:00
Daniel Stone
c5b5b046e8 Merge branch 'master' of git+ssh://git.freedesktop.org/git/xorg/xserver into input-hotplug 2006-10-23 02:58:30 +03:00
Daniel Stone
fab1d37ecb xfree86/options: don't blindly dereference NULL pointers
Sure, conf_idev should be initialised, but if it's not, try to make the
best of a bad situation.
2006-10-23 02:57:00 +03:00
Zephaniah E. Hull
e26a494f41 Merge branch 'input-hotplug' of git+ssh://git.freedesktop.org/git/xorg/xserver 2006-10-21 04:26:14 -04:00
Zephaniah E. Hull
736b0d5078 DEVICE_TOUCHSCREEN becomes DEVICE_ABS_CALIB.
Update the DEVICE_ABS_CALIB stuff to include the new elements.

New DEVICE_ABS_AREA support.

dev->touchscreen becomes dev->absolute, with _CALIB and _AREA stuff in it.

Update xfree86 to compile with this, kdrive needs an update too.
2006-10-21 04:24:49 -04:00
Carl Switzky
edd5f17454 Add ast driver/device info to Xorg server & config utilities 2006-10-19 17:30:54 -07:00
Daniel Stone
aeba855b07 move keymap copy to event processing, from enqueuing
Move the keymap copying to event processing time (in
ProcessInputEvents), instead of being at event enqueuing time.
Break SetCore{Pointer,Keyboard} out into separate functions.
Change mieqEnqueue to take a device pointer, that asks for the
_original_ device associated with this event.
2006-10-20 00:43:11 +03:00
Alan Coopersmith
b0780312d8 Pre-release message should tell users to check git, not CVS, for updates 2006-10-20 00:43:10 +03:00
Alan Hourihane
85ac2f16ab Small modification to blocking signals when switching modes. 2006-10-20 00:42:47 +03:00
Michel Dänzer
a232693c8c Add per-drawable Xv colour key helper function.
This allows overlay Xv adaptors to work slightly better with compositing
managers.

Bump the video driver ABI minor so drivers only need to check for this at build
time.
2006-10-20 00:42:44 +03:00
Alan Coopersmith
e1dd1904c6 Pre-release message should tell users to check git, not CVS, for updates 2006-10-19 14:27:15 -07:00
Zephaniah E. Hull
1b1698af41 Pass SetDeviceValuators down to the driver.
NOTE: This changes the LocalDeviceRec struct, which breaks input drivers.
2006-10-18 04:57:22 -04:00
Alan Hourihane
d430e76a16 Small modification to blocking signals when switching modes. 2006-10-16 12:39:05 +01:00
Daniel Stone
4ae7745a0d xfree86 input: always open devices on NewInputDeviceRequest 2006-10-15 21:48:01 +03:00
Michel Dänzer
f9bfee5098 Add per-drawable Xv colour key helper function.
This allows overlay Xv adaptors to work slightly better with compositing
managers.

Bump the video driver ABI minor so drivers only need to check for this at build
time.
2006-10-15 16:55:09 +02:00
Daniel Stone
335b503c5e Merge branch 'master' of git+ssh://git.freedesktop.org/git/xorg/xserver into input-hotplug 2006-10-13 18:10:45 +03:00
Alan Hourihane
cf948b7b04 Block IO on switchmode just as we do for VT switching
to avoid cursor movements signalling io.
2006-10-13 14:48:10 +01:00
Daniel Stone
ef7e05e9de xfree86/xinput: pass first_valuator params, don't clip to first screen bound
Pass first_valuator to GetPointerEvents/GetKeyboardValuatorEvents.
Don't clip axis bounds to that of screen 0 when initialising axes.
2006-10-08 21:42:15 +03:00
Daniel Stone
41bb9fce47 mipointer: take device arguments, split miPointerAbsoluteCursor
Update mipointer API to take a device argument to (almost) all functions,
and split miPointerAbsoluteCursor into a couple of separate functions.
Remove miPointerAbsoluteCursor call from mieq, as we now deal with it in
GetPointerEvents.
Make miPointerSetPosition (successor of miPointerAbsoluteCursor) take
pointers to x and y, so it can return the clipped values.
Modify callers of miPointer*() functions to generally use the new
functions.
This should fix things with multi-head setups.
2006-10-08 20:34:32 +03:00
Daniel Stone
be8dfafd1d warning cleanups
Fix still more warnings.
2006-10-08 20:32:16 +03:00
Daniel Stone
3ae4d25018 xfree86 Xinput: remove still more excessive debugging
There isn't any more debugging left for input events in the XFree86 DDX.
2006-10-08 16:20:42 +03:00
Daniel Stone
58314756ae GetPointerEvents: add first_valuator parameter
Add a first_valuator parameter.  Looks correct by inspection, but untested
with first_valuator != 0 as yet.
2006-10-08 16:18:05 +03:00
Daniel Stone
22a836fafd xfree86/loader: bump input major ABI version
Bump input major ABI version to 1.0, since we removed the OS keyboard
layer.
2006-10-07 14:16:51 +03:00
Daniel Stone
ad631afcf3 make core keyboard/pointer map functions act on all core-sending devices
Make Set{Keyboard,Modifier,Pointer}Mapping act on all devices which send core
events.
Change LegalModifier to accept a DeviceIntPtr.
2006-09-29 00:34:23 +03:00
Keith Packard
2be1ac15ae Remove smashing of CFLAGS from server build.
CFLAGS is a user variable, extracted from the environment at configure time
and settable by the user at build time. We must not override this variable.
2006-09-18 12:11:18 -07:00
Adam Jackson
46af6d1e95 Always believe the monitor when it reports a reduced-blanking mode.
CVT reduced blanking modes are typically only seen on digital connections to
LCDs, but there are some monitors that report them as supported over the
VGA connector too, which is perfectly legitimate, electrically speaking.
2006-09-14 19:28:44 -04:00
Adam Jackson
63acf18b7e In xf86MatchPciInstances, fail gracefully when there's no PCI device at all.
This allows the autoconfig logic to fall through sanely on non-PCI machines,
which importantly includes Xen virtual machines.
2006-09-14 19:26:37 -04:00
Adam Jackson
a8f9936f55 Prefer driver-provided modes when matching name strings to modelines.
Well, kinda.  Strictly we prefer M_T_BUILTIN strongest since those are modes
where the driver has said it absolutely can't do anything else (VBE).  Then
we look for user-defined modes, ie, modelines from the config file.  Then
we consider modes reported by the monitor via EDID.  Finally if nothing has
matched yet we consider the default mode pool.

Within each of the above-mentioned classes, modes with the M_T_PREFERRED bit
take priority over other modes in the same class.

This logic ensures that the timings sent to the monitor exactly match the
timings it reported as supported, which occasionally don't match the numbers
you might get for that mode from CVT or GTF.
2006-09-14 19:24:41 -04:00
Adam Jackson
81ef1b6d60 Mark EDID modes as driver modes. Infer virtual size from driver modes.
This allows the server to guess an appropriate initial virtual size and
resolution.  The heuristic is to select the largest driver-reported mode
that matches the monitor's physical aspect ratio.  We revalidate this
estimate after mode validation, since we may have filtered away all
modes that would fill that size.

Also, the EDID preferred timing is now marked as M_T_PREFERRED as well.
2006-09-14 19:18:58 -04:00
Adam Jackson
43d9edd31e Attempt to add the 'mouse' driver in more situations.
Always add a mouse driver instance configured to send core events, unless
a core pointer already exists using either the mouse or void drivers.  This
handles the laptop case where the config file only specifies, say,
synaptics, which causes the touchpad to work but not the pointing stick.
We don't double-instantiate the mouse driver to avoid the mouse moving twice
as fast, and we skip this logic when the user asked for a void core pointer
since that probably means they want to run with no pointer at all.
2006-09-14 19:09:02 -04:00
Adam Jackson
739224d05e Load the default module set when no Module section is given in the config.
Also, synchronize that list with the list for the pseudoconfig file used
when starting with no config file.  These really need to be better unified.
2006-09-14 19:03:32 -04:00
Adam Jackson
beac2bf1e4 Expand the default sync ranges to be large enough for 800x600@60. 2006-09-14 19:01:13 -04:00
Adam Jackson
7939c8dfb7 Bump the default pixel depth to 24, and default bpp to 32. 2006-09-14 18:57:57 -04:00
Adam Jackson
d89fee68d0 Record the maximum dot clock of the monitor, and filter by it. 2006-09-14 18:41:15 -04:00
Luc Verhaegen
511c60bc73 Bug #5386: Synthesize modelines from EDID data. 2006-09-14 18:30:36 -04:00
Daniel Stone
5e9d33fe87 Merge branch 'master' of git+ssh://git.freedesktop.org/git/xorg/xserver into input-hotplug 2006-09-07 15:43:31 +03:00
Michel Dänzer
8356be492c Make sure _XSERVER64 is defined when it should be and gets tested. 2006-09-06 15:20:55 +02:00
Daniel Stone
7fa3383e3c Merge branch 'master' of git+ssh://git.freedesktop.org/git/xorg/xserver into input-hotplug 2006-08-29 15:16:01 +03:00
Adam Jackson
ebbdc1342a Remove calls to LoaderCheckUnresolved(), since it's now a stub. 2006-08-28 18:17:32 -04:00
Daniel Stone
3a36b0a24a Merge branch 'master' of git+ssh://git.freedesktop.org/git/xorg/xserver into input-hotplug 2006-08-24 23:35:28 +03:00
Adam Jackson
b879356ce9 More #ifdef USE_DEPRECATED_KEYBOARD_DRIVER. 2006-08-24 15:50:15 -04:00
Matthias Hopf
4ed311cf1c Merge branch 'master' of git://anongit.freedesktop.org/git/xorg/xserver 2006-08-24 20:17:10 +02:00
Daniel Stone
4adf9af313 Merge branch 'master' into input-hotplug 2006-08-24 10:59:33 +03:00
David Nusinow
733c4beb16 Add xorg.conf IgnoreABI option which does the same thing as -ignoreABI 2006-08-23 22:39:42 +00:00
Daniel Stone
1c2cb30cd8 Merge branch 'origin' into input-hotplug 2006-08-18 17:05:50 +03:00
Adam Jackson
ee5e2cbd2b Un-cut-and-paste the mode rejection message. 2006-08-17 17:29:32 -04:00
Adam Jackson
43e42eef1f Fix default mouse device on Linux, again.
It would be really nice if we only did this in one place instead of 40.
2006-08-17 16:22:07 -04:00
Matthias Hopf
73e58adda9 Fixed segfault w/ broken Xinerama configs. 2006-08-16 18:18:51 +02:00
Daniel Stone
d6433be3cc Merge branch 'master' into input-hotplug 2006-08-12 21:50:52 +03:00
Bastian Blank
f7919c2879 xfree86: don't do legacy IO on ARM or S/390 (Debian #362641)
Don't attempt to poke legacy IO ranges on ARM or S/390.
2006-08-12 20:43:25 +03:00
Daniel Stone
59dcc62906 xfree86: remove Xqueue support completely 2006-08-12 20:39:08 +03:00
Daniel Stone
26c3cd1c9e Merge branch 'master' of git+ssh://git.freedesktop.org/git/xorg/xserver into input-hotplug 2006-08-12 18:58:18 +03:00
Daniel Stone
008aa7eb6e completely remove OS keyboard layer
Completely axe the keyboard layer from os-support.
2006-08-12 18:56:05 +03:00
Adam Jackson
c4951e0a6b Fix a mode sanity check to not break reduced-blanking setups (LCDs). 2006-08-10 20:49:06 -04:00
Adam Jackson
e1921f014b Rename some mode tokens to better reflect their use.
Per #5386, M_T_EDID -> M_T_DRIVER, since it's really for any driver-detected
mode.  Also add M_T_PREFERRED bit, to select a 'best' mode out of a set.
2006-08-10 20:43:15 -04:00
Daniel Stone
172d45b9b7 Merge branch 'master' of git+ssh://git.freedesktop.org/git/xorg/xserver into input-hotplug 2006-08-10 14:14:54 +03:00
Daniel Stone
539d1f3347 GKVE/GPE: have DDX allocate events
Don't allocate events on every GKE/GKVE/GPE call, just have the DDX manage
it instead.  Introduce GetMaximumEventsNum(), which is the maximum number
of events these functions will ever produce.
2006-08-10 14:00:14 +03:00
Adam Jackson
db82e12fac Remove TargetRefresh option from the autoconfig logic.
The default target of 75Hz is almost always wrong for LCDs.
2006-08-09 14:55:17 -04:00
Daniel Stone
afcad4ad99 xfree86 ddx: always free GKE/GPE events
free() events we get passed back from GKE and GPE so we don't just, er,
leak them all.  *cough*.
2006-08-07 18:11:05 +03:00
Daniel Stone
87fe85f38b Merge branch 'master' of git+ssh://git.freedesktop.org/git/xorg/xserver into input-hotplug 2006-07-30 10:51:34 +03:00
Luc Verhaegen
79016d4036 Bug #5386 (partial): Move CVT mode generator from cvt(1) to server core, and
export it from the X server to modules.
2006-07-28 16:02:02 -04:00
Adam Jackson
990a400905 Remove getconfig horrorshow. Replace with a static built-in rule list for now. 2006-07-26 19:03:39 -04:00
Adam Jackson
39158e98ac Remove another latent PowerMAX hunk.
All your favorite running jokes of 2005, today!
2006-07-26 18:39:28 -04:00
Daniel Stone
ca3f4fc1b0 add fallback ChangeDeviceControl, allow XOpenDevice on closed device
Add a fallback ChangeDeviceControl, which allows the attributes we know about
so far.
Allow XOpenDevice on closed devices.
2006-07-23 19:02:12 -04:00
Daniel Stone
a73cef1f00 Merge branch 'master' of git+ssh://git.freedesktop.org/git/xorg/xserver into input-hotplug 2006-07-22 12:07:22 -04:00
Adam Jackson
70869fc677 Yet more dead code. 2006-07-21 23:39:37 -04:00
Adam Jackson
7c1b2ee7a8 static markup, more dead code. 2006-07-21 23:35:13 -04:00