From 4fea8d2283645d50dc58ab28036713f2e16e5082 Mon Sep 17 00:00:00 2001 From: blogic Date: Fri, 2 Oct 2009 08:09:27 +0000 Subject: bump ifxmips to .30 git-svn-id: svn://svn.openwrt.org/openwrt/trunk@17817 3c298f89-4303-0410-b956-a3cf2f4a3e73 --- .../ifxmips/patches/000-mips-bad-intctl.patch | 34 ----- .../patches/010-mips_clocksource_init_war.patch | 65 --------- target/linux/ifxmips/patches/100-board.patch | 72 ---------- target/linux/ifxmips/patches/110-drivers.patch | 149 --------------------- target/linux/ifxmips/patches/160-cfi-swap.patch | 13 -- target/linux/ifxmips/patches/170-dma_hack.patch | 11 -- 6 files changed, 344 deletions(-) delete mode 100644 target/linux/ifxmips/patches/000-mips-bad-intctl.patch delete mode 100644 target/linux/ifxmips/patches/010-mips_clocksource_init_war.patch delete mode 100644 target/linux/ifxmips/patches/100-board.patch delete mode 100644 target/linux/ifxmips/patches/110-drivers.patch delete mode 100644 target/linux/ifxmips/patches/160-cfi-swap.patch delete mode 100644 target/linux/ifxmips/patches/170-dma_hack.patch (limited to 'target/linux/ifxmips/patches') diff --git a/target/linux/ifxmips/patches/000-mips-bad-intctl.patch b/target/linux/ifxmips/patches/000-mips-bad-intctl.patch deleted file mode 100644 index 3b1c2dc7c..000000000 --- a/target/linux/ifxmips/patches/000-mips-bad-intctl.patch +++ /dev/null @@ -1,34 +0,0 @@ ---- a/arch/mips/kernel/traps.c -+++ b/arch/mips/kernel/traps.c -@@ -1464,7 +1464,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/include/asm-mips/irq.h -+++ b/include/asm-mips/irq.h -@@ -156,8 +156,12 @@ 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/010-mips_clocksource_init_war.patch b/target/linux/ifxmips/patches/010-mips_clocksource_init_war.patch deleted file mode 100644 index 61d9610cf..000000000 --- a/target/linux/ifxmips/patches/010-mips_clocksource_init_war.patch +++ /dev/null @@ -1,65 +0,0 @@ ---- a/arch/mips/kernel/cevt-r4k.c -+++ b/arch/mips/kernel/cevt-r4k.c -@@ -13,6 +13,22 @@ - #include - #include - -+/* -+ * 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) - { -@@ -28,6 +44,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; - #ifdef CONFIG_MIPS_MT_SMTC - evpe(vpflags); -@@ -187,7 +204,7 @@ static int c0_compare_int_usable(void) - */ - if (c0_compare_int_pending()) { - write_c0_compare(read_c0_count()); -- irq_disable_hazard(); -+ compare_change_hazard(); - if (c0_compare_int_pending()) - return 0; - } -@@ -196,7 +213,7 @@ static int c0_compare_int_usable(void) - cnt = read_c0_count(); - cnt += delta; - write_c0_compare(cnt); -- irq_disable_hazard(); -+ compare_change_hazard(); - if ((int)(read_c0_count() - cnt) < 0) - break; - /* increase delta if the timer was already expired */ -@@ -205,11 +222,12 @@ static int c0_compare_int_usable(void) - while ((int)(read_c0_count() - cnt) <= 0) - ; /* Wait for expiry */ - -+ compare_change_hazard(); - if (!c0_compare_int_pending()) - return 0; - - write_c0_compare(read_c0_count()); -- irq_disable_hazard(); -+ compare_change_hazard(); - if (c0_compare_int_pending()) - return 0; - diff --git a/target/linux/ifxmips/patches/100-board.patch b/target/linux/ifxmips/patches/100-board.patch deleted file mode 100644 index 052a08a2c..000000000 --- a/target/linux/ifxmips/patches/100-board.patch +++ /dev/null @@ -1,72 +0,0 @@ ---- a/arch/mips/Kconfig -+++ b/arch/mips/Kconfig -@@ -78,6 +78,23 @@ config MIPS_COBALT - select SYS_SUPPORTS_LITTLE_ENDIAN - select GENERIC_HARDIRQS_NO__DO_IRQ - -+config IFXMIPS -+ bool "Infineon Twinpass, Danube, Amazon-SE" -+ select DMA_NONCOHERENT -+ select IRQ_CPU -+ select CEVT_R4K -+ select CSRC_R4K -+ select SYS_HAS_CPU_MIPS32_R1 -+ select SYS_HAS_CPU_MIPS32_R2 -+ select HAVE_STD_PC_SERIAL_PORT -+ select SYS_SUPPORTS_BIG_ENDIAN -+ select SYS_SUPPORTS_32BIT_KERNEL -+ select SYS_SUPPORTS_MULTITHREADING -+ select SYS_HAS_EARLY_PRINTK -+ select HW_HAS_PCI -+ select GENERIC_GPIO -+ select SWAP_IO_SPACE -+ - config MACH_DECSTATION - bool "DECstations" - select BOOT_ELF32 -@@ -697,6 +714,7 @@ source "arch/mips/sibyte/Kconfig" - source "arch/mips/tx4927/Kconfig" - source "arch/mips/tx4938/Kconfig" - source "arch/mips/vr41xx/Kconfig" -+source "arch/mips/ifxmips/Kconfig" - - endmenu - ---- a/arch/mips/Makefile -+++ b/arch/mips/Makefile -@@ -283,6 +283,13 @@ cflags-$(CONFIG_MIPS_COBALT) += -Iinclud - load-$(CONFIG_MIPS_COBALT) += 0xffffffff80080000 - - # -+# Infineon IFXMIPS -+# -+core-$(CONFIG_IFXMIPS) += arch/mips/ifxmips/ -+cflags-$(CONFIG_IFXMIPS) += -Iinclude/asm-mips/mach-ifxmips -+load-$(CONFIG_IFXMIPS) += 0xffffffff80002000 -+ -+# - # DECstation family - # - core-$(CONFIG_MACH_DECSTATION) += arch/mips/dec/ ---- a/include/asm-mips/bootinfo.h -+++ b/include/asm-mips/bootinfo.h -@@ -94,6 +94,12 @@ - #define MACH_MSP7120_FPGA 5 /* PMC-Sierra MSP7120 Emulation */ - #define MACH_MSP_OTHER 255 /* PMC-Sierra unknown board type */ - -+/* -+ * Valid machtype for group IFXMIPS -+ */ -+#define MACH_GROUP_IFXMIPS 29 -+#define MACH_INFINEON_IFXMIPS 0 -+ - #define CL_SIZE COMMAND_LINE_SIZE - - extern char *system_type; ---- a/arch/mips/pci/Makefile -+++ b/arch/mips/pci/Makefile -@@ -48,3 +48,4 @@ obj-$(CONFIG_TOSHIBA_RBTX4938) += fixup- - obj-$(CONFIG_VICTOR_MPC30X) += fixup-mpc30x.o - obj-$(CONFIG_ZAO_CAPCELLA) += fixup-capcella.o - obj-$(CONFIG_WR_PPMC) += fixup-wrppmc.o -+obj-$(CONFIG_IFXMIPS) += pci-ifxmips.o ops-ifxmips.o diff --git a/target/linux/ifxmips/patches/110-drivers.patch b/target/linux/ifxmips/patches/110-drivers.patch deleted file mode 100644 index 931978fd9..000000000 --- a/target/linux/ifxmips/patches/110-drivers.patch +++ /dev/null @@ -1,149 +0,0 @@ ---- a/drivers/char/Makefile -+++ b/drivers/char/Makefile -@@ -114,6 +114,10 @@ obj-$(CONFIG_PS3_FLASH) += ps3flash.o - obj-$(CONFIG_JS_RTC) += js-rtc.o - js-rtc-y = rtc.o - -+obj-$(CONFIG_IFXMIPS_SSC) += ifxmips_ssc.o -+obj-$(CONFIG_IFXMIPS_EEPROM) += ifxmips_eeprom.o -+obj-$(CONFIG_IFXMIPS_MEI) += ifxmips_mei_core.o -+ - # Files generated that shall be removed upon make clean - clean-files := consolemap_deftbl.c defkeymap.c - ---- a/drivers/mtd/maps/Makefile -+++ b/drivers/mtd/maps/Makefile -@@ -67,3 +67,4 @@ obj-$(CONFIG_MTD_PLATRAM) += plat-ram.o - obj-$(CONFIG_MTD_OMAP_NOR) += omap_nor.o - obj-$(CONFIG_MTD_MTX1) += mtx-1_flash.o - obj-$(CONFIG_MTD_INTEL_VR_NOR) += intel_vr_nor.o -+obj-$(CONFIG_MTD_IFXMIPS) += ifxmips.o ---- a/drivers/net/Kconfig -+++ b/drivers/net/Kconfig -@@ -351,6 +351,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/serial/Kconfig -+++ b/drivers/serial/Kconfig -@@ -1334,6 +1334,14 @@ config SERIAL_OF_PLATFORM - Currently, only 8250 compatible ports are supported, but - others can easily be added. - -+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 -@@ -68,3 +68,4 @@ obj-$(CONFIG_SERIAL_OF_PLATFORM) += of_s - obj-$(CONFIG_SERIAL_KS8695) += serial_ks8695.o - obj-$(CONFIG_KGDB_SERIAL_CONSOLE) += kgdboc.o - obj-$(CONFIG_SERIAL_QE) += ucc_uart.o -+obj-$(CONFIG_SERIAL_IFXMIPS) += ifxmips_asc.o ---- a/drivers/watchdog/Makefile -+++ b/drivers/watchdog/Makefile -@@ -97,6 +97,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_wdt.o - - # PARISC Architecture - ---- a/drivers/net/Makefile -+++ b/drivers/net/Makefile -@@ -256,4 +256,4 @@ obj-$(CONFIG_NETXEN_NIC) += netxen/ - obj-$(CONFIG_NIU) += niu.o - obj-$(CONFIG_VIRTIO_NET) += virtio_net.o - obj-$(CONFIG_SFC) += sfc/ -- -+obj-$(CONFIG_IFXMIPS_MII0) += ifxmips_mii0.o ---- a/drivers/crypto/Kconfig -+++ b/drivers/crypto/Kconfig -@@ -9,6 +9,9 @@ menuconfig CRYPTO_HW - If you say N, all options in this submenu will be skipped and disabled. - - if CRYPTO_HW -+config CRYPTO_DEV_IFXMIPS -+ tristate "Support for IFXMIPS Data Encryption Unit" -+ depends on IFXMIPS - - config CRYPTO_DEV_PADLOCK - tristate "Support for VIA PadLock ACE" ---- a/drivers/crypto/Makefile -+++ b/drivers/crypto/Makefile -@@ -4,3 +4,4 @@ obj-$(CONFIG_CRYPTO_DEV_GEODE) += geode- - obj-$(CONFIG_CRYPTO_DEV_HIFN_795X) += hifn_795x.o - obj-$(CONFIG_CRYPTO_DEV_TALITOS) += talitos.o - obj-$(CONFIG_CRYPTO_DEV_IXP4XX) += ixp4xx_crypto.o -+obj-$(CONFIG_CRYPTO_DEV_IFXMIPS) += ifxdeu-aes.o ifxdeu-des.o ifxdeu-dma.o ifxdeu-generic.o ifxdeu-md5.o ifxdeu-sha1.o ---- a/drivers/usb/host/Kconfig -+++ b/drivers/usb/host/Kconfig -@@ -305,3 +305,10 @@ config SUPERH_ON_CHIP_R8A66597 - help - This driver enables support for the on-chip R8A66597 in the - SH7366 and SH7723 processors. -+ -+config USB_DWC_HCD -+ tristate "IFXMIPS USB Host Controller Driver" -+ depends on USB && IFXMIPS -+ default y -+ help -+ Danube USB Host Controller ---- a/drivers/leds/Kconfig -+++ b/drivers/leds/Kconfig -@@ -153,6 +153,12 @@ config LEDS_CLEVO_MAIL - To compile this driver as a module, choose M here: the - module will be called leds-clevo-mail. - -+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 -@@ -22,6 +22,7 @@ obj-$(CONFIG_LEDS_CM_X270) - obj-$(CONFIG_LEDS_CLEVO_MAIL) += leds-clevo-mail.o - obj-$(CONFIG_LEDS_HP6XX) += leds-hp6xx.o - obj-$(CONFIG_LEDS_FSG) += leds-fsg.o -+obj-$(CONFIG_LEDS_IFXMIPS) += leds-ifxmips.o - - # LED Triggers - obj-$(CONFIG_LEDS_TRIGGER_TIMER) += ledtrig-timer.o ---- a/drivers/watchdog/Kconfig -+++ b/drivers/watchdog/Kconfig -@@ -683,6 +683,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 diff --git a/target/linux/ifxmips/patches/160-cfi-swap.patch b/target/linux/ifxmips/patches/160-cfi-swap.patch deleted file mode 100644 index 5c98c3552..000000000 --- a/target/linux/ifxmips/patches/160-cfi-swap.patch +++ /dev/null @@ -1,13 +0,0 @@ ---- a/drivers/mtd/chips/cfi_cmdset_0002.c -+++ b/drivers/mtd/chips/cfi_cmdset_0002.c -@@ -1041,7 +1041,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/170-dma_hack.patch b/target/linux/ifxmips/patches/170-dma_hack.patch deleted file mode 100644 index 6175c3e8f..000000000 --- a/target/linux/ifxmips/patches/170-dma_hack.patch +++ /dev/null @@ -1,11 +0,0 @@ ---- a/arch/mips/mm/cache.c -+++ b/arch/mips/mm/cache.c -@@ -50,6 +50,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 */ - -- cgit v1.2.3