From 4eb6771df2ebc4b233025c8bfc4d73ed219764f1 Mon Sep 17 00:00:00 2001
From: florian <florian@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Date: Mon, 2 Apr 2007 21:44:09 +0000
Subject: [PATCH] Add the infrastructure to detect RouterBOOT and use USB

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@6844 3c298f89-4303-0410-b956-a3cf2f4a3e73
---
 .../files/arch/mips/adm5120/adm5120_info.c          | 12 +++++++++++-
 .../include/asm-mips/mach-adm5120/adm5120_info.h    | 13 +++++++++++--
 2 files changed, 22 insertions(+), 3 deletions(-)

diff --git a/target/linux/adm5120-2.6/files/arch/mips/adm5120/adm5120_info.c b/target/linux/adm5120-2.6/files/arch/mips/adm5120/adm5120_info.c
index e3a3c805a..9e39730a4 100644
--- a/target/linux/adm5120-2.6/files/arch/mips/adm5120/adm5120_info.c
+++ b/target/linux/adm5120-2.6/files/arch/mips/adm5120/adm5120_info.c
@@ -37,7 +37,8 @@ static char *boot_loader_names[BOOT_LOADER_LAST+1] = {
 	[BOOT_LOADER_UNKNOWN]	= "Unknown",
 	[BOOT_LOADER_CFE]	= "CFE",
 	[BOOT_LOADER_UBOOT]	= "U-Boot",
-	[BOOT_LOADER_MYLOADER]	= "MyLoader"
+	[BOOT_LOADER_MYLOADER]	= "MyLoader",
+	[BOOT_LOADER_ROUTERBOOT]= "RouterBOOT"
 };
 
 /*
@@ -133,6 +134,12 @@ static int __init detect_myloader(void)
 	return 1;
 }
 
+static int __init detect_routerboot(void)
+{
+	/* FIXME: not yet implemented */
+	return 0;
+}
+
 static int __init detect_bootloader(void)
 {
 	if (detect_cfe())
@@ -144,6 +151,9 @@ static int __init detect_bootloader(void)
 	if (detect_myloader())
 		return BOOT_LOADER_MYLOADER;
 
+	if (detect_routerboot())
+		return BOOT_LOADER_ROUTERBOOT;
+
 	return BOOT_LOADER_UNKNOWN;
 }
 
diff --git a/target/linux/adm5120-2.6/files/include/asm-mips/mach-adm5120/adm5120_info.h b/target/linux/adm5120-2.6/files/include/asm-mips/mach-adm5120/adm5120_info.h
index 6d2c5c248..60d57311e 100644
--- a/target/linux/adm5120-2.6/files/include/asm-mips/mach-adm5120/adm5120_info.h
+++ b/target/linux/adm5120-2.6/files/include/asm-mips/mach-adm5120/adm5120_info.h
@@ -23,6 +23,8 @@ struct adm5120_info {
 	unsigned long cpu_speed;
 	unsigned int boot_loader;
 	unsigned int board_type;
+	unsigned int iface_num;
+	unsigned int has_usb;
 };
 
 #define CPU_SPEED_175		175000000
@@ -37,7 +39,8 @@ struct adm5120_info {
 #define BOOT_LOADER_CFE		1
 #define BOOT_LOADER_UBOOT	2
 #define BOOT_LOADER_MYLOADER	3
-#define BOOT_LOADER_LAST	3
+#define BOOT_LOADER_ROUTERBOOT	4
+#define BOOT_LOADER_LAST	4	
 
 #define BOARD_TYPE_UNKNOWN	0
 #define BOARD_TYPE_WP54G_WRT	1
@@ -49,7 +52,13 @@ struct adm5120_info {
 #define BOARD_TYPE_NP28GHS	7
 #define BOARD_TYPE_NP27G	8
 #define BOARD_TYPE_WP54Gv1C	9
-#define BOARD_TYPE_RB_1xx	10
+#define BOARD_TYPE_RB_111	10
+#define BOARD_TYPE_RB_112	11
+#define BOARD_TYPE_RB_133	12
+#define BOARD_TYPE_RB_133C	13
+#define BOARD_TYPE_RB_150	14
+#define BOARD_TYPE_RB_153	15
+#define BOART_TYPE_LAST		15
 
 extern struct adm5120_info adm5120_info;
 extern void adm5120_info_init(void);
-- 
2.20.1