22471 Commits

Author SHA1 Message Date
Enrico Weigelt, metux IT consult
957be4344d Xext: dpms: drop internal resource type
This just served for automatic GC when client goes down,
but it's simpler to do it via ClientDestroyCallback.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-04 15:55:07 +01:00
Enrico Weigelt, metux IT consult
f80df94254 [PR #1902] Xext: dpms: use local xorg_list instead of abusing resources
PR: https://github.com/X11Libre/xserver/pull/1902
2026-02-04 15:55:07 +01:00
Enrico Weigelt, metux IT consult
3bd2c8aa1c render: drop internal server reset support
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-04 15:49:58 +01:00
Enrico Weigelt, metux IT consult
4395caee14 Xi: use REQUEST_HEAD_STRUCT and REQUEST_FIELD_* macros
Use the new macros to make request struct parsing / field swapping
much easier.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-04 12:52:48 +01:00
Enrico Weigelt, metux IT consult
e8ec547b93 xfree86: vgahw: rename scrninfp to pScrnInfo
Improve naming consisency.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-03 17:16:17 +01:00
Enrico Weigelt, metux IT consult
3cb0735a48 xfree86: ddc: new entry point for EDID parsing
The old ones didn't know the block size, so couldn't deduce the block
type version. With upcoming new features, eg. HDR, we need to know the
block type version in order to know what we can extract from it.

This new function should now be used by all drivers, the old ones shall
be phased out.

That commit should be backported to 25.0 and 25.1 releases, so drivers
can remain compatible with all existing release lines.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-03 16:57:02 +01:00
Enrico Weigelt, metux IT consult
25290ac9ee xfree86: ddc: simplify xf86InterpretEDID()
It's doing nothing but calling xf86InterpretEDID().

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-03 16:40:18 +01:00
Enrico Weigelt, metux IT consult
847788ba72 Xnest: drop support for "full regeneration"
This is (rarely used) special mode where, at server regeneration
(when last client exited), Xnest is additionally terminating and
restarting it's upstream connection, thus also recreating it's
main window, etc.

That mode is only meant for special debug scenarios, not suited for
practical use. And the same can be achieved by just terminating the
whole Xnest process (-terminate cmdline arg) and restrting it.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-03 15:46:18 +01:00
Enrico Weigelt, metux IT consult
54b9c49987 Xext: xres: ProcXResQueryClientIds() use x_rpcbuf_t
Use x_rpcbuf_t instead of old own "Fragments" type for payload assembly.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-03 15:45:26 +01:00
Enrico Weigelt, metux IT consult
8cbf96e7b4 .github: fix title of commit signoff check
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-03 15:25:58 +01:00
Enrico Weigelt, metux IT consult
4642d6207f os: unexport SeatId and move it to dix settings
Not used by any external module/driver, so no need to keep it
public. Also move it to the new dix settings code and rename it.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-03 11:34:14 +01:00
Enrico Weigelt, metux IT consult
569f6f936f kdrive: mode KD_* defines into kinput.c
Only locally used there, so no need to keep them in global header.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-03 10:44:52 +01:00
Enrico Weigelt, metux IT consult
a550540f67 xfree86: ddc: add xf86Monitor_gtf_supported()
replacement for GTF_SUPPORTED() macro that's not a good API isolation
at all. Drivers should use that function instead for checking whether
the monitor supports GTF.

Should be backported to older releases, too - so drivers don't need
extra per-Xserver-version tweaks.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-02 19:32:38 +01:00
stefan11111
61aa2ede91 modesetting: Work around vm cursor pitch quirks
When running in a virtual machine, the cursor pitch
may not behave the same as it does on bare metal.

This patch disables a power consumption optimization
when running in a vm, working around the cursor pitch issues.

This means that some vm users who previously had a working
cursor pitch may now see some increased power consumption.

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

Signed-off-by: stefan11111 <stefan11111@shitposting.expert>
2026-02-02 11:12:41 +01:00
Enrico Weigelt, metux IT consult
4ee2a5e16a dix: inline SProcGrabButton()
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-01-31 16:20:28 +01:00
stefan11111
3913c997a9 kdrive/ephyr: Fix typo when checking for EGL_KHR_platform_x11
Signed-off-by: stefan11111 <stefan11111@shitposting.expert>
2026-01-31 16:16:31 +01:00
Enrico Weigelt, metux IT consult
28d930b16c dix: inline SProcQueryColor()
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-01-31 16:16:19 +01:00
Enrico Weigelt, metux IT consult
3e4bb9a0d9 xfree86: exa: drop ifdef HAVE_XORG_CONFIG_H
Not really needed, because <xorg-config.h> is always present anyways.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-01-30 17:54:30 +01:00
Enrico Weigelt, metux IT consult
eb499ff4d5 xfree86: dri: drop ifdef HAVE_XORG_CONFIG_H
Not really needed, because <xorg-config.h> is always present anyways.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-01-30 17:54:30 +01:00
Enrico Weigelt, metux IT consult
0c3a471c4c xfree86: drivers: drop ifdef HAVE_XORG_CONFIG_H
Not really needed, because <xorg-config.h> is always present anyways.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-01-30 17:54:30 +01:00
Enrico Weigelt, metux IT consult
8ffab59ad2 xfree86: loader: drop ifdef HAVE_XORG_CONFIG_H
Not really needed, because <xorg-config.h> is always present anyways.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-01-30 17:54:30 +01:00
Enrico Weigelt, metux IT consult
f5eb6b6c57 xfree86: dixmods: drop ifdef HAVE_XORG_CONFIG_H
Not really needed, because <xorg-config.h> is always present anyways.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-01-30 17:54:30 +01:00
Enrico Weigelt, metux IT consult
f949ddea88 xfree86: i2c: drop ifdef HAVE_XORG_CONFIG_H
Not really needed, because <xorg-config.h> is always present anyways.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-01-30 17:54:30 +01:00
Enrico Weigelt, metux IT consult
2f2ecad0b5 xfree86: int10: drop ifdef HAVE_XORG_CONFIG_H
Not really needed, because <xorg-config.h> is always present anyways.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-01-30 17:54:30 +01:00
Enrico Weigelt, metux IT consult
e1111ead5c xfree86: modes: drop ifdef HAVE_XORG_CONFIG_H
Not really needed, because <xorg-config.h> is always present anyways.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-01-30 17:54:30 +01:00
Enrico Weigelt, metux IT consult
0111a3cc9e xfree86: ddc: drop ifdef HAVE_XORG_CONFIG_H
Not really needed, because <xorg-config.h> is always present anyways.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-01-30 17:54:30 +01:00
Enrico Weigelt, metux IT consult
73dd3a470f xfree86: common: drop ifdef HAVE_XORG_CONFIG_H
Not really needed, because <xorg-config.h> is always present anyways.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-01-30 17:54:30 +01:00
Enrico Weigelt, metux IT consult
f7e5867927 xfree86: os-support: drop ifdef HAVE_XORG_CONFIG_H
Not really needed, because <xorg-config.h> is always present anyways.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-01-30 17:54:30 +01:00
Enrico Weigelt, metux IT consult
8b8c9b9200 xfree86: move pci_device_is_boot_display to priv header and document it
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-01-30 17:35:40 +01:00
Enrico Weigelt, metux IT consult
705a3a9978 xfree86: drop obsolete xf86PciInfo.h
Nobody's using this file anymore, so no need to keep it any longer.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-01-30 17:34:29 +01:00
Enrico Weigelt, metux IT consult
431082ba9f .github: update xf86-video-v4l to 25.0.1
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-01-30 17:12:24 +01:00
Enrico Weigelt, metux IT consult
05d2b20e20 xfree86: move xf86_platform_device_odev_attributes() into private header
Not used by external drivers, and not part of ABI (just an inline),
so no need to keep it it public SDK header.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-01-30 12:49:00 +01:00
Enrico Weigelt, metux IT consult
b9c5787ca5 xfree86: ddc: interpret_edid.c: minor whitespace fixes
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-01-29 19:00:23 +01:00
Enrico Weigelt, metux IT consult
55d317dd50 xfree86: ddc: move some defines into private header
Those aren't used by any external driver, so no need to keep them public.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-01-29 17:32:21 +01:00
Enrico Weigelt, metux IT consult
f98d467a0c xfree86: ddc: move remaining struct cea_* to private header
Not needed in public SDK headers.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-01-29 16:51:11 +01:00
Tautvis
af9afa287a modesetting: pageflip: clear new_front_bo struct in ms_do_pageflip
ms_do_pageflip function temporary creates and destroy drmmode_bo object, but
the structure is stack ( values goes uninitialized). This became problem
because in f4362fc4ec drmmode_bo struct got extra
fields which is checked during drmmode_bo_destroy and causes crash.

Signed-off-by: Tautvis <gtautvis@gmail.com>
2026-01-29 14:35:48 +01:00
Alexander Melnyk
547d13575d xkb: Fix locked/latched indicator desync across multiple keyboards
When a group indicator (or a latched indicator of any kind) is defined,
e.g.:
  indicator "Scroll Lock" { groups = Group2; }
the logical and physical indicator state may desync across multiple
connected keyboards.

This is caused by XkbPushLockedStateToSlaves only pushing locked_mods to
the slave devices. Pushing locked_group (as well as latched groups/mods)
along with locked_mods resolves the issue.

The issue is not observed with API calls because a different code path
is taken (avoiding XkbPushLockedStateToSlaves altogether).

Signed-off-by: Alexander Melnyk <inboxnumberzero@zoho.com>
Part-of: <https://gitlab.freedesktop.org/xorg/xserver/-/merge_requests/2120>
2026-01-29 14:34:16 +01:00
John Studnicka
8fa58d3b51 modesetting: Handle reflected/rotated cursors better
Moved the cursor glyph cropping into a separate function that handles reflections and rotations.

Also, x/y are indexes into the buffer, so they should be clamped to width/height len - 1 for correctness.

Signed-off-by: John Studnicka <contact@zentec.dev>
2026-01-29 14:33:13 +01:00
Enrico Weigelt, metux IT consult
1a9d075b9a xfree86: ddc: move struct cea_vendor_block(_hdmi) to private header
Not used by any external driver, so no need to keep them in public header.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-01-29 14:32:40 +01:00
Enrico Weigelt, metux IT consult
5a34d6c738 xfree86: ddc: move struct cea_speaker_block into private header
Not used by any external drivers, so no need to keep it in public header.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-01-29 14:08:57 +01:00
Enrico Weigelt, metux IT consult
b6092270e0 xfree86: ddc: move struct cea_data_block into private header
Not used by any external drivers, so no need to keep it in public header.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-01-29 13:18:16 +01:00
Enrico Weigelt, metux IT consult
46741a8645 xfree86: ddc: move CVT_SUPPORTED to private header
Not used by any external driver, so no need to keep it in public header.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-01-29 10:37:10 +01:00
Enrico Weigelt, metux IT consult
88a58ed15c xfree86: ddc: move sync characteristics macros to print_edid.c
Only used there, so no need to keep them in public header.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-01-29 10:36:57 +01:00
Enrico Weigelt, metux IT consult
b584b59f1d xfree86: ddc: move ext tag defines into interpret_edid.c
Not used anywhere outside, so no need to keep them in public header.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-01-29 10:36:44 +01:00
Enrico Weigelt, metux IT consult
bd271ff0b5 xfree86: ddc: move EDID1_LEN into edid_priv.h
Not used by any external drivers, so no need to keep it public.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-01-28 20:00:32 +01:00
Enrico Weigelt, metux IT consult
aab09a7b73 xfree86: ddc: move IS_*_STEREO() macros into print_edid.c
Only used there, so no need to keep them in public header.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-01-28 19:47:35 +01:00
Enrico Weigelt, metux IT consult
e38aaa19b1 xfree86: ddc: move some parsing EDID macros into ddc.c
Only used there, so no need to keep them in public header.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-01-28 19:25:59 +01:00
Enrico Weigelt, metux IT consult
f4a84dc23c xfree86: ddc: drop obsolete IS_STEREO() macro
It's not actually doing something, so we don't really need it.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-01-28 19:22:18 +01:00
Enrico Weigelt, metux IT consult
de61093cad xfree86: ddc: replace SIG_SETUP()
Trivial enough to replace it easily.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-01-28 18:44:44 +01:00
Enrico Weigelt, metux IT consult
75177d9b72 xfree86: ddc: move EDID parser specific macros out of public header
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-01-28 18:21:06 +01:00