22698 Commits

Author SHA1 Message Date
Enrico Weigelt, metux IT consult
18017bf848 dri2: declare variables where needed DRI2WakeClient()
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-10 10:34:04 +01:00
Enrico Weigelt, metux IT consult
62cea896f8 dri2: declare variables where needed DRI2WaitMSCComplete()
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-10 10:33:52 +01:00
Enrico Weigelt, metux IT consult
01f62a1b49 dri2: declare variables where needed in DRI2CanFlip()
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-10 10:33:38 +01:00
Enrico Weigelt, metux IT consult
a790d65210 dri2: declare variables where needed in DRI2CopyRegion()
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-10 10:33:24 +01:00
Enrico Weigelt, metux IT consult
e9b9610d45 dri2: declare variables where needed in dri2_copy_region()
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-10 10:33:11 +01:00
Enrico Weigelt, metux IT consult
baaf408471 composite: rename "screen" fields to "pScreen"
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-10 10:32:56 +01:00
Enrico Weigelt, metux IT consult
a66df170ff Xi: rename "screen" fields to "pScreen"
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-10 10:32:35 +01:00
Enrico Weigelt, metux IT consult
7cb6eb3f14 Xext: saver: rename "screen" fields to "pScreen"
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-10 10:31:30 +01:00
Enrico Weigelt, metux IT consult
b3a17fb4d1 dri2: optimize DRI2GetScreenPrime()
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-10 10:05:15 +01:00
Enrico Weigelt, metux IT consult
ebe62981a6 dri2: declare variables when needed in DRI2InvalidateDrawable()
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-09 19:29:11 +01:00
Enrico Weigelt, metux IT consult
f23600ee4d dri2: declare variables when needed in update_dri2_drawable_buffers()
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-09 19:28:58 +01:00
Enrico Weigelt, metux IT consult
d28d18ff00 dix: replace "screen" by "pScreen" in AttachDevice()
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-09 19:28:45 +01:00
Enrico Weigelt, metux IT consult
a21c9ef420 dri2: declare variables where needed in DRI2BlockClient()
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-09 19:28:31 +01:00
Enrico Weigelt, metux IT consult
654b491d58 dri2: declare variables where needed in DRI2UpdatePrime()
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-09 19:28:19 +01:00
Enrico Weigelt, metux IT consult
d8db7c3908 dri2: declare variables when needed in DRI2ThrottleClient()
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-09 19:28:06 +01:00
Enrico Weigelt, metux IT consult
f79a8f5f78 dri2: declare variables where needed in DRI2SwapLimit()
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-09 19:27:54 +01:00
Enrico Weigelt, metux IT consult
50839192dc dri2: declare variables where needed in do_get_buffers()
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-02-09 19:27:42 +01:00
stefan11111
4060cd7d59 kdrive/fbdev: Use ARRAY_SIZE from dix.h
Signed-off-by: stefan11111 <stefan11111@shitposting.expert>
2026-02-09 19:27:22 +01:00
stefan11111
34d16e48d4 kdrive/fbdev: Use bool instead of Bool
Signed-off-by: stefan11111 <stefan11111@shitposting.expert>
2026-02-09 19:27:22 +01:00
stefan11111
c4037d0518 kdrive/fbdev: Call fbdev_glamor_egl_chose_configs from fbdev_glamor_egl_create_context
We only need the config attribute list from the caller,
we can chose the configs and free them ourselves

Signed-off-by: stefan11111 <stefan11111@shitposting.expert>
2026-02-09 19:27:22 +01:00
stefan11111
4a9da08a99 kdrive/fbdev: simplify fbdev_glamor_egl_chose_configs
Now that we're first trying no-config contexts,
there is no need to inject an `EGL_NO_CONFIG_KHR`
as the first config in the returned list

Signed-off-by: stefan11111 <stefan11111@shitposting.expert>
2026-02-09 19:27:22 +01:00
stefan11111
446485991d kdrive/fbdev: Try creating a no-config egl context first, and skip config chosing
Signed-off-by: stefan11111 <stefan11111@shitposting.expert>
2026-02-09 19:27:22 +01:00
stefan11111
29f75ea334 kdrive/fbdev: Get glamor working with the nvidia 390 driver
Only the render acceleation and xv work for some reason.
glx only wants to create indirect contexts, which don't work.

Signed-off-by: stefan11111 <stefan11111@shitposting.expert>
2026-02-09 19:27:22 +01:00
stefan11111
d65cabb1d3 kdrive/fbdev: Get glamor working with the nvidia 470 driver
Signed-off-by: stefan11111 <stefan11111@shitposting.expert>
2026-02-09 19:27:22 +01:00
stefan11111
5adae6c3b3 kdrive/fbdev: Don't try to accelerate rendering with glamor with a sw driver
It will likely be slower that unaccelerated rendering.
Command-line flags were added for overriding this.

Signed-off-by: stefan11111 <stefan11111@shitposting.expert>
2026-02-09 19:27:22 +01:00
stefan11111
f3c5b41161 kdrive/fbdev: Set glvnd vendor automatically
This makes glamor hw accel work out of the box

Signed-off-by: stefan11111 <stefan11111@shitposting.expert>
2026-02-09 19:27:22 +01:00
stefan11111
49800f024d kdrive/fbdev/fb_glamor.c: Check for egl extensions properly
See: https://gitlab.freedesktop.org/mesa/mesa/-/issues/14715

Signed-off-by: stefan11111 <stefan11111@shitposting.expert>
2026-02-09 19:27:22 +01:00
stefan11111
1f89bcfbdc kdrive/fbdev: Prefer exact GL vendor match when choosing EGLDevices
Signed-off-by: stefan11111 <stefan11111@shitposting.expert>
2026-02-09 19:27:22 +01:00
stefan11111
125b7c5bef kdrive/fbdev/fb_glamor.c: Prefix glamor helpers with fbdev_
Signed-off-by: stefan11111 <stefan11111@shitposting.expert>
2026-02-09 19:27:22 +01:00
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