diff options
author | Imre Kaloz <kaloz@openwrt.org> | 2009-07-21 18:55:02 +0000 |
---|---|---|
committer | Imre Kaloz <kaloz@openwrt.org> | 2009-07-21 18:55:02 +0000 |
commit | 78fae87beb5ba2c0afd3beb7176f735c00ea5f04 (patch) | |
tree | 9a62409527a36f12fe5ea9a13514c73418490405 /target/linux/orion/patches/030-mv88e6095_support.patch | |
parent | 087fcb0eb3b7b53a4867232d69d4bab0d93e302d (diff) | |
download | master-187ad058-78fae87beb5ba2c0afd3beb7176f735c00ea5f04.tar.gz master-187ad058-78fae87beb5ba2c0afd3beb7176f735c00ea5f04.tar.bz2 master-187ad058-78fae87beb5ba2c0afd3beb7176f735c00ea5f04.zip |
upgrade orion to 2.6.30.2
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@16950 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'target/linux/orion/patches/030-mv88e6095_support.patch')
-rw-r--r-- | target/linux/orion/patches/030-mv88e6095_support.patch | 115 |
1 files changed, 0 insertions, 115 deletions
diff --git a/target/linux/orion/patches/030-mv88e6095_support.patch b/target/linux/orion/patches/030-mv88e6095_support.patch deleted file mode 100644 index c71ce040fa..0000000000 --- a/target/linux/orion/patches/030-mv88e6095_support.patch +++ /dev/null @@ -1,115 +0,0 @@ -From: Lennert Buytenhek <buytenh@wantstofly.org> -Date: Fri, 20 Mar 2009 09:50:39 +0000 (+0000) -Subject: dsa: add support for the Marvell 88E6095/6095F switch chips -X-Git-Tag: v2.6.30-rc1~662^2~146 -X-Git-Url: http://git.kernel.org/?p=linux%2Fkernel%2Fgit%2Ftorvalds%2Flinux-2.6.git;a=commitdiff_plain;h=076d3e10a54caa2c148de5732c126c7a31381d48 - -dsa: add support for the Marvell 88E6095/6095F switch chips - -Add support for the Marvell 88E6095/6095F switch chips. These -chips are similar to the 88e6131, so we can add the support to -mv88e6131.c easily. - -Thanks to Gary Thomas <gary@mlbassoc.com> and Jesper Dangaard -Brouer <hawk@diku.dk> for testing various patches. - -Signed-off-by: Lennert Buytenhek <buytenh@marvell.com> -Tested-by: Gary Thomas <gary@mlbassoc.com> -Signed-off-by: David S. Miller <davem@davemloft.net> ---- - -diff --git a/net/dsa/Kconfig b/net/dsa/Kconfig -index 49211b3..c51b554 100644 ---- a/net/dsa/Kconfig -+++ b/net/dsa/Kconfig -@@ -41,13 +41,13 @@ config NET_DSA_MV88E6XXX_NEED_PPU - default n - - config NET_DSA_MV88E6131 -- bool "Marvell 88E6131 ethernet switch chip support" -+ bool "Marvell 88E6095/6095F/6131 ethernet switch chip support" - select NET_DSA_MV88E6XXX - select NET_DSA_MV88E6XXX_NEED_PPU - select NET_DSA_TAG_DSA - ---help--- -- This enables support for the Marvell 88E6131 ethernet switch -- chip. -+ This enables support for the Marvell 88E6095/6095F/6131 -+ ethernet switch chips. - - config NET_DSA_MV88E6123_61_65 - bool "Marvell 88E6123/6161/6165 ethernet switch chip support" -diff --git a/net/dsa/mv88e6131.c b/net/dsa/mv88e6131.c -index 70fae24..0029957 100644 ---- a/net/dsa/mv88e6131.c -+++ b/net/dsa/mv88e6131.c -@@ -1,6 +1,6 @@ - /* -- * net/dsa/mv88e6131.c - Marvell 88e6131 switch chip support -- * Copyright (c) 2008 Marvell Semiconductor -+ * net/dsa/mv88e6131.c - Marvell 88e6095/6095f/6131 switch chip support -+ * Copyright (c) 2008-2009 Marvell Semiconductor - * - * 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 -@@ -21,6 +21,8 @@ static char *mv88e6131_probe(struct mii_bus *bus, int sw_addr) - ret = __mv88e6xxx_reg_read(bus, sw_addr, REG_PORT(0), 0x03); - if (ret >= 0) { - ret &= 0xfff0; -+ if (ret == 0x0950) -+ return "Marvell 88E6095/88E6095F"; - if (ret == 0x1060) - return "Marvell 88E6131"; - } -@@ -36,7 +38,7 @@ static int mv88e6131_switch_reset(struct dsa_switch *ds) - /* - * Set all ports to the disabled state. - */ -- for (i = 0; i < 8; i++) { -+ for (i = 0; i < 11; i++) { - ret = REG_READ(REG_PORT(i), 0x04); - REG_WRITE(REG_PORT(i), 0x04, ret & 0xfffc); - } -@@ -136,7 +138,7 @@ static int mv88e6131_setup_global(struct dsa_switch *ds) - * Clear all trunk masks. - */ - for (i = 0; i < 8; i++) -- REG_WRITE(REG_GLOBAL2, 0x07, 0x8000 | (i << 12) | 0xff); -+ REG_WRITE(REG_GLOBAL2, 0x07, 0x8000 | (i << 12) | 0x7ff); - - /* - * Clear all trunk mappings. -@@ -159,9 +161,13 @@ static int mv88e6131_setup_port(struct dsa_switch *ds, int p) - - /* - * MAC Forcing register: don't force link, speed, duplex -- * or flow control state to any particular values. -+ * or flow control state to any particular values on physical -+ * ports, but force the CPU port to 1000 Mb/s full duplex. - */ -- REG_WRITE(addr, 0x01, 0x0003); -+ if (p == ds->cpu_port) -+ REG_WRITE(addr, 0x01, 0x003e); -+ else -+ REG_WRITE(addr, 0x01, 0x0003); - - /* - * Port Control: disable Core Tag, disable Drop-on-Lock, -@@ -268,7 +274,7 @@ static int mv88e6131_setup(struct dsa_switch *ds) - if (ret < 0) - return ret; - -- for (i = 0; i < 6; i++) { -+ for (i = 0; i < 11; i++) { - ret = mv88e6131_setup_port(ds, i); - if (ret < 0) - return ret; -@@ -279,7 +285,7 @@ static int mv88e6131_setup(struct dsa_switch *ds) - - static int mv88e6131_port_to_phy_addr(int port) - { -- if (port >= 0 && port != 3 && port <= 7) -+ if (port >= 0 && port <= 11) - return port; - return -1; - } |