Signed-off-by: Arthur Grillo <arthurgrillo@riseup.net>
---
drivers/gpu/drm/vkms/tests/vkms_format_test.c | 2 +-
drivers/gpu/drm/vkms/vkms_drv.h | 4 ++++
2 files changed, 5 insertions(+), 1 deletion(-)
diff --git a/drivers/gpu/drm/vkms/tests/vkms_format_test.c b/drivers/gpu/drm/vkms/tests/vkms_format_test.c
index 4636b013602f..3522ecee960f 100644
--- a/drivers/gpu/drm/vkms/tests/vkms_format_test.c
+++ b/drivers/gpu/drm/vkms/tests/vkms_format_test.c
@@ -113,7 +113,7 @@ static void vkms_format_test_yuv_u8_to_argb_u16(struct kunit *test)
for (size_t i = 0; i < param->n_colors; i++) {
const struct format_pair *color = ¶m->colors[i];
- const struct conversion_matrix *matrix = get_conversion_matrix_to_argb_u16
+ struct conversion_matrix *matrix = get_conversion_matrix_to_argb_u16
(DRM_FORMAT_NV12, param->encoding, param->range);
argb = argb_u16_from_yuv888(color->yuv.y, color->yuv.u, color->yuv.v, matrix);
diff --git a/drivers/gpu/drm/vkms/vkms_drv.h b/drivers/gpu/drm/vkms/vkms_drv.h
index 393b76e7c694..3d62578499ab 100644
--- a/drivers/gpu/drm/vkms/vkms_drv.h
+++ b/drivers/gpu/drm/vkms/vkms_drv.h
@@ -47,6 +47,10 @@ struct pixel_argb_u16 {
u16 a, r, g, b;
};
+struct pixel_yuv_u8 {
+ u8 y, u, v;
+};
+
struct line_buffer {
size_t n_pixels;
struct pixel_argb_u16 *pixels;
--
2.43.0
Le 06/03/24 - 17:03, Arthur Grillo a écrit :
> Signed-off-by: Arthur Grillo <arthurgrillo@riseup.net>
> ---
> drivers/gpu/drm/vkms/tests/vkms_format_test.c | 2 +-
> drivers/gpu/drm/vkms/vkms_drv.h | 4 ++++
> 2 files changed, 5 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/gpu/drm/vkms/tests/vkms_format_test.c b/drivers/gpu/drm/vkms/tests/vkms_format_test.c
> index 4636b013602f..3522ecee960f 100644
> --- a/drivers/gpu/drm/vkms/tests/vkms_format_test.c
> +++ b/drivers/gpu/drm/vkms/tests/vkms_format_test.c
> @@ -113,7 +113,7 @@ static void vkms_format_test_yuv_u8_to_argb_u16(struct kunit *test)
> for (size_t i = 0; i < param->n_colors; i++) {
> const struct format_pair *color = ¶m->colors[i];
>
> - const struct conversion_matrix *matrix = get_conversion_matrix_to_argb_u16
> + struct conversion_matrix *matrix = get_conversion_matrix_to_argb_u16
> (DRM_FORMAT_NV12, param->encoding, param->range);
>
> argb = argb_u16_from_yuv888(color->yuv.y, color->yuv.u, color->yuv.v, matrix);
> diff --git a/drivers/gpu/drm/vkms/vkms_drv.h b/drivers/gpu/drm/vkms/vkms_drv.h
> index 393b76e7c694..3d62578499ab 100644
> --- a/drivers/gpu/drm/vkms/vkms_drv.h
> +++ b/drivers/gpu/drm/vkms/vkms_drv.h
> @@ -47,6 +47,10 @@ struct pixel_argb_u16 {
> u16 a, r, g, b;
> };
>
> +struct pixel_yuv_u8 {
> + u8 y, u, v;
> +};
Can I move this structure in the test itself? As discussed with Pekka, I
think it's not a good idea to have such specific `pixel_{fmt}_{size}` for
each variant. Leaving it in vkms_drv.h give the idea of "for each new kind
of format we have to create a new structure".
> +
> struct line_buffer {
> size_t n_pixels;
> struct pixel_argb_u16 *pixels;
>
> --
> 2.43.0
>
--
Louis Chauvet, Bootlin
Embedded Linux and Kernel engineering
https://bootlin.com
On 06/03/24 21:03, Louis Chauvet wrote:
> Le 06/03/24 - 17:03, Arthur Grillo a écrit :
>> Signed-off-by: Arthur Grillo <arthurgrillo@riseup.net>
>> ---
>> drivers/gpu/drm/vkms/tests/vkms_format_test.c | 2 +-
>> drivers/gpu/drm/vkms/vkms_drv.h | 4 ++++
>> 2 files changed, 5 insertions(+), 1 deletion(-)
>>
>> diff --git a/drivers/gpu/drm/vkms/tests/vkms_format_test.c b/drivers/gpu/drm/vkms/tests/vkms_format_test.c
>> index 4636b013602f..3522ecee960f 100644
>> --- a/drivers/gpu/drm/vkms/tests/vkms_format_test.c
>> +++ b/drivers/gpu/drm/vkms/tests/vkms_format_test.c
>> @@ -113,7 +113,7 @@ static void vkms_format_test_yuv_u8_to_argb_u16(struct kunit *test)
>> for (size_t i = 0; i < param->n_colors; i++) {
>> const struct format_pair *color = ¶m->colors[i];
>>
>> - const struct conversion_matrix *matrix = get_conversion_matrix_to_argb_u16
>> + struct conversion_matrix *matrix = get_conversion_matrix_to_argb_u16
>> (DRM_FORMAT_NV12, param->encoding, param->range);
>>
>> argb = argb_u16_from_yuv888(color->yuv.y, color->yuv.u, color->yuv.v, matrix);
>> diff --git a/drivers/gpu/drm/vkms/vkms_drv.h b/drivers/gpu/drm/vkms/vkms_drv.h
>> index 393b76e7c694..3d62578499ab 100644
>> --- a/drivers/gpu/drm/vkms/vkms_drv.h
>> +++ b/drivers/gpu/drm/vkms/vkms_drv.h
>> @@ -47,6 +47,10 @@ struct pixel_argb_u16 {
>> u16 a, r, g, b;
>> };
>>
>> +struct pixel_yuv_u8 {
>> + u8 y, u, v;
>> +};
>
> Can I move this structure in the test itself? As discussed with Pekka, I
> think it's not a good idea to have such specific `pixel_{fmt}_{size}` for
> each variant. Leaving it in vkms_drv.h give the idea of "for each new kind
> of format we have to create a new structure".
Sure, it makes more sense.
Best Regards,
~Arthur Grillo
>
>> +
>> struct line_buffer {
>> size_t n_pixels;
>> struct pixel_argb_u16 *pixels;
>>
>> --
>> 2.43.0
>>
>
© 2016 - 2026 Red Hat, Inc.