Commit Graph

494 Commits

Author SHA1 Message Date
Enrico Weigelt, metux IT consult
52c1ab55f0 release 25.0.1
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-01-26 20:44:44 +01:00
Enrico Weigelt, metux IT consult
e9ca302258 disable build-time option for present
present is always present in modern Xservers.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-01-12 19:27:54 +01:00
Enrico Weigelt, metux IT consult
dfe3053f6a configure.ac: consistent tabbing
replace tabs by 8x whitespace.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-01-12 18:23:55 +01:00
Enrico Weigelt, metux IT consult
636b3fc9f2 configure.ac: AC_SYS_LARGEFILE
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-12-31 11:11:30 +01:00
Enrico Weigelt, metux IT consult
bf0a77f440 configure.ac: increase minimum xserver version to 25.0.0
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-12-19 16:11:27 +01:00
Enrico Weigelt, metux IT consult
5079597c5b release 25.0.0
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-12-18 19:12:15 +01:00
Enrico Weigelt, metux IT consult
bec7c802ab configure.ac: drop unused sdkdir symbol
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-12-18 16:48:51 +01:00
Enrico Weigelt, metux IT consult
22c39431e7 configure.ac: replace DRIVER_NAME symbol by actual name
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-12-18 13:13:19 +01:00
Enrico Weigelt, metux IT consult
6b8600a33e release 3.0.1
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-12-16 15:14:13 +01:00
Enrico Weigelt, metux IT consult
9b5c988b7b drop unnecessary git revision printing
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-12-16 14:10:30 +01:00
Enrico Weigelt, metux IT consult
c9ee0c9289 configure.ac: fix package name and issue tracker URL
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-12-15 19:00:33 +01:00
Enrico Weigelt, metux IT consult
2960036ed3 drop obsolete XAA support
Since recent commits require xserver-1.18.0 or later to build against,
there's no reason leaving behind big chunks of code that can only build
against the XAA support removed in xserver-1.13.0 (released in 2012).

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-11-27 18:29:50 +01:00
Enrico Weigelt, metux IT consult
c181598ad1 bump minimal xorg version to 1.18
1.18 was released a decade ago, so it seems reasonable stop supporting
older ones.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2025-11-27 17:59:26 +01:00
callmetango
ff03e6981b configure: fix missing include of <xorg-server.h>
Fixes: #19
Signed-off-by: callmetango <callmetango@users.noreply.github.com>
2025-09-25 17:01:15 +02:00
b-aaz
8c99260b4f configure: Automatically detect the default xorg-module-dir.
The module directory has changed to a per ABI folder in the xlibre-xserver.
Now the default value of `xorg-module-dir` will be detected from the `moduledir` variable in xorg-server.pc.

Signed-off-by: b-aaz <b-aazbsd.proton.me>
2025-07-29 18:56:00 +02:00
Chris Wilson
0867eea666 Update buglink for gitlan issues
Issue tracking has been moved from a bugzilla instance to a gitlab
instance to go alongside and integrated with the gitlab repo, still all on
freedesktop.org.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2019-11-27 12:09:28 +00:00
Chris Wilson
3594772150 configure: Set DRI1 to autodiscover
We only need DRI1 to support UMS on i810, but modern Xservers don't
support DRI1 and the support infrastructure is no longer being shipped
on some distributions.  Gracefully fail if we can't compile the DRI1
code blocks for i810.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2018-05-12 10:01:10 +01:00
Ville Syrjälä
a3a9e99b52 autotools: Nuke IPC_RMID_DEFERRED_RELEASE
IPC_RMID_DEFERRED_RELEASE is unused so nuke it.

Signed-off-by: Ville Syrjälä <ville.syrjala@linux.intel.com>
2018-02-06 13:12:33 +00:00
Chris Wilson
1f6dfc9df6 sna: Only flush GPU bo for a damage event
Based on xf86-video-ati

commit 9a1afbf61fbb2827c86bd86d295fa0848980d60b
Author: Michel Dänzer <michel.daenzer@amd.com>
Date:   Mon Jul 11 12:22:09 2016 +0900

    Use EventCallback to avoid flushing every time in the FlushCallback

reports seeing an improvement in reducing flushes at the expense of
checking every event for a DamageNotifyEvent. Since we also mix
rendering with SHM buffers, we have a more diverse set of conditions
under which to flush - but maybe we will see enough of a win for DRI to
merit. So far seeing improvement of ~20% for series of small operations
under the compositor without seeing any regressions, should benefit
composited desktop users. The biggest danger here is missed flushes.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2016-08-02 13:03:26 +01:00
Chris Wilson
47cd7fdd0b test: Exercise XVidMode switching
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2016-05-04 12:34:37 +01:00
Chris Wilson
4e108afe55 Revert "configure: Remove test for strlcat"
This reverts commit e4e469a0ed.

