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/qede/base: use function pointers for spq async callback
[dpdk.git]
/
drivers
/
net
/
bonding
/
rte_eth_bond_private.h
diff --git
a/drivers/net/bonding/rte_eth_bond_private.h
b/drivers/net/bonding/rte_eth_bond_private.h
index
8312397
..
1fe6ff8
100644
(file)
--- a/
drivers/net/bonding/rte_eth_bond_private.h
+++ b/
drivers/net/bonding/rte_eth_bond_private.h
@@
-1,7
+1,7
@@
/*-
* BSD LICENSE
*
/*-
* BSD LICENSE
*
- * Copyright(c) 2010-201
5
Intel Corporation. All rights reserved.
+ * Copyright(c) 2010-201
7
Intel Corporation. All rights reserved.
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without
@@
-36,6
+36,7
@@
#include <rte_ethdev.h>
#include <rte_spinlock.h>
#include <rte_ethdev.h>
#include <rte_spinlock.h>
+#include <rte_bitmap.h>
#include "rte_eth_bond.h"
#include "rte_eth_bond_8023ad_private.h"
#include "rte_eth_bond.h"
#include "rte_eth_bond_8023ad_private.h"
@@
-44,6
+45,7
@@
#define PMD_BOND_SLAVE_PORT_KVARG ("slave")
#define PMD_BOND_PRIMARY_SLAVE_KVARG ("primary")
#define PMD_BOND_MODE_KVARG ("mode")
#define PMD_BOND_SLAVE_PORT_KVARG ("slave")
#define PMD_BOND_PRIMARY_SLAVE_KVARG ("primary")
#define PMD_BOND_MODE_KVARG ("mode")
+#define PMD_BOND_AGG_MODE_KVARG ("agg_mode")
#define PMD_BOND_XMIT_POLICY_KVARG ("xmit_policy")
#define PMD_BOND_SOCKET_ID_KVARG ("socket_id")
#define PMD_BOND_MAC_ADDR_KVARG ("mac")
#define PMD_BOND_XMIT_POLICY_KVARG ("xmit_policy")
#define PMD_BOND_SOCKET_ID_KVARG ("socket_id")
#define PMD_BOND_MAC_ADDR_KVARG ("mac")
@@
-62,7
+64,7
@@
extern const char *pmd_bond_init_valid_arguments[];
extern const char *pmd_bond_init_valid_arguments[];
-extern
const char pmd_bond_driver_name[]
;
+extern
struct rte_vdev_driver pmd_bond_drv
;
/** Port Queue Mapping Structure */
struct bond_rx_queue {
/** Port Queue Mapping Structure */
struct bond_rx_queue {
@@
-131,8
+133,7
@@
struct bond_dev_private {
/**< Flag for whether MAC address is user defined or not */
uint8_t promiscuous_en;
/**< Enabled/disable promiscuous mode on bonding device */
/**< Flag for whether MAC address is user defined or not */
uint8_t promiscuous_en;
/**< Enabled/disable promiscuous mode on bonding device */
- uint8_t link_props_set;
- /**< flag to denote if the link properties are set */
+
uint8_t link_status_polling_enabled;
uint32_t link_status_polling_interval_ms;
uint8_t link_status_polling_enabled;
uint32_t link_status_polling_interval_ms;
@@
-143,6
+144,7
@@
struct bond_dev_private {
uint16_t nb_rx_queues; /**< Total number of rx queues */
uint16_t nb_tx_queues; /**< Total number of tx queues*/
uint16_t nb_rx_queues; /**< Total number of rx queues */
uint16_t nb_tx_queues; /**< Total number of tx queues*/
+ uint8_t active_slave; /**< Next active_slave to poll */
uint8_t active_slave_count; /**< Number of active slaves */
uint8_t active_slaves[RTE_MAX_ETHPORTS]; /**< Active slave list */
uint8_t active_slave_count; /**< Number of active slaves */
uint8_t active_slaves[RTE_MAX_ETHPORTS]; /**< Active slave list */
@@
-169,6
+171,12
@@
struct bond_dev_private {
struct rte_kvargs *kvlist;
uint8_t slave_update_idx;
struct rte_kvargs *kvlist;
uint8_t slave_update_idx;
+
+ uint32_t candidate_max_rx_pktlen;
+ uint32_t max_rx_pktlen;
+
+ void *vlan_filter_bmpmem; /* enabled vlan filter bitmap */
+ struct rte_bitmap *vlan_filter_bmp;
};
extern const struct eth_dev_ops default_dev_ops;
};
extern const struct eth_dev_ops default_dev_ops;
@@
-176,7
+184,7
@@
extern const struct eth_dev_ops default_dev_ops;
int
check_for_bonded_ethdev(const struct rte_eth_dev *eth_dev);
int
check_for_bonded_ethdev(const struct rte_eth_dev *eth_dev);
-/* Search given slave array to find pos
s
ition of given id.
+/* Search given slave array to find position of given id.
* Return slave pos or slaves_count if not found. */
static inline uint8_t
find_slave_by_id(uint8_t *slaves, uint8_t slaves_count, uint8_t slave_id) {
* Return slave pos or slaves_count if not found. */
static inline uint8_t
find_slave_by_id(uint8_t *slaves, uint8_t slaves_count, uint8_t slave_id) {
@@
-197,7
+205,7
@@
int
valid_bonded_port_id(uint8_t port_id);
int
valid_bonded_port_id(uint8_t port_id);
int
-valid_slave_port_id(uint8_t port_id);
+valid_slave_port_id(uint8_t port_id
, uint8_t mode
);
void
deactivate_slave(struct rte_eth_dev *eth_dev, uint8_t port_id);
void
deactivate_slave(struct rte_eth_dev *eth_dev, uint8_t port_id);
@@
-208,11
+216,8
@@
activate_slave(struct rte_eth_dev *eth_dev, uint8_t port_id);
void
link_properties_set(struct rte_eth_dev *bonded_eth_dev,
struct rte_eth_link *slave_dev_link);
void
link_properties_set(struct rte_eth_dev *bonded_eth_dev,
struct rte_eth_link *slave_dev_link);
-void
-link_properties_reset(struct rte_eth_dev *bonded_eth_dev);
-
int
int
-link_properties_valid(struct rte_eth_
link *bonded_dev_link
,
+link_properties_valid(struct rte_eth_
dev *bonded_eth_dev
,
struct rte_eth_link *slave_dev_link);
int
struct rte_eth_link *slave_dev_link);
int
@@
-224,9
+229,6
@@
mac_address_get(struct rte_eth_dev *eth_dev, struct ether_addr *dst_mac_addr);
int
mac_address_slaves_update(struct rte_eth_dev *bonded_eth_dev);
int
mac_address_slaves_update(struct rte_eth_dev *bonded_eth_dev);
-uint8_t
-number_of_sockets(void);
-
int
bond_ethdev_mode_set(struct rte_eth_dev *eth_dev, int mode);
int
bond_ethdev_mode_set(struct rte_eth_dev *eth_dev, int mode);
@@
-255,36
+257,40
@@
void
bond_ethdev_primary_set(struct bond_dev_private *internals,
uint8_t slave_port_id);
bond_ethdev_primary_set(struct bond_dev_private *internals,
uint8_t slave_port_id);
-void
+int
bond_ethdev_lsc_event_callback(uint8_t port_id, enum rte_eth_event_type type,
bond_ethdev_lsc_event_callback(uint8_t port_id, enum rte_eth_event_type type,
- void *param);
+ void *param, void *ret_param);
+
+int
+bond_ethdev_parse_slave_port_kvarg(const char *key,
+ const char *value, void *extra_args);
int
int
-bond_ethdev_parse_slave_
port_kvarg(const char *key __rte_unused
,
+bond_ethdev_parse_slave_
mode_kvarg(const char *key
,
const char *value, void *extra_args);
int
const char *value, void *extra_args);
int
-bond_ethdev_parse_slave_mode_kvarg(const char *key __rte_unused,
+bond_ethdev_parse_slave_
agg_
mode_kvarg(const char *key __rte_unused,
const char *value, void *extra_args);
int
const char *value, void *extra_args);
int
-bond_ethdev_parse_socket_id_kvarg(const char *key
__rte_unused
,
+bond_ethdev_parse_socket_id_kvarg(const char *key,
const char *value, void *extra_args);
int
const char *value, void *extra_args);
int
-bond_ethdev_parse_primary_slave_port_id_kvarg(const char *key
__rte_unused
,
+bond_ethdev_parse_primary_slave_port_id_kvarg(const char *key,
const char *value, void *extra_args);
int
const char *value, void *extra_args);
int
-bond_ethdev_parse_balance_xmit_policy_kvarg(const char *key
__rte_unused
,
+bond_ethdev_parse_balance_xmit_policy_kvarg(const char *key,
const char *value, void *extra_args);
int
const char *value, void *extra_args);
int
-bond_ethdev_parse_bond_mac_addr_kvarg(const char *key
__rte_unused
,
+bond_ethdev_parse_bond_mac_addr_kvarg(const char *key,
const char *value, void *extra_args);
int
const char *value, void *extra_args);
int
-bond_ethdev_parse_time_ms_kvarg(const char *key
__rte_unused
,
+bond_ethdev_parse_time_ms_kvarg(const char *key,
const char *value, void *extra_args);
void
const char *value, void *extra_args);
void