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
eal: remove deprecated coherent IO memory barriers
[dpdk.git]
/
drivers
/
net
/
bnxt
/
bnxt_ring.h
diff --git
a/drivers/net/bnxt/bnxt_ring.h
b/drivers/net/bnxt/bnxt_ring.h
index
e5cef3a
..
daf9804
100644
(file)
--- a/
drivers/net/bnxt/bnxt_ring.h
+++ b/
drivers/net/bnxt/bnxt_ring.h
@@
-27,7
+27,6
@@
#define DEFAULT_RX_RING_SIZE 256
#define DEFAULT_TX_RING_SIZE 256
#define DEFAULT_RX_RING_SIZE 256
#define DEFAULT_TX_RING_SIZE 256
-#define BNXT_TPA_MAX 64
#define AGG_RING_SIZE_FACTOR 2
#define AGG_RING_MULTIPLIER 2
#define AGG_RING_SIZE_FACTOR 2
#define AGG_RING_MULTIPLIER 2
@@
-66,7
+65,7
@@
struct bnxt_tx_ring_info;
struct bnxt_rx_ring_info;
struct bnxt_cp_ring_info;
void bnxt_free_ring(struct bnxt_ring *ring);
struct bnxt_rx_ring_info;
struct bnxt_cp_ring_info;
void bnxt_free_ring(struct bnxt_ring *ring);
-int bnxt_
init
_ring_grps(struct bnxt *bp);
+int bnxt_
alloc
_ring_grps(struct bnxt *bp);
int bnxt_alloc_rings(struct bnxt *bp, uint16_t qidx,
struct bnxt_tx_queue *txq,
struct bnxt_rx_queue *rxq,
int bnxt_alloc_rings(struct bnxt *bp, uint16_t qidx,
struct bnxt_tx_queue *txq,
struct bnxt_rx_queue *rxq,
@@
-75,13
+74,20
@@
int bnxt_alloc_rings(struct bnxt *bp, uint16_t qidx,
const char *suffix);
int bnxt_alloc_hwrm_rx_ring(struct bnxt *bp, int queue_index);
int bnxt_alloc_hwrm_rings(struct bnxt *bp);
const char *suffix);
int bnxt_alloc_hwrm_rx_ring(struct bnxt *bp, int queue_index);
int bnxt_alloc_hwrm_rings(struct bnxt *bp);
+int bnxt_alloc_async_cp_ring(struct bnxt *bp);
+void bnxt_free_async_cp_ring(struct bnxt *bp);
+int bnxt_alloc_async_ring_struct(struct bnxt *bp);
+int bnxt_alloc_rxtx_nq_ring(struct bnxt *bp);
+void bnxt_free_rxtx_nq_ring(struct bnxt *bp);
static inline void bnxt_db_write(struct bnxt_db_info *db, uint32_t idx)
{
static inline void bnxt_db_write(struct bnxt_db_info *db, uint32_t idx)
{
+ rte_io_wmb();
+
if (db->db_64)
rte_write64_relaxed(db->db_key64 | idx, db->doorbell);
else
if (db->db_64)
rte_write64_relaxed(db->db_key64 | idx, db->doorbell);
else
- rte_write32(db->db_key32 | idx, db->doorbell);
+ rte_write32
_relaxed
(db->db_key32 | idx, db->doorbell);
}
/* Ring an NQ doorbell and disable interrupts for the ring. */
}
/* Ring an NQ doorbell and disable interrupts for the ring. */
@@
-90,10
+96,10
@@
static inline void bnxt_db_nq(struct bnxt_cp_ring_info *cpr)
if (unlikely(!cpr->cp_db.db_64))
return;
if (unlikely(!cpr->cp_db.db_64))
return;
- rte_
smp
_wmb();
- rte_write64(cpr->cp_db.db_key64 | DBR_TYPE_NQ |
- RING_CMP(cpr->cp_ring_struct, cpr->cp_raw_cons),
- cpr->cp_db.doorbell);
+ rte_
io
_wmb();
+ rte_write64
_relaxed
(cpr->cp_db.db_key64 | DBR_TYPE_NQ |
+
RING_CMP(cpr->cp_ring_struct, cpr->cp_raw_cons),
+
cpr->cp_db.doorbell);
}
/* Ring an NQ doorbell and enable interrupts for the ring. */
}
/* Ring an NQ doorbell and enable interrupts for the ring. */
@@
-102,10
+108,10
@@
static inline void bnxt_db_nq_arm(struct bnxt_cp_ring_info *cpr)
if (unlikely(!cpr->cp_db.db_64))
return;
if (unlikely(!cpr->cp_db.db_64))
return;
- rte_
smp
_wmb();
- rte_write64(cpr->cp_db.db_key64 | DBR_TYPE_NQ_ARM |
- RING_CMP(cpr->cp_ring_struct, cpr->cp_raw_cons),
- cpr->cp_db.doorbell);
+ rte_
io
_wmb();
+ rte_write64
_relaxed
(cpr->cp_db.db_key64 | DBR_TYPE_NQ_ARM |
+
RING_CMP(cpr->cp_ring_struct, cpr->cp_raw_cons),
+
cpr->cp_db.doorbell);
}
static inline void bnxt_db_cq(struct bnxt_cp_ring_info *cpr)
}
static inline void bnxt_db_cq(struct bnxt_cp_ring_info *cpr)
@@
-113,9
+119,9
@@
static inline void bnxt_db_cq(struct bnxt_cp_ring_info *cpr)
struct bnxt_db_info *db = &cpr->cp_db;
uint32_t idx = RING_CMP(cpr->cp_ring_struct, cpr->cp_raw_cons);
struct bnxt_db_info *db = &cpr->cp_db;
uint32_t idx = RING_CMP(cpr->cp_ring_struct, cpr->cp_raw_cons);
- rte_
smp_wmb
();
+ rte_
compiler_barrier
();
if (db->db_64)
if (db->db_64)
- rte_write64(db->db_key64 | idx, db->doorbell);
+ rte_write64
_relaxed
(db->db_key64 | idx, db->doorbell);
else
B_CP_DIS_DB(cpr, cpr->cp_raw_cons);
}
else
B_CP_DIS_DB(cpr, cpr->cp_raw_cons);
}