It looks like we get to choose between breaking the clang build or the
gcc build. With gcc, we need to ensure that enter xorg/os.h with the
right set of HAVE_STRNDUP et al guards, e.g.

In file included from /usr/include/string.h:630:0,
                 from /usr/include/xorg/os.h:53,
                 from /usr/include/xorg/misc.h:116,
                 from fd.c:34:
/usr/include/xorg/os.h:590:1: error: expected identifier or '(' before '__extension__'
 strndup(const char *str, size_t n);

Reported-by: Arkadiusz Miskiewicz <arekm@maven.pl>
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2016-03-24 12:31:08 +00:00
Chris Wilson
e4e469a0ed configure: Remove test for strlcat
There's no point in testing for functions we don't use and seem to cause
problems for Clang.

Reported-by: Sedat Dilek <sedat.dilek@gmail.com>
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2016-03-24 11:04:50 +00:00
Chris Wilson
8e987511f0 tools/intel-virtual-output: Propagate screen blanking
When attaching to a target display, disable the builtin screen blanking
(equivalent to xset -d :8 s off, or setting
	Option          "BlankTime"     "0"
	Option          "StandbyTime"   "0"
	Option          "SuspendTime"   "0"
	Option          "OffTime"       "0"
in the target xorg.conf). Then listen to the ScreenSaver notify events
on the host and forward the activations/resets to the targets. This
should then keep all the screen blanking in sync.

Reported-by: Raffael Herzog <herzog@raffael.ch>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=93562
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2016-01-04 18:15:25 +00:00
Chris Wilson
2050d03f52 Start splitting out the benchmarks from test/
First comes the swap overhead measurement for various window modes.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2015-07-23 14:51:02 +01:00
Chris Wilson
6de85a1e60 test/present: Include composite redirected windows in the test matrix
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2015-04-05 21:13:38 +01:00
Chris Wilson
8d85793b08 configure: Replace hardcoded pkg-config --exists with PKG_CHECK_EXISTS
Suggested by Emil Velikov:

	Normally hard coding pkg-config is considered a bad idea. Please
 	try PKG_CHECK_EXISTS - it would work like a charm when
	cross-compiling.

	Cheers
	Emil

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2015-04-03 00:01:31 +01:00
Chris Wilson
2f047c6278 tools/dri3info: Query refresh rate on Primary monitor
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2015-04-01 12:55:44 +01:00
Chris Wilson
8f11f2bdcd Use AC_FUNC_ALLOC
The preferred all-inclusive method for finding alloca().

Reported-by: Richard Palo <richard@netbsd.org>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=89762
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2015-03-25 14:20:43 +00:00
Chris Wilson
aa40f99014 Use AC_HEADER_MAJOR to find how to include major()
We need to include <sys/mkdev.h> on Solaris.

Reported-by: Richard Palo <richard@netbsd.org>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=89763
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2015-03-25 14:14:30 +00:00
Chris Wilson
d85e68e2d3 sna: Add include <alloca.h> for compiling on Solaris
Reported-by: Richard Palo <richard@netbsd.org>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=89762
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2015-03-25 13:16:56 +00:00
Chris Wilson
bacaf7f18c sna: Use struct pixman_f_vector for compatibility with older pixman
Or else face compile failures:

blt.c: In function 'affine_blt':
blt.c:1403:3: error: unknown type name 'pixman_f_vector_t'
blt.c:1407:4: error: request for member 'v' in something not a structure or union
blt.c:1408:4: error: request for member 'v' in something not a structure or union
blt.c:1409:4: error: request for member 'v' in something not a structure or union
blt.c:1411:3: warning: passing argument 2 of 'pixman_f_transform_point_3d' from incompatible pointer type [enabled by default]
In file included from /usr/include/xorg/miscstruct.h:52:0,
                 from /usr/include/xorg/regionstr.h:52,
                 from /usr/include/xorg/region.h:50,
                 from /usr/include/xorg/window.h:51,
                 from /usr/include/xorg/input.h:55,
                 from /usr/include/xorg/xf86str.h:38,
                 from sna.h:43,
                 from blt.c:32:
/usr/include/pixman-1/pixman.h:247:15: note: expected 'struct pixman_f_vector *' but argument is of type 'int *'
blt.c:1413:7: error: request for member 'v' in something not a structure or union
blt.c:1415:7: error: request for member 'v' in something not a structure or union

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2015-03-17 09:48:43 +00:00
Chris Wilson
88e615425b configure: Make sure that BUILD_TOOL_CURSOR is always defined
Building intel driver with --disable-tools fails with following

  configure: error: conditional "BUILD_TOOL_CURSOR" was never defined.

