Commit Graph

22405 Commits

Author SHA1 Message Date
Enrico Weigelt, metux IT consult
ebe91d83d3 xfree86: ddc: drop obsolete IS_RIGHT_ON_SYNC() and IS_LEFT_STEREO()
Not used anymore, so no need to keep them around any longer.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-01-27 19:10:38 +01:00
Enrico Weigelt, metux IT consult
7c59856e8b xfree86: ddc: move DISP_* defines into print_edid.c
Only used in one source file, so no need to keep them in global header.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-01-27 18:56:39 +01:00
Enrico Weigelt, metux IT consult
769616256f xfree86: ddc: drop unused IS_INTERLACED() macro
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-01-27 18:55:11 +01:00
Enrico Weigelt, metux IT consult
41b2c02f63 xfree86: ddc: drop obsolete DEFAULT_GTF() macro
Not used anywhere.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-01-27 17:41:52 +01:00
Enrico Weigelt, metux IT consult
fa09ad5a61 xfree86: ddc: move struct cea_ext_body into interpret_edid.c
It's only used there, so no need to keep it in public header.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-01-27 17:28:04 +01:00
Enrico Weigelt, metux IT consult
ac141cd1cc xfree86: ddc: drop unused RANGE_LIMITS_ONLY() macro
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-01-27 17:22:31 +01:00
Enrico Weigelt, metux IT consult
78953e5965 xfree86: ddc: drop obsolete DFP1() macro
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-01-27 15:44:51 +01:00
Enrico Weigelt, metux IT consult
86c6e75117 .github: increase xf86-video-intel version to 25.0.1
Upcoming work needs a few fixes in the Intel driver.
(mainly not using internal EDID parser defines anymore)

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-01-27 15:44:34 +01:00
Mario Limonciello
78213678b2 xfree86: common: xf86pciBus: Add compatibility define for pci_device_is_boot_display()
It will take some time for a new libpciaccess to be released and
even then bumping the dependency for libpciaccess isn't attractive.
If an older libpciaccess is used just add a static inline define.

Signed-off-by: Tautvis <gtautvis@gmail.com>
2026-01-27 12:26:34 +01:00
Mario Limonciello
06ae758f57 xfree86: common: xf86pciBus: Add check for pci_device_linux_sysfs_boot_display()
In the case of multiple display devices that are not VGA devices
the 'boot_display' attribute read by libpciaccess can disambiguate.

Signed-off-by: Tautvis <gtautvis@gmail.com>
2026-01-27 12:26:34 +01:00
Enrico Weigelt, metux IT consult
1cb42729a4 xfree86: ddc: replace several internal macros that aren't really needed
Just replace them by their actual definition right where they're called.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-01-27 11:31:17 +01:00
Enrico Weigelt, metux IT consult
a6d1bdcd3e .github: util: add support for arbitrary refs to drv_tag() et al.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-01-26 21:17:48 +01:00
Enrico Weigelt, metux IT consult
5c226122f5 meson_options: xquartz: rename bundle ID prefix to xlibre.net
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-01-23 12:50:32 +01:00
stefan11111
76356395e7 kdrive/fbdev: Fix uninitialized variable when switching vt's
When rapidly switching vt's, it can happen that shadow tries to
draw to the screen before it's initialized.
In that case, we return NULL, and we should also return a zero size,
because shadow doesn't check for NULL.

Signed-off-by: stefan11111 <stefan11111@shitposting.expert>
2026-01-23 12:47:36 +01:00
Enrico Weigelt, metux IT consult
43232e4f09 xfree86: edid.h: drop Uint typedef
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-01-22 13:03:12 +01:00
Enrico Weigelt, metux IT consult
4cc303a2d2 xfree86: xlibre-server.h: fix missing HAVE_TIMINGSAFE_MEMCMP
os.h still defining our own timingsafe_memcmp() prototype when this
symbol isn't set - this is causing trouble with drivers on FreeBSD.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-01-22 12:38:28 +01:00
Enrico Weigelt, metux IT consult
8ab6539d0b xfree86: replace Uchar by C standard uint8_t
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-01-22 11:14:23 +01:00
Enrico Weigelt, metux IT consult
080413fe1f Xext: damage: DamageExtSetCritical() replace Bool by bool
Prefer C standard stdbool over Xlib's own type.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-01-22 08:58:36 +01:00
stefan11111
30fb629a7d kdrive: Enable zapping by default
Zapping is the fastest way to kill the X server, faster than vt switching,
or killing the window manager and configuring the X server to die with it.

It is very useful when debugging, or if the system runs very low on memory

This adds the `-nozap` argument, for restoring the old behavior.
The `-zap` argument is also kept for backwards compatibility.

