Commit Graph

10397 Commits

Author SHA1 Message Date
stefan11111
a2976e3023 treewide: Pull DEFAULT_LOGDIR into dix-config.h
With this, X servers don't have to parse this option separately,
and can just use it after including dix-config.h

Linux kdrive servers (currently Xfbdev only) now support logging.

Signed-off-by: stefan11111 <stefan11111@shitposting.expert>
2026-03-18 14:09:52 +01:00
NexusSfan
13234efe7b Fix Hurd support for the vesa driver.
Also, nitpick, but `__GNU__` is the correct ifdef to use, not `__hurd__`.

Signed-off-by: NexusSfan <nexussfan@duck.com>
2026-03-16 13:30:13 +01:00
Icenowy Zheng
d0e2967eab modesetting: properly use fb_id of front_bo for reverse PRIME CRTC
When doing reverse PRIME, the buffer being scaned out is still the front
BO.

Properly reuse its fb_id, to prevent adding a FB for the front_bo each
time the fb_id is requested.

Signed-off-by: Icenowy Zheng <uwu@icenowy.me>
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/2064>
2026-03-16 13:22:51 +01:00
Thomas Zimmermann
ca1c0976dd Add a workaround to accept devices of the kernel's corebootdrm
driver. Makes Xorg work on pre-configured displays with coreboot
and the DRM graphics stack. Review of the corebootdrm driver
happens at [1].

Signed-off-by: default avatarThomas Zimmermann <tzimmermann@suse.de>
Link: https://patchwork.freedesktop.org/series/159820/ # [1]
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/2132>
2026-03-16 13:19:45 +01:00
Thomas Zimmermann
af1459136d xf86: Accept devices with the kernel's vesadrm driver
Add a workaround to accept devices of the kernel's vesadrm driver.
Makes Xorg work on pre-configured displays with VESA and the DRM
graphics stack. Review of the vesadrm driver happens at [1].

Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
Link: https://patchwork.freedesktop.org/series/146477/ # 1
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/1879>
2026-03-16 13:19:45 +01:00
Thomas Zimmermann
901146fe17 xf86: Accept devices with the kernel's efidrm driver
Add a workaround to accept devices of the kernel's efidrm driver.
Makes Xorg work on pre-configured displays with UEFI and the DRM
graphics stack. Review of the efidrm driver happens at [1].

Signed-off-by: Thomas Zimmermann <tzimmermann@suse.de>
Link: https://patchwork.freedesktop.org/series/146477/ # 1
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/1879>
2026-03-16 13:19:45 +01:00
Timo Aaltonen
bd5c2ee289 xf86pciBus.c: use Intel ddx only for pre-gen3 hardware
Use intel ddx only on pre-gen4 hw, newer ones will fall back to modesetting.

Instead of defaulting to the Intel driver for all Intel hardware, only
default it for older hardware for which it has shown to be better for.

Note that Debian/Fedora and their derivatives, as well as the yocto project
have been carrying this patch for many years:
192254841a
ee515e44b0

so this simply aligns xserver upstream with Linux distributions.

Signed-off-by: California Sullivan <california.l.sullivan@intel.com>
Signed-off-by: Alexander Kanavin <alex@linutronix.de>
Co-authored-by: Balló György <ballogyor@gmail.com>
Reviewed-by: Emma Anholt <emma@anholt.net>
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/1887>
2026-03-16 13:18:42 +01:00
Jon Turney
3ac5886879 hw/xwin: Allow DefWindowProc to SetFocus() as needed after WM_ACTIVE
Don't indicate we've processed WM_ACTIVATE, so DefWindowProc can do
not-clearly specified default things with the focus.

Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/736>
2026-03-16 13:12:29 +01:00
Jon Turney
0decf12c56 hw/xwin: More adjustments to multiwindow mode focus handling
The previous change is not enough, as WM_KILLFOCUS can apparently be
sent to the window losing focus after WM_ACTIVATE has been sent to
the window gaining focus.

Try using WM_SETFOCUS instead, as that has the correct ordering and seems
more logical.

The test "!pWin || !pWin->overrideRedirect" is confusingly written: It's
true if:

(a) pWin is NULL (= X window doesn't exist, shouldn't happen), or
(b) pWin->overrideRedirect is FALSE

i.e. the intended effect is "don't give focus to override redirect windows"

There seem to be some cases where this still isn't quite correct: A
reproduction isn't known, but it seems to be related to minimizing a
maximized Windows window, and having window activation move to a
maximized X window beneath it.

Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/736>
2026-03-16 13:12:29 +01:00
Jon Turney
0adc6ff90f hw/xwin: Always set the X input focus to none when an X window loses focus
In the multiwindow WM, we need to cancel the X input focus if the
Windows input focus has gone to the desktop, or another application's
window.

