Commit Graph

22519 Commits

Author SHA1 Message Date
stefan11111
657eb49b85 kdrive/fbdev: Enable X-Video support if available
Signed-off-by: stefan11111 <stefan11111@shitposting.expert>
2026-02-09 19:27:22 +01:00
stefan11111
2a898cbaf1 kdrive: Pull ephyr/ephyr_glamor_xv.c into src/ and make generic
Signed-off-by: stefan11111 <stefan11111@shitposting.expert>
2026-02-09 19:27:22 +01:00
stefan11111
c4b070319b kdrive/fbdev: Set glvnd vendor with glamor_set_glvnd_vendor
This makes it so that glamor glx can properly initialize and
choose hw accelerated `FBConfig`s, instead of just using softpipe/llvmpipe.

This commit fixes the issue described in https://github.com/X11Libre/xserver/pull/1832#issue-3827524680

Now, `FBConfig`s corresponding to the choosen accelerated `EGLDevice`
are choosen by `glXChooseFBConfig`.

Signed-off-by: stefan11111 <stefan11111@shitposting.expert>
2026-02-09 19:27:22 +01:00
stefan11111
069fc8f6bb kdrive/fbdev: Uncouple glamor from glx
Signed-off-by: stefan11111 <stefan11111@shitposting.expert>
2026-02-09 19:27:22 +01:00
stefan11111
04a30c2719 kdrive/fbdev: Allow forcing glamor to create GL/GLES contexts only
This brings Xfbdev's glamor code in line with glamor/glamor_egl.c

Signed-off-by: stefan11111 <stefan11111@shitposting.expert>
2026-02-09 19:27:22 +01:00
Enrico Weigelt, metux IT consult
ebd217aafb randr: randrstr.h: minor spelling fix
Fix up to our convention of naming those "pScreen".

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-09 14:20:22 +01:00
Enrico Weigelt, metux IT consult
a30b4d6fcc Xext: damage: rename "screen" to "pScreen" in DamageExtSubtractWindowClip()
Better align with common naming scheme.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-09 14:20:04 +01:00
Enrico Weigelt, metux IT consult
c8f0ae939e dri2: declare variables where needed in destroy_buffer()
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-09 14:19:52 +01:00
Enrico Weigelt, metux IT consult
a63c86d463 dri2: declare variables when needed in DRI2GetScreen()
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-09 14:19:44 +01:00
Enrico Weigelt, metux IT consult
ceb272462b dri2: declare variables when needed in create_buffer()
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-09 14:19:35 +01:00
stefan11111
e30646b37d modesetting: Use more conservative cursor bo flags
Signed-off-by: stefan11111 <stefan11111@shitposting.expert>
2026-02-09 14:19:16 +01:00
stefan11111
79aeab95d8 modesetting: drop extra newline
Signed-off-by: stefan11111 <stefan11111@shitposting.expert>
2026-02-09 14:19:16 +01:00
stefan11111
531ca18467 modesetting: drop unused enum constant
Signed-off-by: stefan11111 <stefan11111@shitposting.expert>
2026-02-09 14:19:16 +01:00
stefan11111
b7bf58922f modesetting: Check for GLAMOR instead of GLAMOR_HAS_GBM
Now gbm required for the modesetting driver.
`GLAMOR_HAS_GBM` is defined even if glamor isn't built.

Signed-off-by: stefan11111 <stefan11111@shitposting.expert>
2026-02-09 14:19:16 +01:00
stefan11111
0a2568ab3a treewide: Update meson.builds for the changes in the modesetting driver
Signed-off-by: stefan11111 <stefan11111@shitposting.expert>
2026-02-09 14:19:16 +01:00
stefan11111
0ac903f4b9 modesetting: Fail in ScreenInit if we can't get a gbm device
Signed-off-by: stefan11111 <stefan11111@shitposting.expert>
2026-02-09 14:19:16 +01:00
stefan11111
0de74bf2e9 modesetting: Simplify shadow functions
Signed-off-by: stefan11111 <stefan11111@shitposting.expert>
2026-02-09 14:19:16 +01:00
stefan11111
f06d370c70 modesetting: Fully port away from drmmode_bo
There are still things to simplify and fix

Signed-off-by: stefan11111 <stefan11111@shitposting.expert>
2026-02-09 14:19:16 +01:00
stefan11111
119ef93615 modesetting: Remove out in-tree dumb buffer implementation
Since libgbm was split from mesa, and a backend that works
with only dumb buffers was written, there is no reason why we
should roll out own dumb buffer implementation.

