git.droids-corp.org
/
dpdk.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
common/cnxk: add null authentication with IPsec
[dpdk.git]
/
drivers
/
dma
/
idxd
/
idxd_pci.c
diff --git
a/drivers/dma/idxd/idxd_pci.c
b/drivers/dma/idxd/idxd_pci.c
index
81952cf
..
9ca1ec6
100644
(file)
--- a/
drivers/dma/idxd/idxd_pci.c
+++ b/
drivers/dma/idxd/idxd_pci.c
@@
-22,7
+22,7
@@
const struct rte_pci_id pci_id_idxd_map[] = {
static inline int
idxd_pci_dev_command(struct idxd_dmadev *idxd, enum rte_idxd_cmds command)
{
static inline int
idxd_pci_dev_command(struct idxd_dmadev *idxd, enum rte_idxd_cmds command)
{
- uint
8
_t err_code;
+ uint
32
_t err_code;
uint16_t qid = idxd->qid;
int i = 0;
uint16_t qid = idxd->qid;
int i = 0;
@@
-37,7
+37,8
@@
idxd_pci_dev_command(struct idxd_dmadev *idxd, enum rte_idxd_cmds command)
if (++i >= 1000) {
IDXD_PMD_ERR("Timeout waiting for command response from HW");
rte_spinlock_unlock(&idxd->u.pci->lk);
if (++i >= 1000) {
IDXD_PMD_ERR("Timeout waiting for command response from HW");
rte_spinlock_unlock(&idxd->u.pci->lk);
- return err_code;
+ err_code &= CMDSTATUS_ERR_MASK;
+ return -err_code;
}
} while (err_code & CMDSTATUS_ACTIVE_MASK);
rte_spinlock_unlock(&idxd->u.pci->lk);
}
} while (err_code & CMDSTATUS_ACTIVE_MASK);
rte_spinlock_unlock(&idxd->u.pci->lk);
@@
-258,6
+259,7
@@
init_pci_device(struct rte_pci_device *dev, struct idxd_dmadev *idxd,
idxd->u.pci = pci;
idxd->max_batches = wq_size;
idxd->u.pci = pci;
idxd->max_batches = wq_size;
+ idxd->max_batch_size = 1 << lg2_max_batch;
/* enable the device itself */
err_code = idxd_pci_dev_command(idxd, idxd_enable_dev);
/* enable the device itself */
err_code = idxd_pci_dev_command(idxd, idxd_enable_dev);