X-Git-Url: https://git.librecmc.org/?a=blobdiff_plain;f=target%2Flinux%2Framips%2Fpatches-4.4%2F0501-net-next-mediatek-add-the-drivers-core-files.patch;h=cc4c2a152df10fd441ad504234833eaa28b043f1;hb=190ee7d86b450083fea4236d588d0d88a50e1311;hp=e94c1fab05c095ce2e716862cf3b7b802c1b8d62;hpb=d041e8b44b042d373b0b474ee69caed840f9a541;p=oweals%2Fopenwrt.git diff --git a/target/linux/ramips/patches-4.4/0501-net-next-mediatek-add-the-drivers-core-files.patch b/target/linux/ramips/patches-4.4/0501-net-next-mediatek-add-the-drivers-core-files.patch index e94c1fab05..cc4c2a152d 100644 --- a/target/linux/ramips/patches-4.4/0501-net-next-mediatek-add-the-drivers-core-files.patch +++ b/target/linux/ramips/patches-4.4/0501-net-next-mediatek-add-the-drivers-core-files.patch @@ -27,7 +27,7 @@ we are on. The code to bring up the switches and external ports has also been split into separate files. Signed-off-by: John Crispin -Signed-off-by: Felix Fietkau +Signed-off-by: Felix Fietkau Signed-off-by: Michael Lee --- drivers/net/ethernet/mediatek/ethtool.c | 235 ++++ @@ -57,7 +57,7 @@ Signed-off-by: Michael Lee + * GNU General Public License for more details. + * + * Copyright (C) 2009-2015 John Crispin -+ * Copyright (C) 2009-2015 Felix Fietkau ++ * Copyright (C) 2009-2015 Felix Fietkau + * Copyright (C) 2013-2015 Michael Lee + */ + @@ -295,7 +295,7 @@ Signed-off-by: Michael Lee + * GNU General Public License for more details. + * + * Copyright (C) 2009-2015 John Crispin -+ * Copyright (C) 2009-2015 Felix Fietkau ++ * Copyright (C) 2009-2015 Felix Fietkau + * Copyright (C) 2013-2015 Michael Lee + */ + @@ -315,7 +315,7 @@ Signed-off-by: Michael Lee + * the Free Software Foundation; version 2 of the License + * + * Copyright (C) 2009-2015 John Crispin -+ * Copyright (C) 2009-2015 Felix Fietkau ++ * Copyright (C) 2009-2015 Felix Fietkau + * Copyright (C) 2013-2015 Michael Lee + */ + @@ -581,7 +581,7 @@ Signed-off-by: Michael Lee + * GNU General Public License for more details. + * + * Copyright (C) 2009-2015 John Crispin -+ * Copyright (C) 2009-2015 Felix Fietkau ++ * Copyright (C) 2009-2015 Felix Fietkau + * Copyright (C) 2013-2015 Michael Lee + */ + @@ -600,7 +600,7 @@ Signed-off-by: Michael Lee +#endif --- /dev/null +++ b/drivers/net/ethernet/mediatek/mtk_eth_soc.c -@@ -0,0 +1,1607 @@ +@@ -0,0 +1,1587 @@ +/* This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; version 2 of the License @@ -611,7 +611,7 @@ Signed-off-by: Michael Lee + * GNU General Public License for more details. + * + * Copyright (C) 2009-2015 John Crispin -+ * Copyright (C) 2009-2015 Felix Fietkau ++ * Copyright (C) 2009-2015 Felix Fietkau + * Copyright (C) 2013-2015 Michael Lee + */ + @@ -1400,20 +1400,6 @@ Signed-off-by: Michael Lee + return NETDEV_TX_OK; +} + -+static inline void fe_rx_vlan(struct sk_buff *skb) -+{ -+ struct ethhdr *ehdr; -+ u16 vlanid; -+ -+ if (!__vlan_get_tag(skb, &vlanid)) { -+ /* pop the vlan tag */ -+ ehdr = (struct ethhdr *)skb->data; -+ memmove(skb->data + VLAN_HLEN, ehdr, ETH_ALEN * 2); -+ skb_pull(skb, VLAN_HLEN); -+ __vlan_hwaccel_put_tag(skb, htons(ETH_P_8021Q), vlanid); -+ } -+} -+ +static int fe_poll_rx(struct napi_struct *napi, int budget, + struct fe_priv *priv, u32 rx_intr) +{ @@ -1427,7 +1413,6 @@ Signed-off-by: Michael Lee + u8 *data, *new_data; + struct fe_rx_dma *rxd, trxd; + int done = 0, pad; -+ bool rx_vlan = netdev->features & NETIF_F_HW_VLAN_CTAG_RX; + + if (netdev->features & NETIF_F_RXCSUM) + checksum_bit = soc->checksum_bit; @@ -1483,8 +1468,6 @@ Signed-off-by: Michael Lee + skb->ip_summed = CHECKSUM_UNNECESSARY; + else + skb_checksum_none_assert(skb); -+ if (rx_vlan) -+ fe_rx_vlan(skb); + skb->protocol = eth_type_trans(skb, netdev); + + stats->rx_packets++; @@ -2098,10 +2081,7 @@ Signed-off-by: Michael Lee + + if (soc->init_data) + soc->init_data(soc, netdev); -+ /* fake NETIF_F_HW_VLAN_CTAG_RX for good GRO performance */ -+ netdev->hw_features |= NETIF_F_HW_VLAN_CTAG_RX; -+ netdev->vlan_features = netdev->hw_features & -+ ~(NETIF_F_HW_VLAN_CTAG_TX | NETIF_F_HW_VLAN_CTAG_RX); ++ netdev->vlan_features = netdev->hw_features & ~NETIF_F_HW_VLAN_CTAG_TX; + netdev->features |= netdev->hw_features; + + /* fake rx vlan filter func. to support tx vlan offload func */ @@ -2221,7 +2201,7 @@ Signed-off-by: Michael Lee + * GNU General Public License for more details. + * + * Copyright (C) 2009-2015 John Crispin -+ * Copyright (C) 2009-2015 Felix Fietkau ++ * Copyright (C) 2009-2015 Felix Fietkau + * Copyright (C) 2013-2015 Michael Lee + */ +