Messages in this thread | | | Date | Tue, 15 Mar 2022 08:49:12 -0700 | From | Jacob Pan <> | Subject | Re: [PATCH v2 0/8] Enable PASID for DMA API users |
| |
Hi Kevin,
On Tue, 15 Mar 2022 08:16:59 +0000, "Tian, Kevin" <kevin.tian@intel.com> wrote:
> > From: Jacob Pan <jacob.jun.pan@linux.intel.com> > > Sent: Tuesday, March 15, 2022 1:07 PM > > > > Some modern accelerators such as Intel's Data Streaming Accelerator > > (DSA) require PASID in DMA requests to be operational. Specifically, > > the work submissions with ENQCMD on shared work queues require PASIDs. > > The use cases > > include both user DMA with shared virtual addressing (SVA) and in-kernel > > DMA similar to legacy DMA w/o PASID. Here we address the latter. > > > > DMA mapping API is the de facto standard for in-kernel DMA. However, it > > operates on a per device or Requester ID(RID) basis which is not > > PASID-aware. To leverage DMA API for devices relies on PASIDs, this > > patchset introduces the following APIs > > > > 1. A driver facing API that enables DMA API PASID usage: > > iommu_enable_pasid_dma(struct device *dev, ioasid_t &pasid); > > Should this be called dma_enable_pasid() since it's about DMA API? Doing > so also avoids the driver to include iommu.h. > PASID is still tied to IOMMU, drivers who wants to use this must explicitly put dependency on IOMMU. So I prefer not to give that illusion.
> Thanks > Kevin
Thanks,
Jacob
| |