Hi Laurent,
LGTM! :-)
On 28/02/17 23:08, Laurent Pinchart wrote:
> While all VSP instances can process HSV internally, on Gen3 hardware
> reading or writing HSV24 or HSV32 from/to memory causes the device to
> hang. Disable those pixel formats on Gen3 hardware.
>
> Signed-off-by: Laurent Pinchart
Reviewed-by: Kieran Bingham
> ---
> drivers/media/platform/vsp1/vsp1_pipe.c | 12 +---
> 1 file changed, 9 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/media/platform/vsp1/vsp1_pipe.c
> b/drivers/media/platform/vsp1/vsp1_pipe.c
> index 3f1acf68dc6e..35364f594e19 100644
> --- a/drivers/media/platform/vsp1/vsp1_pipe.c
> +++ b/drivers/media/platform/vsp1/vsp1_pipe.c
> @@ -157,9 +157,15 @@ const struct vsp1_format_info
> *vsp1_get_format_info(struct vsp1_device *vsp1,
> {
> unsigned int i;
>
> - /* Special case, the VYUY format is supported on Gen2 only. */
> - if (vsp1->info->gen != 2 && fourcc == V4L2_PIX_FMT_VYUY)
> - return NULL;
> + /* Special case, the VYUY and HSV formats are supported on Gen2 only. */
> + if (vsp1->info->gen != 2) {
> + switch (fourcc) {
> + case V4L2_PIX_FMT_VYUY:
> + case V4L2_PIX_FMT_HSV24:
> + case V4L2_PIX_FMT_HSV32:
> + return NULL;
> + }
> + }
>
> for (i = 0; i < ARRAY_SIZE(vsp1_video_formats); ++i) {
> const struct vsp1_format_info *info = &vsp1_video_formats[i];
>