Commit Graph

5682 Commits

Author SHA1 Message Date
Enrico Weigelt, metux IT consult
b996d07f32 os: drop our own implementation of reallocarray() 2026-01-30 10:02:38 +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
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
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
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
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
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
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
Enrico Weigelt, metux IT consult
f738e30963 xfree86: os-support: linux: drop unused lnx_ev56.c
This file isn't even compiled ever, so we really don't need it anymore.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-01-14 15:55:35 +01:00
Enrico Weigelt, metux IT consult
36e1a9c37c xfree86: add exported xf86GetConsoleFd()
This functions is designed for some legacy keyboard drivers
(eg. xf86-input-keyboard) that need to get the fd to the console
device, so they don't need to directly access xf86Info field anymore.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-01-14 11:15:19 +01:00
Enrico Weigelt, metux IT consult
efc9321a64 xfree86: os-support: drop local "fd" variable in xf86OpenConsole()
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-01-13 17:50:38 +01:00
Enrico Weigelt, metux IT consult
d8eb141135 xfree86: os-support: common: reorganize console driver table
Merge driver name and open-proc tables into one, using a struct.

Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-01-13 17:05:58 +01:00
Enrico Weigelt, metux IT consult
e814acf006 xfree86: os-support: bsd: scope "vtmode" in xf86OpenConsole()
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-01-13 15:30:33 +01:00
Enrico Weigelt, metux IT consult
fd5cd094d1 xfree86: os-support: bsd: scope "result" variable in xf86OpenConsole()
Signed-off-by: Enrico Weigelt, metux IT consult <info@metux.net>
2026-01-13 14:52:40 +01:00
Imre Vadász
e0f4acc929 Remove workaround for ancient FreeBSD versions before 2.2.8.
This workaround was unnecessarily active for current DragonFlyBSD,
as well as probably for current FreeBSD as well, because the
"pcvt" console support would be used by default. Hence this adds
explicit code for the PCVT case to skip the quirk on FreeBSD and
DragonFlyBSD.

Signed-off-by: Imre Vadász <imre@vdsz.com>
2026-01-13 14:13:57 +01:00
Enrico Weigelt, metux IT consult
b5f2c96901 xfree86: os-support: bsd: tiny logging simplification on PCVT
There isn't much practical value of printing kernel PCVT driver
version into our log on NetBSD. Let's simplify this a bit and
get cut down the #ifdef wood a little bit.

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