linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
From: Sinan Kaya <okaya@codeaurora.org>
To: Vinod Koul <vinod.koul@intel.com>,
	Andy Shevchenko <andy.shevchenko@gmail.com>
Cc: Dan Williams <dan.j.williams@intel.com>,
	"dmaengine@vger.kernel.org" <dmaengine@vger.kernel.org>,
	timur@codeaurora.org, cov@codeaurora.org, jcm@redhat.com,
	"linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH V2 2/3] dmaselftest: add memcpy selftest support functions
Date: Wed, 4 Nov 2015 21:42:46 -0500	[thread overview]
Message-ID: <563AC226.30303@codeaurora.org> (raw)
In-Reply-To: <20151103160800.GD12910@localhost>



On 11/3/2015 11:08 AM, Vinod Koul wrote:
> On Tue, Nov 03, 2015 at 10:22:25AM +0200, Andy Shevchenko wrote:
>> On Tue, Nov 3, 2015 at 9:44 AM, Dan Williams <dan.j.williams@intel.com> wrote:
>>> On Mon, Nov 2, 2015 at 10:30 PM, Vinod Koul <vinod.koul@intel.com> wrote:
>>>> On Mon, Nov 02, 2015 at 11:18:37PM -0500, Sinan Kaya wrote:
>>>>> On 11/2/2015 11:15 PM, Vinod Koul wrote:
>>>>>> On Mon, Nov 02, 2015 at 01:07:38AM -0500, Sinan Kaya wrote:
>>
>>
>>>>> This one; on the other hand, is selftest to verify hardware is
>>>>> working as expected during power up.
>>
>> I prefer to have such nice case by run time parameter (let's say
>> common to all DMA Engine drivers)
>>
>>>> We can have common code which is used for dmatest as well as selftest. I do
>>>> not want to see same code duplicated..
>>
>> First thought was to merge this to dmatest, however, some DMA
>> controllers doesn't have a memcpy capability.
>
> The tests should be based on capablity of memcpy
>
>> How would we test them?

Here is what I proposed.

- a common file that gets compiled into a module that wants to use 
self-test with a public API. It can be called from driver's probe routine.
- the test is independent of my implementation. It uses dmaengine API 
and should be portable to most drivers.
- there *are* still drivers in the kernel that has selftest code 
embedded inside them. I followed the design pattern from other drivers 
thinking this must have been a good idea and it paid off for me.

As far as I understand, there is interest in doing more than this and 
reusing the dmatest code for code duplication.

Facts:
- Dmatest can be actually configured to run during boot.
- Nobody besides the dma driver developer uses dmatest. This leaves 
holes for regressions that are really hard to debug due to interaction 
with the rest of the system.
- Dmatest doesn't exist in most distribution kernels.

If we want to do something else, I need clear directions. I can remove 
the self test code completely from my driver. But, I need an equivalent 
functionality.

 >
 > That part is tricky, you need to do so thru clients, spi/audio/serial etc
 >

My selftest code actually attaches to all slave devices and issues a 
memcpy command and then detaches from the slave devices.

-- 
Sinan Kaya
Qualcomm Technologies, Inc. on behalf of Qualcomm Innovation Center, Inc.
Qualcomm Innovation Center, Inc. is a member of Code Aurora Forum, a 
Linux Foundation Collaborative Project

  reply	other threads:[~2015-11-05  2:42 UTC|newest]

Thread overview: 41+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <1446444460-21600-1-git-send-email-okaya@codeaurora.org>
2015-11-02  6:07 ` [PATCH V2 1/3] dma: add Qualcomm Technologies HIDMA management driver Sinan Kaya
2015-11-02 15:57   ` Rob Herring
2015-11-02 16:20     ` Sinan Kaya
2015-11-02 17:26       ` Timur Tabi
2015-11-02 17:42         ` Rob Herring
2015-11-02 17:48           ` Timur Tabi
2015-11-02 18:25             ` Rob Herring
2015-11-02 18:30               ` Timur Tabi
2015-11-05 14:31                 ` Rob Herring
2015-11-05 14:43                   ` Timur Tabi
2015-11-02 18:49           ` Sinan Kaya
2015-11-02 22:00             ` Arnd Bergmann
2015-11-03  5:18     ` Sinan Kaya
2015-11-03 10:22   ` Andy Shevchenko
2015-11-04  0:47     ` Sinan Kaya
2015-11-02  6:07 ` [PATCH V2 2/3] dmaselftest: add memcpy selftest support functions Sinan Kaya
2015-11-03  4:15   ` Vinod Koul
2015-11-03  4:18     ` Sinan Kaya
2015-11-03  6:30       ` Vinod Koul
2015-11-03  7:44         ` Dan Williams
2015-11-03  8:22           ` Andy Shevchenko
2015-11-03 16:08             ` Vinod Koul
2015-11-05  2:42               ` Sinan Kaya [this message]
2015-11-05 12:05                 ` Vinod Koul
2015-11-05 16:17                   ` Sinan Kaya
2015-11-07  6:23                     ` Sinan Kaya
2015-11-08 13:53                       ` Vinod Koul
2015-11-13 20:20                         ` okaya
2015-11-03 15:51           ` Sinan Kaya
2015-11-03 16:06           ` Vinod Koul
2015-11-03 14:31       ` Timur Tabi
2015-11-03 16:10         ` Vinod Koul
2015-11-03 16:28           ` Sinan Kaya
2015-11-03 16:46             ` Timur Tabi
2015-11-03 16:57               ` Sinan Kaya
2015-11-03 16:48           ` Timur Tabi
2015-11-02  6:07 ` [PATCH V2 3/3] dma: add Qualcomm Technologies HIDMA channel driver Sinan Kaya
2015-11-03 10:10   ` Andy Shevchenko
2015-11-04  0:07     ` Sinan Kaya
2015-11-04 17:44       ` Andy Shevchenko
2015-11-05  2:22         ` Sinan Kaya

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=563AC226.30303@codeaurora.org \
    --to=okaya@codeaurora.org \
    --cc=andy.shevchenko@gmail.com \
    --cc=cov@codeaurora.org \
    --cc=dan.j.williams@intel.com \
    --cc=dmaengine@vger.kernel.org \
    --cc=jcm@redhat.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=timur@codeaurora.org \
    --cc=vinod.koul@intel.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).