diff options
author | Gabor Juhos <juhosg@openwrt.org> | 2008-12-06 19:25:05 +0000 |
---|---|---|
committer | Gabor Juhos <juhosg@openwrt.org> | 2008-12-06 19:25:05 +0000 |
commit | a6191655617c73e49d70872eff298e7405a3ed27 (patch) | |
tree | 88582c8011589198659c866274ee7793c998fbb9 /target/linux/adm5120/files | |
parent | af5eb6003df24ed9baab2ba28cbc95dd6d454aab (diff) | |
download | upstream-a6191655617c73e49d70872eff298e7405a3ed27.tar.gz upstream-a6191655617c73e49d70872eff298e7405a3ed27.tar.bz2 upstream-a6191655617c73e49d70872eff298e7405a3ed27.zip |
use mips_machine code
SVN-Revision: 13532
Diffstat (limited to 'target/linux/adm5120/files')
35 files changed, 124 insertions, 186 deletions
diff --git a/target/linux/adm5120/files/arch/mips/adm5120/cellvision/cas-771.c b/target/linux/adm5120/files/arch/mips/adm5120/cellvision/cas-771.c index 26995bb0a1..5854f074a1 100644 --- a/target/linux/adm5120/files/arch/mips/adm5120/cellvision/cas-771.c +++ b/target/linux/adm5120/files/arch/mips/adm5120/cellvision/cas-771.c @@ -33,4 +33,4 @@ static void __init cas771_setup(void) adm5120_pci_set_irq_map(ARRAY_SIZE(cas771_pci_irqs), cas771_pci_irqs); } -ADM5120_BOARD(MACH_ADM5120_CAS771, "Cellvision CAS-771/771W", cas771_setup); +MIPS_MACHINE(MACH_ADM5120_CAS771, "Cellvision CAS-771/771W", cas771_setup); diff --git a/target/linux/adm5120/files/arch/mips/adm5120/cellvision/cellvision.c b/target/linux/adm5120/files/arch/mips/adm5120/cellvision/cellvision.c index 282c8c778c..f323a7b088 100644 --- a/target/linux/adm5120/files/arch/mips/adm5120/cellvision/cellvision.c +++ b/target/linux/adm5120/files/arch/mips/adm5120/cellvision/cellvision.c @@ -132,8 +132,8 @@ void __init cas6xx_setup(void) adm5120_add_device_switch(1, NULL); } -ADM5120_BOARD(MACH_ADM5120_CAS630, "Cellvision CAS-630/630W", cas6xx_setup); -ADM5120_BOARD(MACH_ADM5120_CAS670, "Cellvision CAS-670/670W", cas6xx_setup); +MIPS_MACHINE(MACH_ADM5120_CAS630, "Cellvision CAS-630/630W", cas6xx_setup); +MIPS_MACHINE(MACH_ADM5120_CAS670, "Cellvision CAS-670/670W", cas6xx_setup); #endif void __init cas7xx_setup(void) @@ -146,7 +146,7 @@ void __init cas7xx_setup(void) } #if 0 -ADM5120_BOARD(MACH_ADM5120_CAS700, "Cellvision CAS-700/700W", cas7xx_setup); -ADM5120_BOARD(MACH_ADM5120_CAS790, "Cellvision CAS-790", cas7xx_setup); -ADM5120_BOARD(MACH_ADM5120_CAS861, "Cellvision CAS-861/861W", cas7xx_setup); +MIPS_MACHINE(MACH_ADM5120_CAS700, "Cellvision CAS-700/700W", cas7xx_setup); +MIPS_MACHINE(MACH_ADM5120_CAS790, "Cellvision CAS-790", cas7xx_setup); +MIPS_MACHINE(MACH_ADM5120_CAS861, "Cellvision CAS-861/861W", cas7xx_setup); #endif diff --git a/target/linux/adm5120/files/arch/mips/adm5120/cellvision/cellvision.h b/target/linux/adm5120/files/arch/mips/adm5120/cellvision/cellvision.h index 175fbb249c..2b55ebf761 100644 --- a/target/linux/adm5120/files/arch/mips/adm5120/cellvision/cellvision.h +++ b/target/linux/adm5120/files/arch/mips/adm5120/cellvision/cellvision.h @@ -15,10 +15,9 @@ #include <linux/irq.h> #include <linux/etherdevice.h> -#include <asm/bootinfo.h> +#include <asm/mips_machine.h> #include <asm/mach-adm5120/adm5120_info.h> -#include <asm/mach-adm5120/adm5120_board.h> #include <asm/mach-adm5120/adm5120_platform.h> extern void cellvision_mac_setup(void) __init; diff --git a/target/linux/adm5120/files/arch/mips/adm5120/cellvision/nfs-101.c b/target/linux/adm5120/files/arch/mips/adm5120/cellvision/nfs-101.c index 3482e11bd2..1975736252 100644 --- a/target/linux/adm5120/files/arch/mips/adm5120/cellvision/nfs-101.c +++ b/target/linux/adm5120/files/arch/mips/adm5120/cellvision/nfs-101.c @@ -25,4 +25,4 @@ static void __init nfs101_setup(void) adm5120_add_device_switch(5, nfs101_vlans); } -ADM5120_BOARD(MACH_ADM5120_NFS101U, "Cellvision NFS-101U/101WU", nfs101_setup); +MIPS_MACHINE(MACH_ADM5120_NFS101U, "Cellvision NFS-101U/101WU", nfs101_setup); diff --git a/target/linux/adm5120/files/arch/mips/adm5120/common/Makefile b/target/linux/adm5120/files/arch/mips/adm5120/common/Makefile index 663fd21501..d24aa07889 100644 --- a/target/linux/adm5120/files/arch/mips/adm5120/common/Makefile +++ b/target/linux/adm5120/files/arch/mips/adm5120/common/Makefile @@ -2,5 +2,5 @@ # Makefile for the Infineon/ADMtek ADM5120 SoC specific parts of the kernel # -obj-y := adm5120.o setup.o prom.o irq.o memory.o board.o clock.o \ +obj-y := adm5120.o setup.o prom.o irq.o memory.o clock.o \ gpio.o platform.o diff --git a/target/linux/adm5120/files/arch/mips/adm5120/common/adm5120.c b/target/linux/adm5120/files/arch/mips/adm5120/common/adm5120.c index f227e871da..3b969ce6e8 100644 --- a/target/linux/adm5120/files/arch/mips/adm5120/common/adm5120.c +++ b/target/linux/adm5120/files/arch/mips/adm5120/common/adm5120.c @@ -12,7 +12,7 @@ #include <linux/init.h> #include <linux/io.h> -#include <asm/bootinfo.h> +//#include <asm/bootinfo.h> #include <asm/addrspace.h> #include <asm/mach-adm5120/adm5120_info.h> @@ -24,6 +24,7 @@ unsigned int adm5120_revision; unsigned int adm5120_package; unsigned int adm5120_nand_boot; unsigned long adm5120_speed; +unsigned long adm5120_mach_type; /* * CPU settings detection diff --git a/target/linux/adm5120/files/arch/mips/adm5120/common/board.c b/target/linux/adm5120/files/arch/mips/adm5120/common/board.c deleted file mode 100644 index be1fc9ab03..0000000000 --- a/target/linux/adm5120/files/arch/mips/adm5120/common/board.c +++ /dev/null @@ -1,91 +0,0 @@ -/* - * ADM5120 generic board code - * - * Copyright (C) 2007-2008 Gabor Juhos <juhosg@openwrt.org> - * - * This program is free software; you can redistribute it and/or modify it - * under the terms of the GNU General Public License version 2 as published - * by the Free Software Foundation. - * - */ - -#include <linux/init.h> -#include <linux/kernel.h> -#include <linux/list.h> -#include <linux/string.h> -#include <linux/device.h> -#include <linux/platform_device.h> - -#include <asm/bootinfo.h> - -#include <asm/mach-adm5120/adm5120_info.h> -#include <asm/mach-adm5120/adm5120_defs.h> -#include <asm/mach-adm5120/adm5120_board.h> -#include <asm/mach-adm5120/adm5120_platform.h> - -#define PFX "ADM5120: " - -static struct list_head adm5120_boards __initdata = - LIST_HEAD_INIT(adm5120_boards); - -static char adm5120_board_name[ADM5120_BOARD_NAMELEN] = "Unknown board"; - -const char *get_system_type(void) -{ - return adm5120_board_name; -} - -static struct adm5120_board * __init adm5120_board_find(unsigned long machtype) -{ - struct list_head *this; - - list_for_each(this, &adm5120_boards) { - struct adm5120_board *board; - - board = list_entry(this, struct adm5120_board, list); - if (board->mach_type == machtype) - return board; - } - - return NULL; -} - -static int __init adm5120_board_setup(void) -{ - struct adm5120_board *board; - - board = adm5120_board_find(mips_machtype); - if (board == NULL) - panic(PFX "no board registered for machtype %lu\n", - mips_machtype); - - if (board->name[0]) - strlcpy(adm5120_board_name, board->name, ADM5120_BOARD_NAMELEN); - - printk(KERN_INFO PFX "board is '%s'\n", adm5120_board_name); - - adm5120_gpio_init(); - - if (board->board_setup) - board->board_setup(); - - return 0; -} -arch_initcall(adm5120_board_setup); - -void __init adm5120_board_register(struct adm5120_board *board) -{ - list_add_tail(&board->list, &adm5120_boards); -} - -static void __init adm5120_generic_board_setup(void) -{ - adm5120_add_device_uart(0); - adm5120_add_device_uart(1); - - adm5120_add_device_flash(0); - adm5120_add_device_switch(6, NULL); -} - -ADM5120_BOARD(MACH_ADM5120_GENERIC, "Generic ADM5120 board", - adm5120_generic_board_setup); diff --git a/target/linux/adm5120/files/arch/mips/adm5120/common/prom.c b/target/linux/adm5120/files/arch/mips/adm5120/common/prom.c index 4c48dc0be2..ceab35d97c 100644 --- a/target/linux/adm5120/files/arch/mips/adm5120/common/prom.c +++ b/target/linux/adm5120/files/arch/mips/adm5120/common/prom.c @@ -15,8 +15,9 @@ #include <linux/mm.h> #include <linux/io.h> -#include <asm/bootinfo.h> #include <asm/addrspace.h> +#include <asm/bootinfo.h> +#include <asm/mips_machine.h> #include <asm/mach-adm5120/adm5120_info.h> #include <asm/mach-adm5120/adm5120_defs.h> @@ -203,35 +204,35 @@ static void __init prom_detect_machtype(void) { if (bootbase_present()) { adm5120_prom_type = ADM5120_PROM_BOOTBASE; - mips_machtype = detect_machtype_bootbase(); + adm5120_mach_type = detect_machtype_bootbase(); return; } if (cfe_present()) { adm5120_prom_type = ADM5120_PROM_CFE; - mips_machtype = detect_machtype_cfe(); + adm5120_mach_type = detect_machtype_cfe(); return; } if (myloader_present()) { adm5120_prom_type = ADM5120_PROM_MYLOADER; - mips_machtype = detect_machtype_myloader(); + adm5120_mach_type = detect_machtype_myloader(); return; } if (routerboot_present()) { adm5120_prom_type = ADM5120_PROM_ROUTERBOOT; - mips_machtype = detect_machtype_routerboot(); + adm5120_mach_type = detect_machtype_routerboot(); return; } if (generic_prom_present()) { adm5120_prom_type = ADM5120_PROM_GENERIC; - mips_machtype = detect_machtype_generic(); + adm5120_mach_type = detect_machtype_generic(); return; } - mips_machtype = MACH_ADM5120_GENERIC; + adm5120_mach_type = MACH_ADM5120_GENERIC; } /* TODO: this is an ugly hack for RouterBOARDS */ diff --git a/target/linux/adm5120/files/arch/mips/adm5120/common/setup.c b/target/linux/adm5120/files/arch/mips/adm5120/common/setup.c index 0a11774624..ef8cabaa39 100644 --- a/target/linux/adm5120/files/arch/mips/adm5120/common/setup.c +++ b/target/linux/adm5120/files/arch/mips/adm5120/common/setup.c @@ -23,11 +23,12 @@ #include <asm/reboot.h> #include <asm/time.h> +#include <asm/mips_machine.h> #include <asm/mach-adm5120/adm5120_info.h> #include <asm/mach-adm5120/adm5120_defs.h> #include <asm/mach-adm5120/adm5120_switch.h> -#include <asm/mach-adm5120/adm5120_board.h> +#include <asm/mach-adm5120/adm5120_platform.h> void (*adm5120_board_reset)(void); @@ -52,6 +53,11 @@ static void __init adm5120_report(void) printk(KERN_INFO "Prom : %s\n", prom_names[adm5120_prom_type]); } +const char *get_system_type(void) +{ + return mips_machine_name; +} + static void adm5120_restart(char *command) { /* TODO: stop switch before reset */ @@ -89,3 +95,25 @@ void __init plat_mem_setup(void) set_io_port_base(KSEG1); } + +static int __init adm5120_board_setup(void) +{ + adm5120_gpio_init(); + + mips_machine_setup(adm5120_mach_type); + + return 0; +} +arch_initcall(adm5120_board_setup); + +static void __init adm5120_generic_board_setup(void) +{ + adm5120_add_device_uart(0); + adm5120_add_device_uart(1); + + adm5120_add_device_flash(0); + adm5120_add_device_switch(6, NULL); +} + +MIPS_MACHINE(MACH_ADM5120_GENERIC, "Generic ADM5120 board", + adm5120_generic_board_setup); diff --git a/target/linux/adm5120/files/arch/mips/adm5120/compex/compex.h b/target/linux/adm5120/files/arch/mips/adm5120/compex/compex.h index 62425374ad..124e676971 100644 --- a/target/linux/adm5120/files/arch/mips/adm5120/compex/compex.h +++ b/target/linux/adm5120/files/arch/mips/adm5120/compex/compex.h @@ -15,10 +15,9 @@ #include <linux/irq.h> #include <linux/etherdevice.h> -#include <asm/bootinfo.h> +#include <asm/mips_machine.h> #include <asm/mach-adm5120/adm5120_info.h> -#include <asm/mach-adm5120/adm5120_board.h> #include <asm/mach-adm5120/adm5120_platform.h> extern void compex_generic_setup(void) __init; diff --git a/target/linux/adm5120/files/arch/mips/adm5120/compex/np27g.c b/target/linux/adm5120/files/arch/mips/adm5120/compex/np27g.c index edd980ed7d..8a70bf82ce 100644 --- a/target/linux/adm5120/files/arch/mips/adm5120/compex/np27g.c +++ b/target/linux/adm5120/files/arch/mips/adm5120/compex/np27g.c @@ -25,4 +25,4 @@ static void __init np27g_setup(void) /* TODO: add PCI IRQ map */ } -ADM5120_BOARD(MACH_ADM5120_NP27G, "Compex NetPassage 27G", np27g_setup); +MIPS_MACHINE(MACH_ADM5120_NP27G, "Compex NetPassage 27G", np27g_setup); diff --git a/target/linux/adm5120/files/arch/mips/adm5120/compex/np28g.c b/target/linux/adm5120/files/arch/mips/adm5120/compex/np28g.c index eba288fc66..f1f54abad0 100644 --- a/target/linux/adm5120/files/arch/mips/adm5120/compex/np28g.c +++ b/target/linux/adm5120/files/arch/mips/adm5120/compex/np28g.c @@ -60,4 +60,4 @@ static void __init np28g_setup(void) adm5120_pci_set_irq_map(ARRAY_SIZE(np28g_pci_irqs), np28g_pci_irqs); } -ADM5120_BOARD(MACH_ADM5120_NP28G, "Compex NetPassage 28G", np28g_setup); +MIPS_MACHINE(MACH_ADM5120_NP28G, "Compex NetPassage 28G", np28g_setup); diff --git a/target/linux/adm5120/files/arch/mips/adm5120/compex/wp54.c b/target/linux/adm5120/files/arch/mips/adm5120/compex/wp54.c index 86b9d681b3..d56656d503 100644 --- a/target/linux/adm5120/files/arch/mips/adm5120/compex/wp54.c +++ b/target/linux/adm5120/files/arch/mips/adm5120/compex/wp54.c @@ -79,7 +79,7 @@ static void __init wp54_setup(void) adm5120_pci_set_irq_map(ARRAY_SIZE(wp54_pci_irqs), wp54_pci_irqs); } -ADM5120_BOARD(MACH_ADM5120_WP54, "Compex WP54 family", wp54_setup); +MIPS_MACHINE(MACH_ADM5120_WP54, "Compex WP54 family", wp54_setup); static void __init wp54_wrt_setup(void) { @@ -91,4 +91,4 @@ static void __init wp54_wrt_setup(void) wp54_setup(); } -ADM5120_BOARD(MACH_ADM5120_WP54G_WRT, "Compex WP54G-WRT", wp54_wrt_setup); +MIPS_MACHINE(MACH_ADM5120_WP54G_WRT, "Compex WP54G-WRT", wp54_wrt_setup); diff --git a/target/linux/adm5120/files/arch/mips/adm5120/edimax/br-6104k.c b/target/linux/adm5120/files/arch/mips/adm5120/edimax/br-6104k.c index b0ed8fa373..e5ede5e55b 100644 --- a/target/linux/adm5120/files/arch/mips/adm5120/edimax/br-6104k.c +++ b/target/linux/adm5120/files/arch/mips/adm5120/edimax/br-6104k.c @@ -32,4 +32,4 @@ static void __init br6104k_setup(void) br6104k_gpio_leds); } -ADM5120_BOARD(MACH_ADM5120_BR6104K, "Edimax BR-6104K", br6104k_setup); +MIPS_MACHINE(MACH_ADM5120_BR6104K, "Edimax BR-6104K", br6104k_setup); diff --git a/target/linux/adm5120/files/arch/mips/adm5120/edimax/br-6104kp.c b/target/linux/adm5120/files/arch/mips/adm5120/edimax/br-6104kp.c index e0556b7416..dba2439d58 100644 --- a/target/linux/adm5120/files/arch/mips/adm5120/edimax/br-6104kp.c +++ b/target/linux/adm5120/files/arch/mips/adm5120/edimax/br-6104kp.c @@ -35,4 +35,4 @@ static void __init br6104kp_setup(void) adm5120_add_device_usb(); } -ADM5120_BOARD(MACH_ADM5120_BR6104KP, "Edimax BR-6104KP", br6104kp_setup); +MIPS_MACHINE(MACH_ADM5120_BR6104KP, "Edimax BR-6104KP", br6104kp_setup); diff --git a/target/linux/adm5120/files/arch/mips/adm5120/edimax/br-61x4wg.c b/target/linux/adm5120/files/arch/mips/adm5120/edimax/br-61x4wg.c index 98d64f1559..b9a208b603 100644 --- a/target/linux/adm5120/files/arch/mips/adm5120/edimax/br-61x4wg.c +++ b/target/linux/adm5120/files/arch/mips/adm5120/edimax/br-61x4wg.c @@ -39,4 +39,4 @@ static void __init br61x4wg_setup(void) br61x4wg_pci_irqs); } -ADM5120_BOARD(MACH_ADM5120_BR61X4WG, "Edimax BR-6104WG/6114WG", br61x4wg_setup); +MIPS_MACHINE(MACH_ADM5120_BR61X4WG, "Edimax BR-6104WG/6114WG", br61x4wg_setup); diff --git a/target/linux/adm5120/files/arch/mips/adm5120/edimax/br-61xx.h b/target/linux/adm5120/files/arch/mips/adm5120/edimax/br-61xx.h index f8ad137a49..c4a9eced56 100644 --- a/target/linux/adm5120/files/arch/mips/adm5120/edimax/br-61xx.h +++ b/target/linux/adm5120/files/arch/mips/adm5120/edimax/br-61xx.h @@ -15,9 +15,9 @@ #include <linux/irq.h> #include <linux/etherdevice.h> -#include <asm/bootinfo.h> +#include <asm/mips_machine.h> -#include <asm/mach-adm5120/adm5120_board.h> +#include <asm/mach-adm5120/adm5120_info.h> #include <asm/mach-adm5120/adm5120_platform.h> extern void __init br61xx_generic_setup(void) __init; diff --git a/target/linux/adm5120/files/arch/mips/adm5120/infineon/easy5120-rt.c b/target/linux/adm5120/files/arch/mips/adm5120/infineon/easy5120-rt.c index 618564e5c0..aa01f4e2e6 100644 --- a/target/linux/adm5120/files/arch/mips/adm5120/infineon/easy5120-rt.c +++ b/target/linux/adm5120/files/arch/mips/adm5120/infineon/easy5120-rt.c @@ -44,6 +44,6 @@ static void __init easy5120_rt_setup(void) easy5120_rt_pci_irqs); } -ADM5120_BOARD(MACH_ADM5120_EASY5120RT, +MIPS_MACHINE(MACH_ADM5120_EASY5120RT, "Infineon EASY 5120-RT Reference Board", easy5120_rt_setup); diff --git a/target/linux/adm5120/files/arch/mips/adm5120/infineon/easy5120-wvoip.c b/target/linux/adm5120/files/arch/mips/adm5120/infineon/easy5120-wvoip.c index f51f4634cb..bf8e15d37f 100644 --- a/target/linux/adm5120/files/arch/mips/adm5120/infineon/easy5120-wvoip.c +++ b/target/linux/adm5120/files/arch/mips/adm5120/infineon/easy5120-wvoip.c @@ -20,6 +20,6 @@ static void __init easy5120wvoip_setup(void) /* TODO: setup PCI IRQ map */ } -ADM5120_BOARD(MACH_ADM5120_EASY5120WVOIP, +MIPS_MACHINE(MACH_ADM5120_EASY5120WVOIP, "Infineon EASY 5120-WVoIP Reference Board", easy5120wvoip_setup); diff --git a/target/linux/adm5120/files/arch/mips/adm5120/infineon/easy5120p-ata.c b/target/linux/adm5120/files/arch/mips/adm5120/infineon/easy5120p-ata.c index 90c975bf09..fa9b0aca3c 100644 --- a/target/linux/adm5120/files/arch/mips/adm5120/infineon/easy5120p-ata.c +++ b/target/linux/adm5120/files/arch/mips/adm5120/infineon/easy5120p-ata.c @@ -18,6 +18,6 @@ static void __init easy5120pata_setup(void) adm5120_add_device_switch(6, NULL); } -ADM5120_BOARD(MACH_ADM5120_EASY5120PATA, +MIPS_MACHINE(MACH_ADM5120_EASY5120PATA, "Infineon EASY 5120P-ATA Reference Board", easy5120pata_setup); diff --git a/target/linux/adm5120/files/arch/mips/adm5120/infineon/easy83000.c b/target/linux/adm5120/files/arch/mips/adm5120/infineon/easy83000.c index dd14badd32..709d0a8230 100644 --- a/target/linux/adm5120/files/arch/mips/adm5120/infineon/easy83000.c +++ b/target/linux/adm5120/files/arch/mips/adm5120/infineon/easy83000.c @@ -19,6 +19,6 @@ static void __init easy83000_setup(void) /* TODO: add VINAX device */ } -ADM5120_BOARD(MACH_ADM5120_EASY83000, +MIPS_MACHINE(MACH_ADM5120_EASY83000, "Infineon EASY 83000 Reference Board", easy83000_setup); diff --git a/target/linux/adm5120/files/arch/mips/adm5120/infineon/infineon.h b/target/linux/adm5120/files/arch/mips/adm5120/infineon/infineon.h index 2e25a8f3de..a5f28b4fec 100644 --- a/target/linux/adm5120/files/arch/mips/adm5120/infineon/infineon.h +++ b/target/linux/adm5120/files/arch/mips/adm5120/infineon/infineon.h @@ -15,10 +15,9 @@ #include <linux/irq.h> #include <linux/etherdevice.h> -#include <asm/bootinfo.h> +#include <asm/mips_machine.h> #include <asm/mach-adm5120/adm5120_defs.h> -#include <asm/mach-adm5120/adm5120_board.h> #include <asm/mach-adm5120/adm5120_platform.h> #include <asm/mach-adm5120/adm5120_info.h> diff --git a/target/linux/adm5120/files/arch/mips/adm5120/mikrotik/rb-11x.c b/target/linux/adm5120/files/arch/mips/adm5120/mikrotik/rb-11x.c index e238c625af..b74c2ca0c9 100644 --- a/target/linux/adm5120/files/arch/mips/adm5120/mikrotik/rb-11x.c +++ b/target/linux/adm5120/files/arch/mips/adm5120/mikrotik/rb-11x.c @@ -32,4 +32,4 @@ static void __init rb11x_setup(void) rb11x_gpio_leds); } -ADM5120_BOARD(MACH_ADM5120_RB_11X, "Mikrotik RouterBOARD 111/112", rb11x_setup); +MIPS_MACHINE(MACH_ADM5120_RB_11X, "Mikrotik RouterBOARD 111/112", rb11x_setup); diff --git a/target/linux/adm5120/files/arch/mips/adm5120/mikrotik/rb-133.c b/target/linux/adm5120/files/arch/mips/adm5120/mikrotik/rb-133.c index 9000a20830..46fcc24331 100644 --- a/target/linux/adm5120/files/arch/mips/adm5120/mikrotik/rb-133.c +++ b/target/linux/adm5120/files/arch/mips/adm5120/mikrotik/rb-133.c @@ -37,4 +37,4 @@ static void __init rb133_setup(void) rb133_gpio_leds); } -ADM5120_BOARD(MACH_ADM5120_RB_133, "Mikrotik RouterBOARD 133", rb133_setup); +MIPS_MACHINE(MACH_ADM5120_RB_133, "Mikrotik RouterBOARD 133", rb133_setup); diff --git a/target/linux/adm5120/files/arch/mips/adm5120/mikrotik/rb-133c.c b/target/linux/adm5120/files/arch/mips/adm5120/mikrotik/rb-133c.c index 9003b868e3..9fcbeb7b9b 100644 --- a/target/linux/adm5120/files/arch/mips/adm5120/mikrotik/rb-133c.c +++ b/target/linux/adm5120/files/arch/mips/adm5120/mikrotik/rb-133c.c @@ -33,4 +33,4 @@ static void __init rb133c_setup(void) rb133c_gpio_leds); } -ADM5120_BOARD(MACH_ADM5120_RB_133C, "Mikrotik RouterBOARD 133C", rb133c_setup); +MIPS_MACHINE(MACH_ADM5120_RB_133C, "Mikrotik RouterBOARD 133C", rb133c_setup); diff --git a/target/linux/adm5120/files/arch/mips/adm5120/mikrotik/rb-150.c b/target/linux/adm5120/files/arch/mips/adm5120/mikrotik/rb-150.c index bba3be233f..8c6caf82fe 100644 --- a/target/linux/adm5120/files/arch/mips/adm5120/mikrotik/rb-150.c +++ b/target/linux/adm5120/files/arch/mips/adm5120/mikrotik/rb-150.c @@ -133,4 +133,4 @@ static void __init rb150_setup(void) adm5120_add_device_switch(5, rb150_vlans); } -ADM5120_BOARD(MACH_ADM5120_RB_150, "Mikrotik RouterBOARD 150", rb150_setup); +MIPS_MACHINE(MACH_ADM5120_RB_150, "Mikrotik RouterBOARD 150", rb150_setup); diff --git a/target/linux/adm5120/files/arch/mips/adm5120/mikrotik/rb-153.c b/target/linux/adm5120/files/arch/mips/adm5120/mikrotik/rb-153.c index ee38ff2735..3b520470a1 100644 --- a/target/linux/adm5120/files/arch/mips/adm5120/mikrotik/rb-153.c +++ b/target/linux/adm5120/files/arch/mips/adm5120/mikrotik/rb-153.c @@ -71,4 +71,4 @@ static void __init rb153_setup(void) adm5120_add_device_switch(5, rb153_vlans); } -ADM5120_BOARD(MACH_ADM5120_RB_153, "Mikrotik RouterBOARD 153", rb153_setup); +MIPS_MACHINE(MACH_ADM5120_RB_153, "Mikrotik RouterBOARD 153", rb153_setup); diff --git a/target/linux/adm5120/files/arch/mips/adm5120/mikrotik/rb-192.c b/target/linux/adm5120/files/arch/mips/adm5120/mikrotik/rb-192.c index 0821607c87..b9f47d3284 100644 --- a/target/linux/adm5120/files/arch/mips/adm5120/mikrotik/rb-192.c +++ b/target/linux/adm5120/files/arch/mips/adm5120/mikrotik/rb-192.c @@ -24,4 +24,4 @@ static void __init rb192_setup(void) adm5120_add_device_switch(6, rb192_vlans); } -ADM5120_BOARD(MACH_ADM5120_RB_192, "Mikrotik RouterBOARD 192", rb192_setup); +MIPS_MACHINE(MACH_ADM5120_RB_192, "Mikrotik RouterBOARD 192", rb192_setup); diff --git a/target/linux/adm5120/files/arch/mips/adm5120/mikrotik/rb-1xx.h b/target/linux/adm5120/files/arch/mips/adm5120/mikrotik/rb-1xx.h index 1577ed66d0..835110db51 100644 --- a/target/linux/adm5120/files/arch/mips/adm5120/mikrotik/rb-1xx.h +++ b/target/linux/adm5120/files/arch/mips/adm5120/mikrotik/rb-1xx.h @@ -16,11 +16,10 @@ #include <linux/irq.h> #include <linux/etherdevice.h> -#include <asm/bootinfo.h> +#include <asm/mips_machine.h> #include <asm/mach-adm5120/adm5120_defs.h> #include <asm/mach-adm5120/adm5120_nand.h> -#include <asm/mach-adm5120/adm5120_board.h> #include <asm/mach-adm5120/adm5120_platform.h> #include <asm/mach-adm5120/adm5120_info.h> diff --git a/target/linux/adm5120/files/arch/mips/adm5120/motorola/pmugw.c b/target/linux/adm5120/files/arch/mips/adm5120/motorola/pmugw.c index a74d37d4f3..d0f1416046 100644 --- a/target/linux/adm5120/files/arch/mips/adm5120/motorola/pmugw.c +++ b/target/linux/adm5120/files/arch/mips/adm5120/motorola/pmugw.c @@ -15,10 +15,9 @@ #include <linux/irq.h> #include <linux/etherdevice.h> -#include <asm/bootinfo.h> +#include <asm/mips_machine.h> #include <asm/mach-adm5120/adm5120_defs.h> -#include <asm/mach-adm5120/adm5120_board.h> #include <asm/mach-adm5120/adm5120_platform.h> #include <asm/mach-adm5120/adm5120_info.h> @@ -97,6 +96,6 @@ void __init pmugw_setup(void) adm5120_add_device_switch(5, pmugw_vlans); } -ADM5120_BOARD(MACH_ADM5120_PMUGW, +MIPS_MACHINE(MACH_ADM5120_PMUGW, "Motorola Powerline MU Gateway", pmugw_setup); diff --git a/target/linux/adm5120/files/arch/mips/adm5120/zyxel/p-334wt.c b/target/linux/adm5120/files/arch/mips/adm5120/zyxel/p-334wt.c index 6eb23dab9c..c08650db97 100644 --- a/target/linux/adm5120/files/arch/mips/adm5120/zyxel/p-334wt.c +++ b/target/linux/adm5120/files/arch/mips/adm5120/zyxel/p-334wt.c @@ -30,4 +30,4 @@ static void __init p334wt_setup(void) p334wt_gpio_leds); } -ADM5120_BOARD(MACH_ADM5120_P334WT, "ZyXEL Prestige 334WT", p334wt_setup); +MIPS_MACHINE(MACH_ADM5120_P334WT, "ZyXEL Prestige 334WT", p334wt_setup); diff --git a/target/linux/adm5120/files/arch/mips/adm5120/zyxel/p-335.c b/target/linux/adm5120/files/arch/mips/adm5120/zyxel/p-335.c index 0e6cdd96ef..0b56e1b772 100644 --- a/target/linux/adm5120/files/arch/mips/adm5120/zyxel/p-335.c +++ b/target/linux/adm5120/files/arch/mips/adm5120/zyxel/p-335.c @@ -17,4 +17,4 @@ static void __init p335_setup(void) adm5120_add_device_usb(); } -ADM5120_BOARD(MACH_ADM5120_P335, "ZyXEL Prestige 335/335WT", p335_setup); +MIPS_MACHINE(MACH_ADM5120_P335, "ZyXEL Prestige 335/335WT", p335_setup); diff --git a/target/linux/adm5120/files/arch/mips/adm5120/zyxel/p-33x.h b/target/linux/adm5120/files/arch/mips/adm5120/zyxel/p-33x.h index 0971cd5d26..8a7340cb5e 100644 --- a/target/linux/adm5120/files/arch/mips/adm5120/zyxel/p-33x.h +++ b/target/linux/adm5120/files/arch/mips/adm5120/zyxel/p-33x.h @@ -14,9 +14,9 @@ #include <linux/gpio.h> #include <linux/irq.h> -#include <asm/bootinfo.h> +#include <asm/mips_machine.h> -#include <asm/mach-adm5120/adm5120_board.h> +#include <asm/mach-adm5120/adm5120_info.h> #include <asm/mach-adm5120/adm5120_platform.h> extern void p33x_generic_setup(void) __init; diff --git a/target/linux/adm5120/files/include/asm-mips/mach-adm5120/adm5120_board.h b/target/linux/adm5120/files/include/asm-mips/mach-adm5120/adm5120_board.h deleted file mode 100644 index c45b53fc6c..0000000000 --- a/target/linux/adm5120/files/include/asm-mips/mach-adm5120/adm5120_board.h +++ /dev/null @@ -1,44 +0,0 @@ -/* - * ADM5120 board definitions - * - * Copyright (C) 2007-2008 Gabor Juhos <juhosg@openwrt.org> - * - * This program is free software; you can redistribute it and/or modify it - * under the terms of the GNU General Public License version 2 as published - * by the Free Software Foundation. - * - */ - -#ifndef _ASM_MIPS_MACH_ADM5120_BOARD_H -#define _ASM_MIPS_MACH_ADM5120_BOARD_H - -#include <linux/init.h> -#include <linux/list.h> - -#define ADM5120_BOARD_NAMELEN 64 - -struct adm5120_board { - unsigned long mach_type; - char name[ADM5120_BOARD_NAMELEN]; - - void (*board_setup)(void); - struct list_head list; -}; - -extern void adm5120_board_register(struct adm5120_board *) __init; - -#define ADM5120_BOARD(_type, _name, _setup) \ -static struct adm5120_board adm5120_board_##_type __initdata = { \ - .mach_type = _type, \ - .name = _name, \ - .board_setup = _setup, \ -}; \ - \ -static __init int adm5120_board_##_type##_register(void) \ -{ \ - adm5120_board_register(&adm5120_board_##_type); \ - return 0; \ -} \ -pure_initcall(adm5120_board_##_type##_register) - -#endif /* _ASM_MIPS_MACH_ADM5120_BOARD_H */ diff --git a/target/linux/adm5120/files/include/asm-mips/mach-adm5120/adm5120_info.h b/target/linux/adm5120/files/include/asm-mips/mach-adm5120/adm5120_info.h index d28ef800a5..d90d9d10d8 100644 --- a/target/linux/adm5120/files/include/asm-mips/mach-adm5120/adm5120_info.h +++ b/target/linux/adm5120/files/include/asm-mips/mach-adm5120/adm5120_info.h @@ -37,6 +37,54 @@ extern unsigned int adm5120_package; extern unsigned long adm5120_memsize; +extern unsigned long adm5120_mach_type; + +#define MACH_ADM5120_GENERIC 0 /* Generic board */ +#define MACH_ADM5120_WP54G_WRT 1 /* Compex WP54G-WRT */ +#define MACH_ADM5120_WP54 2 /* Compex WP54G/WP54AG/WPP54G/WPP54AG */ +#define MACH_ADM5120_NP28G 3 /* Compex NP28G */ +#define MACH_ADM5120_NP28GHS 4 /* Compex NP28G HotSpot */ +#define MACH_ADM5120_NP27G 5 /* Compex NP27G */ +#define MACH_ADM5120_WP54Gv1C 6 /* Compex WP54G version 1C */ +#define MACH_ADM5120_RB_11X 7 /* Mikrotik RouterBOARD 111/112 */ +#define MACH_ADM5120_RB_133 8 /* Mikrotik RouterBOARD 133 */ +#define MACH_ADM5120_RB_133C 9 /* Mikrotik RouterBOARD 133c */ +#define MACH_ADM5120_RB_150 10 /* Mikrotik RouterBOARD 150 */ +#define MACH_ADM5120_RB_153 11 /* Mikrotik RouterBOARD 153 */ +#define MACH_ADM5120_RB_192 12 /* Mikrotik RouterBOARD 192 */ +#define MACH_ADM5120_HS100 13 /* ZyXEL HomeSafe 100/100W */ +#define MACH_ADM5120_P334U 14 /* ZyXEL Prestige 334U */ +#define MACH_ADM5120_P334W 15 /* ZyXEL Prestige 334W */ +#define MACH_ADM5120_P334WH 16 /* ZyXEL Prestige 334WH */ +#define MACH_ADM5120_P334WHD 17 /* ZyXEL Prestige 334WHD */ +#define MACH_ADM5120_P334WT 18 /* ZyXEL Prestige 334WT */ +#define MACH_ADM5120_P335 19 /* ZyXEL Prestige 335/335WT */ +#define MACH_ADM5120_P335PLUS 20 /* ZyXEL Prestige 335Plus */ +#define MACH_ADM5120_P335U 21 /* ZyXEL Prestige 335U */ +#define MACH_ADM5120_ES2108 22 /* ZyXEL Ethernet Switch 2108 */ +#define MACH_ADM5120_ES2108F 23 /* ZyXEL Ethernet Switch 2108-F */ +#define MACH_ADM5120_ES2108G 24 /* ZyXEL Ethernet Switch 2108-G */ +#define MACH_ADM5120_ES2108LC 25 /* ZyXEL Ethernet Switch 2108-LC */ +#define MACH_ADM5120_ES2108PWR 26 /* ZyXEL Ethernet Switch 2108-PWR */ +#define MACH_ADM5120_ES2024A 27 /* ZyXEL Ethernet Switch 2024A */ +#define MACH_ADM5120_ES2024PWR 28 /* ZyXEL Ethernet Switch 2024PWR */ +#define MACH_ADM5120_CAS630 29 /* Cellvision CAS-630/630W */ +#define MACH_ADM5120_CAS670 30 /* Cellvision CAS-670/670W */ +#define MACH_ADM5120_CAS700 31 /* Cellvision CAS-700/700W */ +#define MACH_ADM5120_CAS771 32 /* Cellvision CAS-771/771W */ +#define MACH_ADM5120_CAS790 33 /* Cellvision CAS-790 */ +#define MACH_ADM5120_CAS861 34 /* Cellvision CAS-861/861W */ +#define MACH_ADM5120_NFS101U 35 /* Cellvision NFS-101U/101WU */ +#define MACH_ADM5120_NFS202U 36 /* Cellvision NFS-202U/202WU */ +#define MACH_ADM5120_EASY5120PATA 37 /* Infineon EASY 5120P-ATA */ +#define MACH_ADM5120_EASY5120RT 38 /* Infineon EASY 5120-RT */ +#define MACH_ADM5120_EASY5120WVOIP 39 /* Infineon EASY 5120-WVoIP */ +#define MACH_ADM5120_EASY83000 40 /* Infineon EASY-83000 */ +#define MACH_ADM5120_BR6104K 41 /* Edimax BR-6104K */ +#define MACH_ADM5120_BR6104KP 42 /* Edimax BR-6104KP */ +#define MACH_ADM5120_BR61X4WG 43 /* Edimax BR-6104Wg/BR-6114WG */ +#define MACH_ADM5120_PMUGW 44 /* Motorola Powerline MU Gateway */ + /* * TODO:remove adm5120_eth* variables when the switch driver will be * converted into a real platform driver |