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