From afc70eda78a941ab42f77831c6e6fe4cc71e5e8b Mon Sep 17 00:00:00 2001 From: Leandro Ribeiro Date: Mon, 19 Jan 2026 00:31:37 -0300 Subject: [PATCH] backend-drm: rename drm_colorop_3x1d_lut to drm_colorop_3x1d_lut_blob We use this struct to cache and avoid creating multiple blobs for the same 3x1D LUT. So let's rename to better reflect that. Signed-off-by: Leandro Ribeiro --- libweston/backend-drm/drm-internal.h | 10 +++--- libweston/backend-drm/drm.c | 46 ++++++++++++++-------------- 2 files changed, 28 insertions(+), 28 deletions(-) diff --git a/libweston/backend-drm/drm-internal.h b/libweston/backend-drm/drm-internal.h index be37829f3..7d2600c07 100644 --- a/libweston/backend-drm/drm-internal.h +++ b/libweston/backend-drm/drm-internal.h @@ -247,8 +247,8 @@ struct drm_device { /* drm_backend::kms_list */ struct wl_list link; - /* struct drm_colorop_3x1d_lut::link */ - struct wl_list drm_colorop_3x1d_lut_list; + /* struct drm_colorop_3x1d_lut_blob::link */ + struct wl_list drm_colorop_3x1d_lut_blob_list; int reused_state_failures; }; @@ -393,8 +393,8 @@ struct drm_output_state { bool planes_enabled; }; -struct drm_colorop_3x1d_lut { - /* drm_device::drm_colorop_3x1d_lut_list */ +struct drm_colorop_3x1d_lut_blob { + /* drm_device::drm_colorop_3x1d_lut_blob_list */ struct wl_list link; struct drm_device *device; @@ -644,7 +644,7 @@ struct drm_output { bool legacy_gamma_not_supported; uint16_t legacy_gamma_size; - struct drm_colorop_3x1d_lut *blend_to_output_xform; + struct drm_colorop_3x1d_lut_blob *blend_to_output_xform; /* Plane being displayed directly on the CRTC */ struct drm_plane_handle *scanout_handle; diff --git a/libweston/backend-drm/drm.c b/libweston/backend-drm/drm.c index 01d0dc3ed..71d0de518 100644 --- a/libweston/backend-drm/drm.c +++ b/libweston/backend-drm/drm.c @@ -2232,7 +2232,7 @@ drm_output_init_legacy_gamma_size(struct drm_output *output) } static void -drm_colorop_3x1d_lut_destroy(struct drm_colorop_3x1d_lut *lut) +drm_colorop_3x1d_lut_blob_destroy(struct drm_colorop_3x1d_lut_blob *lut) { wl_list_remove(&lut->destroy_listener.link); wl_list_remove(&lut->link); @@ -2241,36 +2241,36 @@ drm_colorop_3x1d_lut_destroy(struct drm_colorop_3x1d_lut *lut) } static void -drm_colorop_3x1d_lut_destroy_handler(struct wl_listener *l, void *data) +drm_colorop_3x1d_lut_blob_destroy_handler(struct wl_listener *l, void *data) { - struct drm_colorop_3x1d_lut *lut; + struct drm_colorop_3x1d_lut_blob *lut; lut = wl_container_of(l, lut, destroy_listener); assert(lut->xform == data); - drm_colorop_3x1d_lut_destroy(lut); + drm_colorop_3x1d_lut_blob_destroy(lut); } -static struct drm_colorop_3x1d_lut * -drm_colorop_3x1d_lut_search(struct drm_device *device, - struct weston_color_transform *xform, - uint32_t lut_len) +static struct drm_colorop_3x1d_lut_blob * +drm_colorop_3x1d_lut_blob_search(struct drm_device *device, + struct weston_color_transform *xform, + uint32_t lut_len) { - struct drm_colorop_3x1d_lut *lut; + struct drm_colorop_3x1d_lut_blob *lut; - wl_list_for_each(lut, &device->drm_colorop_3x1d_lut_list, link) + wl_list_for_each(lut, &device->drm_colorop_3x1d_lut_blob_list, link) if (lut->xform == xform && lut->lut_len == lut_len) return lut; return NULL; } -static struct drm_colorop_3x1d_lut * -drm_colorop_3x1d_lut_create(struct drm_device *device, - struct weston_color_transform *xform, - uint32_t lut_len, uint32_t blob_id) +static struct drm_colorop_3x1d_lut_blob * +drm_colorop_3x1d_lut_blob_create(struct drm_device *device, + struct weston_color_transform *xform, + uint32_t lut_len, uint32_t blob_id) { - struct drm_colorop_3x1d_lut *lut; + struct drm_colorop_3x1d_lut_blob *lut; lut = xzalloc(sizeof(*lut)); @@ -2279,9 +2279,9 @@ drm_colorop_3x1d_lut_create(struct drm_device *device, lut->xform = xform; lut->lut_len = lut_len; - wl_list_insert(&device->drm_colorop_3x1d_lut_list, &lut->link); + wl_list_insert(&device->drm_colorop_3x1d_lut_blob_list, &lut->link); - lut->destroy_listener.notify = drm_colorop_3x1d_lut_destroy_handler; + lut->destroy_listener.notify = drm_colorop_3x1d_lut_blob_destroy_handler; wl_signal_add(&lut->xform->destroy_signal, &lut->destroy_listener); return lut; @@ -2333,7 +2333,7 @@ drm_output_pick_blend_to_output(struct drm_output *output) struct weston_compositor *compositor = output->base.compositor; struct drm_device *device = output->device; struct drm_backend *b = device->backend; - struct drm_colorop_3x1d_lut *colorop_lut; + struct drm_colorop_3x1d_lut_blob *colorop_lut; struct weston_color_transform *xform; struct drm_color_lut *drm_lut; size_t lut_len; @@ -2359,7 +2359,7 @@ drm_output_pick_blend_to_output(struct drm_output *output) * First let's check if the xform has already been cached. If that's the * case, we make use of it. */ - colorop_lut = drm_colorop_3x1d_lut_search(device, xform, lut_len); + colorop_lut = drm_colorop_3x1d_lut_blob_search(device, xform, lut_len); if (colorop_lut) { output->blend_to_output_xform = colorop_lut; return 0; @@ -2389,8 +2389,8 @@ drm_output_pick_blend_to_output(struct drm_output *output) } output->blend_to_output_xform = - drm_colorop_3x1d_lut_create(device, xform, lut_len, - gamma_lut_blob_id); + drm_colorop_3x1d_lut_blob_create(device, xform, lut_len, + gamma_lut_blob_id); return 0; } @@ -4215,7 +4215,7 @@ drm_device_destroy(struct drm_device *device) &device->writeback_connector_list, link) drm_writeback_destroy(writeback); - weston_assert_list_empty(ec, &device->drm_colorop_3x1d_lut_list); + weston_assert_list_empty(ec, &device->drm_colorop_3x1d_lut_blob_list); if (device->drm_event_source) wl_event_source_remove(device->drm_event_source); @@ -4555,7 +4555,7 @@ drm_device_create(struct drm_backend *backend, wl_list_init(&device->plane_list); create_planes(device); - wl_list_init(&device->drm_colorop_3x1d_lut_list); + wl_list_init(&device->drm_colorop_3x1d_lut_blob_list); wl_list_init(&device->writeback_connector_list); if (drm_backend_discover_connectors(device, device->kms_device->udev_device, res) < 0) {