Re: Support for configurable PCIe endpoint

From: Arnd Bergmann
Date: Wed Aug 03 2016 - 15:47:50 EST


On Wednesday, August 3, 2016 10:27:36 AM CEST Christoph Hellwig wrote:
> On Wed, Aug 03, 2016 at 06:03:54PM +0200, Arnd Bergmann wrote:
> > drivers/ntb seems like a reasonable start, while an alternative
> > approach that we have discussed in the past would be based on top
> > of virtio, so we could use the existing front-end drivers (net, block,
> > v9fs, console, ...).
>
> I don't really think either is a good aproach for the lowest level
> interface. To be useful the EP driver needs to be able to implement
> any (reasonable) thing a PCIe device could do. Both NTB and virtio
> can sit on top of that, though.

Good point. NTB tries to be the low-level interface, but I guess
you are right that it really isn't (I have not looked in a long
time, maybe Jon can comment).

While virtio transport over PCI would be great as the way to
implement a lot of things on top of endpoint devices, it can't
be the lowest level in the stack (see drivers/remoteproc) and
building it on top of something that is useful for other things
sounds like a good idea.

Arnd