Signed-off-by: stefan11111 <stefan11111@shitposting.expert>
2026-01-22 08:58:15 +01:00
Aggelos Tselios
2683973d51 Xext: namespace: Allow using tabs as delimeters
Allow the parseLine() function to use tabs alongside spaces to separate
tokens. Without this patch, using tabs in the config file actually
confuses the parser and makes it think that the tab is part of the
option's name.

Signed-off-by: Aggelos Tselios <aggelostselios777@gmail.com>
2026-01-22 08:57:15 +01:00
Aggelos Tselios
f9ddcbd9ae Xext: namespace: Properly document parseLine() function
The previous comment made no sense. Add a proper comment to document the
function instead.

Signed-off-by: Aggelos Tselios <aggelostselios777@gmail.com>
2026-01-22 08:57:15 +01:00
stefan11111
162fda3bd6 kdrive/fbdev: Get glx working through glamor egl on Xfbdev
Signed-off-by: stefan11111 <stefan11111@shitposting.expert>
2026-01-21 10:23:23 +01:00
stefan11111
f69d06e7d3 kdrive/fbdev: Fix miscmansuffix in the Xfbdev manpage
Signed-off-by: stefan11111 <stefan11111@shitposting.expert>
2026-01-21 10:12:20 +01:00
stefan11111
c2ca290e63 kdrive: Build Xkdrive man page
Signed-off-by: stefan11111 <stefan11111@shitposting.expert>
2026-01-21 10:12:20 +01:00
stefan11111
ba16aca944 glamor/glamor_egl.c: Remove some whitespaces
Signed-off-by: stefan11111 <stefan11111@shitposting.expert>
2026-01-21 10:11:05 +01:00
Enrico Weigelt, metux IT consult
5a7fb205a1 xkb: rename xkbgeom.h to xkbgeom_priv.h
Our naming convention for headers is that private ones (not exported,
ie. not part of xf86 sdk) shall be suffixed by "_priv.h".

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-01-20 12:45:01 +01:00
Enrico Weigelt, metux IT consult
f738e30963 xfree86: os-support: linux: drop unused lnx_ev56.c
This file isn't even compiled ever, so we really don't need it anymore.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-01-14 15:55:35 +01:00
Enrico Weigelt, metux IT consult
36e1a9c37c xfree86: add exported xf86GetConsoleFd()
This functions is designed for some legacy keyboard drivers
(eg. xf86-input-keyboard) that need to get the fd to the console
device, so they don't need to directly access xf86Info field anymore.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-01-14 11:15:19 +01:00
Enrico Weigelt, metux IT consult
efc9321a64 xfree86: os-support: drop local "fd" variable in xf86OpenConsole()
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-01-13 17:50:38 +01:00
Enrico Weigelt, metux IT consult
d8eb141135 xfree86: os-support: common: reorganize console driver table
Merge driver name and open-proc tables into one, using a struct.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-01-13 17:05:58 +01:00
Enrico Weigelt, metux IT consult
e814acf006 xfree86: os-support: bsd: scope "vtmode" in xf86OpenConsole()
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-01-13 15:30:33 +01:00
Enrico Weigelt, metux IT consult
fd5cd094d1 xfree86: os-support: bsd: scope "result" variable in xf86OpenConsole()
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-01-13 14:52:40 +01:00
Tautvis
2cfb92330f glx: glxext fix memory leak when calling DestroyPixmap
Call dixDestroyPixmap instead pScreen->DestroyPixmap, which is correct
call to free resources as since cece84fa93
the Screen->DestroyPixmap function is no longer wrapped.

Fixes: https://github.com/X11Libre/xserver/issues/1809

Signed-off-By: Tautvis <gtautvis@gmail.com>
2026-01-13 14:44:52 +01:00
Imre Vadász
e0f4acc929 Remove workaround for ancient FreeBSD versions before 2.2.8.
This workaround was unnecessarily active for current DragonFlyBSD,
as well as probably for current FreeBSD as well, because the
"pcvt" console support would be used by default. Hence this adds
explicit code for the PCVT case to skip the quirk on FreeBSD and
DragonFlyBSD.

Signed-off-by: Imre Vadász <imre@vdsz.com>
2026-01-13 14:13:57 +01:00
Enrico Weigelt, metux IT consult
b5f2c96901 xfree86: os-support: bsd: tiny logging simplification on PCVT
There isn't much practical value of printing kernel PCVT driver
version into our log on NetBSD. Let's simplify this a bit and
get cut down the #ifdef wood a little bit.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-01-13 14:11:25 +01:00
stefan11111
69da481f66 kdrive/linux: Set device name when using the evdev driver
Signed-off-by: stefan11111 <stefan11111@shitposting.expert>
2026-01-12 16:46:17 +01:00
stefan11111
cc152cf964 kdrive/linux: Improve evdev driver autodetection
It should now work out of the box on most setups
with one mouse and one keyboard.

