Changeset 43104


Ignore:
Timestamp:
2014-10-29T19:49:46+01:00 (3 years ago)
Author:
blogic
Message:

ralink: fix a off by 4 bug in mt7530

0x8100000c vs 0x810000c0 int he pvc register this caused the cascade with an external mt7530 to fail.

Signed-off-by: John Crispin <blogic@…>

File:
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/target/linux/ramips/patches-3.14/0035-NET-MIPS-add-ralink-SoC-ethernet-driver.patch

    r42463 r43104  
    5151 create mode 100644 drivers/net/ethernet/ralink/soc_rt3883.c 
    5252 
    53 --- /dev/null 
    54 +++ b/arch/mips/include/asm/mach-ralink/rt305x_esw_platform.h 
     53Index: linux-3.14.18/arch/mips/include/asm/mach-ralink/rt305x_esw_platform.h 
     54=================================================================== 
     55--- /dev/null   1970-01-01 00:00:00.000000000 +0000 
     56+++ linux-3.14.18/arch/mips/include/asm/mach-ralink/rt305x_esw_platform.h       2014-10-28 10:43:11.882131200 +0100 
    5557@@ -0,0 +1,27 @@ 
    5658+/* 
     
    8183+ 
    8284+#endif /* _RT305X_ESW_PLATFORM_H */ 
    83 --- a/arch/mips/ralink/rt305x.c 
    84 +++ b/arch/mips/ralink/rt305x.c 
    85 @@ -199,6 +199,7 @@ void __init ralink_clk_init(void) 
     85Index: linux-3.14.18/arch/mips/ralink/rt305x.c 
     86=================================================================== 
     87--- linux-3.14.18.orig/arch/mips/ralink/rt305x.c        2014-10-28 10:43:11.766130990 +0100 
     88+++ linux-3.14.18/arch/mips/ralink/rt305x.c     2014-10-28 10:43:11.882131200 +0100 
     89@@ -199,6 +199,7 @@ 
    8690        } 
    8791  
     
    9195        ralink_clk_add("10000100.timer", wdt_rate); 
    9296        ralink_clk_add("10000120.watchdog", wdt_rate); 
    93 --- a/drivers/net/ethernet/Kconfig 
    94 +++ b/drivers/net/ethernet/Kconfig 
    95 @@ -134,6 +134,7 @@ config ETHOC 
     97Index: linux-3.14.18/drivers/net/ethernet/Kconfig 
     98=================================================================== 
     99--- linux-3.14.18.orig/drivers/net/ethernet/Kconfig     2014-09-06 01:34:59.000000000 +0200 
     100+++ linux-3.14.18/drivers/net/ethernet/Kconfig  2014-10-29 14:59:06.927617708 +0100 
     101@@ -134,6 +134,7 @@ 
    96102 source "drivers/net/ethernet/packetengines/Kconfig" 
    97103 source "drivers/net/ethernet/pasemi/Kconfig" 
     
    101107 source "drivers/net/ethernet/renesas/Kconfig" 
    102108 source "drivers/net/ethernet/rdc/Kconfig" 
    103 --- a/drivers/net/ethernet/Makefile 
    104 +++ b/drivers/net/ethernet/Makefile 
    105 @@ -56,6 +56,7 @@ obj-$(CONFIG_ETHOC) += ethoc.o 
     109Index: linux-3.14.18/drivers/net/ethernet/Makefile 
     110=================================================================== 
     111--- linux-3.14.18.orig/drivers/net/ethernet/Makefile    2014-09-06 01:34:59.000000000 +0200 
     112+++ linux-3.14.18/drivers/net/ethernet/Makefile 2014-10-29 14:59:06.927617708 +0100 
     113@@ -56,6 +56,7 @@ 
    106114 obj-$(CONFIG_NET_PACKET_ENGINE) += packetengines/ 
    107115 obj-$(CONFIG_NET_VENDOR_PASEMI) += pasemi/ 
     
    111119 obj-$(CONFIG_SH_ETH) += renesas/ 
    112120 obj-$(CONFIG_NET_VENDOR_RDC) += rdc/ 
    113 --- /dev/null 
    114 +++ b/drivers/net/ethernet/ralink/Kconfig 
     121Index: linux-3.14.18/drivers/net/ethernet/ralink/Kconfig 
     122=================================================================== 
     123--- /dev/null   1970-01-01 00:00:00.000000000 +0000 
     124+++ linux-3.14.18/drivers/net/ethernet/ralink/Kconfig   2014-10-28 10:43:11.886131208 +0100 
    115125@@ -0,0 +1,32 @@ 
    116126+config NET_RALINK 
     
    146156+       select SWCONFIG 
    147157+endif 
    148 --- /dev/null 
    149 +++ b/drivers/net/ethernet/ralink/Makefile 
     158Index: linux-3.14.18/drivers/net/ethernet/ralink/Makefile 
     159=================================================================== 
     160--- /dev/null   1970-01-01 00:00:00.000000000 +0000 
     161+++ linux-3.14.18/drivers/net/ethernet/ralink/Makefile  2014-10-28 10:43:11.886131208 +0100 
    150162@@ -0,0 +1,18 @@ 
    151163+# 
     
    167179+ 
    168180+obj-$(CONFIG_NET_RALINK)                       += ralink-eth.o 
    169 --- /dev/null 
    170 +++ b/drivers/net/ethernet/ralink/esw_rt3052.c 
     181Index: linux-3.14.18/drivers/net/ethernet/ralink/esw_rt3052.c 
     182=================================================================== 
     183--- /dev/null   1970-01-01 00:00:00.000000000 +0000 
     184+++ linux-3.14.18/drivers/net/ethernet/ralink/esw_rt3052.c      2014-10-28 10:43:11.886131208 +0100 
    171185@@ -0,0 +1,1463 @@ 
    172186+/* 
     
    16331647+       platform_driver_unregister(&esw_driver); 
    16341648+} 
    1635 --- /dev/null 
    1636 +++ b/drivers/net/ethernet/ralink/esw_rt3052.h 
     1649Index: linux-3.14.18/drivers/net/ethernet/ralink/esw_rt3052.h 
     1650=================================================================== 
     1651--- /dev/null   1970-01-01 00:00:00.000000000 +0000 
     1652+++ linux-3.14.18/drivers/net/ethernet/ralink/esw_rt3052.h      2014-10-28 10:43:11.886131208 +0100 
    16371653@@ -0,0 +1,32 @@ 
    16381654+/* 
     
    16681684+#endif 
    16691685+#endif 
    1670 --- /dev/null 
    1671 +++ b/drivers/net/ethernet/ralink/gsw_mt7620a.c 
    1672 @@ -0,0 +1,566 @@ 
     1686Index: linux-3.14.18/drivers/net/ethernet/ralink/gsw_mt7620a.c 
     1687=================================================================== 
     1688--- /dev/null   1970-01-01 00:00:00.000000000 +0000 
     1689+++ linux-3.14.18/drivers/net/ethernet/ralink/gsw_mt7620a.c     2014-10-29 14:58:32.303564882 +0100 
     1690@@ -0,0 +1,568 @@ 
    16731691+/* 
    16741692+ *   This program is free software; you can redistribute it and/or modify 
     
    21802198+ 
    21812199+       /* is the mt7530 internal or external */ 
    2182 +       if ((_mt7620_mii_read(gsw, 0x1f, 2) == 1) && (_mt7620_mii_read(gsw, 0x1f, 3) == 0xbeef)) 
    2183 +               mt7530_probe(priv->device, NULL, priv->mii_bus); 
    2184 +       else 
    2185 +               mt7530_probe(priv->device, gsw->base, NULL); 
     2200+       if ((_mt7620_mii_read(gsw, 0x1f, 2) == 1) && (_mt7620_mii_read(gsw, 0x1f, 3) == 0xbeef)) { 
     2201+               mt7530_probe(priv->device, gsw->base, NULL, 0); 
     2202+               mt7530_probe(priv->device, NULL, priv->mii_bus, 1); 
     2203+       } else { 
     2204+               mt7530_probe(priv->device, gsw->base, NULL, 1); 
     2205+       } 
    21862206+ 
    21872207+       return 0; 
     
    22372257+       return 0; 
    22382258+} 
    2239 --- /dev/null 
    2240 +++ b/drivers/net/ethernet/ralink/gsw_mt7620a.h 
     2259Index: linux-3.14.18/drivers/net/ethernet/ralink/gsw_mt7620a.h 
     2260=================================================================== 
     2261--- /dev/null   1970-01-01 00:00:00.000000000 +0000 
     2262+++ linux-3.14.18/drivers/net/ethernet/ralink/gsw_mt7620a.h     2014-10-28 10:43:11.890131215 +0100 
    22412263@@ -0,0 +1,30 @@ 
    22422264+/* 
     
    22702292+ 
    22712293+#endif 
    2272 --- /dev/null 
    2273 +++ b/drivers/net/ethernet/ralink/mdio.c 
     2294Index: linux-3.14.18/drivers/net/ethernet/ralink/mdio.c 
     2295=================================================================== 
     2296--- /dev/null   1970-01-01 00:00:00.000000000 +0000 
     2297+++ linux-3.14.18/drivers/net/ethernet/ralink/mdio.c    2014-10-28 10:43:11.890131215 +0100 
    22742298@@ -0,0 +1,244 @@ 
    22752299+/* 
     
    25172541+       kfree(priv->mii_bus); 
    25182542+} 
    2519 --- /dev/null 
    2520 +++ b/drivers/net/ethernet/ralink/mdio.h 
     2543Index: linux-3.14.18/drivers/net/ethernet/ralink/mdio.h 
     2544=================================================================== 
     2545--- /dev/null   1970-01-01 00:00:00.000000000 +0000 
     2546+++ linux-3.14.18/drivers/net/ethernet/ralink/mdio.h    2014-10-28 10:43:11.890131215 +0100 
    25212547@@ -0,0 +1,29 @@ 
    25222548+/* 
     
    25492575+#endif 
    25502576+#endif 
    2551 --- /dev/null 
    2552 +++ b/drivers/net/ethernet/ralink/mdio_rt2880.c 
     2577Index: linux-3.14.18/drivers/net/ethernet/ralink/mdio_rt2880.c 
     2578=================================================================== 
     2579--- /dev/null   1970-01-01 00:00:00.000000000 +0000 
     2580+++ linux-3.14.18/drivers/net/ethernet/ralink/mdio_rt2880.c     2014-10-28 10:43:11.890131215 +0100 
    25532581@@ -0,0 +1,232 @@ 
    25542582+/* 
     
    27842812+       return; 
    27852813+} 
    2786 --- /dev/null 
    2787 +++ b/drivers/net/ethernet/ralink/mdio_rt2880.h 
     2814Index: linux-3.14.18/drivers/net/ethernet/ralink/mdio_rt2880.h 
     2815=================================================================== 
     2816--- /dev/null   1970-01-01 00:00:00.000000000 +0000 
     2817+++ linux-3.14.18/drivers/net/ethernet/ralink/mdio_rt2880.h     2014-10-28 10:43:11.890131215 +0100 
    27882818@@ -0,0 +1,26 @@ 
    27892819+/* 
     
    28132843+ 
    28142844+#endif 
    2815 --- /dev/null 
    2816 +++ b/drivers/net/ethernet/ralink/mt7530.c 
    2817 @@ -0,0 +1,579 @@ 
     2845Index: linux-3.14.18/drivers/net/ethernet/ralink/mt7530.c 
     2846=================================================================== 
     2847--- /dev/null   1970-01-01 00:00:00.000000000 +0000 
     2848+++ linux-3.14.18/drivers/net/ethernet/ralink/mt7530.c  2014-10-29 14:58:52.303587070 +0100 
     2849@@ -0,0 +1,582 @@ 
    28182850+/* 
    28192851+ * This program is free software; you can redistribute it and/or 
     
    29462978+       int i = 0; 
    29472979+ 
    2948 +       mt7530->global_vlan_enable = 1; 
    2949 + 
    29502980+       for (i = 0; i < MT7530_NUM_PORTS; i++) 
    29512981+               mt7530->port_entries[i].pvid = map->pvids[i]; 
     
    32063236+ 
    32073237+               for (i = 0; i < MT7530_NUM_PORTS; i++) 
    3208 +                       mt7530_w32(priv, REG_ESW_PORT_PVC(i), 0x8100000c); 
    3209 + 
    3210 +               return 0; 
     3238+                       mt7530_w32(priv, REG_ESW_PORT_PVC(i), 0x810000c0); 
     3239+ 
     3240+               return 0; 
    32113241+       } 
    32123242+ 
     
    33543384+ 
    33553385+int 
    3356 +mt7530_probe(struct device *dev, void __iomem *base, struct mii_bus *bus) 
     3386+mt7530_probe(struct device *dev, void __iomem *base, struct mii_bus *bus, int vlan) 
    33573387+{ 
    33583388+       struct switch_dev *swdev; 
     
    33703400+       mt7530->base = base; 
    33713401+       mt7530->bus = bus; 
    3372 +       mt7530->global_vlan_enable = 1; 
     3402+       mt7530->global_vlan_enable = vlan; 
    33733403+ 
    33743404+       swdev = &mt7530->swdev; 
    3375 +       swdev->name = "mt7530"; 
    3376 +       swdev->alias = "mt7530"; 
     3405+       if (bus) { 
     3406+               swdev->alias = "mt7530"; 
     3407+               swdev->name = "mt7530"; 
     3408+       } else { 
     3409+               swdev->alias = "mt7620"; 
     3410+               swdev->name = "mt7620"; 
     3411+       } 
    33773412+       swdev->cpu_port = MT7530_CPU_PORT; 
    33783413+       swdev->ports = MT7530_NUM_PORTS; 
     
    33863421+       } 
    33873422+ 
    3388 +       dev_info(dev, "loaded mt7530 driver\n"); 
     3423+       dev_info(dev, "loaded %s driver\n", swdev->name); 
    33893424+ 
    33903425+       map = mt7530_find_mapping(dev->of_node); 
     
    33953430+       return 0; 
    33963431+} 
    3397 --- /dev/null 
    3398 +++ b/drivers/net/ethernet/ralink/mt7530.h 
     3432Index: linux-3.14.18/drivers/net/ethernet/ralink/mt7530.h 
     3433=================================================================== 
     3434--- /dev/null   1970-01-01 00:00:00.000000000 +0000 
     3435+++ linux-3.14.18/drivers/net/ethernet/ralink/mt7530.h  2014-10-28 12:34:25.187728544 +0100 
    33993436@@ -0,0 +1,20 @@ 
    34003437+/* 
     
    34153452+#define _MT7530_H__ 
    34163453+ 
    3417 +int mt7530_probe(struct device *dev, void __iomem *base, struct mii_bus *bus); 
     3454+int mt7530_probe(struct device *dev, void __iomem *base, struct mii_bus *bus, int vlan); 
    34183455+ 
    34193456+#endif 
    3420 --- /dev/null 
    3421 +++ b/drivers/net/ethernet/ralink/ralink_soc_eth.c 
     3457Index: linux-3.14.18/drivers/net/ethernet/ralink/ralink_soc_eth.c 
     3458=================================================================== 
     3459--- /dev/null   1970-01-01 00:00:00.000000000 +0000 
     3460+++ linux-3.14.18/drivers/net/ethernet/ralink/ralink_soc_eth.c  2014-10-28 10:43:11.890131215 +0100 
    34223461@@ -0,0 +1,844 @@ 
    34233462+/* 
     
    42654304+MODULE_AUTHOR("John Crispin <blogic@openwrt.org>"); 
    42664305+MODULE_DESCRIPTION("Ethernet driver for Ralink SoC"); 
    4267 --- /dev/null 
    4268 +++ b/drivers/net/ethernet/ralink/ralink_soc_eth.h 
     4306Index: linux-3.14.18/drivers/net/ethernet/ralink/ralink_soc_eth.h 
     4307=================================================================== 
     4308--- /dev/null   1970-01-01 00:00:00.000000000 +0000 
     4309+++ linux-3.14.18/drivers/net/ethernet/ralink/ralink_soc_eth.h  2014-10-28 10:43:11.894131220 +0100 
    42694310@@ -0,0 +1,384 @@ 
    42704311+/* 
     
    46524693+ 
    46534694+#endif /* FE_ETH_H */ 
    4654 --- /dev/null 
    4655 +++ b/drivers/net/ethernet/ralink/soc_mt7620.c 
     4695Index: linux-3.14.18/drivers/net/ethernet/ralink/soc_mt7620.c 
     4696=================================================================== 
     4697--- /dev/null   1970-01-01 00:00:00.000000000 +0000 
     4698+++ linux-3.14.18/drivers/net/ethernet/ralink/soc_mt7620.c      2014-10-28 10:43:11.894131220 +0100 
    46564699@@ -0,0 +1,172 @@ 
    46574700+/* 
     
    48274870+ 
    48284871+MODULE_DEVICE_TABLE(of, of_fe_match); 
    4829 --- /dev/null 
    4830 +++ b/drivers/net/ethernet/ralink/soc_rt2880.c 
     4872Index: linux-3.14.18/drivers/net/ethernet/ralink/soc_rt2880.c 
     4873=================================================================== 
     4874--- /dev/null   1970-01-01 00:00:00.000000000 +0000 
     4875+++ linux-3.14.18/drivers/net/ethernet/ralink/soc_rt2880.c      2014-10-28 10:43:11.894131220 +0100 
    48314876@@ -0,0 +1,52 @@ 
    48324877+/* 
     
    48824927+ 
    48834928+MODULE_DEVICE_TABLE(of, of_fe_match); 
    4884 --- /dev/null 
    4885 +++ b/drivers/net/ethernet/ralink/soc_rt305x.c 
     4929Index: linux-3.14.18/drivers/net/ethernet/ralink/soc_rt305x.c 
     4930=================================================================== 
     4931--- /dev/null   1970-01-01 00:00:00.000000000 +0000 
     4932+++ linux-3.14.18/drivers/net/ethernet/ralink/soc_rt305x.c      2014-10-28 10:43:11.894131220 +0100 
    48864933@@ -0,0 +1,113 @@ 
    48874934+/* 
     
    49985045+ 
    49995046+MODULE_DEVICE_TABLE(of, of_fe_match); 
    5000 --- /dev/null 
    5001 +++ b/drivers/net/ethernet/ralink/soc_rt3883.c 
     5047Index: linux-3.14.18/drivers/net/ethernet/ralink/soc_rt3883.c 
     5048=================================================================== 
     5049--- /dev/null   1970-01-01 00:00:00.000000000 +0000 
     5050+++ linux-3.14.18/drivers/net/ethernet/ralink/soc_rt3883.c      2014-10-28 10:43:11.894131220 +0100 
    50025051@@ -0,0 +1,60 @@ 
    50035052+/* 
Note: See TracChangeset for help on using the changeset viewer.