linux-kernel.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* PCIe EndPoint DMA driver with DMA Framework
@ 2016-06-10 15:39 Bharat Kumar Gogada
  2016-06-13  5:25 ` Vinod Koul
  0 siblings, 1 reply; 4+ messages in thread
From: Bharat Kumar Gogada @ 2016-06-10 15:39 UTC (permalink / raw)
  To: linux-pci, linux-kernel, Linux Kernel Mailing List
  Cc: Bjorn Helgaas, nofooter, dmaengine

Hi,

We are planning to write a PCIe EndPoint DMA driver with DMA Framework targeting x86 machine.  ( "https://www.kernel.org/doc/Documentation/dmaengine/provider.txt")
Our DMA controller is part of PCIe End Point.
We are targeting to measure PCIe performance with this Framework driver.

But when I see DMA Framework drivers is kernel source "drivers/dma" most of the drivers are platform drivers.

So DMA Framework is mainly targeted for platform drivers?

With current design model we need to have one DMA controller driver and PCIe EP client driver?

In which part of kernel source PCIe EP client driver will go?

Can we use DMA Framework on x86 ?

Thanks & Regards,
Bharat



This email and any attachments are intended for the sole use of the named recipient(s) and contain(s) confidential information that may be proprietary, privileged or copyrighted under applicable law. If you are not the intended recipient, do not read, copy, or forward this email message or any attachments. Delete this email message and any attachments immediately.

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: PCIe EndPoint DMA driver with DMA Framework
  2016-06-10 15:39 PCIe EndPoint DMA driver with DMA Framework Bharat Kumar Gogada
@ 2016-06-13  5:25 ` Vinod Koul
  2016-06-13 14:07   ` Sinan Kaya
  0 siblings, 1 reply; 4+ messages in thread
From: Vinod Koul @ 2016-06-13  5:25 UTC (permalink / raw)
  To: Bharat Kumar Gogada
  Cc: linux-pci, linux-kernel, Bjorn Helgaas, nofooter, dmaengine

On Fri, Jun 10, 2016 at 03:39:15PM +0000, Bharat Kumar Gogada wrote:
> Hi,
> 

PLEASE wrap your replied to 80 chars..  I have reflown below..

> We are planning to write a PCIe EndPoint DMA driver with DMA Framework
> targeting x86 machine.  (
> "https://www.kernel.org/doc/Documentation/dmaengine/provider.txt") Our DMA
> controller is part of PCIe End Point.  We are targeting to measure PCIe
> performance with this Framework driver.
> 
> But when I see DMA Framework drivers is kernel source "drivers/dma" most
> of the drivers are platform drivers.

wrong, there are bunch of PCI X86 driver. Look closely dw, ioat etc
> 
> So DMA Framework is mainly targeted for platform drivers?

First it is dmaengine framework.

And your assumption is wrong, btw did you see anything is dmaengine APIs
to make the assumption that dmaengine frameowrk is suited for platform
drivers. The frameworks do not care which type of device you have.

> 
> With current design model we need to have one DMA controller driver and
> PCIe EP client driver?

That depends on what you are trying to do but yes the dmaengine driver
will provide dma services and a client needs to use it

> 
> In which part of kernel source PCIe EP client driver will go?

whatever that client is trying to do DMA for. If its network then it
should go in network.

What exactly are you trying to do?

> 
> Can we use DMA Framework on x86 ?

And asking same question multiple times does not change the answer, which is
yes.

> 
> Thanks & Regards, Bharat
> 
> 
> 
> This email and any attachments are intended for the sole use of the named
> recipient(s) and contain(s) confidential information that may be
> proprietary, privileged or copyrighted under applicable law. If you are
> not the intended recipient, do not read, copy, or forward this email
> message or any attachments. Delete this email message and any attachments
> immediately.

What confidential information you have here?

-- 
~Vinod

^ permalink raw reply	[flat|nested] 4+ messages in thread

* Re: PCIe EndPoint DMA driver with DMA Framework
  2016-06-13  5:25 ` Vinod Koul
@ 2016-06-13 14:07   ` Sinan Kaya
  2016-06-14 11:40     ` Bharat Kumar Gogada
  0 siblings, 1 reply; 4+ messages in thread
From: Sinan Kaya @ 2016-06-13 14:07 UTC (permalink / raw)
  To: Vinod Koul, Bharat Kumar Gogada
  Cc: linux-pci, linux-kernel, Bjorn Helgaas, nofooter, dmaengine

On 6/13/2016 1:25 AM, Vinod Koul wrote:
>> We are planning to write a PCIe EndPoint DMA driver with DMA Framework
>> > targeting x86 machine.  (
>> > "https://www.kernel.org/doc/Documentation/dmaengine/provider.txt") Our DMA
>> > controller is part of PCIe End Point.  We are targeting to measure PCIe
>> > performance with this Framework driver.
>> > 
>> > But when I see DMA Framework drivers is kernel source "drivers/dma" most
>> > of the drivers are platform drivers.
> wrong, there are bunch of PCI X86 driver. Look closely dw, ioat etc

I usually see endpoint specific DMA code to reside in the endpoint device
driver not in the dmaengine directory.

I think the main question is who the consumer of this DMA controller is like
Vinod asked.

If it is a general purpose DMA controller then dmaengine would be the right
place. 

If it is specific to your endpoint, then it should be set up and used in your
endpoint device driver.

-- 
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

^ permalink raw reply	[flat|nested] 4+ messages in thread

* RE: PCIe EndPoint DMA driver with DMA Framework
  2016-06-13 14:07   ` Sinan Kaya
@ 2016-06-14 11:40     ` Bharat Kumar Gogada
  0 siblings, 0 replies; 4+ messages in thread
From: Bharat Kumar Gogada @ 2016-06-14 11:40 UTC (permalink / raw)
  To: Sinan Kaya, Vinod Koul
  Cc: linux-pci, linux-kernel, Bjorn Helgaas, nofooter, dmaengine

Hi Vinod/kanya,

> On 6/13/2016 1:25 AM, Vinod Koul wrote:
> >> We are planning to write a PCIe EndPoint DMA driver with DMA
> >> Framework
> >> > targeting x86 machine.  (
> >> >
> "https://www.kernel.org/doc/Documentation/dmaengine/provider.txt")
> >> > Our DMA controller is part of PCIe End Point.  We are targeting to
> >> > measure PCIe performance with this Framework driver.
> >> >
> >> > But when I see DMA Framework drivers is kernel source "drivers/dma"
> >> > most of the drivers are platform drivers.
> > wrong, there are bunch of PCI X86 driver. Look closely dw, ioat etc
>
> I usually see endpoint specific DMA code to reside in the endpoint device
> driver not in the dmaengine directory.
>
> I think the main question is who the consumer of this DMA controller is like
> Vinod asked.
>
> If it is a general purpose DMA controller then dmaengine would be the right
> place.
>
> If it is specific to your endpoint, then it should be set up and used in your
> endpoint device driver.
>
Our DMA controller is specific to EP.

Thanks a lot kanya and vinod for the clarifications.

Bharat


This email and any attachments are intended for the sole use of the named recipient(s) and contain(s) confidential information that may be proprietary, privileged or copyrighted under applicable law. If you are not the intended recipient, do not read, copy, or forward this email message or any attachments. Delete this email message and any attachments immediately.

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2016-06-14 11:40 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-06-10 15:39 PCIe EndPoint DMA driver with DMA Framework Bharat Kumar Gogada
2016-06-13  5:25 ` Vinod Koul
2016-06-13 14:07   ` Sinan Kaya
2016-06-14 11:40     ` Bharat Kumar Gogada

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).