summaryrefslogtreecommitdiffstats
path: root/target/linux/adm5120
diff options
context:
space:
mode:
authorGabor Juhos <juhosg@openwrt.org>2008-01-29 08:37:40 +0000
committerGabor Juhos <juhosg@openwrt.org>2008-01-29 08:37:40 +0000
commit43a86a8863c1ef486b0487cf65e78c6dd19a6281 (patch)
treea42bd48d48a7e7b2bf79c400b5fd3fc28d03fddb /target/linux/adm5120
parent4ee4c6f3f5758c895c2ad0d98b53176a176fc32b (diff)
downloadmaster-31e0f0ae-43a86a8863c1ef486b0487cf65e78c6dd19a6281.tar.gz
master-31e0f0ae-43a86a8863c1ef486b0487cf65e78c6dd19a6281.tar.bz2
master-31e0f0ae-43a86a8863c1ef486b0487cf65e78c6dd19a6281.zip
add experimental support for the Cellvision NFS-101U device
SVN-Revision: 10307
Diffstat (limited to 'target/linux/adm5120')
-rw-r--r--target/linux/adm5120/files/arch/mips/adm5120/boards/cellvision.c26
-rw-r--r--target/linux/adm5120/files/arch/mips/adm5120/prom.c3
2 files changed, 29 insertions, 0 deletions
diff --git a/target/linux/adm5120/files/arch/mips/adm5120/boards/cellvision.c b/target/linux/adm5120/files/arch/mips/adm5120/boards/cellvision.c
index 178c87ff9b..3e68fa52ab 100644
--- a/target/linux/adm5120/files/arch/mips/adm5120/boards/cellvision.c
+++ b/target/linux/adm5120/files/arch/mips/adm5120/boards/cellvision.c
@@ -120,6 +120,23 @@ static void __init cas7xx_setup(void)
/* TODO: setup mac address */
}
+static void __init nfs_setup(void)
+{
+ gpio_request(ADM5120_GPIO_PIN5, NULL); /* for flash A20 line */
+ gpio_direction_output(ADM5120_GPIO_PIN5, 0);
+
+ /* setup data for flash0 device */
+ adm5120_flash0_data.switch_bank = switch_bank_gpio5;
+ adm5120_flash0_data.nr_parts = ARRAY_SIZE(cas6xx_partitions);
+ adm5120_flash0_data.parts = cas6xx_partitions;
+
+ /* TODO: setup mac address */
+}
+
+unsigned char nfs_vlans[6] = { /* TODO: not tested */
+ 0x41, 0x42, 0x44, 0x48, 0x50, 0x00
+};
+
/*--------------------------------------------------------------------------*/
ADM5120_BOARD_START(CAS630, "Cellvision CAS-630/630W")
@@ -170,3 +187,12 @@ ADM5120_BOARD_START(CAS861, "Cellvision CAS-861/861W")
.devices = cas7xx_devices,
/* TODO: PCI IRQ map */
ADM5120_BOARD_END
+
+ADM5120_BOARD_START(NFS101U, "Cellvision NFS-101U/101WU")
+ .board_setup = nfs_setup,
+ .eth_num_ports = 5,
+ .eth_vlans = nfs_vlans,
+ .num_devices = ARRAY_SIZE(cas6xx_devices),
+ .devices = cas6xx_devices,
+ /* TODO: PCI IRQ map */
+ADM5120_BOARD_END
diff --git a/target/linux/adm5120/files/arch/mips/adm5120/prom.c b/target/linux/adm5120/files/arch/mips/adm5120/prom.c
index 786668b8d0..186b861b43 100644
--- a/target/linux/adm5120/files/arch/mips/adm5120/prom.c
+++ b/target/linux/adm5120/files/arch/mips/adm5120/prom.c
@@ -54,15 +54,18 @@ static struct board_desc common_boards[] __initdata = {
/* Cellvision/SparkLAN boards */
DEFBOARD("CAS-630", MACH_ADM5120_CAS630),
DEFBOARD("CAS-670", MACH_ADM5120_CAS670),
+ DEFBOARD("CAS-700", MACH_ADM5120_CAS700),
DEFBOARD("CAS-771", MACH_ADM5120_CAS771),
DEFBOARD("CAS-790", MACH_ADM5120_CAS790),
DEFBOARD("CAS-861", MACH_ADM5120_CAS861),
+ DEFBOARD("NFS-101U", MACH_ADM5120_NFS101U),
/* Compex boards */
DEFBOARD("WP54G-WRT", MACH_ADM5120_WP54G_WRT),
/* Edimax boards */
DEFBOARD("BR-6104K", MACH_ADM5120_BR6104K),
DEFBOARD("BR-6104KP", MACH_ADM5120_BR6104K),
DEFBOARD("BR-6104WG", MACH_ADM5120_BR61x4WG),
+ DEFBOARD("BR-6114WG", MACH_ADM5120_BR61x4WG),
/* Infineon boards */
DEFBOARD("EASY 5120P-ATA", MACH_ADM5120_EASY5120PATA),
DEFBOARD("EASY 5120-RT", MACH_ADM5120_EASY5120RT),