summaryrefslogtreecommitdiffstats
path: root/target/linux/adm5120-2.6/patches-2.6.22/001-adm5120.patch
blob: 14cb612b0884987d8566beef90d2ee6e00583dd6 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
Index: linux-2.6.22.1/arch/mips/Kconfig
===================================================================
--- linux-2.6.22.1.orig/arch/mips/Kconfig
+++ linux-2.6.22.1/arch/mips/Kconfig
@@ -15,6 +15,18 @@ choice
 	prompt "System type"
 	default SGI_IP22
 
+config MIPS_ADM5120
+	bool "Support for ADM5120 SoC"
+	select SYS_HAS_CPU_MIPS32_R1
+	select SYS_HAS_EARLY_PRINTK
+	select DMA_NONCOHERENT
+	select HW_HAS_PCI
+	select IRQ_CPU
+	select SYS_SUPPORTS_LITTLE_ENDIAN
+	select SYS_SUPPORTS_BIG_ENDIAN
+	select SYS_SUPPORTS_32BIT_KERNEL
+	select GENERIC_GPIO
+
 config MACH_ALCHEMY
 	bool "Alchemy processor based machines"
 
@@ -658,6 +670,7 @@ config TOSHIBA_RBTX4938
 
 endchoice
 
+source "arch/mips/adm5120/Kconfig"
 source "arch/mips/au1000/Kconfig"
 source "arch/mips/ddb5xxx/Kconfig"
 source "arch/mips/gt64120/ev64120/Kconfig"
Index: linux-2.6.22.1/arch/mips/Makefile
===================================================================
--- linux-2.6.22.1.orig/arch/mips/Makefile
+++ linux-2.6.22.1/arch/mips/Makefile
@@ -165,6 +165,16 @@ cflags-$(CONFIG_MACH_JAZZ)	+= -Iinclude/
 load-$(CONFIG_MACH_JAZZ)	+= 0xffffffff80080000
 
 #
+# ADMtek 5120
+#
+
+libs-$(CONFIG_MIPS_ADM5120)	+= arch/mips/adm5120/prom/
+core-$(CONFIG_MIPS_ADM5120)	+= arch/mips/adm5120/
+core-$(CONFIG_MIPS_ADM5120)	+= arch/mips/adm5120/boards/
+cflags-$(CONFIG_MIPS_ADM5120)	+= -Iinclude/asm-mips/mach-adm5120
+load-$(CONFIG_MIPS_ADM5120)	+= 0xffffffff80001000
+
+#
 # Common Alchemy Au1x00 stuff
 #
 core-$(CONFIG_SOC_AU1X00)	+= arch/mips/au1000/common/
Index: linux-2.6.22.1/include/asm-mips/bootinfo.h
===================================================================
--- linux-2.6.22.1.orig/include/asm-mips/bootinfo.h
+++ linux-2.6.22.1/include/asm-mips/bootinfo.h
@@ -213,6 +213,57 @@
 #define MACH_GROUP_NEC_EMMA2RH 25	/* NEC EMMA2RH (was 23)		*/
 #define  MACH_NEC_MARKEINS	0	/* NEC EMMA2RH Mark-eins	*/
 
