60d2fe7372acab51c86ce84b2cd28c48efc00bd5
[openwrt/svn-archive/archive.git] / target / linux / ifxmips / patches / 100-board.patch
1 Index: linux-2.6.25.4/arch/mips/Kconfig
2 ===================================================================
3 --- linux-2.6.25.4.orig/arch/mips/Kconfig
4 +++ linux-2.6.25.4/arch/mips/Kconfig
5 @@ -78,6 +78,21 @@ config MIPS_COBALT
6 select SYS_SUPPORTS_LITTLE_ENDIAN
7 select GENERIC_HARDIRQS_NO__DO_IRQ
8
9 +config IFXMIPS
10 + bool "IFXMips support"
11 + select DMA_NONCOHERENT
12 + select IRQ_CPU
13 + select CEVT_R4K
14 + select CSRC_R4K
15 + select SYS_HAS_CPU_MIPS32_R1
16 + select HAVE_STD_PC_SERIAL_PORT
17 + select SYS_SUPPORTS_BIG_ENDIAN
18 + select SYS_SUPPORTS_32BIT_KERNEL
19 + select SYS_HAS_EARLY_PRINTK
20 + select HW_HAS_PCI
21 + select GENERIC_GPIO
22 + select SWAP_IO_SPACE
23 +
24 config MACH_DECSTATION
25 bool "DECstations"
26 select BOOT_ELF32
27 @@ -693,6 +706,7 @@ source "arch/mips/sibyte/Kconfig"
28 source "arch/mips/tx4927/Kconfig"
29 source "arch/mips/tx4938/Kconfig"
30 source "arch/mips/vr41xx/Kconfig"
31 +source "arch/mips/ifxmips/Kconfig"
32
33 endmenu
34
35 Index: linux-2.6.25.4/arch/mips/Makefile
36 ===================================================================
37 --- linux-2.6.25.4.orig/arch/mips/Makefile
38 +++ linux-2.6.25.4/arch/mips/Makefile
39 @@ -282,6 +282,13 @@ core-$(CONFIG_MIPS_COBALT) += arch/mips/
40 cflags-$(CONFIG_MIPS_COBALT) += -Iinclude/asm-mips/mach-cobalt
41 load-$(CONFIG_MIPS_COBALT) += 0xffffffff80080000
42
43 +#
44 +# Infineon IFXMIPS
45 +#
46 +core-$(CONFIG_IFXMIPS) += arch/mips/ifxmips/
47 +cflags-$(CONFIG_IFXMIPS) += -Iinclude/asm-mips/mach-ifxmips
48 +load-$(CONFIG_IFXMIPS) += 0xffffffff80002000
49 +
50 #
51 # DECstation family
52 #
53 Index: linux-2.6.25.4/include/asm-mips/bootinfo.h
54 ===================================================================
55 --- linux-2.6.25.4.orig/include/asm-mips/bootinfo.h
56 +++ linux-2.6.25.4/include/asm-mips/bootinfo.h
57 @@ -94,6 +94,12 @@
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 IFXMIPS
63 + */
64 +#define MACH_GROUP_IFXMIPS 29
65 +#define MACH_INFINEON_IFXMIPS 0
66 +
67 #define CL_SIZE COMMAND_LINE_SIZE
68
69 extern char *system_type;
70 Index: linux-2.6.25.4/arch/mips/kernel/traps.c
71 ===================================================================
72 --- linux-2.6.25.4.orig/arch/mips/kernel/traps.c
73 +++ linux-2.6.25.4/arch/mips/kernel/traps.c
74 @@ -1379,6 +1379,7 @@ void __cpuinit per_cpu_trap_init(void)
75 */
76 if (cpu_has_mips_r2) {
77 cp0_compare_irq = (read_c0_intctl() >> 29) & 7;
78 + cp0_compare_irq = CP0_LEGACY_COMPARE_IRQ;
79 cp0_perfcount_irq = (read_c0_intctl() >> 26) & 7;
80 if (cp0_perfcount_irq == cp0_compare_irq)
81 cp0_perfcount_irq = -1;