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