+/*
+ * Valid machtype for group ADMtek ADM5120
+ */
+#define MACH_GROUP_ADM5120	26
+#define MACH_ADM5120_GENERIC	0	/* Generic board */
+#define MACH_ADM5120_WP54G_WRT	1	/* Compex WP54G-WRT */
+#define MACH_ADM5120_WP54G	2	/* Compex WP54G */
+#define MACH_ADM5120_WP54AG	3	/* Compex WP54AG */
+#define MACH_ADM5120_WPP54G	4	/* Compex WPP54G */
+#define MACH_ADM5120_WPP54AG	5	/* Compex WPP54AG */
+#define MACH_ADM5120_NP28G	6	/* Compex NP28G */
+#define MACH_ADM5120_NP28GHS	7	/* Compex NP28G HotSpot */
+#define MACH_ADM5120_NP27G	8	/* Compex NP27G */
+#define MACH_ADM5120_WP54Gv1C	9	/* Compex WP54G version 1C */
+#define MACH_ADM5120_RB_111	10	/* Mikrotik RouterBOARD 111 */
+#define MACH_ADM5120_RB_112	11	/* Mikrotik RouterBOARD 112 */
+#define MACH_ADM5120_RB_133	12	/* Mikrotik RouterBOARD 133 */
+#define MACH_ADM5120_RB_133C	13	/* Mikrotik RouterBOARD 133c */
+#define MACH_ADM5120_RB_150	14	/* Mikrotik RouterBOARD 150 */
+#define MACH_ADM5120_RB_153	15	/* Mikrotik RouterBOARD 153 */
+#define MACH_ADM5120_HS100	16	/* ZyXEL HomeSafe 100/100W */
+#define MACH_ADM5120_P334	17	/* ZyXEL Prestige 334 */
+#define MACH_ADM5120_P334U	18	/* ZyXEL Prestige 334U */
+#define MACH_ADM5120_P334W	19	/* ZyXEL Prestige 334W */
+#define MACH_ADM5120_P334WH	20	/* ZyXEL Prestige 334WH */
+#define MACH_ADM5120_P334WHD	21	/* ZyXEL Prestige 334WHD */
+#define MACH_ADM5120_P334WT	22	/* ZyXEL Prestige 334WT */
+#define MACH_ADM5120_P335	23	/* ZyXEL Prestige 335/335WT */
+#define MACH_ADM5120_P335PLUS	24	/* ZyXEL Prestige 335Plus */
+#define MACH_ADM5120_P335U	25	/* ZyXEL Prestige 335U */
+#define MACH_ADM5120_ES2108	26	/* ZyXEL Ethernet Switch 2108 */
+#define MACH_ADM5120_ES2108F	27	/* ZyXEL Ethernet Switch 2108-F */
+#define MACH_ADM5120_ES2108G	28	/* ZyXEL Ethernet Switch 2108-G */
+#define MACH_ADM5120_ES2108LC	29	/* ZyXEL Ethernet Switch 2108-LC */
+#define MACH_ADM5120_ES2108PWR	30	/* ZyXEL Ethernet Switch 2108-PWR */
+#define MACH_ADM5120_ES2024A	31	/* ZyXEL Ethernet Switch 2024A */
+#define MACH_ADM5120_ES2024PWR	32	/* ZyXEL Ethernet Switch 2024PWR */
+#define MACH_ADM5120_CAS630	33	/* Cellvision CAS-630/630W */
+#define MACH_ADM5120_CAS670	34	/* Cellvision CAS-670/670W */
+#define MACH_ADM5120_CAS700	36	/* Cellvision CAS-700/700W */
+#define MACH_ADM5120_CAS771	37	/* Cellvision CAS-771/771W */
+#define MACH_ADM5120_CAS790	38	/* Cellvision CAS-790 */
+#define MACH_ADM5120_CAS861	39	/* Cellvision CAS-861/861W */
+#define MACH_ADM5120_NFS101U	40	/* Cellvision NFS-101U/101WU */
+#define MACH_ADM5120_NFS202U	41	/* Cellvision NFS-202U/202WU */
+#define MACH_ADM5120_EASY5120PATA 42	/* Infineon EASY 5120P-ATA */
+#define MACH_ADM5120_EASY5120RT 43	/* Infineon EASY 5120-RT */
+#define MACH_ADM5120_EASY5120WVOIP 44	/* Infineon EASY 5120-WVoIP */
+#define MACH_ADM5120_EASY83000	45	/* Infineon EASY-83000 */
+#define MACH_ADM5120_BR6104K	46	/* Edimax BR-6104K */
+
 #define CL_SIZE			COMMAND_LINE_SIZE
 
 const char *get_system_type(void);