debfeb3049
We are assuming that CRTC_GAMMA_LUT is pass-through, so better ensure it really is pass-through rather than whatever the previous KMS client left there. Unfortunately, we have old drm_output_set_gamma() API that cms-static and cms-colord plugins are using. To avoid trampling over them, do not touch gamma after they did. Those plugins are deprecated, so there is no reason to make set_gamma work through atomic. drm_output_set_gamma() is called from weston_compositor_add_output() through the output_created_signal. This is after drm_output_enable() and before any KMS modeset or atomic commit on the CRTC. Therefore it is not possible that there would be any KMS action in flight when drm_output_set_gamma() is called, and so setting deprecated_gamma_is_set should be non-racy - like setting CRTC_GAMMA_LUT itself. Signed-off-by: Pekka Paalanen <pekka.paalanen@collabora.com> |
||
---|---|---|
.. | ||
drm-gbm.c | ||
drm-internal.h | ||
drm-virtual.c | ||
drm.c | ||
fb.c | ||
kms-color.c | ||
kms.c | ||
libbacklight.c | ||
libbacklight.h | ||
meson.build | ||
modes.c | ||
state-helpers.c | ||
state-propose.c | ||
vaapi-recorder.c | ||
vaapi-recorder.h |