summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2022-02-28tests: Add RPF cropping test for YUV formatsHEADmasterLaurent Pinchart
YUV formats can be subsampled, which interact with cropping. Add a test to verify that the VSP driver handles this correctly. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Reviewed-by: Kieran Bingham <kieran.bingham+renesas@ideasonboard.com>
2022-02-28gen-image: Crop input image before format conversion to YUVLaurent Pinchart
When converting the input image to a subsampled YUV format, chroma components are averaged horizontally to emulate the VSP internal conversion to YUV444. If the image is subsequently cropped to emulate the RPF cropping, the edge chroma values end up effectively taking into account pixels outside of the crop rectangle. This doesn't match the hardware mode of operation which crops the image when reading it through DMA, before performing any other operation. Fix this by cropping the image just after reading it, before format conversion. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Reviewed-by: Kieran Bingham <kieran.bingham+renesas@ideasonboard.com>
2022-02-28tests: Add SPDX headers to vsp-unit-test-0026.shLaurent Pinchart
vsp-unit-test-0026.sh is missing SPDX headers. Add them. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Reviewed-by: Kieran Bingham <kieran.bingham+renesas@ideasonboard.com>
2022-02-28scripts/logger: Use new monotonic-ts toolKieran Bingham
Utilise the new monotonic timestamping tool to remove the manual parsing of timestamps via /proc/timer_list which can only be read by root. This also simplifies the processing required and contains all timestamping actions within a single process space. Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2022-02-28src: monotonic-ts: Monotonic timestamp loggingKieran Bingham
Introduce a new utility which prefixes a monotonic timestamp rendered in the same format as the kernel logs to all lines fed in through stdin. Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2022-02-28gen-lut: Update for python3Kieran Bingham
Python2 has now gone end-of-life and is discontinued. Update the gen-lut utility to use python3 directly, converting xrange usages to range, and using bytearray to store the tables and write them directly removing the discontinued file object. Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2020-09-16tests: Provide {un,}bind testingKieran Bingham
Perform unbind-bind testing of the VSP devices to validate successful removal of the drivers. Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2020-07-14gen-image: Replace copyright text with SPDX tagsLaurent Pinchart
Standardize on the usage of SPDX tags. No change in copyright is included. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Reviewed-by: Kieran Bingham <kieran.bingham+renesas@ideasonboard.com>
2020-07-14Add license and copyright informationLaurent Pinchart
Add SPDX tags to describe license and copyright information to all files in the repository. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Reviewed-by: Kieran Bingham <kieran.bingham+renesas@ideasonboard.com>
2019-02-23Remove dependency on a particular yavta branchLaurent Pinchart
All the changes required by the VSP test suite have been integrated in the master branch of yavta. There is no need to depend on the vsp branch anymore, remove the corresponding paragraph from the documentation. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Reviewed-by: Niklas Söderlund <niklas.soderlund+renesas@ragnatech.se>
2019-02-19tests: Provide copy test to validate 1xN streamsKieran Bingham
Validate that a 1xN stream can be read through the RPF and written through the WPF. The test framework does not currently support processing images where the stride does not match the output width - so the testing is currently limited to testing only the vertical direction in this aspect. Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> [Drop 1024x768 and 128x128 resolutions] Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2019-02-19tests: Add pseudo platform testKieran Bingham
Provide an initial test which can run as part of the test suite. This test will report the platform and kernel version, along with the identified paths of required utilities. This will aid in ensuring that required tools are available on a running platform - and report the kernel and platform details in any test suite output for clarification of results. Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> [Don't depend on columns] Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2019-02-19vsp-lib: Reset controls to defaults on each test runKieran Bingham
Some of our tests set flipping and rotation controls, and the VSP instance can be used again by later tests. If these controls are not reset, then that operation is applied to later tests incorrectly causing those tests to fail. In an ideal world, tests should clean up after themselves, and leave the system in a known state. However the world is not ideal and we would not be able to guarantee any previous system state before a test was run anyway. Therefore it is more effective to reset state at the beginning of a test. To repair this - reset all control values to their defaults at the start of every test during test_init() Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2019-02-19vsp-lib: trivial: Fix spelling of ReferenceKieran Bingham
Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2018-05-21tests: suspend/resume: Increase number of processed framesLaurent Pinchart
The suspend/resume test starts a run of 300 frames and suspends the system one second later. On some SoCs (namely H3 ES2.0) the VSP bandwidth is high enough to complete processing of 300 frames in less than a second. The test thus suspends and resumes the system with the VSP idle instead of running, defeating the purpose of the test. Fix this by increasing the number of frames to process to 1000. The frame count is now passed as an argument to the test_extended_wpf_packing function to ease future changes. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Reviewed-by: Kieran Bingham <kieran.bingham+renesas@ideasonboard.com> --- Changes since v1: - Don't explicitly state at which frame suspend/resume is expected to occur as that's device-dependent - Compare the last three frames instead of just one
2018-05-21vsp-lib: Capture the kernel log messages in test log filesLaurent Pinchart
It can be useful to capture kernel log messages in test log files for diagnostic purpose. Add a simple mechanism to do so by capturing the full kernel log at the end of the test. The kernel log is cleared first before starting the test to avoid capturing unrelated messages. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> --- Changes since v1: - Don't clear the kernel log
2017-08-30tests: Add BRS testLaurent Pinchart
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Reviewed-by: Kieran Bingham <kieran.bingham+renesas@ideasonboard.com> Tested-by: Kieran Bingham <kieran.bingham+renesas@ideasonboard.com>
2017-08-30vsp-lib: Add support for RPF-BRS-WPF pipelinesLaurent Pinchart
Reuse the BRU code, using the brx generic name to cover both BRU and BRS. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Reviewed-by: Kieran Bingham <kieran.bingham+renesas@ideasonboard.com> Tested-by: Kieran Bingham <kieran.bingham+renesas@ideasonboard.com>
2017-08-30vsp-lib: Use the correct media device name to count BRU inputsLaurent Pinchart
Use the media device under test, not the default media0. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Reviewed-by: Kieran Bingham <kieran.bingham+renesas@ideasonboard.com> Tested-by: Kieran Bingham <kieran.bingham+renesas@ideasonboard.com>
2017-08-24README: Document need for killall commandKieran Bingham
The killall command is provided by the psmisc package on debian based systems. On other systems it should be built or added to the filesystem as appropriate. Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2017-08-24tests: Use POSIX '.' as 'source'Kieran Bingham
On posix shells, only the '.' command is supported. Even when running on a full bash shell, the file to source should be either fully or locally qualified to avoid picking up a stray version available in $PATH. Fix both issues by swapping to the posix standard Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2017-04-26tests: Don't perform HSV capture test on Gen3 hardwareLaurent Pinchart
The Gen3 VSP doesn't support HSV formats on the RPF or WPF. Skip the test. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2017-03-03tests: Add HGT testNiklas Söderlund
Test HGT histogram during video streaming. Signed-off-by: Niklas Söderlund <niklas.soderlund+renesas@ragnatech.se> Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2017-03-03vsp-lib: Add option to specify histogram typeNiklas Söderlund
There are two kinds of histogram that can be generated, HGO and HGT. Let the histogram compare function know which type it should use. Signed-off-by: Niklas Söderlund <niklas.soderlund+renesas@ragnatech.se> Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2017-03-03gen-image: Add generation of HGT reference frameNiklas Söderlund
Add a new histogram type HGT to be able to compute HGT histogram frame from RGB data. This is needed to test the HGT module together with the HST module in the VSP pipeline to convert a image from RGB to HSV. This also includes a new command line option to be able to specify the user configuration of the HGT hue areas. This is needed to verify that the HGT driver can operate with different hue area configurations. Signed-off-by: Niklas Söderlund <niklas.soderlund+renesas@ragnatech.se> Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2017-03-03gen-image: Add option to specify histogram typeNiklas Söderlund
The VSP hardware can compute both 1D (HGO) and 2D (HGT) histograms. The gen-image utility needs to know which histogram type it should generate a reference frame for. Add a command line option which allows the user to set the type. Signed-off-by: Niklas Söderlund <niklas.soderlund+renesas@ragnatech.se> Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2017-03-03vsp-lib: Fix typo in commentLaurent Pinchart
HSV is not written HSB. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2017-02-22scripts: bin2png.sh: Fix POSIX shell complianceKieran Bingham
The string manipulations of the form ${VAR/search/replace} are not posix compliant. Use string deletion, and append instead. Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2017-02-14README: List the stress tool as an optional dependencyLaurent Pinchart
The tool is required to run tests vsp-unit-test-0021.sh and vsp-unit-test-0022.sh. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2017-02-13tests: Add extended stress testingKieran Bingham
Duplicate the functionality of vsp-unit-test-0020, to provide a longer duration task for the hardware to run, whilst we load the system using the 'stress' utility. Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com> Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2017-02-13tests: Add basic stress testingKieran Bingham
Duplicate the functionality of vsp-unit-test-0001, to provide a set of work for the hardware to run, whilst we load the system using the 'stress' utility. Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com> Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2017-02-13tests: Test suspend/resume on active pipelinesKieran Bingham
Provide a test to verify the hardware completes a functional test whilst performing a suspend resume cycle in parallel. Make use of the /sys/power/pm_test functionality provided by CONFIG_PM_DEBUG to perform the testing Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2017-02-13tests: Test suspend/resume on idle pipelinesKieran Bingham
Provide a test to verify the hardware is functional both before and after entering a suspend / resume cycle. Make use of the /sys/power/pm_test functionality provided by CONFIG_PM_DEBUG to perform the testing Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2017-02-13logger: Log to the FTrace buffer if tracing is enabledKieran Bingham
Extend the logger such that it will detect the tracing system, and also append print statement to this ring buffer. This provides the relevant logging output interspersed in the ftrace logs for an effective solution to identifying the actions that caused the traces to occur Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2017-02-13scripts: bin2png: Support conversion of all files in a directoryLaurent Pinchart
When the first argument is a directory name instead of a file name, convert all test script output binaries in that directory. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2017-02-13scripts: Provide bin2png.sh helperKieran Bingham
Identify the size and format from the test output filename, and pass to raw2rgbpnm for conversion to a PNM file. From there we can convert easily to a PNG output file. Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2017-02-13scripts: Add statistics to test suite runnerLaurent Pinchart
Print the number of passed, failed and skipped tests. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2017-02-13scripts: Test suite runnerKieran Bingham
Provide a utility script to execute all vsp unit tests, as well as the option to execute multiple iterations of the suite. Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2017-02-13vsp-lib: Add sru-uds and uds-sru pipelinesLaurent Pinchart
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2017-02-13vsp-lib: Add pipeline description to the frame file nameLaurent Pinchart
If different pipelines from the same test generate the same output frame size and format from the same input format, the frame binary file names will collide. To avoid overwriting output files, add the pipeline description to the file name. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2017-02-13vsp-lib: Initialize __vsp_wpf_index to default value in pipe_reset()Laurent Pinchart
This avoids having to store the index in all pipe configuration functions, as the vast majority of them use WPF.0. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2017-02-13vsp-lib: Fix reference frame generation for HSV input formatsLaurent Pinchart
gen-image doesn't support processing HSV input frames. Fortunately the HSV tests don't require it either, when they take an HSV input frame they just pass it straight to the WPF. We can thus set the input format to RGB for reference frame generation. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2017-02-12tests: Add RPF cropping testKieran Bingham
Test both the input cropping size and position Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2017-02-12vsp-lib: Support RPF frame croppingKieran Bingham
Pass the optional '--crop (X,Y)/WxH' parameter through reference_frame allowing the input to be cropped for comparison Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2017-02-12gen-image: Implement option to parse an input cropKieran Bingham
Allow the user to specify an input crop in the form (X,Y)/WxH Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com> Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2017-02-12vsp-lib: Filter non-filesystem regular charactersKieran Bingham
Parameters can contain characters not suited to use in filenames. Add '=','(', and ')' to the filtering, and replace with '_' This reduces extra escaping, and quoting when working with the output filenames of failed tests and VSP_KEEP_FRAMES=1 Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2017-02-10vsp-lib: sort output frames correctlyKieran Bingham
In the event of failed frames, or VSP_KEEP_FRAMES being set, the output file names do not sort such that the reference frame is next to the failed frame. This can make comparing reference frames and the relevant output frames tedious and difficult. Re-arrange the output filenames such that the sort order will match the option parameters correctly, followed by either the reference frame identifier, or the frame number at the end of the filename string Signed-off-by: Kieran Bingham <kieran.bingham@ideasonboard.com> Reviewed-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2016-10-24tests: Add YVU 3-planar formats in RGB and WPF testsLaurent Pinchart
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2016-09-16tests: Add HSV capture and conversion testLaurent Pinchart
Test conversion from RGB to HSV with output in both HSV24 and HSV32 formats as well as HSV to HSV pass-through. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
2016-09-16vsp-lib: Add support for RPF-HST-WPF pipelineLaurent Pinchart
This will be used to test RGB to HSV conversion. Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>