[kernel] refresh 2.6.27 patches based on -rc9
[openwrt.git] / target / linux / adm5120 / patches-2.6.27 / 001-adm5120.patch
1 --- a/arch/mips/Kconfig
2 +++ b/arch/mips/Kconfig
3 @@ -19,6 +19,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 ARCH_REQUIRE_GPIOLIB
19 +       select SWAP_IO_SPACE if CPU_BIG_ENDIAN
20 +
21  config MACH_ALCHEMY
22         bool "Alchemy processor based machines"
23  
24 @@ -598,6 +612,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,21 @@
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_MOTOROLA)    += arch/mips/adm5120/motorola/
48 +core-$(CONFIG_ADM5120_OEM_ZYXEL)       += arch/mips/adm5120/zyxel/
49 +cflags-$(CONFIG_ADM5120)               += -Iinclude/asm-mips/mach-adm5120
50 +load-$(CONFIG_ADM5120)                 += 0xffffffff80001000
51 +
52 +#
53  # Common Alchemy Au1x00 stuff
54  #
55  core-$(CONFIG_SOC_AU1X00)      += arch/mips/au1000/common/
56 --- a/include/asm-mips/bootinfo.h
57 +++ b/include/asm-mips/bootinfo.h
58 @@ -57,6 +57,55 @@
59  #define        MACH_MIKROTIK_RB532     0       /* Mikrotik RouterBoard 532     */
60  #define MACH_MIKROTIK_RB532A   1       /* Mikrotik RouterBoard 532A    */
61  
62 +/*
63 + * Valid machtype for group ADM5120
64 + */
65 +#define MACH_ADM5120_GENERIC   0       /* Generic board */
66 +#define MACH_ADM5120_WP54G_WRT 1       /* Compex WP54G-WRT */
67 +#define MACH_ADM5120_WP54      2       /* Compex WP54G/WP54AG/WPP54G/WPP54AG */
68 +#define MACH_ADM5120_NP28G     3       /* Compex NP28G */
69 +#define MACH_ADM5120_NP28GHS   4       /* Compex NP28G HotSpot */
70 +#define MACH_ADM5120_NP27G     5       /* Compex NP27G */
71 +#define MACH_ADM5120_WP54Gv1C  6       /* Compex WP54G version 1C */
72 +#define MACH_ADM5120_RB_11X    7       /* Mikrotik RouterBOARD 111/112 */
73 +#define MACH_ADM5120_RB_133    8       /* Mikrotik RouterBOARD 133 */
74 +#define MACH_ADM5120_RB_133C   9       /* Mikrotik RouterBOARD 133c */
75 +#define MACH_ADM5120_RB_150    10      /* Mikrotik RouterBOARD 150 */
76 +#define MACH_ADM5120_RB_153    11      /* Mikrotik RouterBOARD 153 */
77 +#define MACH_ADM5120_RB_192    12      /* Mikrotik RouterBOARD 192 */
78 +#define MACH_ADM5120_HS100     13      /* ZyXEL HomeSafe 100/100W */
79 +#define MACH_ADM5120_P334U     14      /* ZyXEL Prestige 334U */
80 +#define MACH_ADM5120_P334W     15      /* ZyXEL Prestige 334W */
81 +#define MACH_ADM5120_P334WH    16      /* ZyXEL Prestige 334WH */
82 +#define MACH_ADM5120_P334WHD   17      /* ZyXEL Prestige 334WHD */
83 +#define MACH_ADM5120_P334WT    18      /* ZyXEL Prestige 334WT */
84 +#define MACH_ADM5120_P335      19      /* ZyXEL Prestige 335/335WT */
85 +#define MACH_ADM5120_P335PLUS  20      /* ZyXEL Prestige 335Plus */
86 +#define MACH_ADM5120_P335U     21      /* ZyXEL Prestige 335U */
87 +#define MACH_ADM5120_ES2108    22      /* ZyXEL Ethernet Switch 2108 */
88 +#define MACH_ADM5120_ES2108F   23      /* ZyXEL Ethernet Switch 2108-F */
89 +#define MACH_ADM5120_ES2108G   24      /* ZyXEL Ethernet Switch 2108-G */
90 +#define MACH_ADM5120_ES2108LC  25      /* ZyXEL Ethernet Switch 2108-LC */
91 +#define MACH_ADM5120_ES2108PWR 26      /* ZyXEL Ethernet Switch 2108-PWR */
92 +#define MACH_ADM5120_ES2024A   27      /* ZyXEL Ethernet Switch 2024A */
93 +#define MACH_ADM5120_ES2024PWR 28      /* ZyXEL Ethernet Switch 2024PWR */
94 +#define MACH_ADM5120_CAS630    29      /* Cellvision CAS-630/630W */
95 +#define MACH_ADM5120_CAS670    30      /* Cellvision CAS-670/670W */
96 +#define MACH_ADM5120_CAS700    31      /* Cellvision CAS-700/700W */
97 +#define MACH_ADM5120_CAS771    32      /* Cellvision CAS-771/771W */
98 +#define MACH_ADM5120_CAS790    33      /* Cellvision CAS-790 */
99 +#define MACH_ADM5120_CAS861    34      /* Cellvision CAS-861/861W */
100 +#define MACH_ADM5120_NFS101U   35      /* Cellvision NFS-101U/101WU */
101 +#define MACH_ADM5120_NFS202U   36      /* Cellvision NFS-202U/202WU */
102 +#define MACH_ADM5120_EASY5120PATA 37   /* Infineon EASY 5120P-ATA */
103 +#define MACH_ADM5120_EASY5120RT 38     /* Infineon EASY 5120-RT */
104 +#define MACH_ADM5120_EASY5120WVOIP 39  /* Infineon EASY 5120-WVoIP */
105 +#define MACH_ADM5120_EASY83000 40      /* Infineon EASY-83000 */
106 +#define MACH_ADM5120_BR6104K   41      /* Edimax BR-6104K */
107 +#define MACH_ADM5120_BR6104KP  42      /* Edimax BR-6104KP */
108 +#define MACH_ADM5120_BR61X4WG  43      /* Edimax BR-6104Wg/BR-6114WG */
109 +#define MACH_ADM5120_PMUGW     44      /* Motorola Powerline MU Gateway */
110 +
111  #define CL_SIZE                        COMMAND_LINE_SIZE
112  
113  extern char *system_type;