diff options
author | Dmitry Baryshkov <dmitry.baryshkov@linaro.org> | 2024-02-22 13:17:06 +0200 |
---|---|---|
committer | Dmitry Baryshkov <dmitry.baryshkov@linaro.org> | 2024-09-23 21:11:29 +0200 |
commit | 0a1162e2af357be00610377f297600806b90deca (patch) | |
tree | 4d3ffe8c97a7314f84414284d53a0071dca37cb2 /tests/util | |
parent | 38c043dca248a25d3ef9cf12571569f0c98aa10a (diff) |
modetest: add support for YUV422 and YUV444 plane format
Currently modetest supports only the YUV420 and YVU420 planar YCbCr
plane formats (aka YV12 and YU12). Extend the code to add support for
YUV422 / YVU422 and YUV444 / YVU444 plane formats.
Reviewed-by: Marijn Suijten <marijn.suijten@somainline.org>
Signed-off-by: Dmitry Baryshkov <dmitry.baryshkov@linaro.org>
Diffstat (limited to 'tests/util')
-rw-r--r-- | tests/util/format.c | 4 | ||||
-rw-r--r-- | tests/util/pattern.c | 8 |
2 files changed, 12 insertions, 0 deletions
diff --git a/tests/util/format.c b/tests/util/format.c index eda3c671..c6235441 100644 --- a/tests/util/format.c +++ b/tests/util/format.c @@ -62,6 +62,10 @@ static const struct util_format_info format_info[] = { /* YUV planar */ { DRM_FORMAT_YUV420, "YU12", MAKE_YUV_INFO(YUV_YCbCr, 2, 2, 1) }, { DRM_FORMAT_YVU420, "YV12", MAKE_YUV_INFO(YUV_YCrCb, 2, 2, 1) }, + { DRM_FORMAT_YUV422, "YU16", MAKE_YUV_INFO(YUV_YCbCr, 2, 1, 1) }, + { DRM_FORMAT_YVU422, "YV16", MAKE_YUV_INFO(YUV_YCrCb, 2, 1, 1) }, + { DRM_FORMAT_YUV444, "YU24", MAKE_YUV_INFO(YUV_YCbCr, 1, 1, 1) }, + { DRM_FORMAT_YVU444, "YV24", MAKE_YUV_INFO(YUV_YCrCb, 1, 1, 1) }, /* RGB16 */ { DRM_FORMAT_ARGB4444, "AR12", MAKE_RGB_INFO(4, 8, 4, 4, 4, 0, 4, 12) }, { DRM_FORMAT_XRGB4444, "XR12", MAKE_RGB_INFO(4, 8, 4, 4, 4, 0, 0, 0) }, diff --git a/tests/util/pattern.c b/tests/util/pattern.c index 2ff9c033..e5f20c50 100644 --- a/tests/util/pattern.c +++ b/tests/util/pattern.c @@ -1229,10 +1229,14 @@ static void fill_smpte(const struct util_format_info *info, void *planes[3], stride); case DRM_FORMAT_YUV420: + case DRM_FORMAT_YUV422: + case DRM_FORMAT_YUV444: return fill_smpte_yuv_planar(&info->yuv, planes[0], planes[1], planes[2], width, height, stride); case DRM_FORMAT_YVU420: + case DRM_FORMAT_YVU422: + case DRM_FORMAT_YVU444: return fill_smpte_yuv_planar(&info->yuv, planes[0], planes[2], planes[1], width, height, stride); @@ -1646,10 +1650,14 @@ static void fill_tiles(const struct util_format_info *info, void *planes[3], width, height, stride); case DRM_FORMAT_YUV420: + case DRM_FORMAT_YUV422: + case DRM_FORMAT_YUV444: return fill_tiles_yuv_planar(info, planes[0], planes[1], planes[2], width, height, stride); case DRM_FORMAT_YVU420: + case DRM_FORMAT_YVU422: + case DRM_FORMAT_YVU444: return fill_tiles_yuv_planar(info, planes[0], planes[2], planes[1], width, height, stride); |