net/dpaa: support multicast toggle

Signed-off-by: Hemant Agrawal <hemant.agrawal@nxp.com>
Signed-off-by: Shreyansh Jain <shreyansh.jain@nxp.com>
This commit is contained in:
Shreyansh Jain 2017-09-28 17:59:50 +05:30 committed by Ferruh Yigit
parent 95ef603df2
commit 44dd70a3ef
2 changed files with 21 additions and 0 deletions

View File

@ -9,5 +9,6 @@ Link status = Y
Jumbo frame = Y
MTU update = Y
Promiscuous mode = Y
Allmulticast mode = Y
ARMv8 = Y
Usage doc = Y

View File

@ -202,6 +202,24 @@ static void dpaa_eth_promiscuous_disable(struct rte_eth_dev *dev)
fman_if_promiscuous_disable(dpaa_intf->fif);
}
static void dpaa_eth_multicast_enable(struct rte_eth_dev *dev)
{
struct dpaa_if *dpaa_intf = dev->data->dev_private;
PMD_INIT_FUNC_TRACE();
fman_if_set_mcast_filter_table(dpaa_intf->fif);
}
static void dpaa_eth_multicast_disable(struct rte_eth_dev *dev)
{
struct dpaa_if *dpaa_intf = dev->data->dev_private;
PMD_INIT_FUNC_TRACE();
fman_if_reset_mcast_filter_table(dpaa_intf->fif);
}
static
int dpaa_eth_rx_queue_setup(struct rte_eth_dev *dev, uint16_t queue_idx,
uint16_t nb_desc __rte_unused,
@ -307,6 +325,8 @@ static struct eth_dev_ops dpaa_devops = {
.link_update = dpaa_eth_link_update,
.promiscuous_enable = dpaa_eth_promiscuous_enable,
.promiscuous_disable = dpaa_eth_promiscuous_disable,
.allmulticast_enable = dpaa_eth_multicast_enable,
.allmulticast_disable = dpaa_eth_multicast_disable,
.mtu_set = dpaa_mtu_set,
.dev_set_link_down = dpaa_link_down,
.dev_set_link_up = dpaa_link_up,