From e78b1cf6da1b3fed44e7aebb2671ea0f847b209e Mon Sep 17 00:00:00 2001 From: Kieran Bingham Date: Mon, 25 May 2020 14:13:23 +0100 Subject: tests: Provide {un,}bind testing Perform unbind-bind testing of the VSP devices to validate successful removal of the drivers. Signed-off-by: Kieran Bingham Reviewed-by: Laurent Pinchart --- tests/vsp-unit-test-0026.sh | 55 +++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 55 insertions(+) create mode 100755 tests/vsp-unit-test-0026.sh diff --git a/tests/vsp-unit-test-0026.sh b/tests/vsp-unit-test-0026.sh new file mode 100755 index 0000000..0e013ce --- /dev/null +++ b/tests/vsp-unit-test-0026.sh @@ -0,0 +1,55 @@ +#!/bin/sh + +# +# Test unbinding and binding all VSP1 devices, performing a simple +# copy test to validate the hardware afterwards. +# + +. ./vsp-lib.sh + +features="rpf.0 wpf.0" + +vsp1_driver=/sys/bus/platform/drivers/vsp1 +vsps=$(cd /sys/bus/platform/devices/; ls | grep vsp) + +unbind_vsp() { + echo $1 > $vsp1_driver/unbind +} + +bind_vsp() { + echo $1 > $vsp1_driver/bind +} + +# Input is directly copied to the output. No change in format or size. +test_copy() { + local format=$1 + local insize=$2 + + test_start "simple hardware validation after unbind/bind cycles" + + pipe_configure rpf-wpf 0 0 + format_configure rpf-wpf 0 0 $format $insize $format + + vsp_runner rpf.0 & + vsp_runner wpf.0 + + local result=$(compare_frames) + + test_complete $result +} + +test_main() { + local format + + # Unbind and rebind VSPs individually + for v in $vsps; do + unbind_vsp $v + bind_vsp $v + done + + # Perform a simple copy test to validate HW is alive + test_copy RGB24 128x128 +} + +test_init $0 "$features" +test_run -- cgit v1.2.3