Signed-off-by: stefan11111 <stefan11111@shitposting.expert>
2026-02-09 14:19:16 +01:00
stefan11111
f9589b3c3c Further port away from drmmode_bo
Signed-off-by: stefan11111 <stefan11111@shitposting.expert>
2026-02-09 14:19:16 +01:00
stefan11111
4e7201796c modesetting: Further port away from drmmode_bo
Signed-off-by: stefan11111 <stefan11111@shitposting.expert>
2026-02-09 14:19:16 +01:00
stefan11111
615ca5fd3c modesetting: Further port away from drmmode_bo
Signed-off-by: stefan11111 <stefan11111@shitposting.expert>
2026-02-09 14:19:16 +01:00
stefan11111
99dc40ff07 modesetting: fully port drmmode_bo_import to gbm
Signed-off-by: stefan11111 <stefan11111@shitposting.expert>
2026-02-09 14:19:16 +01:00
stefan11111
501b60f1d5 modesetting: move drmmode_bo_import to drmmode_bo.c
Signed-off-by: stefan11111 <stefan11111@shitposting.expert>
2026-02-09 14:19:16 +01:00
stefan11111
466ec86669 modesetting: Create only gbm front bo's
Signed-off-by: stefan11111 <stefan11111@shitposting.expert>
2026-02-09 14:19:16 +01:00
stefan11111
5acd66c8ee modesetting: Port backing bo the the gbm wrapper
Signed-off-by: stefan11111 <stefan11111@shitposting.expert>
2026-02-09 14:19:16 +01:00
stefan11111
12eceb7999 modesetting: Use gbm for probing the depth and bpp of the primary plane
Signed-off-by: stefan11111 <stefan11111@shitposting.expert>
2026-02-09 14:19:16 +01:00
stefan11111
26f2887008 modsetting: Port the cursor bo's to the gbm bo wrapper
Signed-off-by: stefan11111 <stefan11111@shitposting.expert>
2026-02-09 14:19:16 +01:00
stefan11111
26aa7c0d7e modesetting: Port drmmode_create_front_bo to the new gbm bo wrapper
Signed-off-by: stefan11111 <stefan11111@shitposting.expert>
2026-02-09 14:19:16 +01:00
stefan11111
a1872f51fb modesetting: Add infrastructure for creating and mapping gbm bo's
Signed-off-by: stefan11111 <stefan11111@shitposting.expert>
2026-02-09 14:19:16 +01:00
stefan11111
55eba2385c modesetting: Create a gbm device even without glamor
Signed-off-by: stefan11111 <stefan11111@shitposting.expert>
2026-02-09 14:19:16 +01:00
stefan11111
8be62ebcae modesetting: strip some trailing whitespaces
Signed-off-by: stefan11111 <stefan11111@shitposting.expert>
2026-02-09 14:19:16 +01:00
Enrico Weigelt, metux IT consult
b39baf6a07 Xext: shape: 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-06 12:03:24 +01:00
Enrico Weigelt, metux IT consult
e482321d03 Xext: sync: 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-06 12:03:16 +01:00
Enrico Weigelt, metux IT consult
571be2f014 Xext: vidmode: 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-06 12:03:08 +01:00
stefan11111
2e31b2fdc0 modesetting: Check for unaligned pixmaps in modesetting's check_flip2 proc
If we do this in the generic present `check_flip`, we would have to
do it before we call the driver's `check_flip`.
This means that we wouldn't get a reason for the flip failure,
which we still need to report if we are in the middle of a flip.

Thanks to @nkalkhof For helping bisect this in
https://github.com/X11Libre/xserver/issues/1812

Signed-off-by: stefan11111 <stefan11111@shitposting.expert>
2026-02-06 12:03:01 +01:00
stefan11111
1762a02331 modesetting/present.c: Initialze '*reason' in the check_flip2 proc
Signed-off-by: stefan11111 <stefan11111@shitposting.expert>
2026-02-06 12:03:01 +01:00
stefan11111
dba40b75c4 present: revert 8ed09861dc
Part of fixing https://github.com/X11Libre/xserver/issues/1812

Signed-off-by: stefan11111 <stefan11111@shitposting.expert>
2026-02-06 12:03:01 +01:00
Enrico Weigelt, metux IT consult
0343cad62a Xext: xcmisc: 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-06 11:59:43 +01:00
Michel Dänzer
96c23315e4 composite: Skip copying parent pixmap contents when possible
If the parent window has a different depth (which means pWin can't have
valid contents yet) and pWin has effective background other than None.
2026-02-06 11:59:24 +01:00
Michel Dänzer
d6fc3aa717 Revert "composite: Only copy bits from the parent pixmap when absolutely necessary"
This reverts commit 2ab2454151

In the pParent->drawable.depth == pWin->drawable.depth case, pWin may
already have valid contents, which need to be copied to the new pixmap.
2026-02-06 11:59:24 +01:00
Enrico Weigelt, metux IT consult
7c8851daca dri2: minor spelling fix: "screen" -> "pScreen"
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-06 11:58:47 +01:00
Enrico Weigelt, metux IT consult
2e7d7cec64 dri2: declare variables when needed in dri2WakeClient()
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-06 11:58:24 +01:00
Enrico Weigelt, metux IT consult
f1fd3151ec Xext: xv: 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-05 15:26:51 +01:00
Enrico Weigelt, metux IT consult
3780ef3ef1 xkb: 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-05 15:26:33 +01:00
Enrico Weigelt, metux IT consult
08e62055ce dbe: 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-05 15:26:09 +01:00
Enrico Weigelt, metux IT consult
b8ca69d8b7 xkb: declare variables when needed
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-05 15:25:48 +01:00
Enrico Weigelt, metux IT consult
54993683d2 xquartz: drop ifdef DAMAGE
It's always set anyways and planned to be removed.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-05 11:58:11 +01:00
stefan11111
a7454facc6 modesetting: Don't rely on gl for setting the cursor mask interleave
If glamor isn't used, gl isn't initialized.
This can lead to the wrong cursor mask interleave value to be used.

Signed-off-by: stefan11111 <stefan11111@shitposting.expert>
2026-02-04 19:32:36 +01:00
Enrico Weigelt, metux IT consult
d05e018a59 xfree86: xlibre-server.h: announce new EDID parsing feature
Adding a #define in xlibre-server.h that drivers can #ifdef on,
in order to check for the new EDID parsing API.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-04 17:25:13 +01:00