Commit Graph

1284 Commits

Author SHA1 Message Date
Keith Packard d5b16b037b Revert "dix: Remove usage_hint from pixmaps, store it in ->drawable.class"
This reverts commit 1564c82417.

The drivers used the top bits of the usage_hint to store driver
private flags (intel, radeon, nouveau).

With EXA we need to get at this data so if we migrate the pixmap we
can create the correct type of pixmap in the driver, however this
commit truncates the usage_hint into 8-bit class and loses all the
good stuff.

Signed-off-by: Dave Airlie <airlied@gmail.com>
Reviewed-by: Keith Packard <keithp@keithp.com>
2011-03-17 23:48:52 -07:00
Keith Packard 0ac4931753 Merge remote-tracking branch 'ajax/xserver-next' 2011-03-14 13:06:41 -07:00
Christopher James Halse Rogers d17a9fb841 Consolidate all the PATH_MAX handling into misc.h
Reviewed-by: Adam Jackson <ajax@redhat.com>
Signed-off-by: Christopher James Halse Rogers <christopher.halse.rogers@canonical.com>
2011-03-14 13:42:55 -04:00
Keith Packard c3c0e2fdd3 Merge remote branch 'whot/for-keith' 2011-03-09 14:25:54 -08:00
Peter Hutterer 18413f5508 xfree86: block signals between EnableDevice and first CheckMotion()
Devices usually enable SIGIO processing in EnableDevice. CheckMotion
initialises the pointer sprite, sends Enter/Leave events, etc. This leaves
us with a small window where events may be processed without the sprite or
pointer position (as seen from the protocol) is valid.
Block signals during this window.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Daniel Stone <daniel@fooishbar.org>
2011-03-09 07:59:35 +10:00
Erkki Seppälä a19771e433 xfree86/common: Remove a configScreen leak when conf_screen is NULL
configScreen used a dynamically allocated buffer for XF86ConfScreenRec
when conf_screen argument was NULL. This pointer was never stored
anywhere, nor was it released, so this patch makes the function use
automatically allocated storage in that situation.

[ajax: minor grammar fix]
Reviewed-by: Adam Jackson <ajax@redhat.com>
Reviewed-by: Rami Ylimäki <rami.ylimaki@vincit.fi>
Signed-off-by: Erkki Seppälä <erkki.seppala@vincit.fi>
2011-03-08 13:34:33 -05:00
Adam Jackson 1564c82417 dix: Remove usage_hint from pixmaps, store it in ->drawable.class
The class field was unused for pixmaps, and we don't have enough classes
to justify a whole uint32 anyway.

Reviewed-by: Soren Sandmann <ssp@redhat.com>
Signed-off-by: Adam Jackson <ajax@redhat.com>
2011-03-08 13:16:50 -05:00
Keith Packard 6c90e839d9 Merge remote branch 'whot/for-keith' 2011-03-03 14:41:44 -08:00
Peter Hutterer c2207d11f2 Merge branch 'next' into for-keith
Conflicts:
	dix/devices.c

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2011-02-28 11:26:09 +10:00
Matthieu Herrb 00779932de Don't clobber input device options from xorg.conf
Since commit b8d9c5ff removed commonOptions, we now
need to append the "Core{Keyboard,Pointer}" options to
the existing list.

Fixes passing options to devices confirured in xorg.conf
on systems where autoaddevices is false.

Signed-off-by: Matthieu Herrb <matthieu.herrb@laas.fr>
Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2011-02-28 09:48:44 +10:00
Keith Packard 6178959e3d xfree86: Bump video ABI to 10.0
RandR 1.4 revert changed things

