wlroots-hyprland/include
Simon Ser d36dd96e8d backend/drm: set "max bpc" property based on pixel format
Since 1d581656c7 ("backend/drm: set "max bpc" to the max") we
set the "max bpc" property to the maximum value. The kernel driver
is supposed to clamp this value depending on hardware capabilities.

All kernel drivers lower the value depending on the GPU capabilities.
However, none of the drivers lower the value depending on the DP-MST
link capabilities. Thus, enabling a 4k@60Hz mode can fail on some
DP-MST setups due to the "max bpc" property.

Additionally, it's not a good idea to unconditionally set "max bpc"
to the max. A high bpc consumes more lanes and more clock speed,
which means higher power consumption and the busy lanes cannot be
used for something else (e.g. other data transfers on a USB-C cable).

For now, let's tie the "max bpc" to the pixel format of the buffer.
Introduce a heuristic to make "high bit-depth buffer" a synonym of
"I want the best quality".

This is not perfect: a "max bpc" higher than 8 might be desirable
for pixel formats with a color depth of 8 bits, for instance when
the color management KMS properties are used. But we don't really
support that yet, so let's leave this for later.

Closes: https://github.com/swaywm/sway/issues/7367
2023-01-31 09:32:11 +00:00
..
backend backend/drm: set "max bpc" property based on pixel format 2023-01-31 09:32:11 +00:00
interfaces types/wlr_input_device: move init and finish function to private API 2022-03-07 16:37:41 +00:00
render render/vulkan: wait for DMA-BUF fences 2022-12-06 14:54:09 +00:00
types buffer: drop wlr_shm_client_buffer 2022-11-15 16:30:00 +00:00
util util/env: make env_parse_switch() return a size_t 2022-12-06 16:14:18 +01:00
wlr seat/keyboard: constify wlr_seat_keyboard_notify_enter() 2023-01-26 15:06:45 +00:00
xcursor xcursor: garbage collect XcursorLibraryLoadImages 2022-01-31 14:10:08 +00:00
xwayland build: unify naming for HAVE_* defines 2022-12-06 22:39:45 +00:00
meson.build build: unify naming for HAVE_* defines 2022-12-06 22:39:45 +00:00