We could maybe avoid some unneeded work by not doing this if the
WM_KILLFOCUS wParam is another window owned by us, which is immediately
going to be given the X input focus.

Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/736>
2026-03-16 13:12:29 +01:00
Jon Turney
3954f766af hw/xwin: Use revert-to-parent X focus mode in multiwindow WM
Use revert-to-parent X focus mode, as recommended in ICCCM 4.1.7

Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/736>
2026-03-16 13:12:29 +01:00
Diego Viola
639551d032 treewide: fix typos
Signed-off-by: default avatarDiego Viola <diego.viola@gmail.com>
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/2138>

---------------------------------------------------------------------------

One of the spelling errors was moved to another file and fixed there

Signed-off-by: stefan11111 <stefan11111@shitposting.expert>
2026-03-16 13:11:07 +01:00
stefan11111
e6a0fa4b0c Treewide: Fix typos
Signed-off-by: Diego Viola <diego.viola@gmail.com>
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/2134>

----------------------------------------------------------------------------

This commit is the result of `git apply commit.diff --reject`
applied on e8f4522312

67c82078fe does not
apply to Xlibre

Signed-off-by: stefan11111 <stefan11111@shitposting.expert>
2026-03-16 13:11:07 +01:00
Alan Coopersmith
3783d7eeee xfree86: issue error if too many clocks entries are listed in config
Changes message issued for too many clocks from the confusing:
    "29.0" is not a valid keyword in this section.
to the more obvious:
    More than 128 Clocks defined.

Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/2130>
Fixes: https://github.com/X11Libre/xserver/issues/1407
Fixes: https://gitlab.freedesktop.org/xorg/xserver/-/issues/1851
Fixes: https://github.com/X11Libre/xserver/pull/1416
2026-03-16 13:08:04 +01:00
Alan Coopersmith
e4d55c4453 ephyr: show that -name & -title take non-optional arguments in usage output
Fixes: f028e245a7 ("Bug #10016: Implement WM_CLASS hints in Xephyr.")
Fixes: e3c65cf1df ("xephyr: Add -title option.")
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/2137>
2026-03-16 13:06:53 +01:00
Alan Coopersmith
6e3afd4be4 ephyr: add -name to Xephyr man page
Fixes: f028e245a7 ("Bug #10016: Implement WM_CLASS hints in Xephyr.")
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/2137>
2026-03-16 13:06:53 +01:00
Alan Coopersmith
bee767c000 ephyr: add -title to Xephyr man page
Fixes: e3c65cf1df ("xephyr: Add -title option.")
Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/2137>
2026-03-16 13:06:53 +01:00
Alan Coopersmith
465742c7b4 os: add a generic -verbose option instead of making each server add its own
Replaces Xwayland's server-specific implementation, but leaves Xorg's
since it sets global variables in the xfree86 ddx layer.  Also leaves
Xephyr's differently-spelled "-verbosity" for backwards compatibility.

