|
@@ -41,7 +41,7 @@ Signed-off-by: Paolo Abeni <[email protected]>
|
|
|
|
|
|
--- a/drivers/net/ethernet/freescale/dpaa2/dpaa2-eth.c
|
|
|
+++ b/drivers/net/ethernet/freescale/dpaa2/dpaa2-eth.c
|
|
|
-@@ -2018,8 +2018,11 @@ static int dpaa2_eth_link_state_update(s
|
|
|
+@@ -2021,8 +2021,11 @@ static int dpaa2_eth_link_state_update(s
|
|
|
|
|
|
/* When we manage the MAC/PHY using phylink there is no need
|
|
|
* to manually update the netif_carrier.
|
|
@@ -54,7 +54,7 @@ Signed-off-by: Paolo Abeni <[email protected]>
|
|
|
goto out;
|
|
|
|
|
|
/* Chech link state; speed / duplex changes are not treated yet */
|
|
|
-@@ -2058,6 +2061,8 @@ static int dpaa2_eth_open(struct net_dev
|
|
|
+@@ -2061,6 +2064,8 @@ static int dpaa2_eth_open(struct net_dev
|
|
|
priv->dpbp_dev->obj_desc.id, priv->bpid);
|
|
|
}
|
|
|
|
|
@@ -63,7 +63,7 @@ Signed-off-by: Paolo Abeni <[email protected]>
|
|
|
if (!dpaa2_eth_is_type_phy(priv)) {
|
|
|
/* We'll only start the txqs when the link is actually ready;
|
|
|
* make sure we don't race against the link up notification,
|
|
|
-@@ -2076,6 +2081,7 @@ static int dpaa2_eth_open(struct net_dev
|
|
|
+@@ -2079,6 +2084,7 @@ static int dpaa2_eth_open(struct net_dev
|
|
|
|
|
|
err = dpni_enable(priv->mc_io, 0, priv->mc_token);
|
|
|
if (err < 0) {
|
|
@@ -71,7 +71,7 @@ Signed-off-by: Paolo Abeni <[email protected]>
|
|
|
netdev_err(net_dev, "dpni_enable() failed\n");
|
|
|
goto enable_err;
|
|
|
}
|
|
|
-@@ -2083,6 +2089,8 @@ static int dpaa2_eth_open(struct net_dev
|
|
|
+@@ -2086,6 +2092,8 @@ static int dpaa2_eth_open(struct net_dev
|
|
|
if (dpaa2_eth_is_type_phy(priv))
|
|
|
dpaa2_mac_start(priv->mac);
|
|
|
|
|
@@ -80,7 +80,7 @@ Signed-off-by: Paolo Abeni <[email protected]>
|
|
|
return 0;
|
|
|
|
|
|
enable_err:
|
|
|
-@@ -2154,6 +2162,8 @@ static int dpaa2_eth_stop(struct net_dev
|
|
|
+@@ -2157,6 +2165,8 @@ static int dpaa2_eth_stop(struct net_dev
|
|
|
int dpni_enabled = 0;
|
|
|
int retries = 10;
|
|
|
|
|
@@ -89,7 +89,7 @@ Signed-off-by: Paolo Abeni <[email protected]>
|
|
|
if (dpaa2_eth_is_type_phy(priv)) {
|
|
|
dpaa2_mac_stop(priv->mac);
|
|
|
} else {
|
|
|
-@@ -2161,6 +2171,8 @@ static int dpaa2_eth_stop(struct net_dev
|
|
|
+@@ -2164,6 +2174,8 @@ static int dpaa2_eth_stop(struct net_dev
|
|
|
netif_carrier_off(net_dev);
|
|
|
}
|
|
|
|
|
@@ -98,7 +98,7 @@ Signed-off-by: Paolo Abeni <[email protected]>
|
|
|
/* On dpni_disable(), the MC firmware will:
|
|
|
* - stop MAC Rx and wait for all Rx frames to be enqueued to software
|
|
|
* - cut off WRIOP dequeues from egress FQs and wait until transmission
|
|
|
-@@ -2486,12 +2498,20 @@ static int dpaa2_eth_ts_ioctl(struct net
|
|
|
+@@ -2489,12 +2501,20 @@ static int dpaa2_eth_ts_ioctl(struct net
|
|
|
static int dpaa2_eth_ioctl(struct net_device *dev, struct ifreq *rq, int cmd)
|
|
|
{
|
|
|
struct dpaa2_eth_priv *priv = netdev_priv(dev);
|
|
@@ -121,7 +121,7 @@ Signed-off-by: Paolo Abeni <[email protected]>
|
|
|
|
|
|
return -EOPNOTSUPP;
|
|
|
}
|
|
|
-@@ -4451,7 +4471,9 @@ static int dpaa2_eth_connect_mac(struct
|
|
|
+@@ -4454,7 +4474,9 @@ static int dpaa2_eth_connect_mac(struct
|
|
|
goto err_close_mac;
|
|
|
}
|
|
|
|
|
@@ -131,7 +131,7 @@ Signed-off-by: Paolo Abeni <[email protected]>
|
|
|
|
|
|
return 0;
|
|
|
|
|
|
-@@ -4464,9 +4486,12 @@ err_free_mac:
|
|
|
+@@ -4467,9 +4489,12 @@ err_free_mac:
|
|
|
|
|
|
static void dpaa2_eth_disconnect_mac(struct dpaa2_eth_priv *priv)
|
|
|
{
|
|
@@ -145,7 +145,7 @@ Signed-off-by: Paolo Abeni <[email protected]>
|
|
|
|
|
|
if (!mac)
|
|
|
return;
|
|
|
-@@ -4485,6 +4510,7 @@ static irqreturn_t dpni_irq0_handler_thr
|
|
|
+@@ -4488,6 +4513,7 @@ static irqreturn_t dpni_irq0_handler_thr
|
|
|
struct fsl_mc_device *dpni_dev = to_fsl_mc_device(dev);
|
|
|
struct net_device *net_dev = dev_get_drvdata(dev);
|
|
|
struct dpaa2_eth_priv *priv = netdev_priv(net_dev);
|
|
@@ -153,7 +153,7 @@ Signed-off-by: Paolo Abeni <[email protected]>
|
|
|
int err;
|
|
|
|
|
|
err = dpni_get_irq_status(dpni_dev->mc_io, 0, dpni_dev->mc_handle,
|
|
|
-@@ -4502,7 +4528,12 @@ static irqreturn_t dpni_irq0_handler_thr
|
|
|
+@@ -4505,7 +4531,12 @@ static irqreturn_t dpni_irq0_handler_thr
|
|
|
dpaa2_eth_update_tx_fqids(priv);
|
|
|
|
|
|
rtnl_lock();
|
|
@@ -167,7 +167,7 @@ Signed-off-by: Paolo Abeni <[email protected]>
|
|
|
dpaa2_eth_disconnect_mac(priv);
|
|
|
else
|
|
|
dpaa2_eth_connect_mac(priv);
|
|
|
-@@ -4603,6 +4634,8 @@ static int dpaa2_eth_probe(struct fsl_mc
|
|
|
+@@ -4606,6 +4637,8 @@ static int dpaa2_eth_probe(struct fsl_mc
|
|
|
priv = netdev_priv(net_dev);
|
|
|
priv->net_dev = net_dev;
|
|
|
|
|
@@ -305,7 +305,7 @@ Signed-off-by: Paolo Abeni <[email protected]>
|
|
|
if (pause->autoneg)
|
|
|
return -EOPNOTSUPP;
|
|
|
|
|
|
-@@ -309,8 +341,12 @@ static void dpaa2_eth_get_ethtool_stats(
|
|
|
+@@ -307,8 +339,12 @@ static void dpaa2_eth_get_ethtool_stats(
|
|
|
}
|
|
|
*(data + i++) = buf_cnt;
|
|
|
|