diff options
author | Imre Kaloz <kaloz@openwrt.org> | 2009-06-02 14:31:43 +0200 |
---|---|---|
committer | Nicolas Pitre <nico@cam.org> | 2009-06-08 13:05:00 -0400 |
commit | 9ffbe87370403d6d5c4010f5b0f692f9d0715776 (patch) | |
tree | 840422d39e303b659190fcda54428506df517072 /arch/arm/mach-orion5x | |
parent | 3b937a7dbddbedd9457b33fcc8fa369c0c229c6e (diff) | |
download | op-kernel-dev-9ffbe87370403d6d5c4010f5b0f692f9d0715776.zip op-kernel-dev-9ffbe87370403d6d5c4010f5b0f692f9d0715776.tar.gz |
[ARM] orion5x: WNR854T switch support
This patch adds support for the switch found on the Netgear
WNR854T router.
Signed-off-by: Imre Kaloz <kaloz@openwrt.org>
Signed-off-by: Nicolas Pitre <nico@marvell.com>
Diffstat (limited to 'arch/arm/mach-orion5x')
-rw-r--r-- | arch/arm/mach-orion5x/wnr854t-setup.c | 16 |
1 files changed, 16 insertions, 0 deletions
diff --git a/arch/arm/mach-orion5x/wnr854t-setup.c b/arch/arm/mach-orion5x/wnr854t-setup.c index 7ddc22c..6920821 100644 --- a/arch/arm/mach-orion5x/wnr854t-setup.c +++ b/arch/arm/mach-orion5x/wnr854t-setup.c @@ -15,6 +15,7 @@ #include <linux/mtd/physmap.h> #include <linux/mv643xx_eth.h> #include <linux/ethtool.h> +#include <net/dsa.h> #include <asm/mach-types.h> #include <asm/gpio.h> #include <asm/mach/arch.h> @@ -97,6 +98,20 @@ static struct mv643xx_eth_platform_data wnr854t_eth_data = { .duplex = DUPLEX_FULL, }; +static struct dsa_chip_data wnr854t_switch_chip_data = { + .port_names[0] = "lan3", + .port_names[1] = "lan4", + .port_names[2] = "wan", + .port_names[3] = "cpu", + .port_names[5] = "lan1", + .port_names[7] = "lan2", +}; + +static struct dsa_platform_data wnr854t_switch_plat_data = { + .nr_chips = 1, + .chip = &wnr854t_switch_chip_data, +}; + static void __init wnr854t_init(void) { /* @@ -110,6 +125,7 @@ static void __init wnr854t_init(void) * Configure peripherals. */ orion5x_eth_init(&wnr854t_eth_data); + orion5x_eth_switch_init(&wnr854t_switch_plat_data, NO_IRQ); orion5x_uart0_init(); orion5x_setup_dev_boot_win(WNR854T_NOR_BOOT_BASE, |