From 0ee8cf3d4b353c834e951a9862a0e8cfbfa5a65d Mon Sep 17 00:00:00 2001 From: Laurent Pinchart Date: Wed, 28 May 2014 13:10:33 -0300 Subject: [PATCH] v4l: vsp1: wpf: Clear RPF to WPF association at stream off time The VSP1 stores the video pipelines' input (RPF) to output (WPF) mappings in a WPF register. An RPF must never be associated with multiple WPFs, even if all of those WPFs but one are unused, otherwise the hardware won't function properly. The driver doesn't ensure this correctly as it never clears the mappings. An RPF used with one WPF and later with a different WPF will lead to malfunction, as it will be associated with two WPFs. Clear the mappings at stream off time to fix this. Reported-by: Damian Hobson-Garcia Signed-off-by: Laurent Pinchart Signed-off-by: Mauro Carvalho Chehab (cherry picked from commit d6c71e8ceb9fe79aaf9c2f73af5cb2ef93526b0d) Signed-off-by: Simon Horman --- drivers/media/platform/vsp1/vsp1_wpf.c | 1 + 1 file changed, 1 insertion(+) diff --git a/drivers/media/platform/vsp1/vsp1_wpf.c b/drivers/media/platform/vsp1/vsp1_wpf.c index 591f09c..d330865 100644 --- a/drivers/media/platform/vsp1/vsp1_wpf.c +++ b/drivers/media/platform/vsp1/vsp1_wpf.c @@ -54,6 +54,7 @@ static int wpf_s_stream(struct v4l2_subdev *subdev, int enable) if (!enable) { vsp1_write(vsp1, VI6_WPF_IRQ_ENB(wpf->entity.index), 0); + vsp1_wpf_write(wpf, VI6_WPF_SRCRPF, 0); return 0; } -- 2.7.4