[PATCH v3 19/21] drm/vkms: Prepare pre_blend_color_transform() for CRTC color pipelines
Ariel D'Alessandro
ariel.dalessandro at collabora.com
Tue Dec 23 10:01:39 PST 2025
From: "Nícolas F. R. A. Prado" <nfraprado at collabora.com>
As a preparatory step for supporting CRTC (post-blend) color pipelines
in VKMS, rename pre_blend_color_transform() to color_transform() and
make it take the first colorop instead of a plane state, so it can be
shared by both plane (pre-blend) and CRTC (post-blend) color pipeline
code paths.
Signed-off-by: Nícolas F. R. A. Prado <nfraprado at collabora.com>
Reviewed-by: Louis Chauvet <louis.chauvet at bootlin.com>
Reviewed-by: Ariel D'Alessandro <ariel.dalessandro at collabora.com>
---
drivers/gpu/drm/vkms/vkms_composer.c | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/drivers/gpu/drm/vkms/vkms_composer.c b/drivers/gpu/drm/vkms/vkms_composer.c
index 3cf3f26e0d8ea..d4f87a2aa3359 100644
--- a/drivers/gpu/drm/vkms/vkms_composer.c
+++ b/drivers/gpu/drm/vkms/vkms_composer.c
@@ -189,13 +189,13 @@ static void apply_colorop(struct pixel_argb_s32 *pixel, struct drm_colorop *colo
}
}
-static void pre_blend_color_transform(const struct vkms_plane_state *plane_state,
- struct line_buffer *output_buffer)
+static void color_transform(struct drm_colorop *first_colorop,
+ struct line_buffer *output_buffer)
{
struct pixel_argb_s32 pixel;
for (size_t x = 0; x < output_buffer->n_pixels; x++) {
- struct drm_colorop *colorop = plane_state->base.base.color_pipeline;
+ struct drm_colorop *colorop = first_colorop;
/*
* Some operations, such as applying a BT709 encoding matrix,
@@ -449,7 +449,7 @@ static void blend_line(struct vkms_plane_state *current_plane, int y,
*/
current_plane->pixel_read_line(current_plane, src_x_start, src_y_start, direction,
pixel_count, &stage_buffer->pixels[dst_x_start]);
- pre_blend_color_transform(current_plane, stage_buffer);
+ color_transform(current_plane->base.base.color_pipeline, stage_buffer);
pre_mul_alpha_blend(stage_buffer, output_buffer,
dst_x_start, pixel_count);
}
--
2.51.0
More information about the Linux-mediatek
mailing list