Fix for windows, no one reset the dev to a clear status. In Linux, kernel driver will reset during the prob.
Signed-off-by: Frank Du <frank...@intel.com> --- drivers/dma/idxd/idxd_pci.c | 8 ++++++++ 1 file changed, 8 insertions(+) diff --git a/drivers/dma/idxd/idxd_pci.c b/drivers/dma/idxd/idxd_pci.c index 3696c7f452..a78889a7ef 100644 --- a/drivers/dma/idxd/idxd_pci.c +++ b/drivers/dma/idxd/idxd_pci.c @@ -196,6 +196,14 @@ init_pci_device(struct rte_pci_device *dev, struct idxd_dmadev *idxd, pci->portals = dev->mem_resource[2].addr; pci->wq_cfg_sz = (pci->regs->wqcap >> 24) & 0x0F; + /* reset */ + idxd->u.pci = pci; + err_code = idxd_pci_dev_command(idxd, idxd_reset_device); + if (err_code) { + IDXD_PMD_ERR("Error reset device: code %#x", err_code); + goto err; + } + /* sanity check device status */ if (pci->regs->gensts & GENSTS_DEV_STATE_MASK) { /* need function-level-reset (FLR) or is enabled */ -- 2.34.1