mirror of https://gitee.com/openkylin/linux.git
Merge branch 'qed-next'
Yuval Mintz says:
====================
qed*: Fixes to "Allow unicast filtering"
Commit 7b7e70f979
("qed*: Allow unicast filtering") introduced several
issues in driver. This series is intended to address and fix those.
====================
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
commit
6d052e9abd
|
@ -1692,6 +1692,8 @@ static int qed_fill_eth_dev_info(struct qed_dev *cdev,
|
|||
|
||||
qed_vf_get_num_vlan_filters(&cdev->hwfns[0],
|
||||
(u8 *)&info->num_vlan_filters);
|
||||
qed_vf_get_num_mac_filters(&cdev->hwfns[0],
|
||||
(u8 *)&info->num_mac_filters);
|
||||
qed_vf_get_port_mac(&cdev->hwfns[0], info->port_mac);
|
||||
|
||||
info->is_legacy = !!cdev->hwfns[0].vf_iov_info->b_pre_fp_hsi;
|
||||
|
|
|
@ -1171,6 +1171,13 @@ void qed_vf_get_num_vlan_filters(struct qed_hwfn *p_hwfn, u8 *num_vlan_filters)
|
|||
*num_vlan_filters = p_vf->acquire_resp.resc.num_vlan_filters;
|
||||
}
|
||||
|
||||
void qed_vf_get_num_mac_filters(struct qed_hwfn *p_hwfn, u8 *num_mac_filters)
|
||||
{
|
||||
struct qed_vf_iov *p_vf = p_hwfn->vf_iov_info;
|
||||
|
||||
*num_mac_filters = p_vf->acquire_resp.resc.num_mac_filters;
|
||||
}
|
||||
|
||||
bool qed_vf_check_mac(struct qed_hwfn *p_hwfn, u8 *mac)
|
||||
{
|
||||
struct qed_bulletin_content *bulletin;
|
||||
|
|
|
@ -622,6 +622,14 @@ void qed_vf_get_port_mac(struct qed_hwfn *p_hwfn, u8 *port_mac);
|
|||
void qed_vf_get_num_vlan_filters(struct qed_hwfn *p_hwfn,
|
||||
u8 *num_vlan_filters);
|
||||
|
||||
/**
|
||||
* @brief Get number of MAC filters allocated for VF by qed
|
||||
*
|
||||
* @param p_hwfn
|
||||
* @param num_rxqs - allocated MAC filters
|
||||
*/
|
||||
void qed_vf_get_num_mac_filters(struct qed_hwfn *p_hwfn, u8 *num_mac_filters);
|
||||
|
||||
/**
|
||||
* @brief Check if VF can set a MAC address
|
||||
*
|
||||
|
@ -872,6 +880,11 @@ static inline void qed_vf_get_num_vlan_filters(struct qed_hwfn *p_hwfn,
|
|||
{
|
||||
}
|
||||
|
||||
static inline void qed_vf_get_num_mac_filters(struct qed_hwfn *p_hwfn,
|
||||
u8 *num_mac_filters)
|
||||
{
|
||||
}
|
||||
|
||||
static inline bool qed_vf_check_mac(struct qed_hwfn *p_hwfn, u8 *mac)
|
||||
{
|
||||
return false;
|
||||
|
|
|
@ -2366,7 +2366,7 @@ static void qede_init_ndev(struct qede_dev *edev)
|
|||
|
||||
qede_set_ethtool_ops(ndev);
|
||||
|
||||
ndev->priv_flags = IFF_UNICAST_FLT;
|
||||
ndev->priv_flags |= IFF_UNICAST_FLT;
|
||||
|
||||
/* user-changeble features */
|
||||
hw_features = NETIF_F_GRO | NETIF_F_SG |
|
||||
|
|
Loading…
Reference in New Issue