Re: [PATCH V2 5/5] dmaengine: Documentation: Add documentation for multi chan testing

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hi,

On 2018-08-31 14:03, Seraj Alijan wrote:
> Modify documentation to add multi channel testing support.
> 
> Signed-off-by: Seraj Alijan <seraj.alijan@xxxxxxxxxxx>
> ---
>  Documentation/driver-api/dmaengine/dmatest.rst | 27 ++++++++++++++++++++------
>  1 file changed, 21 insertions(+), 6 deletions(-)
> 
> diff --git a/Documentation/driver-api/dmaengine/dmatest.rst b/Documentation/driver-api/dmaengine/dmatest.rst
> index 7ce5e71..0a7e4c3 100644
> --- a/Documentation/driver-api/dmaengine/dmatest.rst
> +++ b/Documentation/driver-api/dmaengine/dmatest.rst
> @@ -26,28 +26,43 @@ Part 2 - When dmatest is built as a module
>  
>  Example of usage::
>  
> -    % modprobe dmatest channel=dma0chan0 timeout=2000 iterations=1 run=1
> +    % modprobe dmatest timeout=2000 iterations=1 channel=dma0chan0 run=1
>  
>  ...or::
>  
>      % modprobe dmatest
> -    % echo dma0chan0 > /sys/module/dmatest/parameters/channel
>      % echo 2000 > /sys/module/dmatest/parameters/timeout
>      % echo 1 > /sys/module/dmatest/parameters/iterations
> +    % echo dma0chan0 > /sys/module/dmatest/parameters/channel
>      % echo 1 > /sys/module/dmatest/parameters/run
>  
>  ...or on the kernel command line::
>  
> -    dmatest.channel=dma0chan0 dmatest.timeout=2000 dmatest.iterations=1 dmatest.run=1
> +    dmatest.timeout=2000 dmatest.iterations=1 dmatest.channel=dma0chan0 dmatest.run=1
> +
> +Example of multi-channel test usage:
> +    % modprobe dmatest
> +    % echo 2000 > /sys/module/dmatest/parameters/timeout
> +    % echo 1 > /sys/module/dmatest/parameters/iterations
> +    % echo dma0chan0 > /sys/module/dmatest/parameters/channel
> +    % echo dma0chan1 > /sys/module/dmatest/parameters/channel
> +    % echo dma0chan2 > /sys/module/dmatest/parameters/channel

Can I still use:
echo "" > /sys/module/dmatest/parameters/channel

to stop dmatest to run on the specific channel(s) or do I need to reboot
the machine to do so?

I normally test multi channel memcpy with:
echo 8000000 > /sys/module/dmatest/parameters/test_buf_size
echo 2000 > /sys/module/dmatest/parameters/timeout
echo 20 > /sys/module/dmatest/parameters/iterations
echo 20 > /sys/module/dmatest/parameters/max_channels
echo 1 > /sys/module/dmatest/parameters/run

So it will start running memtest on 20 channels.

If I do a test on specific channel (different DMA controller) I set the
channel run the test and then with "" I can revert back to normal
torture test.

> +    % echo 1 > /sys/module/dmatest/parameters/run
>  
> +Note: the channel parameter should always be the last parameter set prior to
> +running the test (setting run=1), this is because upon setting the channel
> +parameter, that specific channel is requested using the dmaengine and a thread
> +is created with the existing parameters. This thread is set as pending
> +and will be executed once run is set to 1. Any parameters set after the thread
> +is created are not applied.
>  .. hint::
>    available channel list could be extracted by running the following command::
>  
>      % ls -1 /sys/class/dma/
>  
> -Once started a message like "dmatest: Started 1 threads using dma0chan0" is
> -emitted. After that only test failure messages are reported until the test
> -stops.
> +Once started a message like " dmatest: Added 1 threads using dma0chan0" is
> +emitted. A thread for that specific channel is created and is now pending, the
> +pending thread is started once run is to 1.
>  
>  Note that running a new test will not stop any in progress test.
>  
> 

- Péter

Texas Instruments Finland Oy, Porkkalankatu 22, 00180 Helsinki.
Y-tunnus/Business ID: 0615521-4. Kotipaikka/Domicile: Helsinki



[Index of Archives]     [Linux Kernel]     [Linux ARM (vger)]     [Linux ARM MSM]     [Linux Omap]     [Linux Arm]     [Linux Tegra]     [Fedora ARM]     [Linux for Samsung SOC]     [eCos]     [Linux PCI]     [Linux Fastboot]     [Gcc Help]     [Git]     [DCCP]     [IETF Announce]     [Security]     [Linux MIPS]     [Yosemite Campsites]

  Powered by Linux