diff options
author | juhosg <juhosg@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2008-01-29 08:37:40 +0000 |
---|---|---|
committer | juhosg <juhosg@3c298f89-4303-0410-b956-a3cf2f4a3e73> | 2008-01-29 08:37:40 +0000 |
commit | d974268ae2ada97790a37c5634a5d744a08941a4 (patch) | |
tree | fdc373687491e64b28a1aa88297521f5da56e0d3 /target | |
parent | 5c7b26807e41a49c65d84a2d42bdb98639b5fac4 (diff) |
[adm5120] add experimental support for the Cellvision NFS-101U device
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@10307 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'target')
-rw-r--r-- | target/linux/adm5120/files/arch/mips/adm5120/boards/cellvision.c | 26 | ||||
-rw-r--r-- | target/linux/adm5120/files/arch/mips/adm5120/prom.c | 3 |
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 178c87ff9..3e68fa52a 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 786668b8d..186b861b4 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), |