dmaengine: dmatest: add support for memset test
authorSinan Kaya <okaya@codeaurora.org>
Fri, 30 Jun 2017 02:30:58 +0000 (22:30 -0400)
committerVinod Koul <vinod.koul@intel.com>
Tue, 18 Jul 2017 16:25:34 +0000 (21:55 +0530)
commit61b5f54d8c1fafb97dace958a54cdd72b37138c3
tree144ad690456b4a2d367795cf540ac2aff566411e
parent5771a8c08880cdca3bfb4a3fc6d309d6bba20877
dmaengine: dmatest: add support for memset test

Introducing memset test into dmatest. This change allows us to test
memset capable HW using the dmatest test procedure. The new dmatest
value for memset is 2 and it is not the default value.

Memset support patch shares the same code path as the other dmatest
code to reuse as much as we can.

The first value inside the source buffer is used as a pattern
to fill in the destination buffer space.

Prior to running the test, source/destination buffers are initialized
in the current code.

"The remaining bits are the inverse of a counter which increments by
 one for each byte address."

Memset test will fill in the upper bits of pattern with the inverse of
fixed counter value 1 as opposed to an incrementing value in a loop.

An example run is as follows:

echo dma0chan0 > /sys/module/dmatest/parameters/channel
echo 2 >  /sys/module/dmatest/parameters/dmatest
echo 2000 >  /sys/module/dmatest/parameters/timeout
echo 10 >  /sys/module/dmatest/parameters/iterations
echo 1 >  /sys/module/dmatest/parameters/run

Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com>
Signed-off-by: Sinan Kaya <okaya@codeaurora.org>
Signed-off-by: Vinod Koul <vinod.koul@intel.com>
drivers/dma/dmatest.c