Signed-off-by: Keith Packard <keithp@keithp.com>
2011-02-24 19:42:02 -08:00
Keith Packard 8386159578 Merge remote branch 'kibi/master' 2011-02-24 18:59:07 -08:00
Keith Packard fd9331f6eb Revert "Separate out screen size and screen pixmap sizes in RRScreenSizeSet"
This reverts commit 752c368421.
2011-02-23 11:17:24 -08:00
Cyril Brulebois 4102a00962 xfree86: Fix undefined reference to `XNFsprintf' on sparc.
Build failure on sparc:
| copying selected object files to avoid basename conflicts...
|   CCLD   Xorg
| ./.libs/libxorg.a(xf86sbusBus.o): In function `xf86SbusConfigureNewDev':
| […]/hw/xfree86/common/xf86sbusBus.c:712: undefined reference to `XNFsprintf'
| collect2: ld returned 1 exit status

Fix typo introduced in:
  3a9bb93dd1

Reviewed-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Apologized-for-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Signed-off-by: Cyril Brulebois <kibi@debian.org>
2011-02-23 14:44:23 +01:00
Peter Hutterer 579ee8f5d8 Merge branch 'mi-cleanup' into next 2011-02-23 08:44:42 +10:00
Peter Hutterer e48bf3b640 xfree86: replace two inputInfo.pointer uses with device loops.
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Benjamin Tissoires <tissoire@cena.fr>
2011-02-22 14:35:44 +10:00
Keith Packard 816d67de2b Merge remote branch 'whot/for-keith' 2011-02-18 12:20:26 -08:00
Keith Packard 0bc9b15a62 Merge remote branch 'ajax/for-keithp' 2011-02-18 12:04:41 -08:00
Simon Thum 38ffeec0c8 xfree86: allow to check for options without warnings in the log
This allows set_percent_option in synaptics to work as described,
and should generally enable to check option syntax without log spam.

Signed-off-by: Simon Thum <simon.thum@gmx.de>
Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2011-02-17 10:14:51 +10:00
Simon Thum 2fbccc881b fix percent options parsing
Signed-off-by: Simon Thum <simon.thum@gmx.de>
Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2011-02-17 10:14:32 +10:00
Peter Hutterer 3bbb70a1a7 xfree86: fix up an out-of-date comment.
InitInput simply initialises all input devices now.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Keith Packard <keithp@keithp.com>
2011-02-16 08:17:25 +10:00
Adam Jackson be186586e5 xf86vidmode: warning fix
xf86VidMode.c: In function 'VidModeGetMonitorValue':
xf86VidMode.c:637:19: warning: 'ret.i' may be used uninitialized in this function

Reviewed-by: Matt Turner <mattst88@gmail.com>
Reviewed-by: Julien Cristau <jcristau@debian.org>
Signed-off-by: Adam Jackson <ajax@redhat.com>
2011-02-08 12:40:14 -05:00
Pauli Nieminen 5d020c3135 xf86/xv: Only register PostValidateTree hook when there is work to do
If none of Xv ports were affected by window tree modifications we don't
want scan the port list. To avoid useless scanning of port list
PostValidateTree hook is only registered when ClipNotify was called for
any port.

Signed-off-by: Pauli Nieminen <ext-pauli.nieminen@nokia.com>
Reviewed-by: Ville Syrjälä <ville.syrjala@nokia.com>
2011-02-03 14:38:42 +02:00
Pauli Nieminen ddf32df5cc xf86/xv: Use PostValidateTree to do reput
ValidateTree calls first ClipNotify and later might call
WindowExposures. To avoid useless double reput ClipNotify delays reput
to WindowExposures or PostValidateTree.

PostValidatTree checks all ports if there is clip changes. On clip
changes reput is done to move or scale the overlay.

Signed-off-by: Pauli Nieminen <ext-pauli.nieminen@nokia.com>
Reviewed-by: Ville Syrjälä <ville.syrjala@nokia.com>
2011-02-03 14:38:36 +02:00
Pauli Nieminen 5678a41f6b xf86/xv: Fill color key on expose
If window gets exposed but clipboxes doesn't change drivers would avoid
color key fill. This makes XResizeWindo&co to lose colorkey if
background is painted.

To help drivers to avoid filling colorkey for each put server can
provide helper function if there is exposed areas. Server can subtract
exposed areas from filled region.

As a side effect we can avoid useless color key fills if window only
moves in screen without background fills.

v3:
* Change tracking to filled area to account for client initiated clip
  changes
* Make overlaid XvPutImage behavior like textured XvPutImage or PutImage
* Make region dynamically allocated only when required.

v4:
* Simplify new driver interface to reduce duplicate code

Signed-off-by: Pauli Nieminen <ext-pauli.nieminen@nokia.com>
Reviewed-by: Ville Syrjälä <ville.syrjala@nokia.com>
2011-02-03 14:38:10 +02:00
Pauli Nieminen 9b048ca420 xf86/xv: Remove unused variable from XvPortRecPrivate
Signed-off-by: Pauli Nieminen <ext-pauli.nieminen@nokia.com>
Reviewed-by: Ville Syrjälä <ville.syrjala@nokia.com>
2011-02-03 14:38:04 +02:00
Pauli Nieminen 4f8f803280 xf86/xv: Remove unused GC pointers
Signed-off-by: Pauli Nieminen <ext-pauli.nieminen@nokia.com>
Reviewed-by: Ville Syrjälä <ville.syrjala@nokia.com>
2011-02-03 14:37:56 +02:00
Pauli Nieminen e012f2312b xf86/xv: Remove copy paste code.
xf86XVFillKeyHelperDrawable can be used to implement
xf86XVFillKeyHelper.

V2:
* Remove RegionTranslate that clobbered parameter region.

Signed-off-by: Pauli Nieminen <ext-pauli.nieminen@nokia.com>
Reviewed-by: Ville Syrjälä <ville.syrjala@nokia.com>
2011-02-03 14:36:00 +02:00
Ville Syrjala 53602c3621 xfree86/dga: Remove DGAIsDgaEvent()
DGAIsDgaEvent() is not used anymore.

Signed-off-by: Ville Syrjala <syrjala@sci.fi>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
2011-01-27 14:22:03 +10:00
Ville Syrjala 2081728b74 xfree86/dga: Only send DGA events for master devices
Signed-off-by: Ville Syrjala <syrjala@sci.fi>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
2011-01-27 14:22:03 +10:00
Ville Syrjala 9f09b62e59 xfree86/dga: Remove useless ifdefs
Move some variables to the scope where they are used.

Signed-off-by: Ville Syrjala <syrjala@sci.fi>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
2011-01-27 14:22:03 +10:00
Ville Syrjala 5c941c04ca xfree86/dga: DGAProcessKeyboardEvent() forgot ET_Internal
Signed-off-by: Ville Syrjala <syrjala@sci.fi>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
2011-01-27 14:22:02 +10:00
Ville Syrjala ce4e0f660b xfree86/dga: Remove DGAMouseX and DGAMouseY
Previously some sort of absolute coordinates were sent out in
the padding of the DGA2 Motion and Button events. DGAMouseX
and DGAMouseY were used to keep track of said coordinates.
libXxf86dga doesn't use that data for anything, and at least
git history didn't show any past usage either. So let's just
remove the last remnants of of this mess.

Signed-off-by: Ville Syrjala <syrjala@sci.fi>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
2011-01-27 14:22:02 +10:00
Ville Syrjala ee8faeadb6 xfree86/dga: DGA2 events are missing the dx/dy information
Copy dx/dy from the internal event to the DGA2 Motion/Button events.
Do the same for Key events for the sake of keeping the code consistent.

Signed-off-by: Ville Syrjala <syrjala@sci.fi>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
2011-01-27 14:22:02 +10:00
Ville Syrjala e3fef815cf xfree86/dga: Make mieq_install Bool
mieq_installed is used as a boolean, so why not make it such. Also
it's a static variable, so the the explicit zero initialization can
be removed.

Signed-off-by: Ville Syrjala <syrjala@sci.fi>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
2011-01-27 14:22:02 +10:00
Ville Syrjala f4cb25c2ed xfree86/dga: Remove the ET_DGAEvent handler only if it was installed
Remove the handler only if it was installed. Also mark it as
uninstalled, otherwise it wouldn't get reinstalled after a
server reset.

Signed-off-by: Ville Syrjala <syrjala@sci.fi>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
2011-01-27 14:22:02 +10:00
Ville Syrjala e1547a9f1f xfree86/dga: Install the DGA event handler when DGA2 is used
The ET_DGAEvent handler is only installed when a client
requests relative events via DGA1. Do it also when a client
requests DGA2 events.

Signed-off-by: Ville Syrjala <syrjala@sci.fi>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
2011-01-27 14:22:02 +10:00
Ville Syrjala 7b16e8633d xfree86/input: Restore DGAStealKeyEvent()
DGA key event support was lost in commit
8da0ff2d51. Bring it back.

Signed-off-by: Ville Syrjala <syrjala@sci.fi>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
2011-01-27 14:22:02 +10:00
Peter Hutterer 77af0dc521 xfree86: bump input minor ABI
The new valuator_mask_free() call requires a minor bump.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2011-01-27 14:22:02 +10:00
Ville Syrjälä e41e907b3c Add subWindowMode parameter to SourceValidate
Pass the subWindowMode from the GC/source Picture to SourceValidate.

Signed-off-by: Ville Syrjälä <ville.syrjala@nokia.com>
Reviewed-by: Daniel Stone <daniel@fooishbar.org>
Reviewed-by: Keith Packard <keithp@keithp.com>
Signed-off-by: Keith Packard <keithp@keithp.com>
2011-01-05 11:56:28 -08:00
Adam Jackson ee0b1b5644 config: warning fixes
xf86AutoConfig.c: In function ‘FreeList’:
xf86AutoConfig.c:123: warning: passing argument 1 of ‘free’ discards
qualifiers from pointer target type
/usr/include/stdlib.h:488: note: expected ‘void *’ but argument is of
type ‘const char *’

Signed-off-by: Adam Jackson <ajax@redhat.com>
Reviewed-by: Daniel Stone <daniel@fooishbar.org>
2010-12-31 12:36:44 +00:00
Chase Douglas 05e437c2ce Export all valuator_mask_* functions
Input drivers may use valuator masks for internal state. Having all the
valuator_mask_* functions available will help.

Signed-off-by: Chase Douglas <chase.douglas@canonical.com>
Reviewed-by: Daniel Stone <daniel@fooishbar.org>

Bump ABI_XINPUT_VERSION minor.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
2010-12-31 12:36:43 +00:00
Adam Jackson ce13a1dbbf xfree86: Remove xf86EnterServerState
Back when we had RAC this was a vaguely meaningful thing.  Since then
it's been a glorified (and confusing) wrapper around xf86BlockSIGIO.

Note that the APM and VT switch code are unusual relative to other code
that cares about SIGIO state.  Most callers push a SIGIO disable to
create a critical section for the duration of the caller's stack frame,
but those two effectively disable SIGIO after their return and re-enable
on their next entry.

Reviewed-by: Tiago Vignatti <tigo.vignatti@nokia.com>
Signed-off-by: Adam Jackson <ajax@redhat.com>
2010-12-20 12:14:32 -05:00
Adam Jackson a04e74cb48 xfree86: Symmetrize xf86AccessEnter and xf86AccessLeave
Enter was changing server operating state, Leave wasn't.  Which was
wholly redundant, since all callers of Enter would immediately change
the operating state to exactly what Enter had just done.

Reviewed-by: Tiago Vignatti <tiago.vignatti@nokia.com>
Signed-off-by: Adam Jackson <ajax@redhat.com>
2010-12-20 12:13:43 -05:00
Adam Jackson f28e48834e Remove SCO support
This has never been buildable in any modular server release.

Reviewed-by: Julien Cristau <jcristau@debian.org>
Reviewed-by: Mark Kettenis <kettenis@openbsd.org>
Signed-off-by: Adam Jackson <ajax@redhat.com>
2010-12-20 12:11:11 -05:00
Adam Jackson 040d54fb88 xfree86: Remove unused xf86inSuspend
What is this, I don't even.

Reviewed-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Daniel Stone <daniel@fooishbar.org>
Signed-off-by: Adam Jackson <ajax@redhat.com>
2010-12-20 12:09:16 -05:00
Peter Hutterer 8a8fdd762a xfree86: always report the input options before initialising the device.
After collecting the driver's default options, report the list of options
set for the device before calling PreInit(). This helps with debugging those
cases where options are not merged correctly.

xf86OptionListReport reports with verbosity 5, higher than the default
verbosity so this won't generate logspam in the default case.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Dan Nicholson <dbn.lists@gmail.com>
Reviewed-by: Simon Thum <simon.thum@gmx.de>
2010-12-14 10:19:05 +10:00
Peter Hutterer 9db9e964f6 xfree86: swap the order to-be-merged lists in xf86CollectInputOptions.
Current order causes the user-configured option list to be overwritten with
the default list supplied by the driver. Swap around so we overwrite the
driver's default values instead.

This only affected options supplied by the driver such as XkbLayout in the
case of evdev.

Reported-by: Sebastian Glita <glseba@yahoo.com>
Reported-by: Simon Thum <simon.thum@gmx.de>
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Simon Thum <simon.thum@gmx.de>
Reviewed-by: Dan Nicholson <dbn.lists@gmail.com>
Tested-by: Sebastian Glita <glseba@yahoo.com>
2010-12-13 09:57:59 +10:00
Peter Hutterer 9cf055892d xfree86: don't set movement flags for non-valuator events.
If a device doesn't send valuators, don't try to move its position.

Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
Reviewed-by: Chase Douglas <chase.douglas@canonical.com>
2010-12-09 10:03:26 +10:00
Keith Packard 519d243f0c Merge remote branch 'alanc/master' 2010-12-07 13:39:58 -08:00