Reported-by: Tomas Pruzina <pruzinat@gmail.com>
Bugzilla: https://bugs.freedesktop.org/show_bug.cgi?id=89425
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2015-03-04 15:29:45 +00:00
Chris Wilson
8d76f90e2c tools: Add simple tool to retrieve the current cursor from X
Slightly more funky would be to poke around in the CRTC, but that should
require master. As it stands this should help verify that what X is
supplying to the driver matches user expectations

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2015-03-04 11:20:50 +00:00
Chris Wilson
555f7f4f54 configure: Include the xorg-server version in the summary
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2015-03-03 12:47:24 +00:00
Chris Wilson
88e84320a3 sna/dri2: Flush triple buffer swap on [un]redirection
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2015-02-24 15:50:25 +00:00
Chris Wilson
12af8a575d sna: udev integration depends on fstat and sys/stat.h
src/sna/sna_driver.c: In function 'sna_handle_uevents':
src/sna/sna_driver.c:759:2: error: implicit declaration of function 'fstat' [-Werror=implicit-function-declaration]

Also take the opportunity to include udev support in the configure
summary.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2015-02-24 15:30:56 +00:00
Chris Wilson
426a3afcc6 sna/present: Prevent DoS from exhausting the kernel vblank queue
The kernel caps the number of vblanks per client to 128. There are
already reports from the wild that Present clients are running foul of
that limit, so supplement it with a timer fallback.

Testcase: present-test with future flips
Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2015-02-11 09:51:43 +00:00
Chris Wilson
61e957cb5f Enable support for render-nodes by default with DRI3
DRI3 can use render nodes if provided by the kernel, so enable it.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2015-02-10 14:03:11 +00:00
Chris Wilson
db629a3834 Allow runtime selection between DRI levels
Rather than imposing a maximum DRI level at compile time by compiling
out unwanted protocol handlers, default to limiting it at runtime so
that we can switch between any level.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2015-02-04 09:55:54 +00:00
Chris Wilson
2e7ae76038 test/dri2: Use xcb for more accurate timing of SwapBuffers
To do SwapBuffers correctly requires a Swap/Get buffers combination, and
this is easiest using xcb rather than xlib.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2015-01-28 11:46:43 +00:00
Patrick Welche
53e825d6cf configure.ac: pwd doesn't take an argument
bash built-in doesn't give an error, but real pwd does, and the
argument is unnecessary.

Signed-off-by: Patrick Welche <prlw1@cam.ac.uk>
2015-01-26 12:47:03 +00:00
Patrick Welche
ac90648ec7 backlight.c: test for features
Signed-off-by: Patrick Welche <prlw1@cam.ac.uk>
2015-01-26 12:46:07 +00:00
Chris Wilson
986cb2335c sna: Enable mmap(wc) support by default
Now included in upstream kernels as of

commit 1816f92363036600f2387bb8273b1e5e1f5b304e
Author: Akash Goel <akash.goel@intel.com>
Date:   Fri Jan 2 16:29:30 2015 +0530

    drm/i915: Support creation of unbound wc user mappings for objects

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2015-01-06 10:45:05 +00:00
Chris Wilson
baec802b21 2.99.917 snapshot 2014-12-21 14:41:12 +00:00
Chris Wilson
b6eeb7a1f7 Disable DRI3 by default
The external libraries, both in git, and especially shipping already
enabled in distributions, are buggy and lead to server crashes and
lockups. Caveat emptor.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2014-11-19 13:15:36 +00:00
Sedat Dilek
e96520327b sna: wc-mmap: Fix warning in configure
This fixes the following warning due to a typo:

configure: WARNING: unrecognized options: --enable-wc-map
Signed-off-by: Sedat Dilek <sedat.dilek@gmail.com>
2014-11-07 10:05:59 +00:00
Chris Wilson
0aa2edbd29 Remove defunct glamor support
It never was a stable or complete replacement, and now it is
incorporated in Xorg itself!

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2014-11-06 16:55:46 +00:00
Chris Wilson
87802b3402 sna: Experimental support for write-combining mmaps
If we have a linear buffer, we can request the kernel mmap it directly
with write-combining without having to pin it into the GTT. This allows
us to efficiently upload very large buffers, and can avoid the dreaded
aperture thrashing.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2014-11-06 16:55:46 +00:00
Chris Wilson
0d451ee389 configure: Require the presence of xorg/glamor.h for --enable-glamor
Check that we have the required Xorg headers for glamor if the user
requests --enable-glamor. There is a possiblity that the headers
mismatch as they don't have internal versioning, but this should catch
the majority of errors early on.

Signed-off-by: Chris Wilson <chris@chris-wilson.co.uk>
2014-09-15 08:46:46 +01:00
Chris Wilson
692c14d405 2.99.916 snapshot 2014-09-08 08:53:32 +01:00