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