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
net/ice/base: support tunnel port for parser
[dpdk.git]
/
drivers
/
net
/
sfc
/
sfc_tx.h
diff --git
a/drivers/net/sfc/sfc_tx.h
b/drivers/net/sfc/sfc_tx.h
index
146b805
..
f1700b1
100644
(file)
--- a/
drivers/net/sfc/sfc_tx.h
+++ b/
drivers/net/sfc/sfc_tx.h
@@
-1,7
+1,7
@@
/* SPDX-License-Identifier: BSD-3-Clause
*
/* SPDX-License-Identifier: BSD-3-Clause
*
- * Copyright
(c) 2016-2018 Solarflare Communications
Inc.
- *
All rights reserved
.
+ * Copyright
(c) 2019-2021 Xilinx,
Inc.
+ *
Copyright(c) 2016-2019 Solarflare Communications Inc
.
*
* This software was jointly developed between OKTET Labs (under contract
* for Solarflare) and Solarflare Communications, Inc.
*
* This software was jointly developed between OKTET Labs (under contract
* for Solarflare) and Solarflare Communications, Inc.
@@
-11,7
+11,7
@@
#define _SFC_TX_H
#include <rte_mbuf.h>
#define _SFC_TX_H
#include <rte_mbuf.h>
-#include <
rte_
ethdev_driver.h>
+#include <ethdev_driver.h>
#include "efx.h"
#include "efx.h"
@@
-47,34
+47,19
@@
enum sfc_txq_state_bit {
};
/**
};
/**
- * Transmit queue control
information. Not used on datapath
.
- *
Allocated on the socket specified on the queue setup
.
+ * Transmit queue control
primary process-only information
.
+ *
Not used on datapath
.
*/
struct sfc_txq {
*/
struct sfc_txq {
- unsigned int state;
unsigned int hw_index;
struct sfc_evq *evq;
efsys_mem_t mem;
unsigned int hw_index;
struct sfc_evq *evq;
efsys_mem_t mem;
- struct sfc_dp_txq *dp;
efx_txq_t *common;
efx_txq_t *common;
- unsigned int free_thresh;
- uint64_t offloads;
};
};
-static inline unsigned int
-sfc_txq_sw_index_by_hw_index(unsigned int hw_index)
-{
- return hw_index;
-}
-
-static inline unsigned int
-sfc_txq_sw_index(const struct sfc_txq *txq)
-{
- return sfc_txq_sw_index_by_hw_index(txq->hw_index);
-}
-
struct sfc_txq *sfc_txq_by_dp_txq(const struct sfc_dp_txq *dp_txq);
struct sfc_txq *sfc_txq_by_dp_txq(const struct sfc_dp_txq *dp_txq);
-
+struct sfc_txq_info *sfc_txq_info_by_ethdev_qid(struct sfc_adapter_shared *sas,
+ sfc_ethdev_qid_t ethdev_qid);
/**
* Transmit queue information used on libefx-based data path.
* Allocated on the socket specified on the queue setup.
/**
* Transmit queue information used on libefx-based data path.
* Allocated on the socket specified on the queue setup.
@@
-109,23
+94,28
@@
sfc_efx_txq_by_dp_txq(struct sfc_dp_txq *dp_txq)
}
struct sfc_txq_info {
}
struct sfc_txq_info {
+ unsigned int state;
unsigned int entries;
unsigned int entries;
- struct sfc_
txq *txq
;
+ struct sfc_
dp_txq *dp
;
boolean_t deferred_start;
boolean_t deferred_started;
boolean_t deferred_start;
boolean_t deferred_started;
+ unsigned int free_thresh;
+ uint64_t offloads;
};
};
+struct sfc_txq_info *sfc_txq_info_by_dp_txq(const struct sfc_dp_txq *dp_txq);
+
int sfc_tx_configure(struct sfc_adapter *sa);
void sfc_tx_close(struct sfc_adapter *sa);
int sfc_tx_configure(struct sfc_adapter *sa);
void sfc_tx_close(struct sfc_adapter *sa);
-int sfc_tx_qinit(struct sfc_adapter *sa,
unsigned in
t sw_index,
+int sfc_tx_qinit(struct sfc_adapter *sa,
sfc_sw_index_
t sw_index,
uint16_t nb_tx_desc, unsigned int socket_id,
const struct rte_eth_txconf *tx_conf);
uint16_t nb_tx_desc, unsigned int socket_id,
const struct rte_eth_txconf *tx_conf);
-void sfc_tx_qfini(struct sfc_adapter *sa,
unsigned in
t sw_index);
+void sfc_tx_qfini(struct sfc_adapter *sa,
sfc_sw_index_
t sw_index);
-void sfc_tx_qflush_done(struct sfc_txq
*txq
);
-int sfc_tx_qstart(struct sfc_adapter *sa,
unsigned in
t sw_index);
-void sfc_tx_qstop(struct sfc_adapter *sa,
unsigned in
t sw_index);
+void sfc_tx_qflush_done(struct sfc_txq
_info *txq_info
);
+int sfc_tx_qstart(struct sfc_adapter *sa,
sfc_sw_index_
t sw_index);
+void sfc_tx_qstop(struct sfc_adapter *sa,
sfc_sw_index_
t sw_index);
int sfc_tx_start(struct sfc_adapter *sa);
void sfc_tx_stop(struct sfc_adapter *sa);
int sfc_tx_start(struct sfc_adapter *sa);
void sfc_tx_stop(struct sfc_adapter *sa);