summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLaurent Pinchart <laurent.pinchart@ideasonboard.com>2022-04-07 11:31:06 +0300
committerLaurent Pinchart <laurent.pinchart@ideasonboard.com>2022-04-07 16:19:41 +0300
commit302731cdf8e107f8fa005309f3475f98581de8e6 (patch)
tree70ddf8c3f95073ce368680caa7704e4f6f95828e
parent3980448e9f46f9ca2f27b38187215543984e3f5d (diff)
test: v4l2_videodevice: Fix format configuration in the vimc pipeline
The V4L2VideoDeviceTest class configures the capture pipeline with parameters that are partly hardcoded, and partly come from the current configuration of the device. In particular, with the vimc pipeline, the sensor subdevice is configured with the size retrieved from the capture video node, and the video node is then reconfigured to 640x480. Relying on the current (and thus possibly random) device configuration can lead to broken pipes when starting streaming. This currently causes failures of the dequeue_watchdog test when run after the formats test. Fix it by explicitly setting the same size for both the vimc subdevs and the video capture device. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Reviewed-by: Paul Elder <paul.elder@ideasonboard.com> Tested-by: Kieran Bingham <kieran.bingham@ideasonboard.com> Reviewed-by: Kieran Bingham <kieran.bingham@ideasonboard.com>
-rw-r--r--test/v4l2_videodevice/v4l2_videodevice_test.cpp5
1 files changed, 3 insertions, 2 deletions
diff --git a/test/v4l2_videodevice/v4l2_videodevice_test.cpp b/test/v4l2_videodevice/v4l2_videodevice_test.cpp
index f23aaf8f..125aafd6 100644
--- a/test/v4l2_videodevice/v4l2_videodevice_test.cpp
+++ b/test/v4l2_videodevice/v4l2_videodevice_test.cpp
@@ -60,6 +60,9 @@ int V4L2VideoDeviceTest::init()
if (capture_->getFormat(&format))
return TestFail;
+ format.size.width = 640;
+ format.size.height = 480;
+
if (driver_ == "vimc") {
sensor_ = new CameraSensor(media_->getEntityByName("Sensor A"));
if (sensor_->init())
@@ -82,8 +85,6 @@ int V4L2VideoDeviceTest::init()
return TestFail;
}
- format.size.width = 640;
- format.size.height = 480;
if (capture_->setFormat(&format))
return TestFail;