|
@@ -17,7 +17,7 @@ Signed-off-by: Felix Fietkau <[email protected]>
|
|
|
|
|
|
--- a/drivers/net/ethernet/mediatek/mtk_eth_soc.c
|
|
--- a/drivers/net/ethernet/mediatek/mtk_eth_soc.c
|
|
+++ b/drivers/net/ethernet/mediatek/mtk_eth_soc.c
|
|
+++ b/drivers/net/ethernet/mediatek/mtk_eth_soc.c
|
|
-@@ -1852,9 +1852,7 @@ static int mtk_poll_rx(struct napi_struc
|
|
|
|
|
|
+@@ -1850,9 +1850,7 @@ static int mtk_poll_rx(struct napi_struc
|
|
|
|
|
|
while (done < budget) {
|
|
while (done < budget) {
|
|
unsigned int pktlen, *rxdcsum;
|
|
unsigned int pktlen, *rxdcsum;
|
|
@@ -27,7 +27,7 @@ Signed-off-by: Felix Fietkau <[email protected]>
|
|
dma_addr_t dma_addr;
|
|
dma_addr_t dma_addr;
|
|
u32 hash, reason;
|
|
u32 hash, reason;
|
|
int mac = 0;
|
|
int mac = 0;
|
|
-@@ -1989,36 +1987,21 @@ static int mtk_poll_rx(struct napi_struc
|
|
|
|
|
|
+@@ -1987,36 +1985,21 @@ static int mtk_poll_rx(struct napi_struc
|
|
skb_checksum_none_assert(skb);
|
|
skb_checksum_none_assert(skb);
|
|
skb->protocol = eth_type_trans(skb, netdev);
|
|
skb->protocol = eth_type_trans(skb, netdev);
|
|
|
|
|
|
@@ -70,7 +70,7 @@ Signed-off-by: Felix Fietkau <[email protected]>
|
|
skb_record_rx_queue(skb, 0);
|
|
skb_record_rx_queue(skb, 0);
|
|
napi_gro_receive(napi, skb);
|
|
napi_gro_receive(napi, skb);
|
|
|
|
|
|
-@@ -2833,29 +2816,11 @@ static netdev_features_t mtk_fix_feature
|
|
|
|
|
|
+@@ -2831,29 +2814,11 @@ static netdev_features_t mtk_fix_feature
|
|
|
|
|
|
static int mtk_set_features(struct net_device *dev, netdev_features_t features)
|
|
static int mtk_set_features(struct net_device *dev, netdev_features_t features)
|
|
{
|
|
{
|
|
@@ -100,7 +100,7 @@ Signed-off-by: Felix Fietkau <[email protected]>
|
|
return 0;
|
|
return 0;
|
|
}
|
|
}
|
|
|
|
|
|
-@@ -3169,30 +3134,6 @@ static int mtk_open(struct net_device *d
|
|
|
|
|
|
+@@ -3167,30 +3132,6 @@ static int mtk_open(struct net_device *d
|
|
struct mtk_eth *eth = mac->hw;
|
|
struct mtk_eth *eth = mac->hw;
|
|
int i, err;
|
|
int i, err;
|
|
|
|
|
|
@@ -131,7 +131,7 @@ Signed-off-by: Felix Fietkau <[email protected]>
|
|
err = phylink_of_phy_connect(mac->phylink, mac->of_node, 0);
|
|
err = phylink_of_phy_connect(mac->phylink, mac->of_node, 0);
|
|
if (err) {
|
|
if (err) {
|
|
netdev_err(dev, "%s: could not attach PHY: %d\n", __func__,
|
|
netdev_err(dev, "%s: could not attach PHY: %d\n", __func__,
|
|
-@@ -3233,6 +3174,35 @@ static int mtk_open(struct net_device *d
|
|
|
|
|
|
+@@ -3231,6 +3172,35 @@ static int mtk_open(struct net_device *d
|
|
phylink_start(mac->phylink);
|
|
phylink_start(mac->phylink);
|
|
netif_tx_start_all_queues(dev);
|
|
netif_tx_start_all_queues(dev);
|
|
|
|
|
|
@@ -167,7 +167,7 @@ Signed-off-by: Felix Fietkau <[email protected]>
|
|
return 0;
|
|
return 0;
|
|
}
|
|
}
|
|
|
|
|
|
-@@ -3717,10 +3687,9 @@ static int mtk_hw_init(struct mtk_eth *e
|
|
|
|
|
|
+@@ -3715,10 +3685,9 @@ static int mtk_hw_init(struct mtk_eth *e
|
|
if (!MTK_HAS_CAPS(eth->soc->caps, MTK_NETSYS_V2)) {
|
|
if (!MTK_HAS_CAPS(eth->soc->caps, MTK_NETSYS_V2)) {
|
|
val = mtk_r32(eth, MTK_CDMP_IG_CTRL);
|
|
val = mtk_r32(eth, MTK_CDMP_IG_CTRL);
|
|
mtk_w32(eth, val | MTK_CDMP_STAG_EN, MTK_CDMP_IG_CTRL);
|
|
mtk_w32(eth, val | MTK_CDMP_STAG_EN, MTK_CDMP_IG_CTRL);
|
|
@@ -180,7 +180,7 @@ Signed-off-by: Felix Fietkau <[email protected]>
|
|
|
|
|
|
/* set interrupt delays based on current Net DIM sample */
|
|
/* set interrupt delays based on current Net DIM sample */
|
|
mtk_dim_rx(ð->rx_dim.work);
|
|
mtk_dim_rx(ð->rx_dim.work);
|
|
-@@ -4367,7 +4336,7 @@ static int mtk_add_mac(struct mtk_eth *e
|
|
|
|
|
|
+@@ -4365,7 +4334,7 @@ static int mtk_add_mac(struct mtk_eth *e
|
|
eth->netdev[id]->hw_features |= NETIF_F_LRO;
|
|
eth->netdev[id]->hw_features |= NETIF_F_LRO;
|
|
|
|
|
|
eth->netdev[id]->vlan_features = eth->soc->hw_features &
|
|
eth->netdev[id]->vlan_features = eth->soc->hw_features &
|