aboutsummaryrefslogtreecommitdiffstats
path: root/target/linux/ifxmips/patches-2.6.32
diff options
context:
space:
mode:
authorJohn Crispin <john@openwrt.org>2010-11-03 19:02:27 +0000
committerJohn Crispin <john@openwrt.org>2010-11-03 19:02:27 +0000
commit251535331cb7393bc911dfd5a7c01f670b292549 (patch)
tree52d4fa9c44a169c9ed8878b7bda7c5f23789447e /target/linux/ifxmips/patches-2.6.32
parent100fc4c7cec5500314c20c5d9a2ff0aa8a07a04a (diff)
downloadupstream-251535331cb7393bc911dfd5a7c01f670b292549.tar.gz
upstream-251535331cb7393bc911dfd5a7c01f670b292549.tar.bz2
upstream-251535331cb7393bc911dfd5a7c01f670b292549.zip
* bump kernel to 2.6.35.8 * merge arcadyn mach files * fixes ar9 * adds hack for tapi drivers
SVN-Revision: 23836
Diffstat (limited to 'target/linux/ifxmips/patches-2.6.32')
-rw-r--r--target/linux/ifxmips/patches-2.6.32/000-mips-bad-intctl.patch32
-rw-r--r--target/linux/ifxmips/patches-2.6.32/010-mips_clocksource_init_war.patch33
-rw-r--r--target/linux/ifxmips/patches-2.6.32/020-genirq_fix.patch12
-rw-r--r--target/linux/ifxmips/patches-2.6.32/100-board.patch52
-rw-r--r--target/linux/ifxmips/patches-2.6.32/110-drivers.patch121
-rw-r--r--target/linux/ifxmips/patches-2.6.32/170-crypto.patch76
-rw-r--r--target/linux/ifxmips/patches-2.6.32/200-cfi-swap.patch38
-rw-r--r--target/linux/ifxmips/patches-2.6.32/210-atm_hack.patch42
8 files changed, 0 insertions, 406 deletions
diff --git a/target/linux/ifxmips/patches-2.6.32/000-mips-bad-intctl.patch b/target/linux/ifxmips/patches-2.6.32/000-mips-bad-intctl.patch
deleted file mode 100644
index ad3fe9fb32..0000000000
--- a/target/linux/ifxmips/patches-2.6.32/000-mips-bad-intctl.patch
+++ /dev/null
@@ -1,32 +0,0 @@
---- a/arch/mips/kernel/traps.c
-+++ b/arch/mips/kernel/traps.c
-@@ -1537,7 +1537,16 @@ void __cpuinit per_cpu_trap_init(void)
- */
- if (cpu_has_mips_r2) {
- cp0_compare_irq = (read_c0_intctl() >> 29) & 7;
-+ if (!cp0_compare_irq)
-+ cp0_compare_irq = CP0_LEGACY_COMPARE_IRQ;
-+
- cp0_perfcount_irq = (read_c0_intctl() >> 26) & 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
-@@ -158,8 +158,10 @@ 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_perfcount_irq;
-+extern void __weak arch_fixup_c0_irqs(void);
-
- #endif /* _ASM_IRQ_H */
diff --git a/target/linux/ifxmips/patches-2.6.32/010-mips_clocksource_init_war.patch b/target/linux/ifxmips/patches-2.6.32/010-mips_clocksource_init_war.patch
deleted file mode 100644
index 81eabc6dcd..0000000000
--- a/target/linux/ifxmips/patches-2.6.32/010-mips_clocksource_init_war.patch
+++ /dev/null
@@ -1,33 +0,0 @@
---- 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;
- }
diff --git a/target/linux/ifxmips/patches-2.6.32/020-genirq_fix.patch b/target/linux/ifxmips/patches-2.6.32/020-genirq_fix.patch
deleted file mode 100644
index 8b18e7c7e3..0000000000
--- a/target/linux/ifxmips/patches-2.6.32/020-genirq_fix.patch
+++ /dev/null
@@ -1,12 +0,0 @@
---- a/kernel/irq/chip.c
-+++ b/kernel/irq/chip.c
-@@ -637,6 +637,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);
-
diff --git a/target/linux/ifxmips/patches-2.6.32/100-board.patch b/target/linux/ifxmips/patches-2.6.32/100-board.patch
deleted file mode 100644
index 25713b328c..0000000000
--- a/target/linux/ifxmips/patches-2.6.32/100-board.patch
+++ /dev/null
@@ -1,52 +0,0 @@
---- a/arch/mips/Kconfig
-+++ b/arch/mips/Kconfig
-@@ -151,6 +151,9 @@ config MACH_DECSTATION
-
- otherwise choose R3000.
-
-+config IFXMIPS
-+ bool "Infineon MIPS"
-+
- config MACH_JAZZ
- bool "Jazz family of machines"
- select ARC
-@@ -685,6 +688,7 @@ source "arch/mips/txx9/Kconfig"
- source "arch/mips/vr41xx/Kconfig"
- source "arch/mips/cavium-octeon/Kconfig"
- source "arch/mips/loongson/Kconfig"
-+source "arch/mips/ifxmips/Kconfig"
-
- endmenu
-
---- a/arch/mips/Makefile
-+++ b/arch/mips/Makefile
-@@ -305,6 +305,18 @@ cflags-$(CONFIG_MIPS_COBALT) += -I$(srct
- 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_COMPAT) += arch/mips/ifxmips/compat/
-+
-+#
- # DECstation family
- #
- core-$(CONFIG_MACH_DECSTATION) += arch/mips/dec/
---- a/arch/mips/pci/Makefile
-+++ b/arch/mips/pci/Makefile
-@@ -55,7 +55,7 @@ obj-$(CONFIG_ZAO_CAPCELLA) += fixup-capc
- 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
diff --git a/target/linux/ifxmips/patches-2.6.32/110-drivers.patch b/target/linux/ifxmips/patches-2.6.32/110-drivers.patch
deleted file mode 100644
index bb402d6270..0000000000
--- a/target/linux/ifxmips/patches-2.6.32/110-drivers.patch
+++ /dev/null
@@ -1,121 +0,0 @@
---- a/drivers/serial/Kconfig
-+++ b/drivers/serial/Kconfig
-@@ -1383,6 +1383,14 @@ config SERIAL_OF_PLATFORM_NWPSERIAL_CONS
- 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
---- a/drivers/serial/Makefile
-+++ b/drivers/serial/Makefile
-@@ -81,3 +81,4 @@ obj-$(CONFIG_SERIAL_KS8695) += serial_ks
- obj-$(CONFIG_KGDB_SERIAL_CONSOLE) += kgdboc.o
- obj-$(CONFIG_SERIAL_QE) += ucc_uart.o
- obj-$(CONFIG_SERIAL_TIMBERDALE) += timbuart.o
-+obj-$(CONFIG_SERIAL_IFXMIPS) += ifxmips.o
---- a/drivers/net/Kconfig
-+++ b/drivers/net/Kconfig
-@@ -343,6 +343,12 @@ config MACB
-
- 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
---- a/drivers/net/Makefile
-+++ b/drivers/net/Makefile
-@@ -247,6 +247,7 @@ pasemi_mac_driver-objs := pasemi_mac.o p
- obj-$(CONFIG_MLX4_CORE) += mlx4/
- obj-$(CONFIG_ENC28J60) += enc28j60.o
- obj-$(CONFIG_ETHOC) += ethoc.o
-+obj-$(CONFIG_IFXMIPS_MII0) += ifxmips.o
-
- obj-$(CONFIG_XTENSA_XT2000_SONIC) += xtsonic.o
-
---- a/drivers/mtd/maps/Kconfig
-+++ b/drivers/mtd/maps/Kconfig
-@@ -259,6 +259,12 @@ config MTD_ALCHEMY
- help
- Flash memory access on AMD Alchemy Pb/Db/RDK Reference 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
---- a/drivers/mtd/maps/Makefile
-+++ b/drivers/mtd/maps/Makefile
-@@ -61,3 +61,4 @@ obj-$(CONFIG_MTD_BFIN_ASYNC) += bfin-asy
- 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
---- a/drivers/watchdog/Kconfig
-+++ b/drivers/watchdog/Kconfig
-@@ -850,6 +850,12 @@ config TXX9_WDT
- 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
---- a/drivers/watchdog/Makefile
-+++ b/drivers/watchdog/Makefile
-@@ -113,6 +113,7 @@ obj-$(CONFIG_WDT_RM9K_GPI) += rm9k_wdt.o
- 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
-
---- a/drivers/leds/Kconfig
-+++ b/drivers/leds/Kconfig
-@@ -236,6 +236,12 @@ config LEDS_BD2802
- This option enables support for BD2802GU RGB LED driver chips
- accessed via the I2C bus.
-
-+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_TRIGGERS
---- a/drivers/leds/Makefile
-+++ b/drivers/leds/Makefile
-@@ -29,6 +29,7 @@ obj-$(CONFIG_LEDS_DA903X) += leds-da903
- obj-$(CONFIG_LEDS_WM831X_STATUS) += leds-wm831x-status.o
- obj-$(CONFIG_LEDS_WM8350) += leds-wm8350.o
- obj-$(CONFIG_LEDS_PWM) += leds-pwm.o
-+obj-$(CONFIG_LEDS_IFXMIPS) += leds-ifxmips.o
-
- # LED SPI Drivers
- obj-$(CONFIG_LEDS_DAC124S085) += leds-dac124s085.o
diff --git a/target/linux/ifxmips/patches-2.6.32/170-crypto.patch b/target/linux/ifxmips/patches-2.6.32/170-crypto.patch
deleted file mode 100644
index 3690f167eb..0000000000
--- a/target/linux/ifxmips/patches-2.6.32/170-crypto.patch
+++ /dev/null
@@ -1,76 +0,0 @@
---- a/drivers/crypto/Kconfig
-+++ b/drivers/crypto/Kconfig
-@@ -222,4 +222,66 @@ config CRYPTO_DEV_PPC4XX
- help
- This option allows you to have support for AMCC crypto acceleration.
-
-+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
---- a/drivers/crypto/Makefile
-+++ b/drivers/crypto/Makefile
-@@ -6,3 +6,4 @@ obj-$(CONFIG_CRYPTO_DEV_MV_CESA) += mv_c
- obj-$(CONFIG_CRYPTO_DEV_TALITOS) += talitos.o
- obj-$(CONFIG_CRYPTO_DEV_IXP4XX) += ixp4xx_crypto.o
- obj-$(CONFIG_CRYPTO_DEV_PPC4XX) += amcc/
-+obj-$(CONFIG_CRYPTO_DEV_IFXMIPS) += ifxmips/
diff --git a/target/linux/ifxmips/patches-2.6.32/200-cfi-swap.patch b/target/linux/ifxmips/patches-2.6.32/200-cfi-swap.patch
deleted file mode 100644
index 00afd4cfd0..0000000000
--- a/target/linux/ifxmips/patches-2.6.32/200-cfi-swap.patch
+++ /dev/null
@@ -1,38 +0,0 @@
---- a/drivers/mtd/chips/cfi_cmdset_0001.c
-+++ b/drivers/mtd/chips/cfi_cmdset_0001.c
-@@ -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
-
- #define MANUFACTURER_INTEL 0x0089
- #define I82802AB 0x00ad
-@@ -1480,6 +1484,9 @@ static int __xipram do_write_oneword(str
- int ret=0;
-
- adr += chip->start;
-+#ifdef CONFIG_IFXMIPS
-+ adr ^= 2;
-+#endif
-
- switch (mode) {
- case FL_WRITING:
---- a/drivers/mtd/chips/cfi_cmdset_0002.c
-+++ b/drivers/mtd/chips/cfi_cmdset_0002.c
-@@ -1079,7 +1079,9 @@ static int __xipram do_write_oneword(str
- int retry_cnt = 0;
-
- adr += chip->start;
--
-+#ifdef CONFIG_IFXMIPS
-+ adr ^= 2;
-+#endif
- spin_lock(chip->mutex);
- ret = get_chip(map, chip, adr, FL_WRITING);
- if (ret) {
diff --git a/target/linux/ifxmips/patches-2.6.32/210-atm_hack.patch b/target/linux/ifxmips/patches-2.6.32/210-atm_hack.patch
deleted file mode 100644
index e66b7e0c16..0000000000
--- a/target/linux/ifxmips/patches-2.6.32/210-atm_hack.patch
+++ /dev/null
@@ -1,42 +0,0 @@
---- a/arch/mips/mm/cache.c
-+++ b/arch/mips/mm/cache.c
-@@ -52,6 +52,8 @@ void (*_dma_cache_wback)(unsigned long s
- 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 */
-
---- a/net/atm/proc.c
-+++ b/net/atm/proc.c
-@@ -152,7 +152,7 @@ static void *vcc_seq_next(struct seq_fil
- 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 */
---- a/net/atm/common.c
-+++ b/net/atm/common.c
-@@ -56,12 +56,17 @@ static void vcc_remove_socket(struct soc
- 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,