Re: [PATCH v7 15/18] NTB: Add support for EPF PCI-Express Non-Transparent Bridge
From: Kishon Vijay Abraham I <hidden>
Date: 2020-11-16 15:46:46
Also in:
linux-pci, lkml
Hi Arnd, On 16/11/20 9:07 pm, Arnd Bergmann wrote:
On Mon, Nov 16, 2020 at 6:19 AM Kishon Vijay Abraham I [off-list ref] wrote:quoted
On 12/11/20 6:54 pm, Arnd Bergmann wrote:quoted
This looks very promising indeed, I need to read up on the whole discussion there. I also see your slides at [1] that help do explain some of it. I have one fundamental question that I can't figure out from the description, maybe you can help me here: How is the configuration managed, taking the EP case as an example? Your UseCase1 example sounds like the system that owns the EP hardware is the one that turns the EP into a vhost device, and creates a vhost-rpmsg device on top, while the RC side would probe the pci-vhost and then detect a virtio-rpmsg device to talk to.That's correct. Slide no 9 in [1] should give the layering details.quoted
Can it also do the opposite, so you end up with e.g. a virtio-net device on the EP side and vhost-net on the RC?Unfortunately no. Again referring slide 9 in [1], we only have vhost-pci-epf on the EP side which only creates a "vhost_dev" to deal with vhost side of things. For doing the opposite, we'd need to create virtio-pci-epf for EP side that interacts with core virtio (and also the corresponding vhost back end on PCI host).Ok, I see. So I think this is the opposite of drivers/misc/mic and the bluefield driver were using, so we would probably end up needing both. Then again, I guess the NTB driver would give us the functionality for free, if it shows a symmetric link?
Right, NTB driver would need "pci_dev" on both sides of the link. But that would also mean we cannot use pci EP framework which actually uses "pci_epf". Thanks Kishon