On Wed, Apr 14, 2021 at 11:37:48AM +0100, Liang Ma wrote: > On Tue, Apr 13, 2021 at 07:24:41PM +0100, Bruce Richardson wrote: > > On Tue, Apr 13, 2021 at 06:36:38PM +0100, Liang Ma wrote: > > > Hi Bruce, > > > I look into current IOAT PMD. I found that looks only support the > > > latest DSA device which is part of SPR(Please correct me if I'm wrong). > > > However, there still is lots existing CPU that support previous CBDMA > > > Intel Quick-DATA technology. SPDK enable those device with uio. > > > Any hint to enable those CBDMA device with IOAT PMD ? > > > > > > > Hi Liang, > > > > These devices are still supported by the driver. In the latest releases the > > new device support was added but no older device support was removed. > > Please let us know if you do hit any problems with running it on the CBDMA > > HW devices, because it should all still be working as before. > > > > Regards, > > /Bruce > Hi Bruce, > I hit a problem with CBDMA enabling. > > 1. I follow the DPDK IOAT driver Doc, I bind 0000.04.0 device with > dpdk-devbind.py > > 2. I run dpdk-test without any parameter then dpdk-test complain with > > EAL: VFIO support initialized > EAL: 0000:00:04.0 VFIO group is not viable! Not all devices in IOMMU > group bound to VFIO or unbound > Requested device 0000:00:04.0 cannot be used > > 3. kernel boot parameter include the "intel_iommu=on" > > If I still need some extra iommu settings for CBDMA device ? > It's an IOMMU limitation, not just for CBDMA but for other devices like NICs too - you need to ensure all subfunctions on a device are all bound to the same IOMMU group. So for the CBDMA instance, to use one channel with vfio, the other channels on the device also need to be bound to vfio, or else not bound to any driver. If bound to the kernel driver, there will be IOMMU conflicts as we can't split the channels between kernel and userspace address spaces.
/Bruce