On 9/9/2017 12:21 PM, Shreyansh Jain wrote: > Signed-off-by: Hemant Agrawal <hemant.agra...@nxp.com> > Signed-off-by: Shreyansh Jain <shreyansh.j...@nxp.com>
<...> > +static int dpaa_eth_link_update(struct rte_eth_dev *dev, > + int wait_to_complete __rte_unused) > +{ > + struct dpaa_if *dpaa_intf = dev->data->dev_private; > + struct rte_eth_link *link = &dev->data->dev_link; > + > + PMD_INIT_FUNC_TRACE(); > + > + if (dpaa_intf->fif->mac_type == fman_mac_1g) > + link->link_speed = 1000; > + else if (dpaa_intf->fif->mac_type == fman_mac_10g) > + link->link_speed = 10000; > + else > + DPAA_PMD_ERR("invalid link_speed: %s, %d", > + dpaa_intf->name, dpaa_intf->fif->mac_type); > + > + link->link_status = dpaa_intf->valid; > + link->link_duplex = ETH_LINK_FULL_DUPLEX; > + link->link_autoneg = ETH_LINK_AUTONEG; Shouldn't this function go and get link information from hardware? > + return 0; > +} > + > static > int dpaa_eth_rx_queue_setup(struct rte_eth_dev *dev, uint16_t queue_idx, > uint16_t nb_desc __rte_unused, > @@ -216,6 +238,22 @@ static void dpaa_eth_tx_queue_release(void *txq > __rte_unused) > PMD_INIT_FUNC_TRACE(); > } > > +static int dpaa_link_down(struct rte_eth_dev *dev) > +{ > + PMD_INIT_FUNC_TRACE(); > + > + dpaa_eth_dev_stop(dev); Drivers tend to do revers, make link down on device stop. Just to double check if stop() is intended for link down. > + return 0; > +} > + > +static int dpaa_link_up(struct rte_eth_dev *dev) > +{ > + PMD_INIT_FUNC_TRACE(); > + > + dpaa_eth_dev_start(dev); > + return 0; > +} <...>