On Tue, Feb 28, 2023 at 12:18:07PM +1100, Alexey Kardashevskiy wrote: > On 11/2/23 07:25, Lukas Wunner wrote: > > For the same reason a DOE instance cannot be shared between the PCI core > > and a driver. > > And we want this sharing why? Any example will do. Thanks, The PCI core is going to perform CMA/SPDM authentication when a device gets enumerated (PCIe r6.0 sec 6.31). That's the main motivation to lift DOE mailbox creation into the PCI core. It's not mentioned here explicitly because I want the patch to stand on its own. CMA/SPDM support will be submitted separately. A driver that later on gets bound to the device should be allowed to talk to it via DOE as well, possibly even sharing the same DOE mailboxes used by the PCI core. Patches for CMA/SPDM are under development on this branch: https://github.com/l1k/linux/commits/doe > > Currently a DOE instance cannot be shared by multiple drivers because > > each driver creates its own pci_doe_mb struct for a given DOE instance. > > Sorry for my ignorance but why/how/when would a device have multiple drivers > bound? Or it only one driver at the time but we also want DOE MBs to survive > switching to another (different or newer) driver? Conceivably, a driver may have the need to talk to multiple devices via DOE, even ones it's not bound to. (E.g. devices in its ancestry or children.) Thanks, Lukas