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
Enrico Weigelt, metux IT consult
2fe8f72029
xfree86: ddc: replace NEXT_DT_MD_SECTION() macro
...
trivial enough to be replaced easily.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net >
2026-01-28 17:53:04 +01:00
Enrico Weigelt, metux IT consult
d0c2641715
xfree86: ddc: move input voltage level defines into print_edid.c
...
Only used in print_edid.c, so no need to keep them in global header.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net >
2026-01-28 17:48:35 +01:00
stefan11111
5c4ac767bb
kdrive: Try the evdev input driver if nothing the regular drivers aren't compiled
...
Now that this driver works on most systems (hopefully) without any configuration,
it makes sense to use it as a fallback default.
Signed-off-by: stefan11111 <stefan11111@shitposting.expert >
2026-01-28 15:05:54 +01:00
Enrico Weigelt, metux IT consult
5b81bcb5b4
xfree86: ddc: drop unused VENDOR_SUPPORT_* defines
...
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net >
2026-01-28 11:09:25 +01:00
Enrico Weigelt, metux IT consult
bfe6712c35
xfree86: ddc: move DPMS_*() macros into print_edid.c
...
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net >
2026-01-28 11:09:08 +01:00
Enrico Weigelt, metux IT consult
1649eb38d5
xfree86: ddc: move STD_COLOR_SPACE() and GFT_SUPPORTED() macros
...
These are only used in print_edid.c, so no need to keep them
in a global header.
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net >
2026-01-27 19:35:08 +01:00
stefan11111
f209e71fb9
modesetting: Use GBM_FORMAT_XRGB8888 for 24-bit depth front bo's
...
Same as what we use in glamor/glamor_egl.c
Signed-off-by: stefan11111 <stefan11111@shitposting.expert >
2026-01-27 19:16:20 +01:00
stefan11111
50ffe711ca
modesetting: map gbm bo's read/write
...
Signed-off-by: stefan11111 <stefan11111@shitposting.expert >
2026-01-27 19:16:20 +01:00
stefan11111
f4362fc4ec
modesetting: Track both the map data and address for gpu buffers
...
Signed-off-by: stefan11111 <stefan11111@shitposting.expert >
2026-01-27 19:16:20 +01:00
stefan11111
2ba1b0b06f
Revert 5d3490d135
...
We can't free driverNames[i], because it's part of abi,
and other drivers might give us statically-allocated strings.
Fixes : #1848
Signed-off-by: stefan11111 <stefan11111@shitposting.expert >
2026-01-27 19:15:50 +01:00
stefan11111
b4c45980ff
kdrive: Fix other kinds of vt switches
...
When starting an X server from a terminal running
inside another X server, the "host" X server sees
the key press event, but not the key release event,
and misinterprets this as a long keypress.
With this patch, we forge the missing key release event,
so the server doesn't think that the user is holding a key down.
This is different from Ctrl + Alt + F* vt switching, because
there we don't want the X server to see the key press event at all,
and we want to forge key release events for the Ctrl + Alt keys.
Signed-off-by: stefan11111 <stefan11111@shitposting.expert >
2026-01-27 19:15:44 +01:00
John Studnicka
fb976abad0
modesetting: Clamp image dims to avoid OOB reads
...
Signed-off-by: John Studnicka <contact@zentec.dev >
2026-01-27 19:15:35 +01:00
John Studnicka
57a9686e65
modesetting: Rotate cursor to match screen
...
Signed-off-by: John Studnicka <contact@zentec.dev >
2026-01-27 19:15:35 +01:00
John Studnicka
23dfcba633
modesetting: Fall back to SW cursor for OOB dims
...
Signed-off-by: John Studnicka <contact@zentec.dev >
2026-01-27 19:15:35 +01:00
stefan11111
fa5db91243
Xext/xvdisp.c: Add missing padding to ProcXvQueryEncodings
...
Signed-off-by: stefan11111 <stefan11111@shitposting.expert >
2026-01-27 19:15:27 +01:00
Enrico Weigelt, metux IT consult
bf7b650482
kdrive: make KdAllocatePrivates() static
...
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net >
2026-01-27 19:11:03 +01:00
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