From 10c2bdbc4f49c2d0ecdf83721ea41b84c3a28336 Mon Sep 17 00:00:00 2001
From: Felix Fietkau <nbd@openwrt.org>
Date: Fri, 2 Jan 2015 21:53:24 +0000
Subject: [PATCH] ramips: disable ethernet checksum offloads for mt7621, they
 are broken

Signed-off-by: Felix Fietkau <nbd@openwrt.org>

SVN-Revision: 43811
---
 .../files/drivers/net/ethernet/ralink/soc_mt7620.c    | 11 ++++++++++-
 1 file changed, 10 insertions(+), 1 deletion(-)

diff --git a/target/linux/ramips/files/drivers/net/ethernet/ralink/soc_mt7620.c b/target/linux/ramips/files/drivers/net/ethernet/ralink/soc_mt7620.c
index ba1a170abc..60666e7886 100644
--- a/target/linux/ramips/files/drivers/net/ethernet/ralink/soc_mt7620.c
+++ b/target/linux/ramips/files/drivers/net/ethernet/ralink/soc_mt7620.c
@@ -192,6 +192,15 @@ static void mt7620_init_data(struct fe_soc_data *data,
 			NETIF_F_IPV6_CSUM;
 }
 
+static void mt7621_init_data(struct fe_soc_data *data,
+		struct net_device *netdev)
+{
+	struct fe_priv *priv = netdev_priv(netdev);
+
+	priv->flags = FE_FLAG_PADDING_64B;
+	netdev->hw_features = NETIF_F_HW_VLAN_CTAG_TX;
+}
+
 static void mt7621_set_mac(struct fe_priv *priv, unsigned char *mac)
 {
 	unsigned long flags;
@@ -228,7 +237,7 @@ static struct fe_soc_data mt7620_data = {
 
 static struct fe_soc_data mt7621_data = {
 	.mac = { 0x00, 0x11, 0x22, 0x33, 0x44, 0x55 },
-	.init_data = mt7620_init_data,
+	.init_data = mt7621_init_data,
 	.reset_fe = mt7621_fe_reset,
 	.set_mac = mt7621_set_mac,
 	.fwd_config = mt7621_fwd_config,
-- 
2.30.2