Signed-off-by: Alan Coopersmith <alan.coopersmith@oracle.com>
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/2131>
2026-03-16 13:06:32 +01:00
Enrico Weigelt, metux IT consult
126eb37529 kdrive: linux: replace __uid_t and __gid_t by standard types
Fix build on musl.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-16 14:51:39 +01:00
Enrico Weigelt, metux IT consult
e1933ec5a7 meson.build: fix .pc and .m4 install on xorg-sdk-only build
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-14 14:30:39 +01:00
Enrico Weigelt, metux IT consult
af0de5a0f4 xfree86: make xf86Sbus.h private
This header isn't actually included by any drivers (not even the sun* ones),
neither does it have any _X_EXPORT'ed symbols, nor structs that a driver
could use. Not relevant at all for proprietary Nvidia drivers, because their
cards never worked on Sbus.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-13 16:29:01 +01:00
Enrico Weigelt, metux IT consult
921215026f xfree86: ramdac: don't ifdef on HAVE_XORG_CONFIG_H
It's always present, so no need to ifdef on it.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-13 14:00:57 +01:00
Enrico Weigelt, metux IT consult
7f8eeb5471 xfree86: sdksyms.sh: don't ifdef on HAVE_XORG_CONFIG_H anymore.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-13 14:00:49 +01:00
Enrico Weigelt, metux IT consult
bb821cf041 xfree86: utils: don't ifdef on HAVE_XORG_CONFIG_H anymore
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-13 14:00:12 +01:00
Enrico Weigelt, metux IT consult
528c7a95bd xfree86: vgahw: don't ifdef on HAVE_XORG_CONFIG_H anymore
it's always present, so no need to check for it.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-13 13:59:54 +01:00
Enrico Weigelt, metux IT consult
fabb551d88 xfree86: shadowfb: don't ifdef on HAVE_XORG_CONFIG_H anymore
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-13 13:37:08 +01:00
Enrico Weigelt, metux IT consult
b6e5c98809 xfree86: xkb: don't ifdef on HAVE_XORG_CONFIG_H anymore
it's always present, so no need to check for it.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-13 13:36:55 +01:00
Enrico Weigelt, metux IT consult
786ba60a07 xfree86: loader: don't ifdef on HAVE_XORG_CONFIG_H anymore
It's always present, so no need to ifdef on it.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-13 13:12:44 +01:00
Enrico Weigelt, metux IT consult
54b23f986b xfree86: fbdev: don't ifdef on HAVE_XORG_CONFIG_H
it's always present here, so no need to ifdef on it.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-13 12:35:07 +01:00
Enrico Weigelt, metux IT consult
b2e858ee80 meson.build: move build_xephyr and build_xfbdev to toplevel
These values are also used in at the toplevel, and we're going to
have more uses there for xorg-sdk-only builds.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-13 12:34:15 +01:00
Enrico Weigelt, metux IT consult
7dad061eab xfree86: parser: dont ifdef on HAVE_XORG_CONFIG_H
The header is always present (we're inside xfree86), so no need
for that #ifdef.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-13 12:33:40 +01:00
Enrico Weigelt, metux IT consult
e085d839cc xfree86: ramdac: move over public SDK headers to include/
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-13 11:40:38 +01:00
Enrico Weigelt, metux IT consult
4764eb9a8a xfree86: int10: move public SDK headers to include/
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-13 10:25:17 +01:00
Enrico Weigelt, metux IT consult
3bd7f343c1 xfree86: shadowfb: move public SDK headers into include/
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-13 10:11:07 +01:00
Enrico Weigelt, metux IT consult
dda087c554 xfree86: parser: move public SDK headers into include/
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-12 20:00:11 +01:00
Enrico Weigelt, metux IT consult
a1081d7765 xfree86: common: move public SDK headers to include/
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-12 19:51:51 +01:00
Enrico Weigelt, metux IT consult
1cc06b8d60 xfree86: i2c: move over public SDK headers to include/
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-12 19:50:11 +01:00
Enrico Weigelt, metux IT consult
45d2ba92d3 xfree86: ddc: move public SDK headers to include/
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-12 19:18:54 +01:00
Enrico Weigelt, metux IT consult
1431b33caa xfree86: modes: move public SDK headers to include/
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-12 19:03:56 +01:00
Enrico Weigelt, metux IT consult
69d57bcf52 Xext: move over public SDK headers to include/
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-12 19:00:42 +01:00
Enrico Weigelt, metux IT consult
9bd146a391 xfree86: dri: move over public SDK headers to include/
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-12 18:28:35 +01:00
Enrico Weigelt, metux IT consult
0edeb0e34e xfree86: vgahw: move over public SDK header to include/
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-12 17:08:29 +01:00
Enrico Weigelt, metux IT consult
e20767dd40 xfree86: fbdevhw: move over public SDK header to include/
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-12 16:26:30 +01:00
Enrico Weigelt, metux IT consult
0272fcd55e present: move over public SDK header to include/
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-12 16:21:20 +01:00
Enrico Weigelt, metux IT consult
65472d1964 xfree86: move over public SDK headers to include/
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-12 16:21:02 +01:00
Enrico Weigelt, metux IT consult
5478f077d9 kdrive: meson.build: little indention fix
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-12 14:25:18 +01:00
Enrico Weigelt, metux IT consult
b9259d00bc config: move over nvidia driver quirks to hw/xfree86/compat
This is specific to xfree86 DDX, so should be under it's subdir.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-12 13:25:34 +01:00
Enrico Weigelt, metux IT consult
a67c578486 xwin: replace putenv() by setenv()
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-11 19:00:50 +01:00
Enrico Weigelt, metux IT consult
482a11238f xquartz: dont include dix-config.h in other headers
dix-config.h needs to be included at the very top of all sources,
but it shouldn't be included from other headers.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-11 17:04:55 +01:00
Enrico Weigelt, metux IT consult
bf107bc06b xwin: drop obsolete HAVE_XWIN_CONFIG_H
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-11 16:34:22 +01:00