Geoffrey McRae
26ca90893a
[idd/client] apply the Windows display color transform
...
Honor the IddCx 3x4 XYZ matrix and post-transfer LUT in the IDD
conversion pipeline. Carry transform changes to the client so EGL applies
the same calibration to hardware cursors, and invalidate the full frame
whenever calibration changes.
2026-07-19 03:25:30 +10:00
Geoffrey McRae
1f6dbb0dae
[idd] hdr: propagate per-frame HDR metadata
...
Handle DEFAULT, NEW, and UNCHANGED IDDCX HDR10 metadata states and
publish valid mastering metadata through KVMFR. Preserve the metadata
across post-processing without reallocating resources for
metadata-only changes.
2026-07-19 02:13:57 +10:00
Geoffrey McRae
e3e0cfd43a
[client] egl: fix messy white level default definition
2026-07-18 16:39:55 +10:00
Geoffrey McRae
b2c40a80af
[client] egl: remove blocking waits from frame submission
...
Track PBO fences per upload slot and wait only when a slot is reused,
allowing rendering to proceed without a CPU stall. Use GPU-side waits
for cross-context DMABUF synchronization.
Also propagate KVMFR write-completion failures so incomplete
shared-memory frames are never submitted, while retaining incremental
damage-copy waits to avoid added latency.
2026-07-17 22:02:05 +10:00
Geoffrey McRae
2006fb640f
[idd/client/obs] hdr: wire up the SdrWhiteLevel from the capture
2026-07-17 17:50:23 +10:00
Geoffrey McRae
0140a3f6fb
[client/idd] hdr: fix incorrect tone mapping knee bug
build / client (Debug, map[cc:clang cxx:clang++], libdecor) (push) Has been cancelled
build / client (Debug, map[cc:clang cxx:clang++], xdg-shell) (push) Has been cancelled
build / client (Debug, map[cc:gcc cxx:g++], libdecor) (push) Has been cancelled
build / client (Debug, map[cc:gcc cxx:g++], xdg-shell) (push) Has been cancelled
build / client (Release, map[cc:clang cxx:clang++], libdecor) (push) Has been cancelled
build / client (Release, map[cc:clang cxx:clang++], xdg-shell) (push) Has been cancelled
build / client (Release, map[cc:gcc cxx:g++], libdecor) (push) Has been cancelled
build / client (Release, map[cc:gcc cxx:g++], xdg-shell) (push) Has been cancelled
build / module (push) Has been cancelled
build / host-linux (push) Has been cancelled
build / host-windows-cross (push) Has been cancelled
build / host-windows-native (push) Has been cancelled
build / idd (push) Has been cancelled
build / obs (clang) (push) Has been cancelled
build / obs (gcc) (push) Has been cancelled
build / docs (push) Has been cancelled
2026-07-16 10:48:10 +10:00
Geoffrey McRae
0c653c1fb2
[idd] add support to return HDR metadata to clients
2026-07-16 05:34:09 +10:00
Geoffrey McRae
69f44a003d
[all] refresh copyright
build / client (Debug, map[cc:clang cxx:clang++], libdecor) (push) Has been cancelled
build / client (Debug, map[cc:clang cxx:clang++], xdg-shell) (push) Has been cancelled
build / client (Debug, map[cc:gcc cxx:g++], libdecor) (push) Has been cancelled
build / client (Debug, map[cc:gcc cxx:g++], xdg-shell) (push) Has been cancelled
build / client (Release, map[cc:clang cxx:clang++], libdecor) (push) Has been cancelled
build / client (Release, map[cc:clang cxx:clang++], xdg-shell) (push) Has been cancelled
build / client (Release, map[cc:gcc cxx:g++], libdecor) (push) Has been cancelled
build / client (Release, map[cc:gcc cxx:g++], xdg-shell) (push) Has been cancelled
build / module (push) Has been cancelled
build / host-linux (push) Has been cancelled
build / host-windows-cross (push) Has been cancelled
build / host-windows-native (push) Has been cancelled
build / idd (push) Has been cancelled
build / obs (clang) (push) Has been cancelled
build / obs (gcc) (push) Has been cancelled
build / docs (push) Has been cancelled
2026-05-31 15:13:57 +10:00
Geoffrey McRae
e9b7bdfea1
Revert "[all] refresh copyright"
...
Corrupted IDD sources due to lack of UTF-8 with BOM support in the
script.
2026-05-31 15:10:44 +10:00
Geoffrey McRae
98602fb95e
[all] refresh copyright
2026-05-31 15:03:37 +10:00
Geoffrey McRae
85ceae91bf
[repos] lgmp: update to latest version
...
The queue size for the cursor needed to be increased to a power of two
with the new design for messages queues in LGMP.
2025-08-30 01:16:26 +10:00
Geoffrey McRae
f15d72cdfe
[host] ivshmem: fix missing bounds check on device vector
build / client (Debug, map[cc:clang cxx:clang++], libdecor) (push) Has been cancelled
build / client (Debug, map[cc:clang cxx:clang++], xdg-shell) (push) Has been cancelled
build / client (Debug, map[cc:gcc cxx:g++], libdecor) (push) Has been cancelled
build / client (Debug, map[cc:gcc cxx:g++], xdg-shell) (push) Has been cancelled
build / client (Release, map[cc:clang cxx:clang++], libdecor) (push) Has been cancelled
build / client (Release, map[cc:clang cxx:clang++], xdg-shell) (push) Has been cancelled
build / client (Release, map[cc:gcc cxx:g++], libdecor) (push) Has been cancelled
build / client (Release, map[cc:gcc cxx:g++], xdg-shell) (push) Has been cancelled
build / module (push) Has been cancelled
build / host-linux (push) Has been cancelled
build / host-windows-cross (push) Has been cancelled
build / host-windows-native (push) Has been cancelled
build / obs (clang) (push) Has been cancelled
build / obs (gcc) (push) Has been cancelled
build / docs (push) Has been cancelled
2025-05-10 11:12:57 +10:00
Geoffrey McRae
4b11743f18
[common] ll: make ll_push report success/failure
2025-04-02 13:46:07 +11:00
Geoffrey McRae
d839a45d0b
[client] kvmfr: report the local window size to the VM
build / client (Debug, map[cc:clang cxx:clang++], libdecor) (push) Waiting to run
build / client (Debug, map[cc:clang cxx:clang++], xdg-shell) (push) Waiting to run
build / client (Debug, map[cc:gcc cxx:g++], libdecor) (push) Waiting to run
build / client (Debug, map[cc:gcc cxx:g++], xdg-shell) (push) Waiting to run
build / client (Release, map[cc:clang cxx:clang++], libdecor) (push) Waiting to run
build / client (Release, map[cc:clang cxx:clang++], xdg-shell) (push) Waiting to run
build / client (Release, map[cc:gcc cxx:g++], libdecor) (push) Waiting to run
build / client (Release, map[cc:gcc cxx:g++], xdg-shell) (push) Waiting to run
build / module (push) Waiting to run
build / host-linux (push) Waiting to run
build / host-windows-cross (push) Waiting to run
build / host-windows-native (push) Waiting to run
build / obs (clang) (push) Waiting to run
build / obs (gcc) (push) Waiting to run
build / docs (push) Waiting to run
2025-03-28 16:38:02 +11:00
Geoffrey McRae
a421329d9a
[all] general: fix possible memory leaks with realloc usage
2025-03-09 02:56:20 +11:00
Geoffrey McRae
968fd42d46
[all] common: set the backtrace define for the entire project
2025-03-07 11:32:24 +11:00
Geoffrey McRae
711c932380
[all] common: fix compilation on clang
2025-03-05 12:48:20 +11:00
Geoffrey McRae
420eaebb71
[cmake] all: update cmake_minimum_required version to 3.10
2025-03-05 12:27:23 +11:00
Geoffrey McRae
551298ed5b
[doc] all: update copyright year
2025-03-05 12:24:38 +11:00
Chris Spencer
03ca20d3e4
[client] overlay/msg: fix race condition in render
...
build / client (Debug, map[cc:clang cxx:clang++], libdecor) (push) Waiting to run
build / client (Debug, map[cc:clang cxx:clang++], xdg-shell) (push) Waiting to run
build / client (Debug, map[cc:gcc cxx:g++], libdecor) (push) Waiting to run
build / client (Debug, map[cc:gcc cxx:g++], xdg-shell) (push) Waiting to run
build / client (Release, map[cc:clang cxx:clang++], libdecor) (push) Waiting to run
build / client (Release, map[cc:clang cxx:clang++], xdg-shell) (push) Waiting to run
build / client (Release, map[cc:gcc cxx:g++], libdecor) (push) Waiting to run
build / client (Release, map[cc:gcc cxx:g++], xdg-shell) (push) Waiting to run
build / module (push) Waiting to run
build / host-linux (push) Waiting to run
build / host-windows-cross (push) Waiting to run
build / host-windows-native (push) Waiting to run
build / obs (clang) (push) Waiting to run
build / obs (gcc) (push) Waiting to run
build / docs (push) Waiting to run
If an overlay is closed with overlayMsg_close, the message can be freed
while it is still being used by msg_render, resulting in a segfault. Lock
the message list for the duration of msg_render to fix this.
2025-03-05 10:59:05 +11:00
Geoffrey McRae
4e8201da07
[common] ivshmem: default to /dev/kvmfr0 if it's found
build / client (Debug, map[cc:clang cxx:clang++], libdecor) (push) Has been cancelled
build / client (Debug, map[cc:clang cxx:clang++], xdg-shell) (push) Has been cancelled
build / client (Debug, map[cc:gcc cxx:g++], libdecor) (push) Has been cancelled
build / client (Debug, map[cc:gcc cxx:g++], xdg-shell) (push) Has been cancelled
build / client (Release, map[cc:clang cxx:clang++], libdecor) (push) Has been cancelled
build / client (Release, map[cc:clang cxx:clang++], xdg-shell) (push) Has been cancelled
build / client (Release, map[cc:gcc cxx:g++], libdecor) (push) Has been cancelled
build / client (Release, map[cc:gcc cxx:g++], xdg-shell) (push) Has been cancelled
build / module (push) Has been cancelled
build / host-linux (push) Has been cancelled
build / host-windows-cross (push) Has been cancelled
build / host-windows-native (push) Has been cancelled
build / obs (clang) (push) Has been cancelled
build / obs (gcc) (push) Has been cancelled
build / docs (push) Has been cancelled
2024-09-05 14:01:28 +10:00
Geoffrey McRae
6a0a635781
[common] rect: fix avx unaligned bytes copy
...
build / client (Debug, map[cc:clang cxx:clang++], libdecor) (push) Has been cancelled
build / client (Debug, map[cc:clang cxx:clang++], xdg-shell) (push) Has been cancelled
build / client (Debug, map[cc:gcc cxx:g++], libdecor) (push) Has been cancelled
build / client (Debug, map[cc:gcc cxx:g++], xdg-shell) (push) Has been cancelled
build / client (Release, map[cc:clang cxx:clang++], libdecor) (push) Has been cancelled
build / client (Release, map[cc:clang cxx:clang++], xdg-shell) (push) Has been cancelled
build / client (Release, map[cc:gcc cxx:g++], libdecor) (push) Has been cancelled
build / client (Release, map[cc:gcc cxx:g++], xdg-shell) (push) Has been cancelled
build / module (push) Has been cancelled
build / host-linux (push) Has been cancelled
build / host-windows-cross (push) Has been cancelled
build / host-windows-native (push) Has been cancelled
build / obs (clang) (push) Has been cancelled
build / obs (gcc) (push) Has been cancelled
build / docs (push) Has been cancelled
Thanks @D0ot for debugging and finding this this, the LG community are
very appreciate for a fix for this long outstanding bug.
Fixes #1129
Closes #1136
2024-08-30 09:12:19 +10:00
Geoffrey McRae
fdad5daff8
[host/common] d12: add debug tracing
2024-03-11 19:14:54 +11:00
Geoffrey McRae
d81395b672
[common] option: send all output to stderr
2024-03-04 21:21:46 +11:00
Geoffrey McRae
ad7ac6540f
[host] d12: implement hdr16 to hdr10 conversion
2024-02-28 11:59:58 +11:00
Geoffrey McRae
71b826458d
[host] fix host-windows-cross github compilation
2024-02-27 19:14:58 +11:00
Geoffrey McRae
60b01566e1
[host] d12: implement initial RGB24 support
2024-02-05 02:49:08 +11:00
Geoffrey McRae
0b210a280d
[all] update the copyright to 2024
2024-02-01 17:16:31 +11:00
Geoffrey McRae
47ad93f48d
[host] common: fix compilation on clang
2024-01-27 10:10:48 +11:00
Geoffrey McRae
b776b00a67
[common] host: fix compliation on windows
2023-12-07 16:11:28 +11:00
Geoffrey McRae
4b4e07875d
[common] debug: fix compilation on windows
2023-12-07 15:46:31 +11:00
Geoffrey McRae
6104956a27
[common] reformat the debug output to be more useful
2023-12-07 15:37:54 +11:00
Geoffrey McRae
8d27d9e2e2
[common] rect: fix avx alignment issue take 2
2023-11-19 18:01:34 +11:00
Geoffrey McRae
660b4b8ec8
[common] rects: fix avx implementation for unaligned accesses
2023-11-19 17:16:22 +11:00
Geoffrey McRae
4911e129f8
[common] time: improve flow with compiler hints
2023-11-19 16:31:45 +11:00
Geoffrey McRae
d3ee5bddde
[common] rect/framebuffer: improve avx implementations
2023-11-19 15:45:15 +11:00
Geoffrey McRae
584de4133f
[common] fix compilation on clang
2023-11-19 03:20:34 +11:00
Geoffrey McRae
3330f83af6
[common] add runtime detection and selection of AVX/AVX2 support
2023-11-19 02:52:11 +11:00
Geoffrey McRae
5d4c1d348c
[all] refactor cpuInfo function names
2023-11-19 01:22:09 +11:00
Geoffrey McRae
750cab83a3
Revert "[common] add AVX/AVX2 memory copy implementations"
...
This reverts commit e61678ef1b .
GCC only supports multi-versioning in C++
2023-11-19 00:18:48 +11:00
Geoffrey McRae
e61678ef1b
[common] add AVX/AVX2 memory copy implementations
2023-11-19 00:09:42 +11:00
Geoffrey McRae
929e88b9d3
[all] provide conditional path optimization hints to the compiler
2023-11-12 18:26:08 +11:00
Geoffrey McRae
7bea919352
[common] time: prevent possible div by zero on windows
2023-11-12 06:56:37 +11:00
Geoffrey McRae
38b6b0ac40
[common] windows/event: fix control flow issue
2023-11-11 20:34:30 +11:00
Geoffrey McRae
ec88a52fe2
[common] ivshmem: fix possible resource leak
2023-11-11 14:04:54 +11:00
Geoffrey McRae
aa42751743
[client] common: fix time of check/time of use issue
2023-11-11 13:48:41 +11:00
Geoffrey McRae
9a53880b9b
[common] ivshmem: fix failure to check ioctl for error result
2023-11-11 13:48:41 +11:00
Geoffrey McRae
a3b51220ed
[common] option: remove const qualifier from shortopt
2023-11-11 13:48:41 +11:00
Geoffrey McRae
cce12508cc
[egl] shader: fix reliance on null terminated strings
...
Compiled in resources often will not contain a null terminator, as such
we must not use functions that rely on it. This implements a memsearch
function that performs like strstr on a buffer instead of a null
terminated string.
2023-11-11 13:48:41 +11:00
Geoffrey McRae
8630fd20ad
[common] rects: simplify unaligned copy function
2023-11-11 09:07:00 +11:00