* bump kernel to 2.6.35.8 * merge arcadyn mach files * fixes ar9 * adds hack for tapi drivers
SVN-Revision: 23836
This commit is contained in:
35
target/linux/ifxmips/patches/000-mips-bad-intctl.patch
Normal file
35
target/linux/ifxmips/patches/000-mips-bad-intctl.patch
Normal file
@@ -0,0 +1,35 @@
|
||||
--- a/arch/mips/kernel/traps.c
|
||||
+++ b/arch/mips/kernel/traps.c
|
||||
@@ -1496,7 +1496,18 @@ void __cpuinit per_cpu_trap_init(void)
|
||||
if (cpu_has_mips_r2) {
|
||||
cp0_compare_irq_shift = CAUSEB_TI - CAUSEB_IP;
|
||||
cp0_compare_irq = (read_c0_intctl() >> INTCTLB_IPTI) & 7;
|
||||
+
|
||||
+ if (!cp0_compare_irq)
|
||||
+ cp0_compare_irq = CP0_LEGACY_COMPARE_IRQ;
|
||||
+
|
||||
cp0_perfcount_irq = (read_c0_intctl() >> INTCTLB_IPPCI) & 7;
|
||||
+
|
||||
+ if (!cp0_perfcount_irq)
|
||||
+ cp0_perfcount_irq = CP0_LEGACY_PERFCNT_IRQ;
|
||||
+
|
||||
+ if (arch_fixup_c0_irqs)
|
||||
+ arch_fixup_c0_irqs();
|
||||
+
|
||||
if (cp0_perfcount_irq == cp0_compare_irq)
|
||||
cp0_perfcount_irq = -1;
|
||||
} else {
|
||||
--- a/arch/mips/include/asm/irq.h
|
||||
+++ b/arch/mips/include/asm/irq.h
|
||||
@@ -133,9 +133,11 @@ extern void free_irqno(unsigned int irq)
|
||||
* IE7. Since R2 their number has to be read from the c0_intctl register.
|
||||
*/
|
||||
#define CP0_LEGACY_COMPARE_IRQ 7
|
||||
+#define CP0_LEGACY_PERFCNT_IRQ 7
|
||||
|
||||
extern int cp0_compare_irq;
|
||||
extern int cp0_compare_irq_shift;
|
||||
extern int cp0_perfcount_irq;
|
||||
+extern void __weak arch_fixup_c0_irqs(void);
|
||||
|
||||
#endif /* _ASM_IRQ_H */
|
||||
@@ -0,0 +1,33 @@
|
||||
--- a/arch/mips/kernel/cevt-r4k.c
|
||||
+++ b/arch/mips/kernel/cevt-r4k.c
|
||||
@@ -22,6 +22,22 @@
|
||||
|
||||
#ifndef CONFIG_MIPS_MT_SMTC
|
||||
|
||||
+/*
|
||||
+ * Compare interrupt can be routed and latched outside the core,
|
||||
+ * so a single execution hazard barrier may not be enough to give
|
||||
+ * it time to clear as seen in the Cause register. 4 time the
|
||||
+ * pipeline depth seems reasonably conservative, and empirically
|
||||
+ * works better in configurations with high CPU/bus clock ratios.
|
||||
+ */
|
||||
+
|
||||
+#define compare_change_hazard() \
|
||||
+ do { \
|
||||
+ irq_disable_hazard(); \
|
||||
+ irq_disable_hazard(); \
|
||||
+ irq_disable_hazard(); \
|
||||
+ irq_disable_hazard(); \
|
||||
+ } while (0)
|
||||
+
|
||||
static int mips_next_event(unsigned long delta,
|
||||
struct clock_event_device *evt)
|
||||
{
|
||||
@@ -31,6 +47,7 @@ static int mips_next_event(unsigned long
|
||||
cnt = read_c0_count();
|
||||
cnt += delta;
|
||||
write_c0_compare(cnt);
|
||||
+ compare_change_hazard();
|
||||
res = ((int)(read_c0_count() - cnt) > 0) ? -ETIME : 0;
|
||||
return res;
|
||||
}
|
||||
12
target/linux/ifxmips/patches/020-genirq_fix.patch
Normal file
12
target/linux/ifxmips/patches/020-genirq_fix.patch
Normal file
@@ -0,0 +1,12 @@
|
||||
--- a/kernel/irq/chip.c
|
||||
+++ b/kernel/irq/chip.c
|
||||
@@ -650,6 +650,9 @@ handle_percpu_irq(unsigned int irq, stru
|
||||
|
||||
kstat_incr_irqs_this_cpu(irq, desc);
|
||||
|
||||
+ if (unlikely(!desc->action || (desc->status & IRQ_DISABLED)))
|
||||
+ return;
|
||||
+
|
||||
if (desc->chip->ack)
|
||||
desc->chip->ack(irq);
|
||||
|
||||
62
target/linux/ifxmips/patches/100-board.patch
Normal file
62
target/linux/ifxmips/patches/100-board.patch
Normal file
@@ -0,0 +1,62 @@
|
||||
Index: linux-2.6.35.4/arch/mips/Kconfig
|
||||
===================================================================
|
||||
--- linux-2.6.35.4.orig/arch/mips/Kconfig 2010-09-23 20:41:50.000000000 +0200
|
||||
+++ linux-2.6.35.4/arch/mips/Kconfig 2010-09-23 20:41:52.000000000 +0200
|
||||
@@ -139,6 +139,9 @@
|
||||
|
||||
otherwise choose R3000.
|
||||
|
||||
+config IFXMIPS
|
||||
+ bool "Infineon MIPS"
|
||||
+
|
||||
config MACH_JAZZ
|
||||
bool "Jazz family of machines"
|
||||
select ARC
|
||||
@@ -695,6 +698,7 @@
|
||||
source "arch/mips/vr41xx/Kconfig"
|
||||
source "arch/mips/cavium-octeon/Kconfig"
|
||||
source "arch/mips/loongson/Kconfig"
|
||||
+source "arch/mips/ifxmips/Kconfig"
|
||||
|
||||
endmenu
|
||||
|
||||
Index: linux-2.6.35.4/arch/mips/Makefile
|
||||
===================================================================
|
||||
--- linux-2.6.35.4.orig/arch/mips/Makefile 2010-09-23 20:41:50.000000000 +0200
|
||||
+++ linux-2.6.35.4/arch/mips/Makefile 2010-09-23 22:41:58.000000000 +0200
|
||||
@@ -339,6 +339,22 @@
|
||||
load-$(CONFIG_MIPS_COBALT) += 0xffffffff80080000
|
||||
|
||||
#
|
||||
+# Infineon IFXMIPS
|
||||
+#
|
||||
+core-$(CONFIG_IFXMIPS) += arch/mips/ifxmips/common/
|
||||
+cflags-$(CONFIG_IFXMIPS) += -I$(srctree)/arch/mips/include/asm/mach-ifxmips
|
||||
+
|
||||
+core-$(CONFIG_IFXMIPS_DANUBE) += arch/mips/ifxmips/danube/
|
||||
+cflags-$(CONFIG_IFXMIPS_DANUBE) += -I$(srctree)/arch/mips/include/asm/mach-ifxmips/danube/
|
||||
+load-$(CONFIG_IFXMIPS_DANUBE) += 0xffffffff80002000
|
||||
+
|
||||
+core-$(CONFIG_IFXMIPS_AR9) += arch/mips/ifxmips/ar9/
|
||||
+cflags-$(CONFIG_IFXMIPS_AR9) += -I$(srctree)/arch/mips/include/asm/mach-ifxmips/ar9/
|
||||
+load-$(CONFIG_IFXMIPS_AR9) += 0xffffffff80002000
|
||||
+
|
||||
+core-$(CONFIG_IFXMIPS_COMPAT) += arch/mips/ifxmips/compat/
|
||||
+
|
||||
+#
|
||||
# DECstation family
|
||||
#
|
||||
core-$(CONFIG_MACH_DECSTATION) += arch/mips/dec/
|
||||
Index: linux-2.6.35.4/arch/mips/pci/Makefile
|
||||
===================================================================
|
||||
--- linux-2.6.35.4.orig/arch/mips/pci/Makefile 2010-08-27 01:47:12.000000000 +0200
|
||||
+++ linux-2.6.35.4/arch/mips/pci/Makefile 2010-09-23 20:41:52.000000000 +0200
|
||||
@@ -55,7 +55,7 @@
|
||||
obj-$(CONFIG_WR_PPMC) += fixup-wrppmc.o
|
||||
obj-$(CONFIG_MIKROTIK_RB532) += pci-rc32434.o ops-rc32434.o fixup-rc32434.o
|
||||
obj-$(CONFIG_CPU_CAVIUM_OCTEON) += pci-octeon.o pcie-octeon.o
|
||||
-
|
||||
+obj-$(CONFIG_IFXMIPS) += pci-ifxmips.o ops-ifxmips.o
|
||||
ifdef CONFIG_PCI_MSI
|
||||
obj-$(CONFIG_CPU_CAVIUM_OCTEON) += msi-octeon.o
|
||||
endif
|
||||
141
target/linux/ifxmips/patches/110-drivers.patch
Normal file
141
target/linux/ifxmips/patches/110-drivers.patch
Normal file
@@ -0,0 +1,141 @@
|
||||
Index: linux-2.6.35.8/drivers/serial/Kconfig
|
||||
===================================================================
|
||||
--- linux-2.6.35.8.orig/drivers/serial/Kconfig 2010-10-29 06:52:43.000000000 +0200
|
||||
+++ linux-2.6.35.8/drivers/serial/Kconfig 2010-11-01 11:34:31.000000000 +0100
|
||||
@@ -1397,6 +1397,14 @@
|
||||
help
|
||||
Support for Console on the NWP serial ports.
|
||||
|
||||
+config SERIAL_IFXMIPS
|
||||
+ bool "IFXMips serial driver"
|
||||
+ depends on IFXMIPS
|
||||
+ select SERIAL_CORE
|
||||
+ select SERIAL_CORE_CONSOLE
|
||||
+ help
|
||||
+ Driver for the ifxmipss built in ASC hardware
|
||||
+
|
||||
config SERIAL_QE
|
||||
tristate "Freescale QUICC Engine serial port support"
|
||||
depends on QUICC_ENGINE
|
||||
Index: linux-2.6.35.8/drivers/serial/Makefile
|
||||
===================================================================
|
||||
--- linux-2.6.35.8.orig/drivers/serial/Makefile 2010-10-29 06:52:43.000000000 +0200
|
||||
+++ linux-2.6.35.8/drivers/serial/Makefile 2010-11-01 11:34:55.000000000 +0100
|
||||
@@ -84,3 +84,4 @@
|
||||
obj-$(CONFIG_SERIAL_GRLIB_GAISLER_APBUART) += apbuart.o
|
||||
obj-$(CONFIG_SERIAL_ALTERA_JTAGUART) += altera_jtaguart.o
|
||||
obj-$(CONFIG_SERIAL_ALTERA_UART) += altera_uart.o
|
||||
+obj-$(CONFIG_SERIAL_IFXMIPS) += ifxmips.o
|
||||
Index: linux-2.6.35.8/drivers/net/Kconfig
|
||||
===================================================================
|
||||
--- linux-2.6.35.8.orig/drivers/net/Kconfig 2010-10-29 06:52:43.000000000 +0200
|
||||
+++ linux-2.6.35.8/drivers/net/Kconfig 2010-11-01 11:34:31.000000000 +0100
|
||||
@@ -232,6 +232,12 @@
|
||||
|
||||
source "drivers/net/arm/Kconfig"
|
||||
|
||||
+config IFXMIPS_MII0
|
||||
+ tristate "Infineon IFXMips eth0 driver"
|
||||
+ depends on IFXMIPS
|
||||
+ help
|
||||
+ Support for the MII0 inside the IFXMips SOC
|
||||
+
|
||||
config AX88796
|
||||
tristate "ASIX AX88796 NE2000 clone support"
|
||||
depends on ARM || MIPS || SUPERH
|
||||
Index: linux-2.6.35.8/drivers/net/Makefile
|
||||
===================================================================
|
||||
--- linux-2.6.35.8.orig/drivers/net/Makefile 2010-10-29 06:52:43.000000000 +0200
|
||||
+++ linux-2.6.35.8/drivers/net/Makefile 2010-11-01 11:35:13.000000000 +0100
|
||||
@@ -252,6 +252,7 @@
|
||||
obj-$(CONFIG_ENC28J60) += enc28j60.o
|
||||
obj-$(CONFIG_ETHOC) += ethoc.o
|
||||
obj-$(CONFIG_GRETH) += greth.o
|
||||
+obj-$(CONFIG_IFXMIPS_MII0) += ifxmips.o
|
||||
|
||||
obj-$(CONFIG_XTENSA_XT2000_SONIC) += xtsonic.o
|
||||
|
||||
Index: linux-2.6.35.8/drivers/mtd/maps/Kconfig
|
||||
===================================================================
|
||||
--- linux-2.6.35.8.orig/drivers/mtd/maps/Kconfig 2010-10-29 06:52:43.000000000 +0200
|
||||
+++ linux-2.6.35.8/drivers/mtd/maps/Kconfig 2010-11-01 11:34:31.000000000 +0100
|
||||
@@ -251,6 +251,12 @@
|
||||
help
|
||||
Support for flash chips on NETtel/SecureEdge/SnapGear boards.
|
||||
|
||||
+config MTD_IFXMIPS
|
||||
+ tristate "IFXMIPS MTD support"
|
||||
+ depends on IFXMIPS
|
||||
+ help
|
||||
+ Flash memory access on AMD Alchemy Pb/Db/RDK Reference Boards
|
||||
+
|
||||
config MTD_DILNETPC
|
||||
tristate "CFI Flash device mapped on DIL/Net PC"
|
||||
depends on X86 && MTD_CONCAT && MTD_PARTITIONS && MTD_CFI_INTELEXT && BROKEN
|
||||
Index: linux-2.6.35.8/drivers/mtd/maps/Makefile
|
||||
===================================================================
|
||||
--- linux-2.6.35.8.orig/drivers/mtd/maps/Makefile 2010-10-29 06:52:43.000000000 +0200
|
||||
+++ linux-2.6.35.8/drivers/mtd/maps/Makefile 2010-11-01 11:34:31.000000000 +0100
|
||||
@@ -59,3 +59,4 @@
|
||||
obj-$(CONFIG_MTD_RBTX4939) += rbtx4939-flash.o
|
||||
obj-$(CONFIG_MTD_VMU) += vmu-flash.o
|
||||
obj-$(CONFIG_MTD_GPIO_ADDR) += gpio-addr-flash.o
|
||||
+obj-$(CONFIG_MTD_IFXMIPS) += ifxmips.o
|
||||
Index: linux-2.6.35.8/drivers/watchdog/Kconfig
|
||||
===================================================================
|
||||
--- linux-2.6.35.8.orig/drivers/watchdog/Kconfig 2010-10-29 06:52:43.000000000 +0200
|
||||
+++ linux-2.6.35.8/drivers/watchdog/Kconfig 2010-11-01 11:34:31.000000000 +0100
|
||||
@@ -875,6 +875,12 @@
|
||||
help
|
||||
Hardware driver for the built-in watchdog timer on TXx9 MIPS SoCs.
|
||||
|
||||
+config IFXMIPS_WDT
|
||||
+ bool "IFXMips watchdog"
|
||||
+ depends on IFXMIPS
|
||||
+ help
|
||||
+ Hardware driver for the IFXMIPS Watchdog Timer.
|
||||
+
|
||||
# PARISC Architecture
|
||||
|
||||
# POWERPC Architecture
|
||||
Index: linux-2.6.35.8/drivers/watchdog/Makefile
|
||||
===================================================================
|
||||
--- linux-2.6.35.8.orig/drivers/watchdog/Makefile 2010-10-29 06:52:43.000000000 +0200
|
||||
+++ linux-2.6.35.8/drivers/watchdog/Makefile 2010-11-01 11:34:31.000000000 +0100
|
||||
@@ -114,6 +114,7 @@
|
||||
obj-$(CONFIG_SIBYTE_WDOG) += sb_wdog.o
|
||||
obj-$(CONFIG_AR7_WDT) += ar7_wdt.o
|
||||
obj-$(CONFIG_TXX9_WDT) += txx9wdt.o
|
||||
+obj-$(CONFIG_IFXMIPS_WDT) += ifxmips.o
|
||||
|
||||
# PARISC Architecture
|
||||
|
||||
Index: linux-2.6.35.8/drivers/leds/Kconfig
|
||||
===================================================================
|
||||
--- linux-2.6.35.8.orig/drivers/leds/Kconfig 2010-11-01 11:19:33.000000000 +0100
|
||||
+++ linux-2.6.35.8/drivers/leds/Kconfig 2010-11-01 11:34:31.000000000 +0100
|
||||
@@ -311,6 +311,12 @@
|
||||
|
||||
if LEDS_TRIGGERS
|
||||
|
||||
+config LEDS_IFXMIPS
|
||||
+ tristate "LED Support for IFXMIPS LEDs"
|
||||
+ depends on LEDS_CLASS && IFXMIPS
|
||||
+ help
|
||||
+ This option enables support for the CM-X270 LEDs.
|
||||
+
|
||||
comment "LED Triggers"
|
||||
|
||||
config LEDS_TRIGGER_TIMER
|
||||
Index: linux-2.6.35.8/drivers/leds/Makefile
|
||||
===================================================================
|
||||
--- linux-2.6.35.8.orig/drivers/leds/Makefile 2010-11-01 11:19:33.000000000 +0100
|
||||
+++ linux-2.6.35.8/drivers/leds/Makefile 2010-11-01 11:35:43.000000000 +0100
|
||||
@@ -37,6 +37,7 @@
|
||||
obj-$(CONFIG_LEDS_ADP5520) += leds-adp5520.o
|
||||
obj-$(CONFIG_LEDS_DELL_NETBOOKS) += dell-led.o
|
||||
obj-$(CONFIG_LEDS_MC13783) += leds-mc13783.o
|
||||
+obj-$(CONFIG_LEDS_IFXMIPS) += leds-ifxmips.o
|
||||
|
||||
# LED SPI Drivers
|
||||
obj-$(CONFIG_LEDS_DAC124S085) += leds-dac124s085.o
|
||||
81
target/linux/ifxmips/patches/170-crypto.patch
Normal file
81
target/linux/ifxmips/patches/170-crypto.patch
Normal file
@@ -0,0 +1,81 @@
|
||||
Index: linux-2.6.35.8/drivers/crypto/Kconfig
|
||||
===================================================================
|
||||
--- linux-2.6.35.8.orig/drivers/crypto/Kconfig 2010-10-29 06:52:43.000000000 +0200
|
||||
+++ linux-2.6.35.8/drivers/crypto/Kconfig 2010-11-01 11:36:03.000000000 +0100
|
||||
@@ -243,4 +243,66 @@
|
||||
OMAP processors have SHA1/MD5 hw accelerator. Select this if you
|
||||
want to use the OMAP module for SHA1/MD5 algorithms.
|
||||
|
||||
+config CRYPTO_DEV_IFXMIPS
|
||||
+ bool "Support for IFXMIPS crypto engine"
|
||||
+ select CRYPTO_ALGAPI
|
||||
+ default y
|
||||
+ help
|
||||
+ Will support IFXMIPS crypto hardware
|
||||
+ If you are unsure, say M.
|
||||
+
|
||||
+menuconfig CRYPTO_DEV_IFXMIPS_DES
|
||||
+ bool "IFXMIPS crypto hardware for DES algorithm"
|
||||
+ depends on CRYPTO_DEV_IFXMIPS
|
||||
+ select CRYPTO_BLKCIPHER
|
||||
+ default y
|
||||
+ help
|
||||
+ Use crypto hardware for DES/3DES algorithm.
|
||||
+ If unsure say N.
|
||||
+
|
||||
+menuconfig CRYPTO_DEV_IFXMIPS_AES
|
||||
+ bool "IFXMIPS crypto hardware for AES algorithm"
|
||||
+ depends on CRYPTO_DEV_IFXMIPS
|
||||
+ select CRYPTO_BLKCIPHER
|
||||
+ default y
|
||||
+ help
|
||||
+ Use crypto hardware for AES algorithm.
|
||||
+ If unsure say N.
|
||||
+
|
||||
+menuconfig CRYPTO_DEV_IFXMIPS_ARC4
|
||||
+ bool "IFXMIPS crypto hardware for ARC4 algorithm"
|
||||
+ depends on (CRYPTO_DEV_IFXMIPS && !DANUBE)
|
||||
+ select CRYPTO_BLKCIPHER
|
||||
+ default y
|
||||
+ help
|
||||
+ Use crypto hardware for ARC4 algorithm.
|
||||
+ If unsure say N.
|
||||
+
|
||||
+menuconfig CRYPTO_DEV_IFXMIPS_SHA1
|
||||
+ bool "IFXMIPS crypto hardware for SHA1 algorithm"
|
||||
+ depends on CRYPTO_DEV_IFXMIPS
|
||||
+ select CRYPTO_BLKCIPHER
|
||||
+ default y
|
||||
+ help
|
||||
+ Use crypto hardware for SHA1 algorithm.
|
||||
+ If unsure say N.
|
||||
+
|
||||
+menuconfig CRYPTO_DEV_IFXMIPS_SHA1_HMAC
|
||||
+ bool "IFXMIPS crypto hardware for SHA1_HMAC algorithm"
|
||||
+ depends on (CRYPTO_DEV_IFXMIPS && !DANUBE)
|
||||
+ select CRYPTO_BLKCIPHER
|
||||
+ default y
|
||||
+ help
|
||||
+ Use crypto hardware for SHA1_HMAC algorithm.
|
||||
+ If unsure say N.
|
||||
+
|
||||
+menuconfig CRYPTO_DEV_IFXMIPS_MD5_HMAC
|
||||
+ bool "IFXMIPS crypto hardware for MD5_HMAC algorithms"
|
||||
+ depends on (CRYPTO_DEV_IFXMIPS && !DANUBE)
|
||||
+ select CRYPTO_BLKCIPHER
|
||||
+ default y
|
||||
+ help
|
||||
+ Use crypto hardware for MD5_HMAC algorithm.
|
||||
+ If unsure say N.
|
||||
+
|
||||
endif # CRYPTO_HW
|
||||
Index: linux-2.6.35.8/drivers/crypto/Makefile
|
||||
===================================================================
|
||||
--- linux-2.6.35.8.orig/drivers/crypto/Makefile 2010-10-29 06:52:43.000000000 +0200
|
||||
+++ linux-2.6.35.8/drivers/crypto/Makefile 2010-11-01 11:36:23.000000000 +0100
|
||||
@@ -9,4 +9,4 @@
|
||||
obj-$(CONFIG_CRYPTO_DEV_IXP4XX) += ixp4xx_crypto.o
|
||||
obj-$(CONFIG_CRYPTO_DEV_PPC4XX) += amcc/
|
||||
obj-$(CONFIG_CRYPTO_DEV_OMAP_SHAM) += omap-sham.o
|
||||
-
|
||||
+obj-$(CONFIG_CRYPTO_DEV_IFXMIPS) += ifxmips/
|
||||
55
target/linux/ifxmips/patches/200-cfi-swap.patch
Normal file
55
target/linux/ifxmips/patches/200-cfi-swap.patch
Normal file
@@ -0,0 +1,55 @@
|
||||
Index: linux-2.6.35.8/drivers/mtd/chips/cfi_cmdset_0001.c
|
||||
===================================================================
|
||||
--- linux-2.6.35.8.orig/drivers/mtd/chips/cfi_cmdset_0001.c 2010-10-29 06:52:43.000000000 +0200
|
||||
+++ linux-2.6.35.8/drivers/mtd/chips/cfi_cmdset_0001.c 2010-11-01 13:01:30.000000000 +0100
|
||||
@@ -41,7 +41,11 @@
|
||||
/* #define CMDSET0001_DISABLE_WRITE_SUSPEND */
|
||||
|
||||
// debugging, turns off buffer write mode if set to 1
|
||||
-#define FORCE_WORD_WRITE 0
|
||||
+#ifdef CONFIG_IFXMIPS
|
||||
+# define FORCE_WORD_WRITE 1
|
||||
+#else
|
||||
+# define FORCE_WORD_WRITE 0
|
||||
+#endif
|
||||
|
||||
/* Intel chips */
|
||||
#define I82802AB 0x00ad
|
||||
@@ -1491,6 +1495,9 @@
|
||||
int ret=0;
|
||||
|
||||
adr += chip->start;
|
||||
+#ifdef CONFIG_IFXMIPS
|
||||
+ adr ^= 2;
|
||||
+#endif
|
||||
|
||||
switch (mode) {
|
||||
case FL_WRITING:
|
||||
Index: linux-2.6.35.8/drivers/mtd/chips/cfi_cmdset_0002.c
|
||||
===================================================================
|
||||
--- linux-2.6.35.8.orig/drivers/mtd/chips/cfi_cmdset_0002.c 2010-11-01 13:01:29.000000000 +0100
|
||||
+++ linux-2.6.35.8/drivers/mtd/chips/cfi_cmdset_0002.c 2010-11-01 15:14:17.000000000 +0100
|
||||
@@ -40,7 +40,11 @@
|
||||
#include <linux/mtd/xip.h>
|
||||
|
||||
#define AMD_BOOTLOC_BUG
|
||||
-#define FORCE_WORD_WRITE 0
|
||||
+#ifdef CONFIG_IFXMIPS
|
||||
+# define FORCE_WORD_WRITE 1
|
||||
+#else
|
||||
+# define FORCE_WORD_WRITE 0
|
||||
+#endif
|
||||
|
||||
#define MAX_WORD_RETRIES 3
|
||||
|
||||
@@ -1156,6 +1160,10 @@
|
||||
|
||||
adr += chip->start;
|
||||
|
||||
+#ifdef CONFIG_IFXMIPS
|
||||
+ adr ^= 2;
|
||||
+#endif
|
||||
+
|
||||
mutex_lock(&chip->mutex);
|
||||
ret = get_chip(map, chip, adr, FL_WRITING);
|
||||
if (ret) {
|
||||
48
target/linux/ifxmips/patches/210-atm_hack.patch
Normal file
48
target/linux/ifxmips/patches/210-atm_hack.patch
Normal file
@@ -0,0 +1,48 @@
|
||||
Index: linux-2.6.35.8/arch/mips/mm/cache.c
|
||||
===================================================================
|
||||
--- linux-2.6.35.8.orig/arch/mips/mm/cache.c 2010-10-29 06:52:43.000000000 +0200
|
||||
+++ linux-2.6.35.8/arch/mips/mm/cache.c 2010-11-01 11:38:06.000000000 +0100
|
||||
@@ -52,6 +52,8 @@
|
||||
void (*_dma_cache_inv)(unsigned long start, unsigned long size);
|
||||
|
||||
EXPORT_SYMBOL(_dma_cache_wback_inv);
|
||||
+EXPORT_SYMBOL(_dma_cache_wback);
|
||||
+EXPORT_SYMBOL(_dma_cache_inv);
|
||||
|
||||
#endif /* CONFIG_DMA_NONCOHERENT */
|
||||
|
||||
Index: linux-2.6.35.8/net/atm/proc.c
|
||||
===================================================================
|
||||
--- linux-2.6.35.8.orig/net/atm/proc.c 2010-10-29 06:52:43.000000000 +0200
|
||||
+++ linux-2.6.35.8/net/atm/proc.c 2010-11-01 11:38:36.000000000 +0100
|
||||
@@ -153,7 +153,7 @@
|
||||
static void pvc_info(struct seq_file *seq, struct atm_vcc *vcc)
|
||||
{
|
||||
static const char *const class_name[] = {
|
||||
- "off", "UBR", "CBR", "VBR", "ABR"};
|
||||
+ "off","UBR","CBR","NTR-VBR","ABR","ANY","RT-VBR","UBR+","GFR" };
|
||||
static const char *const aal_name[] = {
|
||||
"---", "1", "2", "3/4", /* 0- 3 */
|
||||
"???", "5", "???", "???", /* 4- 7 */
|
||||
Index: linux-2.6.35.8/net/atm/common.c
|
||||
===================================================================
|
||||
--- linux-2.6.35.8.orig/net/atm/common.c 2010-10-29 06:52:43.000000000 +0200
|
||||
+++ linux-2.6.35.8/net/atm/common.c 2010-11-01 11:39:17.000000000 +0100
|
||||
@@ -60,11 +60,17 @@
|
||||
write_unlock_irq(&vcc_sklist_lock);
|
||||
}
|
||||
|
||||
+struct sk_buff* (*ifx_atm_alloc_tx)(struct atm_vcc *, unsigned int) = NULL;
|
||||
+EXPORT_SYMBOL(ifx_atm_alloc_tx);
|
||||
+
|
||||
static struct sk_buff *alloc_tx(struct atm_vcc *vcc, unsigned int size)
|
||||
{
|
||||
struct sk_buff *skb;
|
||||
struct sock *sk = sk_atm(vcc);
|
||||
|
||||
+ if (ifx_atm_alloc_tx != NULL)
|
||||
+ return ifx_atm_alloc_tx(vcc, size);
|
||||
+
|
||||
if (sk_wmem_alloc_get(sk) && !atm_may_send(vcc, size)) {
|
||||
pr_debug("Sorry: wmem_alloc = %d, size = %d, sndbuf = %d\n",
|
||||
sk_wmem_alloc_get(sk), size, sk->sk_sndbuf);
|
||||
24
target/linux/ifxmips/patches/320-tapi_hack.patch
Normal file
24
target/linux/ifxmips/patches/320-tapi_hack.patch
Normal file
@@ -0,0 +1,24 @@
|
||||
Index: linux-2.6.35.7/kernel/irq/chip.c
|
||||
===================================================================
|
||||
--- linux-2.6.35.7.orig/kernel/irq/chip.c 2010-10-15 18:40:33.000000000 +0200
|
||||
+++ linux-2.6.35.7/kernel/irq/chip.c 2010-10-15 18:44:19.000000000 +0200
|
||||
@@ -723,6 +723,7 @@
|
||||
set_irq_chip(irq, chip);
|
||||
__set_irq_handler(irq, handle, 0, NULL);
|
||||
}
|
||||
+EXPORT_SYMBOL_GPL(set_irq_chip_and_handler);
|
||||
|
||||
void
|
||||
set_irq_chip_and_handler_name(unsigned int irq, struct irq_chip *chip,
|
||||
Index: linux-2.6.35.7/kernel/irq/handle.c
|
||||
===================================================================
|
||||
--- linux-2.6.35.7.orig/kernel/irq/handle.c 2010-10-15 18:40:33.000000000 +0200
|
||||
+++ linux-2.6.35.7/kernel/irq/handle.c 2010-10-15 18:44:19.000000000 +0200
|
||||
@@ -276,6 +276,7 @@
|
||||
{
|
||||
return (irq < NR_IRQS) ? irq_desc + irq : NULL;
|
||||
}
|
||||
+EXPORT_SYMBOL_GPL(irq_to_desc);
|
||||
|
||||
struct irq_desc *irq_to_desc_alloc_node(unsigned int irq, int node)
|
||||
{
|
||||
Reference in New Issue
Block a user