Age | Commit message (Collapse) | Author |
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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
|
|
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
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
HSV is not written HSB.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
Print the number of passed, failed and skipped tests.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
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>
|
|
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
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>
|
|
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|
|
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>
|
|
This will be used to test RGB to HSV conversion.
Signed-off-by: Laurent Pinchart <laurent.pinchart@ideasonboard.com>
|