It probably still breaks on some single mouse and keyboard
setups, and on setups with more than one mouse or keyboard.

Signed-off-by: stefan11111 <stefan11111@shitposting.expert>
2026-01-12 16:46:17 +01:00
stefan11111
a2c58b9934 kdrive/linux: Try all 32 static evdev device nodes
Signed-off-by: stefan11111 <stefan11111@shitposting.expert>
2026-01-12 16:46:17 +01:00
squishypinkelephant
02f1efe2bc Xext: shape: replace ShapeEventType resource by devPrivate
Instead of abusing resource types, use the standard devPrivate
mechanism for assigning auxillary data to windows.

Signed-off-by: squishypinkelephant <squishypinkelephant@gmail.com>
2026-01-12 10:11:55 +01:00
stefan11111
cb445cef6b kdrive/fbdev: Use ShadowFB by default
It can be disabled by passing `-noshadow` to the command-line args

Signed-off-by: stefan11111 <stefan11111@shitposting.expert>
2026-01-12 09:14:31 +01:00
stefan11111
5d3490d135 Xext/dri2: Fix small memory leak.
Fixes: https://github.com/X11Libre/xserver/pull/1414
Fixes: https://github.com/X11Libre/xserver/issues/1413
(Fixes the small leak that was mentioned there,
not sure if there isn't a bigger one somewhere else)

Signed-off-by: stefan11111 <stefan11111@shitposting.expert>
2026-01-12 09:13:24 +01:00
stefan11111
984f403a17 kdrive: Fixup keyboard events after vt switch
Signed-off-by: stefan11111 <stefan11111@shitposting.expert>
2026-01-12 08:08:52 +01:00
Enrico Weigelt, metux IT consult
a9c2edfffd dix: encapsulate ScreenRec::UnrealizeWindow() call in helper function
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-01-08 17:44:11 +01:00
Enrico Weigelt, metux IT consult
b9036466dd xorg-server.m4: add helper macros for driver builds
Adding a bunch of autoconf macros easier building of drivers.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-01-08 17:17:12 +01:00
Enrico Weigelt, metux IT consult
e369882b50 xorg-server.pc: add more variables for easier driver builds
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-01-08 16:57:10 +01:00
squishypinkelephant
6db9b685c1 fully split, rename kdInitInputPre to KdAddConfigInputDrivers 2026-01-08 10:32:42 +01:00
squishypinkelephant
80112b61ba split KdInitInput for Xephyr 2026-01-08 10:32:42 +01:00
Enrico Weigelt, metux IT consult
afc8ec2475 xfree86: add macros for declaring XF86ModuleData fields
XF86_MODULE_DATA_INPUT() creates XF86ModuleData field for input driver,
while XF86_MODULE_DATA_VIDEO creating one for a video driver.

These are filled with given values, _X_EXPORT'ed and properly named so
the module loader can find them. Also creating the associated
XF86ModuleVersionInfo field and link them into the XF86ModuleData.

Example:

    XF86_MODULE_DATA_INPUT(
        egalax,
        eGalaxPlug,
        eGalaxUnplug,
        "egalax",
        PACKAGE_VERSION_MAJOR,
        PACKAGE_VERSION_MINOR,
        PACKAGE_VERSION_PATCHLEVEL);

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-01-07 20:33:28 +01:00
Enrico Weigelt, metux IT consult
e561e3212b xfree86: xf86Module.h: macro for declaring video driver module version
Reduce the effort of declaring/filling an video driver's module version
struct to short statement like this:

    XF86_MODULE_VERSION_VIDEO("ati",
                              PACKAGE_VERSION_MAJOR,
                              PACKAGE_VERSION_MINOR,
                              PACKAGE_VERSION_PATCHLEVEL);

This will create a properly filled XF86ModuleVersionInfo structure
named `modInfo`.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-01-07 20:09:39 +01:00
Enrico Weigelt, metux IT consult
a56a08e713 xfree86: xf86Module.h: macro for declaring input driver module version
Reduce the effort of declaring/filling an input driver's module version
struct to short statement like this:

    XF86_MODULE_VERSION_INPUT("egalax",
                              PACKAGE_VERSION_MAJOR,
                              PACKAGE_VERSION_MINOR,
                              PACKAGE_VERSION_PATCHLEVEL);

This will create a properly filled XF86ModuleVersionInfo structure
named `modInfo`.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-01-07 19:51:48 +01:00