mirror of
https://gitlab.freedesktop.org/wayland/weston.git
synced 2026-05-07 06:08:05 +02:00
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 <leandro.ribeiro@collabora.com>
This commit is contained in:
parent
f960fdccf7
commit
afc70eda78
2 changed files with 28 additions and 28 deletions
|
|
@ -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;
|
||||
|
|
|
|||
|
|
@ -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) {
|
||||
|
|
|
|||
Loading…
Add table
Reference in a new issue