- 09 Mar, 2016 1 commit
-
-
Michel Dänzer authored
This reduces code duplication. v2: No functional change this time. Reviewed-by:
Keith Packard <keithp@keithp.com>
-
- 08 Mar, 2016 1 commit
-
-
Julien Cristau authored
ms_dri2_frame_event_client_gone or ms_dri2_frame_event_drawable_gone already free the resource. Reviewed-by:
Rémi Cardona <remi@gentoo.org> Signed-off-by:
Julien Cristau <jcristau@debian.org>
-
- 02 Mar, 2016 1 commit
-
-
Adam Jackson authored
Signed-off-by:
Adam Jackson <ajax@redhat.com> Reviewed-by:
Julien Cristau <jcristau@debian.org>
-
- 01 Mar, 2016 1 commit
-
-
Laércio de Sousa authored
This patch introduces a new flag ATTR_KEY for hotplugged input devices, so we can better distinguish between real keyboards (i.e. devices with udev property ID_INPUT_KEYBOARD="1") and other key input devices like lid switches, power buttons, etc. All supported hotplug backends (udev, hal, and wscons) will set both flags ATTR_KEY and ATTR_KEYBOARD for real keyboards, but udev backend will set ATTR_KEY, but not ATTR_KEYBOARD, for non-keyboard key input devices (hal and wscons will set both flags in any case). With this distinction, kdrive input hotplugging mechanism will be allowed to only grab real keyboards, as other key input devices are currently not supported. In order to don't break current behaviour, this patch will replace all ATTR_KEYBOARD occurrences with ATTR_KEY in hw/xfree86/common/xf86Xinput.c. [ajax: Just add ATTR_KEY, don't re-number the other attributes] Reviewed-by:
Adam Jackson <ajax@redhat.com> Signed-off-by:
Laércio de Sousa <laerciosousa@sme-mogidascruzes.sp.gov.br>
-
- 29 Feb, 2016 12 commits
-
-
Olivier Fourdan authored
The API signature of the DIX xf86VidModeGetGammaRampSize() is now identical to the xf86cmap's xf86GetGammaRampSize() and all it does is actually call xf86GetGammaRampSize() so we can save one vfunc. Remove uneeded xf86VidModeGetGammaRampSize() function. Reviewed-by:
Adam Jackson <ajax@redhat.com> Signed-off-by:
Olivier Fourdan <ofourdan@redhat.com>
-
Olivier Fourdan authored
The DIX already checks for VidModePrivateKey to get the vfunc, so checking for this again in the DDX is redundant. Remove the redundant function xf86VidModeAvailable() from the DDX. Reviewed-by:
Adam Jackson <ajax@redhat.com> Signed-off-by:
Olivier Fourdan <ofourdan@redhat.com>
-
Olivier Fourdan authored
XVidMode extension might be useful to non hardware servers as well (e.g. Xwayand) so that applications that rely on it (e.g. lot of older games) can at least have read access to XVidMode. But the implementation is very XFree86 centric, so the idea is to add a bunch of vfunc that other non-XFree86 servers can hook up into to provide a similar functionality. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=87806Reviewed-by:
Adam Jackson <ajax@redhat.com> Signed-off-by:
Olivier Fourdan <ofourdan@redhat.com>
-
Olivier Fourdan authored
To avoid confusion as to what belongs on the DDX and what not. Reviewed-by:
Adam Jackson <ajax@redhat.com> Signed-off-by:
Olivier Fourdan <ofourdan@redhat.com>
-
Olivier Fourdan authored
To be able to reuse the VidMode extension in a non-hardware server, the display mode definitions need to be accessible from DIX. Reviewed-by:
Adam Jackson <ajax@redhat.com> Signed-off-by:
Olivier Fourdan <ofourdan@redhat.com>
-
Olivier Fourdan authored
The mode access functions (namely VidModeCreateMode(), VidModeCopyMode(), VidModeGetModeValue() and VidModeSetModeValue()) are used only in xf86VidMode code and do not need to be available anywhere else. Remove these functions from the public VidMode API and move them as static where they are used. Reviewed-by:
Adam Jackson <ajax@redhat.com> Signed-off-by:
Olivier Fourdan <ofourdan@redhat.com>
-
Olivier Fourdan authored
The API uses an untyped pointer (void *) where a DisplayModePtr is expected. Clean up the API to use the appropriate type, as DisplayModePtr is really all that will be passed there. Reviewed-by:
Adam Jackson <ajax@redhat.com> Signed-off-by:
Olivier Fourdan <ofourdan@redhat.com>
-
Olivier Fourdan authored
VidModeGetMonitor() is used solely in ProcXF86VidModeGetMonitor() to get a untyped monitor pointer that is passed back straight again to VidModeGetMonitorValue(). This is actually useless as VidModeGetMonitorValue() could as well get the monitor from the ScreenPtr just like VidModeGetMonitor() does. Reviewed-by:
Adam Jackson <ajax@redhat.com> Signed-off-by:
Olivier Fourdan <ofourdan@redhat.com>
-
Olivier Fourdan authored
New code passes ScreenPtr instead of the screen index. Change the VidMode functions to take a ScreenPtr. Reviewed-by:
Adam Jackson <ajax@redhat.com> Signed-off-by:
Olivier Fourdan <ofourdan@redhat.com>
-
Olivier Fourdan authored
As we rely on dixRegisterPrivateKey() to allocate the memory for us that will be free automatically, we do not need the CloseScreen wrapper anymore. Reviewed-by:
Adam Jackson <ajax@redhat.com> Signed-off-by:
Olivier Fourdan <ofourdan@redhat.com>
-
Olivier Fourdan authored
dixRegisterPrivateKey() can allocate memory that will be freed when the screen is teared down. No need to calloc() and free the memory ourself using a broken ref counting method. Reviewed-by:
Adam Jackson <ajax@redhat.com> Signed-off-by:
Olivier Fourdan <ofourdan@redhat.com>
-
Chris Wilson authored
This patch was motivated by the need to fix the use-after-free in dri2ClientWake, but in doing so removes an arbitrary restriction that limits DRI2 to only blocking the first client on each drawable. In order to fix the use-after-free, we need to avoid touching our privates in the ClientSleep callback and so we want to only use that external list as our means of controlling sleeps and wakeups. We thus have a list of sleeping clients at our disposal and can manage multiple events and sources. Reviewed-by:
Adam Jackson <ajax@redhat.com> Signed-off-by:
Chris Wilson <chris@chris-wilson.co.uk>
-
- 22 Feb, 2016 2 commits
-
-
Marc-André Lureau authored
Add virtio-gpu legacy + 1.0 pci ids, allowing them to use modesetting + glamor with dri2. Signed-off-by:
Marc-André Lureau <marcandre.lureau@gmail.com> Reviewed-by:
Dave Airlie <airlied@redhat.com>
-
Daniel Stone authored
216bdbc7 removed the SetRootClip call in the XWayland output-hotplug handler when running rootless (e.g. as a part of Weston/Mutter), since the root window has no storage, so generating exposures will result in writes to invalid memory. Unfortunately, preventing the segfault also breaks sprite confinement. SetRootClip updates winSize and borderSize for the root window, which when combined with RRScreenSizeChanged calling ScreenRestructured, generates a new sprite-confinment area to update it to the whole screen. Removing this call results in the window geometry being reported correctly, but winSize/borderSize never changing from their values at startup, i.e. out of sync with the root window geometry / screen information in the connection info / XRandR. This patch introduces a hybrid mode, where we update winSize and borderSize for the root window, enabling sprite confinement to work correctly, but keep the clip emptied so exposures are never generated. Signed-off-by:
Daniel Stone <daniels@collabora.com> Tested-by:
Olivier Fourdan <ofourdan@redhat.com> Reviewed-by:
Adam Jackson <ajax@redhat.com>
-
- 11 Feb, 2016 1 commit
-
-
Adam Jackson authored
In commit e43abdce Author: Chris Wilson <chris@chris-wilson.co.uk> Date: Wed Feb 3 09:54:46 2016 +0000 dri2: Unblock Clients on Drawable release we try to wake up any blocked clients at drawable destruction. But by the time we get there, CloseDownConnection has already torn down state that AttendClient wants to modify. Using ClientSleep instead of IgnoreClient puts a wakeup function on a workqueue, and the queue will be cleared for us in CloseDownClient before (non-neverretain) resource teardown. Tested-by:
Chris Wilson <chris@chris-wilson.co.uk> Reviewed-by:
Chris Wilson <chris@chris-wilson.co.uk> Signed-off-by:
Adam Jackson <ajax@redhat.com>
-
- 09 Feb, 2016 1 commit
-
-
Chris Wilson authored
If the Window is destroyed by another client, such as the window manager, the original client may be blocked by DRI2 awaiting a vblank event. When this happens, DRI2DrawableGone forgets to unblock that client and so the wait never completes. Note Present/xshmfence is also suspectible to this race. Testcase: dri2-race/manager Signed-off-by:
Chris Wilson <chris@chris-wilson.co.uk> Cc: Ville Syrjälä <ville.syrjala@linux.intel.com> Reviewed-by:
Ville Syrjälä <ville.syrjala@linux.intel.com>
-
- 08 Feb, 2016 1 commit
-
-
Chris Wilson authored
All callers of SetWindowPixmap will themselves be traversing the Window heirarchy updating the backing Pixmap of each child and so we can forgo doing the identical traversal inside the DRI2SetWindowPixmap handler. Reported-by:
Loïc Yhuel <loic.yhuel@gmail.com> Link: http://lists.x.org/archives/xorg-devel/2015-February/045638.htmlSigned-off-by:
Chris Wilson <chris@chris-wilson.co.uk> Cc: Ville Syrjälä <ville.syrjala@linux.intel.com> Reviewed-by:
Ville Syrjälä <ville.syrjala@linux.intel.com>
-
- 28 Jan, 2016 2 commits
-
-
Adam Jackson authored
This applies regardless of which DRI you're asking for. Worse, leaving it out means breaking the config file syntax in a pointless way, since non-DRI servers can safely just parse it and ignore it. Reviewed-by:
Eric Anholt <eric@anholt.net> Signed-off-by:
Adam Jackson <ajax@redhat.com>
-
Adam Jackson authored
Reviewed-by:
Eric Anholt <eric@anholt.net> Signed-off-by:
Adam Jackson <ajax@redhat.com>
-
- 27 Jan, 2016 1 commit
-
-
Timo Aaltonen authored
Adds Skylake, Kabylake and Broxton allowing them to use modesetting + glamor with dri2. Signed-off-by:
Timo Aaltonen <timo.aaltonen@canonical.com> Reviewed-by:
Andreas Boll <andreas.boll.dev@gmail.com>
-
- 06 Jan, 2016 1 commit
-
-
Thomas Klausner authored
Reviewed-by:
Adam Jackson <ajax@redhat.com> Signed-off-by:
Thomas Klausner <wiz@NetBSD.org>
-
- 05 Jan, 2016 1 commit
-
-
Alan Coopersmith authored
Fixes build errors of: present.c: In function 'ms_do_pageflip': present.c:410:17: error: 'drmmode_bo' has no member named 'gbm' new_front_bo.gbm = glamor_gbm_bo_from_pixmap(screen, new_front); ^ present.c:412:22: error: 'drmmode_bo' has no member named 'gbm' if (!new_front_bo.gbm) { ^ present.c: In function 'ms_present_check_flip': present.c:536:36: error: 'drmmode_bo' has no member named 'gbm' if (drmmode_crtc->rotate_bo.gbm) ^ Introduced by commit 13c7d53dReviewed-by:
Adam Jackson <ajax@redhat.com> Signed-off-by:
Alan Coopersmith <alan.coopersmith@oracle.com>
-
- 20 Dec, 2015 1 commit
-
-
Peter Hutterer authored
No real change, but if the driver is broken and doesn't provide a PreInit function, then we don't need to worry about logind. Signed-off-by:
Peter Hutterer <peter.hutterer@who-t.net> Reviewed-by:
Keith Packard <keithp@keithp.com>
-
- 18 Dec, 2015 2 commits
-
-
Peter Hutterer authored
InputClass sections use various MatchFoo directives to decide which device to apply to. This usually works fine for specific snippets but has drawbacks for snippets that apply more generally to a multitude of devices. This patch adds a NoMatchFoo directive to negate a match, thus allowing snippets that only apply if a given condition is not set. Specifically, this allows for more flexible fallback driver matching, it is now possible to use a snippet that says "assign driver foo, but only if driver bar wasn't already assigned to it". For example: Section "InputClass" Identifier "libinput for tablets" MatchIsTablet "true" NoMatchDriver "wacom" Driver "libinput" EndSection The above only assigns libinput to tablet devices if wacom isn't already assigned to this device, making it possible to select a specific driver by installing/uninstalling it. Signed-off-by:
Peter Hutterer <peter.hutterer@who-t.net> Reviewed-by:
Benjamin Tissoires <benjamin.tissoires@gmail.com>
-
Peter Hutterer authored
Signed-off-by:
Peter Hutterer <peter.hutterer@who-t.net>
-
- 08 Dec, 2015 1 commit
-
-
Laércio de Sousa authored
Since non-seat0 X servers no longer touch VTs, I believe these settings are unnecessary. Signed-off-by:
Laércio de Sousa <laerciosousa@sme-mogidascruzes.sp.gov.br> Reviewed-by:
Hans de Goede <hdegoede@redhat.com>
-
- 07 Dec, 2015 4 commits
-
-
Adam Jackson authored
Apologies, should have caught this one when applying the previous x86emu patch. Signed-off-by:
Adam Jackson <ajax@redhat.com>
-
Julian Pidancet authored
(Sorry for double posting) I repost this patch because I havn't got any replies from maintainers since I posted the initial patch back in March. Some instructions are not emulated correctly by x86emu when they are prefixed by the 0x66 opcode. I've identified problems in the emulation of these intructions: ret, enter, leave, iret and some forms of call. Most of the time, the problem is that these instructions should push or pop 32-bit values to/from the stack, instead of 16bit, when they are prefixed by the 0x66 special opcode. The SeaBIOS project aims to produce a complete legacy BIOS implementation as well as a VGA option ROM, entirely written in C and using the GCC compiler. In 16bit code produced by the GCC compiler, the 0x66 prefix is used almost everywhere. This patch is necessary to allow the SeaBIOS VGA option ROM to function with Xorg when using the vesa driver. SeaBIOS currently use postprocessing on the ROM assembly output to replace the affected instruction with alternative unaffected instructions. This is obviously not very elegant, and this fix in x86emu would be more appropriate. v2: - Decrement BP instead of EBP in accordance with the Intel Manual - Assign EIP instead of IP when poping the return address from the stack in 32-bit operand size mode in ret_far_IMM, ret_far, and iret - When poping EFLAGS from the stack in iret in 32-bit operand size mode, apply some mask to preserve Read-only flags. v3: - Rebase Reviewed-by:
Adam Jackson <ajax@redhat.com> Signed-off-by:
Julian Pidancet <julian.pidancet@gmail.com>
-
Dave Airlie authored
This moves the code from the platform case into a common function, and calls that from the other two. v2: Emil convinced me we don't need to lookup pEnt here, so let's not bother. Reported-by:
Mark Kettenis <mark.kettenis@xs4all.nl> Reviewed-by:
Mark Kettenis <kettenis@openbsd.org> Signed-off-by:
Dave Airlie <airlied@redhat.com>
-
Dave Airlie authored
This isn't used anywhere, so no point storing it until we need it. Reviewed-by:
Mark Kettenis <kettenis@openbsd.org> Signed-off-by:
Dave Airlie <airlied@redhat.com>
-
- 03 Dec, 2015 1 commit
-
-
Arkadiusz Miskiewicz authored
Xorg.wrap includes code guarded with WITH_LIBDRM for detecting KMS drivers. Unfortunately it is never activated since code missed to include file which defines WITH_LIBDRM. Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=92894Signed-off-by:
Arkadiusz Miśkiewicz <arekm@maven.pl> Reviewed-by:
Michel Dänzer <michel.daenzer@amd.com> Signed-off-by:
Hans de Goede <hdegoede@redhat.com>
-
- 02 Dec, 2015 1 commit
-
-
Adam Jackson authored
Reported to break libinput: http://lists.freedesktop.org/archives/xorg-devel/2015-December/048091.html This reverts commit 1df07dc3.
-
- 01 Dec, 2015 3 commits
-
-
Keith Packard authored
Remove code in xf86Wakeup for dealing with device and other input and switch to using the new NotifyFd interface. Reviewed-by:
Adam Jackson <ajax@redhat.com> Signed-off-by:
Keith Packard <keithp@keithp.com>
-
Keith Packard authored
Replace the block/wakeup handlers with a NotifyFd callback. Reviewed-by:
Adam Jackson <ajax@redhat.com> Signed-off-by:
Keith Packard <keithp@keithp.com>
-
Alex Goins authored
Reviewed-by:
Adam Jackson <ajax@redhat.com> Signed-off-by:
Alex Goins <agoins@nvidia.com>
-
- 30 Nov, 2015 1 commit
-
-
Richard PALO authored
Globally replace #ifdef and #if defined usage of 'sun' with '__sun' such that strict ISO compiler modes such as -ansi or -std=c99 can be used. Signed-off-by:
Richard PALO <richard@NetBSD.org> Reviewed-by:
Alan Coopersmith <alan.coopersmith@oracle.com>
-