1
0
mirror of git://projects.qi-hardware.com/openwrt-xburst.git synced 2024-11-24 20:06:15 +02:00

refresh 2.6.28 patches

Signed-off-by: Florian Fainelli <florian@openwrt.org>
This commit is contained in:
Florian Fainelli 2009-07-10 16:24:24 +02:00 committed by Xiangfu Liu
parent 8fd96343b6
commit 6576d07d92
7 changed files with 1007 additions and 1019 deletions

View File

@ -1,5 +1,5 @@
--- linux-2.6.24.7.old/Changelog 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/Changelog 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/Changelog
@@ -0,0 +1,364 @@
+2009.02.17
+* Modify oss driver to support jz4750 i2s codec.

View File

@ -1,5 +1,5 @@
--- linux-2.6.24.7.old/README-JZ 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/README-JZ 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/README-JZ
@@ -0,0 +1,1181 @@
+
+ Linux 2.6 Kernel Release for Ingenic

View File

@ -1,9 +1,9 @@
--- linux-2.6.24.7.old/arch/mips/Kconfig 2008-05-07 01:22:34.000000000 +0200
+++ linux-2.6.24.7/arch/mips/Kconfig 2009-04-12 18:13:57.000000000 +0200
@@ -16,6 +16,82 @@
--- a/arch/mips/Kconfig
+++ b/arch/mips/Kconfig
@@ -19,6 +19,82 @@ choice
prompt "System type"
default SGI_IP22
+config JZ4730_PMP
+ bool "Ingenic JZ4730 PMP board"
+ select DMA_NONCOHERENT
@ -82,11 +82,11 @@
+
config MACH_ALCHEMY
bool "Alchemy processor based machines"
@@ -701,6 +777,48 @@
@@ -610,6 +686,48 @@ source "arch/mips/vr41xx/Kconfig"
endmenu
+#####################################################
+# Ingenic SOC series
+#####################################################
@ -132,10 +132,10 @@
config RWSEM_GENERIC_SPINLOCK
bool
default y
@@ -1770,6 +1888,14 @@
@@ -1776,6 +1894,14 @@ config NR_CPUS
source "kernel/time/Kconfig"
+# the value of (max order + 1)
+config FORCE_MAX_ZONEORDER
+ prompt "MAX_ZONEORDER"
@ -147,10 +147,10 @@
#
# Timer Interrupt Frequency Configuration
#
@@ -2046,6 +2172,23 @@
@@ -2051,6 +2177,23 @@ config BINFMT_ELF32
endmenu
+menu "CPU Frequency scaling"
+
+config CPU_FREQ_JZ
@ -169,13 +169,13 @@
+endmenu
+
menu "Power management options"
source "kernel/power/Kconfig"
--- linux-2.6.24.7.old/arch/mips/Makefile 2009-04-12 18:05:07.000000000 +0200
+++ linux-2.6.24.7/arch/mips/Makefile 2009-04-12 18:13:57.000000000 +0200
@@ -159,6 +159,37 @@
config ARCH_SUSPEND_POSSIBLE
--- a/arch/mips/Makefile
+++ b/arch/mips/Makefile
@@ -176,6 +176,37 @@ libs-$(CONFIG_SIBYTE_CFE) += arch/mips/s
#
#
+# Commond Ingenic JZ4730 series
+#
@ -211,10 +211,10 @@
# Acer PICA 61, Mips Magnum 4000 and Olivetti M700.
#
core-$(CONFIG_MACH_JAZZ) += arch/mips/jazz/
@@ -673,6 +704,12 @@
@@ -692,6 +723,12 @@ makeboot =$(Q)$(MAKE) $(build)=arch/mips
all: $(all-y)
+uImage: $(vmlinux-32)
+ +@$(call makeboot,$@)
+
@ -223,14 +223,14 @@
+
vmlinux.bin: $(vmlinux-32)
+@$(call makeboot,$@)
@@ -697,12 +734,13 @@
@@ -716,12 +753,13 @@ endif
archclean:
@$(MAKE) $(clean)=arch/mips/boot
+ @$(MAKE) $(clean)=arch/mips/boot/compressed
@$(MAKE) $(clean)=arch/mips/lasat
define archhelp
- echo ' vmlinux.ecoff - ECOFF boot image'
- echo ' vmlinux.bin - Raw binary boot image'
@ -241,31 +241,31 @@
echo
echo ' These will be default as apropriate for a configured platform.'
endef
--- linux-2.6.24.7.old/arch/mips/boot/Makefile 2008-05-07 01:22:34.000000000 +0200
+++ linux-2.6.24.7/arch/mips/boot/Makefile 2009-04-12 18:13:57.000000000 +0200
--- a/arch/mips/boot/Makefile
+++ b/arch/mips/boot/Makefile
@@ -7,6 +7,9 @@
# Copyright (C) 2004 Maciej W. Rozycki
#
+# This one must match the LOADADDR in arch/mips/Makefile!
+LOADADDR=0x80010000
+
#
# Some DECstations need all possible sections of an ECOFF executable
#
@@ -25,7 +28,7 @@
@@ -25,7 +28,7 @@ strip-flags = $(addprefix --remove-secti
VMLINUX = vmlinux
-all: vmlinux.ecoff vmlinux.srec addinitrd
+all: vmlinux.ecoff vmlinux.srec addinitrd uImage zImage
vmlinux.ecoff: $(obj)/elf2ecoff $(VMLINUX)
$(obj)/elf2ecoff $(VMLINUX) vmlinux.ecoff $(E2EFLAGS)
@@ -42,8 +45,24 @@
@@ -42,8 +45,24 @@ vmlinux.srec: $(VMLINUX)
$(obj)/addinitrd: $(obj)/addinitrd.c
$(HOSTCC) -o $@ $^
+uImage: $(VMLINUX) vmlinux.bin
+ rm -f $(obj)/vmlinux.bin.gz
+ gzip -9 $(obj)/vmlinux.bin
@ -288,8 +288,8 @@
+ vmlinux.bin.gz \
+ uImage \
+ zImage
--- linux-2.6.24.7.old/arch/mips/boot/compressed/Makefile 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/boot/compressed/Makefile 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/boot/compressed/Makefile
@@ -0,0 +1,42 @@
+#
+# linux/arch/mips/boot/compressed/Makefile
@ -333,15 +333,15 @@
+
+zImage: $(obj)/vmlinuz
+ $(OBJCOPY) -O binary $(obj)/vmlinuz $(obj)/zImage
--- linux-2.6.24.7.old/arch/mips/boot/compressed/dummy.c 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/boot/compressed/dummy.c 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/boot/compressed/dummy.c
@@ -0,0 +1,4 @@
+int main(void)
+{
+ return 0;
+}
--- linux-2.6.24.7.old/arch/mips/boot/compressed/head.S 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/boot/compressed/head.S 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/boot/compressed/head.S
@@ -0,0 +1,85 @@
+/*
+ * linux/arch/mips/boot/compressed/head.S
@ -428,8 +428,8 @@
+ END(flushcaches)
+
+ .comm .stack,4096*2,4
--- linux-2.6.24.7.old/arch/mips/boot/compressed/ld.script 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/boot/compressed/ld.script 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/boot/compressed/ld.script
@@ -0,0 +1,151 @@
+OUTPUT_ARCH(mips)
+ENTRY(startup)
@ -582,8 +582,8 @@
+ .comment : { *(.comment) }
+ .note : { *(.note) }
+}
--- linux-2.6.24.7.old/arch/mips/boot/compressed/misc.c 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/boot/compressed/misc.c 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/boot/compressed/misc.c
@@ -0,0 +1,242 @@
+/*
+ * linux/arch/mips/boot/compressed/misc.c
@ -827,8 +827,8 @@
+ flushcaches();
+ puts("Ok, booting the kernel.");
+}
--- linux-2.6.24.7.old/arch/mips/boot/tools/entry 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/boot/tools/entry 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/boot/tools/entry
@@ -0,0 +1,12 @@
+#!/bin/sh
+
@ -842,8 +842,8 @@
+else
+ echo "0x"`$1 $2 | grep kernel_entry | cut -c1- | awk '{print $1}'`
+fi
--- linux-2.6.24.7.old/arch/mips/boot/tools/filesize 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/boot/tools/filesize 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/boot/tools/filesize
@@ -0,0 +1,7 @@
+#!/bin/sh
+HOSTNAME=`uname`
@ -852,8 +852,8 @@
+else
+echo `ls -l $1 | awk '{print $6}'`
+fi
--- linux-2.6.24.7.old/arch/mips/configs/apus_defconfig 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/configs/apus_defconfig 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/configs/apus_defconfig
@@ -0,0 +1,1205 @@
+#
+# Automatically generated make config: don't edit
@ -2060,8 +2060,8 @@
+CONFIG_HAS_IOMEM=y
+CONFIG_HAS_IOPORT=y
+CONFIG_HAS_DMA=y
--- linux-2.6.24.7.old/arch/mips/configs/dipper_defconfig 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/configs/dipper_defconfig 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/configs/dipper_defconfig
@@ -0,0 +1,1281 @@
+#
+# Automatically generated make config: don't edit
@ -3344,8 +3344,8 @@
+CONFIG_HAS_IOMEM=y
+CONFIG_HAS_IOPORT=y
+CONFIG_HAS_DMA=y
--- linux-2.6.24.7.old/arch/mips/configs/fuwa_defconfig 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/configs/fuwa_defconfig 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/configs/fuwa_defconfig
@@ -0,0 +1,928 @@
+#
+# Automatically generated make config: don't edit
@ -4275,8 +4275,8 @@
+CONFIG_HAS_IOMEM=y
+CONFIG_HAS_IOPORT=y
+CONFIG_HAS_DMA=y
--- linux-2.6.24.7.old/arch/mips/configs/leo_defconfig 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/configs/leo_defconfig 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/configs/leo_defconfig
@@ -0,0 +1,1256 @@
+#
+# Automatically generated make config: don't edit
@ -5534,8 +5534,8 @@
+CONFIG_HAS_IOMEM=y
+CONFIG_HAS_IOPORT=y
+CONFIG_HAS_DMA=y
--- linux-2.6.24.7.old/arch/mips/configs/lyra_defconfig 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/configs/lyra_defconfig 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/configs/lyra_defconfig
@@ -0,0 +1,981 @@
+#
+# Automatically generated make config: don't edit
@ -6518,8 +6518,8 @@
+CONFIG_HAS_IOMEM=y
+CONFIG_HAS_IOPORT=y
+CONFIG_HAS_DMA=y
--- linux-2.6.24.7.old/arch/mips/configs/pavo_defconfig 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/configs/pavo_defconfig 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/configs/pavo_defconfig
@@ -0,0 +1,1293 @@
+#
+# Automatically generated make config: don't edit
@ -7814,8 +7814,8 @@
+CONFIG_HAS_IOMEM=y
+CONFIG_HAS_IOPORT=y
+CONFIG_HAS_DMA=y
--- linux-2.6.24.7.old/arch/mips/configs/pmp_defconfig 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/configs/pmp_defconfig 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/configs/pmp_defconfig
@@ -0,0 +1,1212 @@
+#
+# Automatically generated make config: don't edit
@ -9029,8 +9029,8 @@
+CONFIG_HAS_IOMEM=y
+CONFIG_HAS_IOPORT=y
+CONFIG_HAS_DMA=y
--- linux-2.6.24.7.old/arch/mips/configs/slt50_defconfig 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/configs/slt50_defconfig 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/configs/slt50_defconfig
@@ -0,0 +1,1036 @@
+#
+# Automatically generated make config: don't edit
@ -10068,8 +10068,8 @@
+CONFIG_HAS_IOMEM=y
+CONFIG_HAS_IOPORT=y
+CONFIG_HAS_DMA=y
--- linux-2.6.24.7.old/arch/mips/configs/virgo_defconfig 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/configs/virgo_defconfig 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/configs/virgo_defconfig
@@ -0,0 +1,1281 @@
+#
+# Automatically generated make config: don't edit
@ -11352,8 +11352,8 @@
+CONFIG_HAS_IOMEM=y
+CONFIG_HAS_IOPORT=y
+CONFIG_HAS_DMA=y
--- linux-2.6.24.7.old/arch/mips/jz4730/Makefile 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/jz4730/Makefile 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/jz4730/Makefile
@@ -0,0 +1,22 @@
+#
+# Makefile for the Ingenic JZ4730.
@ -11377,8 +11377,8 @@
+# PM support
+
+obj-$(CONFIG_PM_LEGACY) +=pm.o sleep.o
--- linux-2.6.24.7.old/arch/mips/jz4730/board-pmp.c 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/jz4730/board-pmp.c 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/jz4730/board-pmp.c
@@ -0,0 +1,109 @@
+/*
+ * linux/arch/mips/jz4730/board-pmp.c
@ -11489,8 +11489,8 @@
+
+ jz_timer_callback = pmp_timer_ack;
+}
--- linux-2.6.24.7.old/arch/mips/jz4730/cpufreq.c 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/jz4730/cpufreq.c 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/jz4730/cpufreq.c
@@ -0,0 +1,596 @@
+
+/*
@ -12088,8 +12088,8 @@
+MODULE_DESCRIPTION("cpufreq driver for Jz4730");
+MODULE_LICENSE("GPL");
+
--- linux-2.6.24.7.old/arch/mips/jz4730/dma.c 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/jz4730/dma.c 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/jz4730/dma.c
@@ -0,0 +1,509 @@
+/*
+ * linux/arch/mips/jz4730/dma.c
@ -12600,8 +12600,8 @@
+EXPORT_SYMBOL(enable_dma);
+EXPORT_SYMBOL(disable_dma);
+EXPORT_SYMBOL(dump_jz_dma_channel);
--- linux-2.6.24.7.old/arch/mips/jz4730/i2c.c 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/jz4730/i2c.c 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/jz4730/i2c.c
@@ -0,0 +1,214 @@
+/*
+ * linux/arch/mips/jz4730/i2c.c
@ -12817,8 +12817,8 @@
+EXPORT_SYMBOL(i2c_setclk);
+EXPORT_SYMBOL(i2c_read);
+EXPORT_SYMBOL(i2c_write);
--- linux-2.6.24.7.old/arch/mips/jz4730/irq.c 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/jz4730/irq.c 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/jz4730/irq.c
@@ -0,0 +1,266 @@
+/*
+ * linux/arch/mips/jz4730/irq.c
@ -13086,8 +13086,8 @@
+
+ do_IRQ(irq);
+}
--- linux-2.6.24.7.old/arch/mips/jz4730/platform.c 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/jz4730/platform.c 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/jz4730/platform.c
@@ -0,0 +1,140 @@
+/*
+ * Platform device support for Jz4730 SoC.
@ -13229,8 +13229,8 @@
+}
+
+arch_initcall(jz_platform_init);
--- linux-2.6.24.7.old/arch/mips/jz4730/pm.c 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/jz4730/pm.c 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/jz4730/pm.c
@@ -0,0 +1,1098 @@
+/*
+ * linux/arch/mips/jz4730/pm.c
@ -14330,8 +14330,8 @@
+}
+
+module_init(jz_pm_init);
--- linux-2.6.24.7.old/arch/mips/jz4730/proc.c 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/jz4730/proc.c 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/jz4730/proc.c
@@ -0,0 +1,292 @@
+/*
+ * linux/arch/mips/jz4730/proc.c
@ -14625,8 +14625,8 @@
+}
+
+__initcall(jz_proc_init);
--- linux-2.6.24.7.old/arch/mips/jz4730/prom.c 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/jz4730/prom.c 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/jz4730/prom.c
@@ -0,0 +1,198 @@
+/*
+ *
@ -14826,8 +14826,8 @@
+EXPORT_SYMBOL(prom_getcmdline);
+EXPORT_SYMBOL(get_ethernet_addr);
+EXPORT_SYMBOL(str2eaddr);
--- linux-2.6.24.7.old/arch/mips/jz4730/reset.c 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/jz4730/reset.c 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/jz4730/reset.c
@@ -0,0 +1,40 @@
+/*
+ * linux/arch/mips/jz4730/reset.c
@ -14869,8 +14869,8 @@
+{
+ jz_halt();
+}
--- linux-2.6.24.7.old/arch/mips/jz4730/setup.c 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/jz4730/setup.c 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/jz4730/setup.c
@@ -0,0 +1,182 @@
+/*
+ * linux/arch/mips/jz4730/setup.c
@ -15054,8 +15054,8 @@
+ jz_serial_setup(); /* serial port setup */
+ jz_board_setup(); /* board specific setup */
+}
--- linux-2.6.24.7.old/arch/mips/jz4730/sleep.S 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/jz4730/sleep.S 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/jz4730/sleep.S
@@ -0,0 +1,307 @@
+/*
+ * linux/arch/mips/jz4730/sleep.S
@ -15364,8 +15364,8 @@
+ .word 0 /* preserve sp here */
+
+ .set reorder
--- linux-2.6.24.7.old/arch/mips/jz4730/time.c 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/jz4730/time.c 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/jz4730/time.c
@@ -0,0 +1,129 @@
+/*
+ * linux/arch/mips/jz4730/time.c
@ -15496,8 +15496,8 @@
+
+ jz_timer_setup();
+}
--- linux-2.6.24.7.old/arch/mips/jz4740/Makefile 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/jz4740/Makefile 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/jz4740/Makefile
@@ -0,0 +1,26 @@
+#
+# Makefile for the Ingenic JZ4740.
@ -15525,8 +15525,8 @@
+# CPU Frequency scaling support
+
+obj-$(CONFIG_CPU_FREQ_JZ) +=cpufreq.o
--- linux-2.6.24.7.old/arch/mips/jz4740/board-dipper.c 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/jz4740/board-dipper.c 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/jz4740/board-dipper.c
@@ -0,0 +1,117 @@
+/*
+ * linux/arch/mips/jz4740/board-dipper.c
@ -15645,8 +15645,8 @@
+
+ jz_timer_callback = dipper_timer_callback;
+}
--- linux-2.6.24.7.old/arch/mips/jz4740/board-leo.c 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/jz4740/board-leo.c 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/jz4740/board-leo.c
@@ -0,0 +1,67 @@
+/*
+ * linux/arch/mips/jz4740/board-leo.c
@ -15715,8 +15715,8 @@
+ printk(" BOARD SETUP");
+ jz_timer_callback = leo_timer_callback;
+}
--- linux-2.6.24.7.old/arch/mips/jz4740/board-lyra.c 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/jz4740/board-lyra.c 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/jz4740/board-lyra.c
@@ -0,0 +1,114 @@
+/*
+ * linux/arch/mips/jz4740/board-lyra.c
@ -15832,8 +15832,8 @@
+
+ jz_timer_callback = lyra_timer_callback;
+}
--- linux-2.6.24.7.old/arch/mips/jz4740/board-pavo.c 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/jz4740/board-pavo.c 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/jz4740/board-pavo.c
@@ -0,0 +1,114 @@
+/*
+ * linux/arch/mips/jz4740/board-pavo.c
@ -15949,8 +15949,8 @@
+
+ jz_timer_callback = pavo_timer_callback;
+}
--- linux-2.6.24.7.old/arch/mips/jz4740/board-virgo.c 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/jz4740/board-virgo.c 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/jz4740/board-virgo.c
@@ -0,0 +1,114 @@
+/*
+ * linux/arch/mips/jz4740/board-virgo.c
@ -16066,8 +16066,8 @@
+
+ jz_timer_callback = virgo_timer_callback;
+}
--- linux-2.6.24.7.old/arch/mips/jz4740/cpufreq.c 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/jz4740/cpufreq.c 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/jz4740/cpufreq.c
@@ -0,0 +1,602 @@
+/*
+ * linux/arch/mips/jz4740/cpufreq.c
@ -16671,8 +16671,8 @@
+MODULE_DESCRIPTION("cpufreq driver for Jz4740");
+MODULE_LICENSE("GPL");
+
--- linux-2.6.24.7.old/arch/mips/jz4740/dma.c 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/jz4740/dma.c 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/jz4740/dma.c
@@ -0,0 +1,768 @@
+/*
+ * linux/arch/mips/jz4740/dma.c
@ -17442,8 +17442,8 @@
+EXPORT_SYMBOL(enable_dma);
+EXPORT_SYMBOL(disable_dma);
+EXPORT_SYMBOL(dump_jz_dma_channel);
--- linux-2.6.24.7.old/arch/mips/jz4740/i2c.c 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/jz4740/i2c.c 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/jz4740/i2c.c
@@ -0,0 +1,273 @@
+/*
+ * linux/arch/mips/jz4740/i2c.c
@ -17718,8 +17718,8 @@
+EXPORT_SYMBOL(i2c_setclk);
+EXPORT_SYMBOL(i2c_read);
+EXPORT_SYMBOL(i2c_write);
--- linux-2.6.24.7.old/arch/mips/jz4740/irq.c 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/jz4740/irq.c 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/jz4740/irq.c
@@ -0,0 +1,265 @@
+/*
+ * linux/arch/mips/jz4740/irq.c
@ -17986,8 +17986,8 @@
+ irq = plat_real_irq(irq);
+ do_IRQ(irq);
+}
--- linux-2.6.24.7.old/arch/mips/jz4740/platform.c 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/jz4740/platform.c 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/jz4740/platform.c
@@ -0,0 +1,169 @@
+/*
+ * Platform device support for Jz4740 SoC.
@ -18158,8 +18158,8 @@
+}
+
+arch_initcall(jz_platform_init);
--- linux-2.6.24.7.old/arch/mips/jz4740/pm.c 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/jz4740/pm.c 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/jz4740/pm.c
@@ -0,0 +1,462 @@
+/*
+ * linux/arch/mips/jz4740/common/pm.c
@ -18623,8 +18623,8 @@
+
+module_init(jz_pm_init);
+
--- linux-2.6.24.7.old/arch/mips/jz4740/proc.c 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/jz4740/proc.c 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/jz4740/proc.c
@@ -0,0 +1,887 @@
+/*
+ * linux/arch/mips/jz4740/proc.c
@ -19513,8 +19513,8 @@
+}
+
+__initcall(jz_proc_init);
--- linux-2.6.24.7.old/arch/mips/jz4740/prom.c 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/jz4740/prom.c 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/jz4740/prom.c
@@ -0,0 +1,198 @@
+/*
+ *
@ -19714,8 +19714,8 @@
+EXPORT_SYMBOL(prom_getcmdline);
+EXPORT_SYMBOL(get_ethernet_addr);
+EXPORT_SYMBOL(str2eaddr);
--- linux-2.6.24.7.old/arch/mips/jz4740/reset.c 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/jz4740/reset.c 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/jz4740/reset.c
@@ -0,0 +1,46 @@
+/*
+ * linux/arch/mips/jz4740/reset.c
@ -19763,8 +19763,8 @@
+{
+ jz_halt();
+}
--- linux-2.6.24.7.old/arch/mips/jz4740/setup.c 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/jz4740/setup.c 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/jz4740/setup.c
@@ -0,0 +1,182 @@
+/*
+ * linux/arch/mips/jz4740/common/setup.c
@ -19948,8 +19948,8 @@
+ jz_board_setup();
+}
+
--- linux-2.6.24.7.old/arch/mips/jz4740/time.c 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/jz4740/time.c 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/jz4740/time.c
@@ -0,0 +1,158 @@
+/*
+ * linux/arch/mips/jz4740/time.c
@ -20109,8 +20109,8 @@
+
+ jz_timer_setup();
+}
--- linux-2.6.24.7.old/arch/mips/jz4750/Makefile 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/jz4750/Makefile 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/jz4750/Makefile
@@ -0,0 +1,23 @@
+#
+# Makefile for the Ingenic JZ4750.
@ -20135,8 +20135,8 @@
+# CPU Frequency scaling support
+
+obj-$(CONFIG_CPU_FREQ_JZ) +=cpufreq.o
--- linux-2.6.24.7.old/arch/mips/jz4750/board-apus.c 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/jz4750/board-apus.c 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/jz4750/board-apus.c
@@ -0,0 +1,64 @@
+/*
+ * linux/arch/mips/jz4750/board-apus.c
@ -20202,8 +20202,8 @@
+
+ jz_timer_callback = apus_timer_callback;
+}
--- linux-2.6.24.7.old/arch/mips/jz4750/board-fuwa.c 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/jz4750/board-fuwa.c 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/jz4750/board-fuwa.c
@@ -0,0 +1,105 @@
+/*
+ * linux/arch/mips/jz4750/board-fuwa.c
@ -20310,8 +20310,8 @@
+
+ jz_timer_callback = fuwa_timer_callback;
+}
--- linux-2.6.24.7.old/arch/mips/jz4750/board-slt50.c 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/jz4750/board-slt50.c 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/jz4750/board-slt50.c
@@ -0,0 +1,64 @@
+/*
+ * linux/arch/mips/jz4750/board-apus.c
@ -20377,8 +20377,8 @@
+
+ jz_timer_callback = apus_timer_callback;
+}
--- linux-2.6.24.7.old/arch/mips/jz4750/cpufreq.c 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/jz4750/cpufreq.c 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/jz4750/cpufreq.c
@@ -0,0 +1,601 @@
+/*
+ * linux/arch/mips/jz4750/cpufreq.c
@ -20981,8 +20981,8 @@
+MODULE_AUTHOR("Regen <lhhuang@ingenic.cn>");
+MODULE_DESCRIPTION("cpufreq driver for Jz4750");
+MODULE_LICENSE("GPL");
--- linux-2.6.24.7.old/arch/mips/jz4750/dma.c 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/jz4750/dma.c 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/jz4750/dma.c
@@ -0,0 +1,836 @@
+/*
+ * linux/arch/mips/jz4750/dma.c
@ -21820,8 +21820,8 @@
+EXPORT_SYMBOL(enable_dma);
+EXPORT_SYMBOL(disable_dma);
+EXPORT_SYMBOL(dump_jz_dma_channel);
--- linux-2.6.24.7.old/arch/mips/jz4750/i2c.c 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/jz4750/i2c.c 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/jz4750/i2c.c
@@ -0,0 +1,273 @@
+/*
+ * linux/arch/mips/jz4750/i2c.c
@ -22096,8 +22096,8 @@
+EXPORT_SYMBOL(i2c_setclk);
+EXPORT_SYMBOL(i2c_read);
+EXPORT_SYMBOL(i2c_write);
--- linux-2.6.24.7.old/arch/mips/jz4750/irq.c 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/jz4750/irq.c 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/jz4750/irq.c
@@ -0,0 +1,299 @@
+/*
+ * linux/arch/mips/jz4750/irq.c
@ -22398,8 +22398,8 @@
+ irq = plat_real_irq(irq);
+ do_IRQ(irq);
+}
--- linux-2.6.24.7.old/arch/mips/jz4750/platform.c 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/jz4750/platform.c 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/jz4750/platform.c
@@ -0,0 +1,141 @@
+/*
+ * Platform device support for Jz4740 SoC.
@ -22542,8 +22542,8 @@
+}
+
+arch_initcall(jz_platform_init);
--- linux-2.6.24.7.old/arch/mips/jz4750/pm.c 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/jz4750/pm.c 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/jz4750/pm.c
@@ -0,0 +1,461 @@
+/*
+ * linux/arch/mips/jz4750/common/pm.c
@ -23006,8 +23006,8 @@
+}
+
+module_init(jz_pm_init);
--- linux-2.6.24.7.old/arch/mips/jz4750/proc.c 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/jz4750/proc.c 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/jz4750/proc.c
@@ -0,0 +1,905 @@
+/*
+ * linux/arch/mips/jz4750/proc.c
@ -23914,8 +23914,8 @@
+}
+
+__initcall(jz_proc_init);
--- linux-2.6.24.7.old/arch/mips/jz4750/prom.c 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/jz4750/prom.c 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/jz4750/prom.c
@@ -0,0 +1,198 @@
+/*
+ *
@ -24115,8 +24115,8 @@
+EXPORT_SYMBOL(prom_getcmdline);
+EXPORT_SYMBOL(get_ethernet_addr);
+EXPORT_SYMBOL(str2eaddr);
--- linux-2.6.24.7.old/arch/mips/jz4750/reset.c 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/jz4750/reset.c 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/jz4750/reset.c
@@ -0,0 +1,46 @@
+/*
+ * linux/arch/mips/jz4750/reset.c
@ -24164,8 +24164,8 @@
+{
+ jz_halt();
+}
--- linux-2.6.24.7.old/arch/mips/jz4750/setup.c 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/jz4750/setup.c 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/jz4750/setup.c
@@ -0,0 +1,197 @@
+/*
+ * linux/arch/mips/jz4750/common/setup.c
@ -24364,8 +24364,8 @@
+ jz_board_setup();
+}
+
--- linux-2.6.24.7.old/arch/mips/jz4750/time.c 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/jz4750/time.c 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/jz4750/time.c
@@ -0,0 +1,156 @@
+/*
+ * linux/arch/mips/jz4750/time.c
@ -24523,8 +24523,8 @@
+
+ jz_timer_setup();
+}
--- linux-2.6.24.7.old/arch/mips/jz4750d/Makefile 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/jz4750d/Makefile 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/jz4750d/Makefile
@@ -0,0 +1,22 @@
+#
+# Makefile for the Ingenic JZ4750D.
@ -24548,8 +24548,8 @@
+# CPU Frequency scaling support
+
+obj-$(CONFIG_CPU_FREQ_JZ) +=cpufreq.o
--- linux-2.6.24.7.old/arch/mips/jz4750d/board-fuwa1.c 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/jz4750d/board-fuwa1.c 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/jz4750d/board-fuwa1.c
@@ -0,0 +1,72 @@
+/*
+ * linux/arch/mips/jz4750d/board-fuwa1.c
@ -24623,8 +24623,8 @@
+
+ jz_timer_callback = fuwa1_timer_callback;
+}
--- linux-2.6.24.7.old/arch/mips/jz4750d/cpufreq.c 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/jz4750d/cpufreq.c 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/jz4750d/cpufreq.c
@@ -0,0 +1,601 @@
+/*
+ * linux/arch/mips/jz4750d/cpufreq.c
@ -25227,8 +25227,8 @@
+MODULE_AUTHOR("Regen <lhhuang@ingenic.cn>");
+MODULE_DESCRIPTION("cpufreq driver for Jz4750d");
+MODULE_LICENSE("GPL");
--- linux-2.6.24.7.old/arch/mips/jz4750d/dma.c 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/jz4750d/dma.c 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/jz4750d/dma.c
@@ -0,0 +1,822 @@
+/*
+ * linux/arch/mips/jz4750d/dma.c
@ -26052,8 +26052,8 @@
+EXPORT_SYMBOL(enable_dma);
+EXPORT_SYMBOL(disable_dma);
+EXPORT_SYMBOL(dump_jz_dma_channel);
--- linux-2.6.24.7.old/arch/mips/jz4750d/i2c.c 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/jz4750d/i2c.c 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/jz4750d/i2c.c
@@ -0,0 +1,273 @@
+/*
+ * linux/arch/mips/jz4750d/i2c.c
@ -26328,8 +26328,8 @@
+EXPORT_SYMBOL(i2c_setclk);
+EXPORT_SYMBOL(i2c_read);
+EXPORT_SYMBOL(i2c_write);
--- linux-2.6.24.7.old/arch/mips/jz4750d/irq.c 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/jz4750d/irq.c 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/jz4750d/irq.c
@@ -0,0 +1,299 @@
+/*
+ * linux/arch/mips/jz4750d/irq.c
@ -26630,8 +26630,8 @@
+ irq = plat_real_irq(irq);
+ do_IRQ(irq);
+}
--- linux-2.6.24.7.old/arch/mips/jz4750d/platform.c 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/jz4750d/platform.c 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/jz4750d/platform.c
@@ -0,0 +1,141 @@
+/*
+ * Platform device support for Jz4740 SoC.
@ -26774,8 +26774,8 @@
+}
+
+arch_initcall(jz_platform_init);
--- linux-2.6.24.7.old/arch/mips/jz4750d/pm.c 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/jz4750d/pm.c 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/jz4750d/pm.c
@@ -0,0 +1,461 @@
+/*
+ * linux/arch/mips/jz4750d/common/pm.c
@ -27238,8 +27238,8 @@
+}
+
+module_init(jz_pm_init);
--- linux-2.6.24.7.old/arch/mips/jz4750d/proc.c 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/jz4750d/proc.c 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/jz4750d/proc.c
@@ -0,0 +1,877 @@
+/*
+ * linux/arch/mips/jz4750d/proc.c
@ -28118,8 +28118,8 @@
+}
+
+__initcall(jz_proc_init);
--- linux-2.6.24.7.old/arch/mips/jz4750d/prom.c 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/jz4750d/prom.c 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/jz4750d/prom.c
@@ -0,0 +1,198 @@
+/*
+ *
@ -28319,8 +28319,8 @@
+EXPORT_SYMBOL(prom_getcmdline);
+EXPORT_SYMBOL(get_ethernet_addr);
+EXPORT_SYMBOL(str2eaddr);
--- linux-2.6.24.7.old/arch/mips/jz4750d/reset.c 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/jz4750d/reset.c 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/jz4750d/reset.c
@@ -0,0 +1,46 @@
+/*
+ * linux/arch/mips/jz4750/reset.c
@ -28368,8 +28368,8 @@
+{
+ jz_halt();
+}
--- linux-2.6.24.7.old/arch/mips/jz4750d/setup.c 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/jz4750d/setup.c 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/jz4750d/setup.c
@@ -0,0 +1,199 @@
+/*
+ * linux/arch/mips/jz4750d/common/setup.c
@ -28570,8 +28570,8 @@
+ jz_board_setup();
+}
+
--- linux-2.6.24.7.old/arch/mips/jz4750d/time.c 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/jz4750d/time.c 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/jz4750d/time.c
@@ -0,0 +1,156 @@
+/*
+ * linux/arch/mips/jz4750d/time.c
@ -28729,20 +28729,20 @@
+
+ jz_timer_setup();
+}
--- linux-2.6.24.7.old/arch/mips/kernel/cpu-probe.c 2008-05-07 01:22:34.000000000 +0200
+++ linux-2.6.24.7/arch/mips/kernel/cpu-probe.c 2009-04-12 18:13:57.000000000 +0200
@@ -160,6 +160,7 @@
--- a/arch/mips/kernel/cpu-probe.c
+++ b/arch/mips/kernel/cpu-probe.c
@@ -154,6 +154,7 @@ void __init check_wait(void)
case CPU_25KF:
case CPU_PR4450:
case CPU_BCM3302:
+ case CPU_JZRISC:
cpu_wait = r4k_wait;
break;
@@ -860,6 +860,23 @@
}
@@ -860,6 +861,23 @@ static inline void cpu_probe_nxp(struct
}
}
+static inline void cpu_probe_ingenic(struct cpuinfo_mips *c, unsigned int cpu)
+{
+ decode_configs(c);
@ -28762,23 +28762,23 @@
+
static inline void cpu_probe_broadcom(struct cpuinfo_mips *c, unsigned int cpu)
{
decode_configs(c);
@@ -909,6 +926,9 @@
case PRID_COMP_NXP:
cpu_probe_nxp(c, cpu);
break;
decode_configs(c);
@@ -909,6 +927,9 @@ __cpuinit void cpu_probe(void)
case PRID_COMP_NXP:
cpu_probe_nxp(c, cpu);
break;
+ case PRID_COMP_INGENIC:
+ cpu_probe_ingenic(c, cpu);
+ break;
}
BUG_ON(!__cpu_name[cpu]);
--- linux-2.6.24.7.old/arch/mips/mm/c-r4k.c 2008-05-07 01:22:34.000000000 +0200
+++ linux-2.6.24.7/arch/mips/mm/c-r4k.c 2009-04-12 18:13:57.000000000 +0200
@@ -874,6 +874,36 @@
}
BUG_ON(!__cpu_name[cpu]);
--- a/arch/mips/mm/c-r4k.c
+++ b/arch/mips/mm/c-r4k.c
@@ -895,6 +895,36 @@ static void __cpuinit probe_pcache(void)
c->dcache.waybit = 0;
break;
+ case CPU_JZRISC:
+ config1 = read_c0_config1();
+ config1 = (config1 >> 22) & 0x07;
@ -28812,23 +28812,23 @@
default:
if (!(config & MIPS_CONF_M))
panic("Don't know how to probe P-caches on this cpu.");
--- linux-2.6.24.7.old/arch/mips/mm/cache.c 2008-05-07 01:22:34.000000000 +0200
+++ linux-2.6.24.7/arch/mips/mm/cache.c 2009-04-12 18:13:57.000000000 +0200
@@ -47,6 +47,8 @@
--- a/arch/mips/mm/cache.c
+++ b/arch/mips/mm/cache.c
@@ -51,6 +51,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 */
--- linux-2.6.24.7.old/arch/mips/mm/tlbex.c 2009-04-12 18:05:07.000000000 +0200
+++ linux-2.6.24.7/arch/mips/mm/tlbex.c 2009-04-12 18:13:57.000000000 +0200
@@ -981,6 +981,11 @@
--- a/arch/mips/mm/tlbex.c
+++ b/arch/mips/mm/tlbex.c
@@ -379,6 +379,11 @@ static void __cpuinit build_tlb_write_en
tlbw(p);
break;
+ case CPU_JZRISC:
+ tlbw(p);
+ uasm_i_nop(p);

File diff suppressed because it is too large Load Diff

View File

@ -1,9 +1,9 @@
--- linux-2.6.24.7.old/arch/mips/include/asm/bootinfo.h 2008-05-07 01:22:34.000000000 +0200
+++ linux-2.6.24.7/arch/mips/include/asm/bootinfo.h 2009-04-12 18:13:57.000000000 +0200
--- a/arch/mips/include/asm/bootinfo.h
+++ b/arch/mips/include/asm/bootinfo.h
@@ -57,6 +57,14 @@
#define MACH_MIKROTIK_RB532 0 /* Mikrotik RouterBoard 532 */
#define MACH_MIKROTIK_RB532 0 /* Mikrotik RouterBoard 532 */
#define MACH_MIKROTIK_RB532A 1 /* Mikrotik RouterBoard 532A */
+/*
+ * Valid machtype for group INGENIC
+ */
@ -13,21 +13,21 @@
+#define MACH_INGENIC_JZ4750D 3 /* JZ4750D SOC */
+
#define CL_SIZE COMMAND_LINE_SIZE
extern char *system_type;
--- linux-2.6.24.7.old/arch/mips/include/asm/cpu.h 2008-05-07 01:22:34.000000000 +0200
+++ linux-2.6.24.7/arch/mips/include/asm/cpu.h 2009-04-12 18:13:57.000000000 +0200
--- a/arch/mips/include/asm/cpu.h
+++ b/arch/mips/include/asm/cpu.h
@@ -33,6 +33,7 @@
#define PRID_COMP_TOSHIBA 0x070000
#define PRID_COMP_LSI 0x080000
#define PRID_COMP_LEXRA 0x0b0000
+#define PRID_COMP_INGENIC 0xd00000
/*
@@ -113,6 +114,12 @@
@@ -114,6 +115,12 @@
#define PRID_IMP_BCM3302 0x9000
/*
+ * These are the PRID's for when 23:16 == PRID_COMP_INGENIC
+ */
@ -37,11 +37,11 @@
+/*
* Definitions for 7:0 on legacy processors
*/
@@ -203,6 +210,11 @@
@@ -204,6 +211,11 @@ enum cpu_type_enum {
*/
CPU_5KC, CPU_20KC, CPU_25KF, CPU_SB1, CPU_SB1A, CPU_LOONGSON2,
+ /*
+ * Ingenic class processors
+ */
@ -49,9 +49,9 @@
+
CPU_LAST
};
--- linux-2.6.24.7.old/arch/mips/include/asm/jzsoc.h 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/include/asm/jzsoc.h 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/include/asm/jzsoc.h
@@ -0,0 +1,49 @@
+/*
+ * linux/arch/mips/include/asm/jzsoc.h
@ -102,19 +102,19 @@
+#define writel(b,addr) ((*(volatile unsigned int *)(addr)) = (b))
+
+#endif /* __ASM_JZSOC_H__ */
--- linux-2.6.24.7.old/arch/mips/include/asm/mach-generic/irq.h 2008-05-07 01:22:34.000000000 +0200
+++ linux-2.6.24.7/arch/mips/include/asm/mach-generic/irq.h 2009-04-12 18:13:57.000000000 +0200
--- a/arch/mips/include/asm/mach-generic/irq.h
+++ b/arch/mips/include/asm/mach-generic/irq.h
@@ -9,7 +9,7 @@
#define __ASM_MACH_GENERIC_IRQ_H
#ifndef NR_IRQS
-#define NR_IRQS 128
+#define NR_IRQS 256
#endif
#ifdef CONFIG_I8259
--- linux-2.6.24.7.old/arch/mips/include/asm/mach-jz4730/board-pmp.h 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/include/asm/mach-jz4730/board-pmp.h 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/include/asm/mach-jz4730/board-pmp.h
@@ -0,0 +1,83 @@
+/*
+ * linux/arch/mips/include/asm/mach-jz4730/board-pmp.h
@ -199,8 +199,8 @@
+})
+
+#endif /* __ASM_JZ4730_PMP_H__ */
--- linux-2.6.24.7.old/arch/mips/include/asm/mach-jz4730/clock.h 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/include/asm/mach-jz4730/clock.h 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/include/asm/mach-jz4730/clock.h
@@ -0,0 +1,184 @@
+/*
+ * linux/arch/mips/include/asm/mach-jz4730/clock.h
@ -386,8 +386,8 @@
+}
+
+#endif /* __ASM_JZ4730_CLOCK_H__ */
--- linux-2.6.24.7.old/arch/mips/include/asm/mach-jz4730/dma.h 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/include/asm/mach-jz4730/dma.h 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/include/asm/mach-jz4730/dma.h
@@ -0,0 +1,272 @@
+/*
+ * linux/arch/mips/include/asm/mach-jz4730/dma.h
@ -661,8 +661,8 @@
+}
+
+#endif /* __ASM_JZ4730_DMA_H__ */
--- linux-2.6.24.7.old/arch/mips/include/asm/mach-jz4730/jz4730.h 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/include/asm/mach-jz4730/jz4730.h 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/include/asm/mach-jz4730/jz4730.h
@@ -0,0 +1,40 @@
+/*
+ * linux/arch/mips/include/asm/mach-jz4730/jz4730.h
@ -704,8 +704,8 @@
+#include <asm/mach-jz4730/serial.h>
+
+#endif /* __ASM_JZ4730_H__ */
--- linux-2.6.24.7.old/arch/mips/include/asm/mach-jz4730/misc.h 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/include/asm/mach-jz4730/misc.h 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/include/asm/mach-jz4730/misc.h
@@ -0,0 +1,28 @@
+/*
+ * linux/arch/mips/include/asm/mach-jz4730/misc.h
@ -735,8 +735,8 @@
+extern int i2c_write(unsigned char, unsigned char *, unsigned char, int);
+
+#endif /* __ASM_JZ4730_MISC_H__ */
--- linux-2.6.24.7.old/arch/mips/include/asm/mach-jz4730/ops.h 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/include/asm/mach-jz4730/ops.h 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/include/asm/mach-jz4730/ops.h
@@ -0,0 +1,2541 @@
+/*
+ * linux/arch/mips/include/asm/mach-jz4730/ops.h
@ -3279,8 +3279,8 @@
+#define __ssi_transmit_data(v) ( REG_SSI_DR = (v) )
+
+#endif /* __ASM_JZ4730_OPS_H__ */
--- linux-2.6.24.7.old/arch/mips/include/asm/mach-jz4730/regs.h 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/include/asm/mach-jz4730/regs.h 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/include/asm/mach-jz4730/regs.h
@@ -0,0 +1,2550 @@
+/*
+ * linux/arch/mips/include/asm/mach-jz4730/regs.h
@ -5832,8 +5832,8 @@
+#define SSI_ITR_IVLTM_MASK (0x7fff << SSI_ITR_IVLTM_BIT)
+
+#endif /* __ASM_JZ4730_REGS_H__ */
--- linux-2.6.24.7.old/arch/mips/include/asm/mach-jz4730/serial.h 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/include/asm/mach-jz4730/serial.h 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/include/asm/mach-jz4730/serial.h
@@ -0,0 +1,33 @@
+/*
+ * linux/arch/mips/include/asm/mach-jz4730/serial.h
@ -5868,8 +5868,8 @@
+ .iomem_reg_shift = 2, .io_type = SERIAL_IO_MEM },
+
+#endif /* __ASM_JZ4730_SERIAL_H__ */
--- linux-2.6.24.7.old/arch/mips/include/asm/mach-jz4730/war.h 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/include/asm/mach-jz4730/war.h 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/include/asm/mach-jz4730/war.h
@@ -0,0 +1,25 @@
+/*
+ * This file is subject to the terms and conditions of the GNU General Public
@ -5896,8 +5896,8 @@
+#define MIPS34K_MISSED_ITLB_WAR 0
+
+#endif /* __ASM_MIPS_MACH_JZ4740_WAR_H */
--- linux-2.6.24.7.old/arch/mips/include/asm/mach-jz4740/board-dipper.h 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/include/asm/mach-jz4740/board-dipper.h 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/include/asm/mach-jz4740/board-dipper.h
@@ -0,0 +1,69 @@
+/*
+ * linux/arch/mips/include/asm/mach-jz4740/board-dipper.h
@ -5968,8 +5968,8 @@
+})
+
+#endif /* __ASM_JZ4740_DIPPER_H__ */
--- linux-2.6.24.7.old/arch/mips/include/asm/mach-jz4740/board-leo.h 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/include/asm/mach-jz4740/board-leo.h 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/include/asm/mach-jz4740/board-leo.h
@@ -0,0 +1,56 @@
+#ifndef __ASM_JZ4740_LEO_H__
+#define __ASM_JZ4740_LEO_H__
@ -6027,8 +6027,8 @@
+})
+
+#endif /* __ASM_JZ4740_BOARD_LEO_H__ */
--- linux-2.6.24.7.old/arch/mips/include/asm/mach-jz4740/board-lyra.h 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/include/asm/mach-jz4740/board-lyra.h 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/include/asm/mach-jz4740/board-lyra.h
@@ -0,0 +1,70 @@
+/*
+ * linux/arch/mips/include/asm/mach-jz4740/board-lyra.h
@ -6100,8 +6100,8 @@
+})
+
+#endif /* __ASM_JZ4740_LYRA_H__ */
--- linux-2.6.24.7.old/arch/mips/include/asm/mach-jz4740/board-pavo.h 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/include/asm/mach-jz4740/board-pavo.h 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/include/asm/mach-jz4740/board-pavo.h
@@ -0,0 +1,70 @@
+/*
+ * linux/arch/mips/include/asm/mach-jz4740/board-pavo.h
@ -6173,8 +6173,8 @@
+})
+
+#endif /* __ASM_JZ4740_PAVO_H__ */
--- linux-2.6.24.7.old/arch/mips/include/asm/mach-jz4740/board-virgo.h 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/include/asm/mach-jz4740/board-virgo.h 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/include/asm/mach-jz4740/board-virgo.h
@@ -0,0 +1,67 @@
+/*
+ * linux/arch/mips/include/asm/mach-jz4740/board-virgo.h
@ -6243,8 +6243,8 @@
+})
+
+#endif /* __ASM_JZ4720_VIRGO_H__ */
--- linux-2.6.24.7.old/arch/mips/include/asm/mach-jz4740/clock.h 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/include/asm/mach-jz4740/clock.h 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/include/asm/mach-jz4740/clock.h
@@ -0,0 +1,173 @@
+/*
+ * linux/arch/mips/include/asm/mach-jz4740/clock.h
@ -6419,8 +6419,8 @@
+}
+
+#endif /* __ASM_JZ4740_CLOCK_H__ */
--- linux-2.6.24.7.old/arch/mips/include/asm/mach-jz4740/dma.h 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/include/asm/mach-jz4740/dma.h 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/include/asm/mach-jz4740/dma.h
@@ -0,0 +1,265 @@
+/*
+ * linux/arch/mips/include/asm/mach-jz4740/dma.h
@ -6687,8 +6687,8 @@
+}
+
+#endif /* __ASM_JZ4740_DMA_H__ */
--- linux-2.6.24.7.old/arch/mips/include/asm/mach-jz4740/jz4740.h 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/include/asm/mach-jz4740/jz4740.h 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/include/asm/mach-jz4740/jz4740.h
@@ -0,0 +1,56 @@
+/*
+ * linux/arch/mips/include/asm/mach-jz4740/jz4740.h
@ -6746,8 +6746,8 @@
+#include <asm/mach-jz4740/serial.h>
+
+#endif /* __ASM_JZ4740_H__ */
--- linux-2.6.24.7.old/arch/mips/include/asm/mach-jz4740/misc.h 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/include/asm/mach-jz4740/misc.h 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/include/asm/mach-jz4740/misc.h
@@ -0,0 +1,43 @@
+/*
+ * linux/arch/mips/include/asm/mach-jz4740/misc.h
@ -6792,8 +6792,8 @@
+ unsigned char address, int count);
+
+#endif /* __ASM_JZ4740_MISC_H__ */
--- linux-2.6.24.7.old/arch/mips/include/asm/mach-jz4740/ops.h 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/include/asm/mach-jz4740/ops.h 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/include/asm/mach-jz4740/ops.h
@@ -0,0 +1,2224 @@
+/*
+ * linux/arch/mips/include/asm/mach-jz4740/ops.h
@ -9019,8 +9019,8 @@
+
+
+#endif /* __JZ4740_OPS_H__ */
--- linux-2.6.24.7.old/arch/mips/include/asm/mach-jz4740/regs.h 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/include/asm/mach-jz4740/regs.h 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/include/asm/mach-jz4740/regs.h
@@ -0,0 +1,2392 @@
+/*
+ * linux/arch/mips/include/asm/mach-jz4740/regs.h
@ -11414,8 +11414,8 @@
+#define USB_CNTL_BURST_16 (3 << 9)
+
+#endif /* __JZ4740_REGS_H__ */
--- linux-2.6.24.7.old/arch/mips/include/asm/mach-jz4740/serial.h 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/include/asm/mach-jz4740/serial.h 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/include/asm/mach-jz4740/serial.h
@@ -0,0 +1,30 @@
+/*
+ * linux/arch/mips/include/asm/mach-jz4740/serial.h
@ -11447,8 +11447,8 @@
+ .iomem_reg_shift = 2, .io_type = SERIAL_IO_MEM },
+
+#endif /* __ASM_BORAD_SERIAL_H__ */
--- linux-2.6.24.7.old/arch/mips/include/asm/mach-jz4740/war.h 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/include/asm/mach-jz4740/war.h 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/include/asm/mach-jz4740/war.h
@@ -0,0 +1,25 @@
+/*
+ * This file is subject to the terms and conditions of the GNU General Public
@ -11475,8 +11475,8 @@
+#define MIPS34K_MISSED_ITLB_WAR 0
+
+#endif /* __ASM_MIPS_MACH_JZ4740_WAR_H */
--- linux-2.6.24.7.old/arch/mips/include/asm/mach-jz4750/board-apus.h 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/include/asm/mach-jz4750/board-apus.h 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/include/asm/mach-jz4750/board-apus.h
@@ -0,0 +1,119 @@
+/*
+ * linux/arch/mips/include/asm/mach-jz4750/board-apus.h
@ -11597,8 +11597,8 @@
+})
+
+#endif /* __ASM_JZ4750_APUS_H__ */
--- linux-2.6.24.7.old/arch/mips/include/asm/mach-jz4750/board-fuwa.h 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/include/asm/mach-jz4750/board-fuwa.h 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/include/asm/mach-jz4750/board-fuwa.h
@@ -0,0 +1,93 @@
+/*
+ * linux/arch/mips/include/asm/mach-jz4750/board-fuwa.h
@ -11693,8 +11693,8 @@
+})
+
+#endif /* __ASM_JZ4750_FUWA_H__ */
--- linux-2.6.24.7.old/arch/mips/include/asm/mach-jz4750/clock.h 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/include/asm/mach-jz4750/clock.h 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/include/asm/mach-jz4750/clock.h
@@ -0,0 +1,204 @@
+/*
+ * linux/arch/mips/include/asm/mach-jz4750/clock.h
@ -11900,8 +11900,8 @@
+}
+
+#endif /* __ASM_JZ4750_CLOCK_H__ */
--- linux-2.6.24.7.old/arch/mips/include/asm/mach-jz4750/dma.h 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/include/asm/mach-jz4750/dma.h 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/include/asm/mach-jz4750/dma.h
@@ -0,0 +1,307 @@
+/*
+ * linux/arch/mips/include/asm/mach-jz4750/dma.h
@ -12210,8 +12210,8 @@
+}
+
+#endif /* __ASM_JZ4750_DMA_H__ */
--- linux-2.6.24.7.old/arch/mips/include/asm/mach-jz4750/jz4750.h 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/include/asm/mach-jz4750/jz4750.h 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/include/asm/mach-jz4750/jz4750.h
@@ -0,0 +1,44 @@
+/*
+ * linux/arch/mips/include/asm/mach-jz4750/jz4750.h
@ -12257,8 +12257,8 @@
+#include <asm/mach-jz4750/serial.h>
+
+#endif /* __ASM_JZ4750_H__ */
--- linux-2.6.24.7.old/arch/mips/include/asm/mach-jz4750/misc.h 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/include/asm/mach-jz4750/misc.h 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/include/asm/mach-jz4750/misc.h
@@ -0,0 +1,44 @@
+/*
+ * linux/arch/mips/include/asm/mach-jz4750/misc.h
@ -12304,8 +12304,8 @@
+ unsigned char address, int count);
+
+#endif /* __ASM_JZ4750_MISC_H__ */
--- linux-2.6.24.7.old/arch/mips/include/asm/mach-jz4750/ops.h 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/include/asm/mach-jz4750/ops.h 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/include/asm/mach-jz4750/ops.h
@@ -0,0 +1,3569 @@
+/*
+ * linux/arch/mips/include/asm/mach-jz4750/ops.h
@ -15876,8 +15876,8 @@
+
+
+#endif /* __JZ4750_OPS_H__ */
--- linux-2.6.24.7.old/arch/mips/include/asm/mach-jz4750/regs.h 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/include/asm/mach-jz4750/regs.h 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/include/asm/mach-jz4750/regs.h
@@ -0,0 +1,3411 @@
+/*
+ * linux/arch/mips/include/asm/mach-jz4750/regs.h
@ -19290,8 +19290,8 @@
+
+
+#endif /* __JZ4750_REGS_H__ */
--- linux-2.6.24.7.old/arch/mips/include/asm/mach-jz4750/serial.h 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/include/asm/mach-jz4750/serial.h 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/include/asm/mach-jz4750/serial.h
@@ -0,0 +1,30 @@
+/*
+ * linux/arch/mips/include/asm/mach-jz4750/serial.h
@ -19323,8 +19323,8 @@
+ .iomem_reg_shift = 2, .io_type = SERIAL_IO_MEM },
+
+#endif /* __ASM_BORAD_SERIAL_H__ */
--- linux-2.6.24.7.old/arch/mips/include/asm/mach-jz4750/war.h 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/include/asm/mach-jz4750/war.h 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/include/asm/mach-jz4750/war.h
@@ -0,0 +1,25 @@
+/*
+ * This file is subject to the terms and conditions of the GNU General Public
@ -19351,8 +19351,8 @@
+#define MIPS34K_MISSED_ITLB_WAR 0
+
+#endif /* __ASM_MIPS_MACH_JZ4740_WAR_H */
--- linux-2.6.24.7.old/arch/mips/include/asm/mach-jz4750d/board-fuwa1.h 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/include/asm/mach-jz4750d/board-fuwa1.h 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/include/asm/mach-jz4750d/board-fuwa1.h
@@ -0,0 +1,124 @@
+/*
+ * linux/arch/mips/include/asm/mach-jz4750d/board-fuwa1.h
@ -19478,8 +19478,8 @@
+})
+
+#endif /* __ASM_JZ4750d_FUWA1_H__ */
--- linux-2.6.24.7.old/arch/mips/include/asm/mach-jz4750d/clock.h 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/include/asm/mach-jz4750d/clock.h 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/include/asm/mach-jz4750d/clock.h
@@ -0,0 +1,230 @@
+/*
+ * linux/arch/mips/include/asm/mach-jz4750d/clock.h
@ -19711,8 +19711,8 @@
+}
+
+#endif /* __ASM_JZ4750D_CLOCK_H__ */
--- linux-2.6.24.7.old/arch/mips/include/asm/mach-jz4750d/dma.h 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/include/asm/mach-jz4750d/dma.h 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/include/asm/mach-jz4750d/dma.h
@@ -0,0 +1,307 @@
+/*
+ * linux/arch/mips/include/asm/mach-jz4750d/dma.h
@ -20021,8 +20021,8 @@
+}
+
+#endif /* __ASM_JZ4750D_DMA_H__ */
--- linux-2.6.24.7.old/arch/mips/include/asm/mach-jz4750d/jz4750d.h 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/include/asm/mach-jz4750d/jz4750d.h 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/include/asm/mach-jz4750d/jz4750d.h
@@ -0,0 +1,40 @@
+/*
+ * linux/arch/mips/include/asm/mach-jz4750d/jz4750d.h
@ -20064,8 +20064,8 @@
+#include <asm/mach-jz4750d/serial.h>
+
+#endif /* __ASM_JZ4750_H__ */
--- linux-2.6.24.7.old/arch/mips/include/asm/mach-jz4750d/misc.h 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/include/asm/mach-jz4750d/misc.h 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/include/asm/mach-jz4750d/misc.h
@@ -0,0 +1,44 @@
+/*
+ * linux/arch/mips/include/asm/mach-jz4750d/misc.h
@ -20111,8 +20111,8 @@
+ unsigned char address, int count);
+
+#endif /* __ASM_JZ4750D_MISC_H__ */
--- linux-2.6.24.7.old/arch/mips/include/asm/mach-jz4750d/ops.h 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/include/asm/mach-jz4750d/ops.h 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/include/asm/mach-jz4750d/ops.h
@@ -0,0 +1,3450 @@
+/*
+ * linux/arch/mips/include/asm/mach-jz4750d/ops.h
@ -23564,8 +23564,8 @@
+
+
+#endif /* __JZ4750D_OPS_H__ */
--- linux-2.6.24.7.old/arch/mips/include/asm/mach-jz4750d/regs.h 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/include/asm/mach-jz4750d/regs.h 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/include/asm/mach-jz4750d/regs.h
@@ -0,0 +1,3398 @@
+/*
+ * linux/arch/mips/include/asm/mach-jz4750d/regs.h
@ -26965,8 +26965,8 @@
+
+
+#endif /* __JZ4750D_REGS_H__ */
--- linux-2.6.24.7.old/arch/mips/include/asm/mach-jz4750d/serial.h 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/include/asm/mach-jz4750d/serial.h 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/include/asm/mach-jz4750d/serial.h
@@ -0,0 +1,30 @@
+/*
+ * linux/arch/mips/include/asm/mach-jz4750d/serial.h
@ -26998,8 +26998,8 @@
+ .iomem_reg_shift = 2, .io_type = SERIAL_IO_MEM },
+
+#endif /* __ASM_BORAD_SERIAL_H__ */
--- linux-2.6.24.7.old/arch/mips/include/asm/mach-jz4750d/war.h 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/include/asm/mach-jz4750d/war.h 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/include/asm/mach-jz4750d/war.h
@@ -0,0 +1,25 @@
+/*
+ * This file is subject to the terms and conditions of the GNU General Public
@ -27026,23 +27026,23 @@
+#define MIPS34K_MISSED_ITLB_WAR 0
+
+#endif /* __ASM_MIPS_MACH_JZ4740_WAR_H */
--- linux-2.6.24.7.old/arch/mips/include/asm/ptrace.h 2008-05-07 01:22:34.000000000 +0200
+++ linux-2.6.24.7/arch/mips/include/asm/ptrace.h 2009-04-12 18:13:57.000000000 +0200
@@ -79,7 +79,7 @@
--- a/arch/mips/include/asm/ptrace.h
+++ b/arch/mips/include/asm/ptrace.h
@@ -131,7 +131,7 @@ extern int ptrace_set_watch_regs(struct
/*
* Does the process account for user or for system time?
*/
-#define user_mode(regs) (((regs)->cp0_status & KU_MASK) == KU_USER)
+#define user_mode(regs) ((((regs)->cp0_status & KU_MASK) == KU_USER) || (((regs)->cp0_status & 0x08000000) == 0x08000000))
#define instruction_pointer(regs) ((regs)->cp0_epc)
#define profile_pc(regs) instruction_pointer(regs)
--- linux-2.6.24.7.old/arch/mips/include/asm/r4kcache.h 2008-05-07 01:22:34.000000000 +0200
+++ linux-2.6.24.7/arch/mips/include/asm/r4kcache.h 2009-04-12 18:13:57.000000000 +0200
--- a/arch/mips/include/asm/r4kcache.h
+++ b/arch/mips/include/asm/r4kcache.h
@@ -17,6 +17,58 @@
#include <asm/cpu-features.h>
#include <asm/mipsmtregs.h>
+#ifdef CONFIG_JZRISC
+
+#define K0_TO_K1() \
@ -27098,63 +27098,63 @@
/*
* This macro return a properly sign-extended address suitable as base address
* for indexed cache operations. Two issues here:
@@ -144,6 +196,7 @@
@@ -144,6 +196,7 @@ static inline void flush_icache_line_ind
{
__iflush_prologue
cache_op(Index_Invalidate_I, addr);
+ INVALIDATE_BTB();
__iflush_epilogue
}
@@ -151,6 +204,7 @@
@@ -151,6 +204,7 @@ static inline void flush_dcache_line_ind
{
__dflush_prologue
cache_op(Index_Writeback_Inv_D, addr);
+ SYNC_WB();
__dflush_epilogue
}
@@ -163,6 +217,7 @@
@@ -163,6 +217,7 @@ static inline void flush_icache_line(uns
{
__iflush_prologue
cache_op(Hit_Invalidate_I, addr);
+ INVALIDATE_BTB();
__iflush_epilogue
}
@@ -170,6 +225,7 @@
@@ -170,6 +225,7 @@ static inline void flush_dcache_line(uns
{
__dflush_prologue
cache_op(Hit_Writeback_Inv_D, addr);
+ SYNC_WB();
__dflush_epilogue
}
@@ -177,6 +233,7 @@
@@ -177,6 +233,7 @@ static inline void invalidate_dcache_lin
{
__dflush_prologue
cache_op(Hit_Invalidate_D, addr);
+ SYNC_WB();
__dflush_epilogue
}
@@ -209,6 +266,7 @@
@@ -209,6 +266,7 @@ static inline void flush_scache_line(uns
static inline void protected_flush_icache_line(unsigned long addr)
{
protected_cache_op(Hit_Invalidate_I, addr);
+ INVALIDATE_BTB();
}
/*
@@ -220,6 +278,7 @@
@@ -220,6 +278,7 @@ static inline void protected_flush_icach
static inline void protected_writeback_dcache_line(unsigned long addr)
{
protected_cache_op(Hit_Writeback_Inv_D, addr);
+ SYNC_WB();
}
static inline void protected_writeback_scache_line(unsigned long addr)
@@ -396,8 +396,10 @@
@@ -396,8 +455,10 @@ static inline void blast_##pfx##cache##l
__BUILD_BLAST_CACHE(d, dcache, Index_Writeback_Inv_D, Hit_Writeback_Inv_D, 16)
__BUILD_BLAST_CACHE(i, icache, Index_Invalidate_I, Hit_Invalidate_I, 16)
__BUILD_BLAST_CACHE(s, scache, Index_Writeback_Inv_SD, Hit_Writeback_Inv_SD, 16)
@ -27165,10 +27165,10 @@
__BUILD_BLAST_CACHE(s, scache, Index_Writeback_Inv_SD, Hit_Writeback_Inv_SD, 32)
__BUILD_BLAST_CACHE(i, icache, Index_Invalidate_I, Hit_Invalidate_I, 64)
__BUILD_BLAST_CACHE(s, scache, Index_Writeback_Inv_SD, Hit_Writeback_Inv_SD, 64)
@@ -410,6 +410,114 @@
@@ -410,6 +471,114 @@ __BUILD_BLAST_CACHE(inv_s, scache, Index
__BUILD_BLAST_CACHE(inv_s, scache, Index_Writeback_Inv_SD, Hit_Invalidate_SD, 64)
__BUILD_BLAST_CACHE(inv_s, scache, Index_Writeback_Inv_SD, Hit_Invalidate_SD, 128)
+#ifdef CONFIG_JZRISC
+
+static inline void blast_dcache32(void)
@ -27280,10 +27280,10 @@
/* build blast_xxx_range, protected_blast_xxx_range */
#define __BUILD_BLAST_CACHE_RANGE(pfx, desc, hitop, prot) \
static inline void prot##blast_##pfx##cache##_range(unsigned long start, \
@@ -424,13 +593,73 @@
@@ -431,13 +600,73 @@ static inline void prot##blast_##pfx##ca
__##pfx##flush_epilogue \
}
+#ifndef CONFIG_JZRISC
__BUILD_BLAST_CACHE_RANGE(d, dcache, Hit_Writeback_Inv_D, protected_)
+#endif
@ -27296,7 +27296,7 @@
/* blast_inv_dcache_range */
__BUILD_BLAST_CACHE_RANGE(inv_d, dcache, Hit_Invalidate_D, )
__BUILD_BLAST_CACHE_RANGE(inv_s, scache, Hit_Invalidate_SD, )
+#ifdef CONFIG_JZRISC
+
+static inline void protected_blast_dcache_range(unsigned long start,
@ -27354,8 +27354,8 @@
+#endif /* CONFIG_JZRISC */
+
#endif /* _ASM_R4KCACHE_H */
--- linux-2.6.24.7.old/arch/mips/include/asm/sizes.h 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/arch/mips/include/asm/sizes.h 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/arch/mips/include/asm/sizes.h
@@ -0,0 +1,56 @@
+/*
+ * This program is free software; you can redistribute it and/or modify
@ -27413,43 +27413,43 @@
+#endif
+
+/* END */
--- linux-2.6.24.7.old/include/linux/i2c-dev.h 2008-05-07 01:22:34.000000000 +0200
+++ linux-2.6.24.7/include/linux/i2c-dev.h 2009-04-12 18:13:57.000000000 +0200
--- a/include/linux/i2c-dev.h
+++ b/include/linux/i2c-dev.h
@@ -49,7 +49,8 @@
#define I2C_PEC 0x0708 /* != 0 to use PEC with SMBus */
#define I2C_SMBUS 0x0720 /* SMBus transfer */
-
+#define I2C_SET_SUB_ADDRESS 0x0730 /* SMBus transfer */
+#define I2C_SET_CLOCK 0x0731 /* SMBus transfer */
/* This is the structure as used in the I2C_SMBUS ioctl call */
struct i2c_smbus_ioctl_data {
@@ -71,4 +72,5 @@
@@ -71,4 +72,5 @@ struct i2c_rdwr_ioctl_data {
#define I2C_MAJOR 89 /* Device major number */
#endif
+extern void i2c_jz_setclk(unsigned int i2cclk);
#endif /* _LINUX_I2C_DEV_H */
--- linux-2.6.24.7.old/include/linux/mmc/host.h 2008-05-07 01:22:34.000000000 +0200
+++ linux-2.6.24.7/include/linux/mmc/host.h 2009-04-12 18:13:57.000000000 +0200
@@ -41,6 +41,7 @@
--- a/include/linux/mmc/host.h
+++ b/include/linux/mmc/host.h
@@ -41,6 +41,7 @@ struct mmc_ios {
#define MMC_BUS_WIDTH_1 0
#define MMC_BUS_WIDTH_4 2
+#define MMC_BUS_WIDTH_8 4
unsigned char timing; /* timing specification used */
--- linux-2.6.24.7.old/include/linux/mtd/nand.h 2009-04-12 18:05:07.000000000 +0200
+++ linux-2.6.24.7/include/linux/mtd/nand.h 2009-04-12 18:13:57.000000000 +0200
@@ -39,14 +39,14 @@
--- a/include/linux/mtd/nand.h
+++ b/include/linux/mtd/nand.h
@@ -37,14 +37,14 @@ extern void nand_release (struct mtd_inf
extern void nand_wait_ready(struct mtd_info *mtd);
/* The maximum number of NAND chips in an array */
-#define NAND_MAX_CHIPS 8
+#define NAND_MAX_CHIPS 4
/* This constant declares the max. oobsize / page, which
* is supported now. If you add a chip with bigger oobsize/page
* adjust this accordingly.
@ -27458,10 +27458,10 @@
-#define NAND_MAX_PAGESIZE 2048
+#define NAND_MAX_OOBSIZE 256
+#define NAND_MAX_PAGESIZE 8192
/*
* Constants for hardware specific CLE/ALE/NCE function
@@ -55,6 +55,10 @@
@@ -53,6 +53,10 @@ extern void nand_wait_ready(struct mtd_i
* bits in one go.
*/
/* Select the chip by setting nCE to low */
@ -27472,7 +27472,7 @@
#define NAND_NCE 0x01
/* Select the command latch by setting CLE to high */
#define NAND_CLE 0x02
@@ -372,8 +376,8 @@
@@ -378,8 +382,8 @@ struct nand_chip {
void (*read_buf)(struct mtd_info *mtd, uint8_t *buf, int len);
int (*verify_buf)(struct mtd_info *mtd, const uint8_t *buf, int len);
void (*select_chip)(struct mtd_info *mtd, int chip);
@ -27483,7 +27483,7 @@
void (*cmd_ctrl)(struct mtd_info *mtd, int dat,
unsigned int ctrl);
int (*dev_ready)(struct mtd_info *mtd);
@@ -393,12 +397,14 @@
@@ -399,12 +403,14 @@ struct nand_chip {
int bbt_erase_shift;
int chip_shift;
int numchips;
@ -27496,10 +27496,10 @@
int badblockpos;
+ int realplanenum; /* number of planes the NAND has */
+ int planenum; /* number of planes operating synchronously */
nand_state_t state;
@@ -450,7 +456,7 @@
@@ -456,7 +462,7 @@ struct nand_flash_dev {
char *name;
int id;
unsigned long pagesize;
@ -27508,9 +27508,9 @@
unsigned long erasesize;
unsigned long options;
};
@@ -538,13 +544,13 @@
@@ -544,13 +550,13 @@ struct nand_bbt_descr {
#define NAND_BBT_SCAN_MAXBLOCKS 4
extern int nand_scan_bbt(struct mtd_info *mtd, struct nand_bbt_descr *bd);
-extern int nand_update_bbt(struct mtd_info *mtd, loff_t offs);
+extern int nand_update_bbt(struct mtd_info *mtd, loff_mtd_t offs);
@ -27523,12 +27523,12 @@
- size_t * retlen, uint8_t * buf);
+extern int nand_do_read(struct mtd_info *mtd, loff_mtd_t from, size_mtd_t len,
+ size_mtd_t * retlen, uint8_t * buf);
/*
* Constants for oob configuration
--- linux-2.6.24.7.old/include/linux/vt.h 2008-05-07 01:22:34.000000000 +0200
+++ linux-2.6.24.7/include/linux/vt.h 2009-04-12 18:13:57.000000000 +0200
@@ -18,10 +18,16 @@
--- a/include/linux/vt.h
+++ b/include/linux/vt.h
@@ -18,10 +18,16 @@ extern int unregister_vt_notifier(struct
* resizing).
*/
#define MIN_NR_CONSOLES 1 /* must be at least 1 */
@ -27546,15 +27546,15 @@
+ /* Note: the ioctl VT_GETSTATE does not work for
+ consoles 16 and higher (since it returns a short) */
+#endif
/* 0x56 is 'V', to avoid collision with termios and kd */
--- linux-2.6.24.7.old/include/mtd/mtd-abi.h 2009-04-12 18:05:07.000000000 +0200
+++ linux-2.6.24.7/include/mtd/mtd-abi.h 2009-04-12 18:23:10.000000000 +0200
@@ -7,9 +7,18 @@
--- a/include/mtd/mtd-abi.h
+++ b/include/mtd/mtd-abi.h
@@ -5,9 +5,18 @@
#ifndef __MTD_ABI_H__
#define __MTD_ABI_H__
+
+#ifndef __KERNEL__ /* Urgh. The whole point of splitting this out into
+ separate files was to avoid #ifdef __KERNEL__ */
@ -27570,12 +27570,12 @@
+ uint64_t start;
+ uint64_t length;
};
struct mtd_oob_buf {
@@ -18,6 +27,14 @@
@@ -16,6 +25,14 @@ struct mtd_oob_buf {
unsigned char __user *ptr;
};
+struct mtd_page_buf {
+ uint32_t start; //page start address
+ uint32_t ooblength;
@ -27587,7 +27587,7 @@
#define MTD_ABSENT 0
#define MTD_RAM 1
#define MTD_ROM 2
@@ -52,7 +69,7 @@
@@ -50,7 +67,7 @@ struct mtd_oob_buf {
struct mtd_info_user {
uint8_t type;
uint32_t flags;
@ -27596,16 +27596,16 @@
uint32_t erasesize;
uint32_t writesize;
uint32_t oobsize; // Amount of OOB data per block (e.g. 16)
@@ -63,7 +80,7 @@
@@ -61,7 +78,7 @@ struct mtd_info_user {
};
struct region_info_user {
- uint32_t offset; /* At which this region starts,
+ uint64_t offset; /* At which this region starts,
* from the beginning of the MTD */
uint32_t erasesize; /* For this region */
uint32_t numblocks; /* Number of blocks in this region */
@@ -86,8 +103,8 @@
@@ -84,8 +101,8 @@ struct otp_info {
#define MEMGETREGIONINFO _IOWR('M', 8, struct region_info_user)
#define MEMSETOOBSEL _IOW('M', 9, struct nand_oobinfo)
#define MEMGETOOBSEL _IOR('M', 10, struct nand_oobinfo)
@ -27616,24 +27616,24 @@
#define OTPSELECT _IOR('M', 13, int)
#define OTPGETREGIONCOUNT _IOW('M', 14, int)
#define OTPGETREGIONINFO _IOW('M', 15, struct otp_info)
@@ -95,6 +112,7 @@
@@ -93,6 +110,7 @@ struct otp_info {
#define ECCGETLAYOUT _IOR('M', 17, struct nand_ecclayout)
#define ECCGETSTATS _IOR('M', 18, struct mtd_ecc_stats)
#define MTDFILEMODE _IO('M', 19)
+#define MEMWRITEPAGE _IOWR('M', 20, struct mtd_page_buf)
#define MTDREFRESH _IO('M', 23)
/*
@@ -105,7 +123,7 @@
@@ -103,7 +121,7 @@ struct nand_oobinfo {
uint32_t useecc;
uint32_t eccbytes;
uint32_t oobfree[8][2];
- uint32_t eccpos[32];
+ uint32_t eccpos[104];
};
struct nand_oobfree {
@@ -120,7 +138,7 @@
@@ -118,7 +136,7 @@ struct nand_oobfree {
*/
struct nand_ecclayout {
uint32_t eccbytes;
@ -27642,9 +27642,9 @@
uint32_t oobavail;
struct nand_oobfree oobfree[MTD_MAX_OOBFREE_ENTRIES];
};
--- linux-2.6.24.7.old/include/sound/pcm.h 2008-05-07 01:22:34.000000000 +0200
+++ linux-2.6.24.7/include/sound/pcm.h 2009-04-12 18:13:57.000000000 +0200
@@ -107,23 +107,23 @@
--- a/include/sound/pcm.h
+++ b/include/sound/pcm.h
@@ -112,23 +112,23 @@ struct snd_pcm_ops {
#define SNDRV_PCM_RATE_5512 (1<<0) /* 5512Hz */
#define SNDRV_PCM_RATE_8000 (1<<1) /* 8000Hz */
#define SNDRV_PCM_RATE_11025 (1<<2) /* 11025Hz */
@ -27670,10 +27670,10 @@
+#define SNDRV_PCM_RATE_96000 (1<<12) /* 96000Hz */
+#define SNDRV_PCM_RATE_176400 (1<<13) /* 176400Hz */
+#define SNDRV_PCM_RATE_192000 (1<<14) /* 192000Hz */
#define SNDRV_PCM_RATE_CONTINUOUS (1<<30) /* continuous range */
#define SNDRV_PCM_RATE_KNOT (1<<31) /* supports more non-continuos rates */
-#define SNDRV_PCM_RATE_8000_44100 (SNDRV_PCM_RATE_8000|SNDRV_PCM_RATE_11025|\
- SNDRV_PCM_RATE_16000|SNDRV_PCM_RATE_22050|\
- SNDRV_PCM_RATE_32000|SNDRV_PCM_RATE_44100)

View File

@ -1,10 +1,10 @@
--- linux-2.6.24.7.old/init/do_mounts.c 2008-05-07 01:22:34.000000000 +0200
+++ linux-2.6.24.7/init/do_mounts.c 2009-04-12 18:13:57.000000000 +0200
@@ -378,6 +378,7 @@
--- a/init/do_mounts.c
+++ b/init/do_mounts.c
@@ -378,6 +378,7 @@ void __init prepare_namespace(void)
if (saved_root_name[0]) {
root_device_name = saved_root_name;
if (!strncmp(root_device_name, "mtd", 3) ||
root_device_name = saved_root_name;
if (!strncmp(root_device_name, "mtd", 3) ||
+ !strncmp(root_device_name, "mmc", 3) ||
!strncmp(root_device_name, "ubi", 3)) {
!strncmp(root_device_name, "ubi", 3)) {
mount_block_root(root_device_name, root_mountflags);
goto out;

View File

@ -1,36 +1,36 @@
--- linux-2.6.24.7.old/sound/core/pcm_native.c 2008-05-07 01:22:34.000000000 +0200
+++ linux-2.6.24.7/sound/core/pcm_native.c 2009-04-12 18:13:57.000000000 +0200
@@ -1780,12 +1780,13 @@
--- a/sound/core/pcm_native.c
+++ b/sound/core/pcm_native.c
@@ -1742,12 +1742,13 @@ static int snd_pcm_hw_rule_sample_bits(s
return snd_interval_refine(hw_param_interval(params, rule->var), &t);
}
-#if SNDRV_PCM_RATE_5512 != 1 << 0 || SNDRV_PCM_RATE_192000 != 1 << 12
+#if SNDRV_PCM_RATE_5512 != 1 << 0 || SNDRV_PCM_RATE_192000 != 1 << 14
#error "Change this table"
#endif
-static unsigned int rates[] = { 5512, 8000, 11025, 16000, 22050, 32000, 44100,
- 48000, 64000, 88200, 96000, 176400, 192000 };
+static unsigned int rates[] = { 5512, 8000, 11025, 12000, 16000, 22050, 24000,
+ 32000, 44100, 48000, 64000, 88200, 96000,
+ 176400, 192000 };
const struct snd_pcm_hw_constraint_list snd_pcm_known_rates = {
.count = ARRAY_SIZE(rates),
@@ -1758,6 +1758,7 @@
struct snd_pcm_hw_rule *rule)
@@ -1758,6 +1759,7 @@ static int snd_pcm_hw_rule_rate(struct s
struct snd_pcm_hw_rule *rule)
{
struct snd_pcm_hardware *hw = rule->private;
struct snd_pcm_hardware *hw = rule->private;
+ hw->rates = 0x3fe;//12KHz and 24KHz bits are all zero,you need set 1
return snd_interval_list(hw_param_interval(params, rule->var),
return snd_interval_list(hw_param_interval(params, rule->var),
snd_pcm_known_rates.count,
snd_pcm_known_rates.list, hw->rates);
--- linux-2.6.24.7.old/sound/oss/Kconfig 2008-05-07 01:22:34.000000000 +0200
+++ linux-2.6.24.7/sound/oss/Kconfig 2009-04-12 18:13:57.000000000 +0200
--- a/sound/oss/Kconfig
+++ b/sound/oss/Kconfig
@@ -5,6 +5,91 @@
#
# Prompt user for primary drivers.
+config OSS_OBSOLETE
+ bool "Obsolete OSS drivers"
+ depends on SOUND_PRIME
@ -118,11 +118,11 @@
+
config SOUND_BCM_CS4297A
tristate "Crystal Sound CS4297a (for Swarm)"
depends on SOUND_PRIME && SIBYTE_SWARM
@@ -15,6 +100,13 @@
depends on SIBYTE_SWARM
@@ -15,6 +100,13 @@ config SOUND_BCM_CS4297A
note that CONFIG_KGDB should not be enabled at the same
time, since it also attempts to use this UART port.
+config SOUND_ICH
+ tristate "Intel ICH (i8xx) audio support"
+ depends on SOUND_PRIME && PCI && OSS_OBSOLETE
@ -132,11 +132,11 @@
+
config SOUND_VWSND
tristate "SGI Visual Workstation Sound"
depends on SOUND_PRIME && X86_VISWS
@@ -31,6 +123,14 @@
Say Y or M if you have an SGI Indy or Indigo2 system and want to be able to
use its on-board A2 audio system.
depends on X86_VISWS
@@ -24,6 +116,14 @@ config SOUND_VWSND
<file:Documentation/sound/oss/vwsnd> for more info on this driver's
capabilities.
+config SOUND_VRC5477
+ tristate "NEC Vrc5477 AC97 sound"
+ depends on SOUND_PRIME && DDB5477
@ -147,11 +147,11 @@
+
config SOUND_AU1550_AC97
tristate "Au1550/Au1200 AC97 Sound"
select SND_AC97_CODEC
@@ -253,9 +253,29 @@
depends on SOC_AU1550 || SOC_AU1200
@@ -253,9 +353,29 @@ config MSND_FIFOSIZE
and Pinnacle). Larger values reduce the chance of data overruns at
the expense of overall latency. If unsure, use the default.
+config SOUND_VIA82CXXX
+ tristate "VIA 82C686 Audio Codec"
+ depends on SOUND_PRIME && PCI && OSS_OBSOLETE
@ -179,10 +179,10 @@
help
OSS is the Open Sound System suite of sound card drivers. They make
sound programming easier since they provide a common API. Say Y or
@@ -336,6 +456,20 @@
@@ -287,6 +407,20 @@ config SOUND_DMAP
Say Y unless you have 16MB or more RAM or a PCI sound card.
+config SOUND_CS4232
+ tristate "Crystal CS4232 based (PnP) cards"
+ depends on SOUND_OSS && OSS_OBSOLETE
@ -199,11 +199,11 @@
+
config SOUND_SSCAPE
tristate "Ensoniq SoundScape support"
depends on SOUND_OSS
@@ -642,6 +775,13 @@
help
@@ -553,6 +687,13 @@ config SOUND_WAVEARTIST
Say Y here to include support for the Rockwell WaveArtist sound
system. This driver is mainly for the NetWinder.
+config SOUND_TVMIXER
+ tristate "TV card (bt848) mixer support"
+ depends on SOUND_PRIME && I2C && VIDEO_V4L1 && OSS_OBSOLETE
@ -214,12 +214,12 @@
config SOUND_KAHLUA
tristate "XpressAudio Sound Blaster emulation"
depends on SOUND_SB
--- linux-2.6.24.7.old/sound/oss/Makefile 2008-05-07 01:22:34.000000000 +0200
+++ linux-2.6.24.7/sound/oss/Makefile 2009-04-12 18:13:57.000000000 +0200
@@ -10,6 +10,12 @@
--- a/sound/oss/Makefile
+++ b/sound/oss/Makefile
@@ -9,6 +9,12 @@ obj-$(CONFIG_SOUND_OSS) += sound.o
# Please leave it as is, cause the link order is significant !
+obj-$(CONFIG_SOUND_JZ_AC97) += jz_ac97.o ac97_codec.o
+obj-$(CONFIG_I2S_AK4642EN) += ak4642en.o
+obj-$(CONFIG_I2S_ICODEC) += jzcodec.o jz_i2s.o
@ -227,10 +227,10 @@
+obj-$(CONFIG_SOUND_JZ_PCM) += jz_pcm_tlv320aic1106_dma.o
+
obj-$(CONFIG_SOUND_SH_DAC_AUDIO) += sh_dac_audio.o
obj-$(CONFIG_SOUND_HAL2) += hal2.o
obj-$(CONFIG_SOUND_AEDSP16) += aedsp16.o
--- linux-2.6.24.7.old/sound/oss/ak4642en.c 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/sound/oss/ak4642en.c 2009-04-12 18:13:57.000000000 +0200
obj-$(CONFIG_SOUND_PSS) += pss.o ad1848.o mpu401.o
--- /dev/null
+++ b/sound/oss/ak4642en.c
@@ -0,0 +1,712 @@
+/*
+ * linux/sound/oss/ak4642en.c
@ -944,8 +944,8 @@
+
+module_init(init_ak4642en);
+module_exit(cleanup_ak4642en);
--- linux-2.6.24.7.old/sound/oss/jz_ac97.c 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/sound/oss/jz_ac97.c 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/sound/oss/jz_ac97.c
@@ -0,0 +1,2252 @@
+/*
+ * linux/drivers/sound/jz_ac97.c
@ -3199,8 +3199,8 @@
+
+}
+
--- linux-2.6.24.7.old/sound/oss/jz_i2s.c 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/sound/oss/jz_i2s.c 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/sound/oss/jz_i2s.c
@@ -0,0 +1,2894 @@
+/*
+ * linux/drivers/sound/Jz_i2s.c
@ -6096,8 +6096,8 @@
+ }
+}
+#endif
--- linux-2.6.24.7.old/sound/oss/jz_i2s_4750.c 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/sound/oss/jz_i2s_4750.c 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/sound/oss/jz_i2s_4750.c
@@ -0,0 +1,3010 @@
+/*
+ * linux/drivers/sound/Jz_i2s.c
@ -9109,8 +9109,8 @@
+ }
+}
+#endif
--- linux-2.6.24.7.old/sound/oss/jz_i2s_dlv_dma_test.c 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/sound/oss/jz_i2s_dlv_dma_test.c 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/sound/oss/jz_i2s_dlv_dma_test.c
@@ -0,0 +1,2808 @@
+/*
+ * linux/drivers/sound/jz_i2s_dlv.c
@ -11920,8 +11920,8 @@
+ }
+ return ret;
+}
--- linux-2.6.24.7.old/sound/oss/jz_i2s_for_4750.c 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/sound/oss/jz_i2s_for_4750.c 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/sound/oss/jz_i2s_for_4750.c
@@ -0,0 +1,2981 @@
+/*
+ * linux/drivers/sound/Jz_i2s.c
@ -14904,8 +14904,8 @@
+ }
+}
+#endif
--- linux-2.6.24.7.old/sound/oss/jz_pcm_tlv320aic1106_dma.c 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/sound/oss/jz_pcm_tlv320aic1106_dma.c 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/sound/oss/jz_pcm_tlv320aic1106_dma.c
@@ -0,0 +1,1839 @@
+/*
+ * linux/drivers/sound/jz_pcm_tlv320aic1106.c
@ -16746,8 +16746,8 @@
+ printk("REG_PCM_INTS : 0x%08x\n",REG_PCM_INTS);
+ printk("REG_PCM_DIV : 0x%08x\n",REG_PCM_DIV);
+}
--- linux-2.6.24.7.old/sound/oss/jzcodec.c 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/sound/oss/jzcodec.c 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/sound/oss/jzcodec.c
@@ -0,0 +1,443 @@
+/*
+ * linux/drivers/sound/jzcodec.c
@ -17192,8 +17192,8 @@
+
+module_init(init_jzcodec);
+module_exit(cleanup_jzcodec);
--- linux-2.6.24.7.old/sound/oss/jzdlv.c 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/sound/oss/jzdlv.c 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/sound/oss/jzdlv.c
@@ -0,0 +1,644 @@
+/*
+ * linux/drivers/sound/jzcodec.c
@ -17839,8 +17839,8 @@
+
+module_init(init_dlv);
+module_exit(cleanup_dlv);
--- linux-2.6.24.7.old/sound/oss/jzdlv.h 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/sound/oss/jzdlv.h 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/sound/oss/jzdlv.h
@@ -0,0 +1,21 @@
+/* header file for dlv */
+void write_codec_file(int addr, int val);
@ -17863,8 +17863,8 @@
+void unset_record_mic_input_audio_with_audio_data_replay(void);
+void set_record_line_input_audio_with_audio_data_replay(void);
+void unset_record_line_input_audio_with_audio_data_replay(void);
--- linux-2.6.24.7.old/sound/oss/os.h 2008-05-07 01:22:34.000000000 +0200
+++ linux-2.6.24.7/sound/oss/os.h 2009-04-12 18:13:57.000000000 +0200
--- a/sound/oss/os.h
+++ b/sound/oss/os.h
@@ -9,7 +9,6 @@
#ifdef __KERNEL__
#include <linux/string.h>
@ -17873,53 +17873,53 @@
#include <asm/io.h>
#include <asm/param.h>
#include <linux/sched.h>
--- linux-2.6.24.7.old/sound/soc/Kconfig 2008-05-07 01:22:34.000000000 +0200
+++ linux-2.6.24.7/sound/soc/Kconfig 2009-04-12 18:13:57.000000000 +0200
@@ -28,6 +28,7 @@
--- a/sound/soc/Kconfig
+++ b/sound/soc/Kconfig
@@ -33,6 +33,7 @@ source "sound/soc/fsl/Kconfig"
source "sound/soc/davinci/Kconfig"
source "sound/soc/omap/Kconfig"
source "sound/soc/blackfin/Kconfig"
+source "sound/soc/jz4740/Kconfig"
# Supported codecs
source "sound/soc/codecs/Kconfig"
--- linux-2.6.24.7.old/sound/soc/Makefile 2008-05-07 01:22:34.000000000 +0200
+++ linux-2.6.24.7/sound/soc/Makefile 2009-04-12 18:13:57.000000000 +0200
@@ -2,4 +2,4 @@
--- a/sound/soc/Makefile
+++ b/sound/soc/Makefile
@@ -2,4 +2,4 @@ snd-soc-core-objs := soc-core.o soc-dapm
obj-$(CONFIG_SND_SOC) += snd-soc-core.o
obj-$(CONFIG_SND_SOC) += codecs/ at32/ at91/ pxa/ s3c24xx/ sh/ fsl/ davinci/
-obj-$(CONFIG_SND_SOC) += omap/ au1x/ blackfin/
+obj-$(CONFIG_SND_SOC) += omap/ au1x/ blackfin/ jz4740/
--- linux-2.6.24.7.old/sound/soc/codecs/Kconfig 2008-05-07 01:22:34.000000000 +0200
+++ linux-2.6.24.7/sound/soc/codecs/Kconfig 2009-04-12 18:13:57.000000000 +0200
@@ -110,3 +110,9 @@
--- a/sound/soc/codecs/Kconfig
+++ b/sound/soc/codecs/Kconfig
@@ -110,3 +110,9 @@ config SND_SOC_WM9712
config SND_SOC_WM9713
tristate
tristate
+
+config SND_SOC_ICODEC
+ tristate "Jz4740 internal codec"
+ depends on SND_SOC && SND_JZ4740_SOC_PAVO && SND_JZ4740_SOC_I2S
+ help
+ Say Y if you want to use internal codec on Ingenic Jz4740 PAVO board.
--- linux-2.6.24.7.old/sound/soc/codecs/Makefile 2008-05-07 01:22:34.000000000 +0200
+++ linux-2.6.24.7/sound/soc/codecs/Makefile 2009-04-12 18:13:57.000000000 +0200
@@ -4,6 +4,7 @@
--- a/sound/soc/codecs/Makefile
+++ b/sound/soc/codecs/Makefile
@@ -19,6 +19,7 @@ snd-soc-wm8971-objs := wm8971.o
snd-soc-wm8990-objs := wm8990.o
snd-soc-wm9712-objs := wm9712.o
snd-soc-wm9713-objs := wm9713.o
+snd-soc-jzcodec-objs := jzcodec.o
obj-$(CONFIG_SND_SOC_AC97_CODEC) += snd-soc-ac97.o
obj-$(CONFIG_SND_SOC_AD1980) += snd-soc-ad1980.o
@@ -11,3 +12,4 @@
@@ -41,3 +42,4 @@ obj-$(CONFIG_SND_SOC_WM8971) += snd-soc-
obj-$(CONFIG_SND_SOC_WM8990) += snd-soc-wm8990.o
obj-$(CONFIG_SND_SOC_WM9712) += snd-soc-wm9712.o
obj-$(CONFIG_SND_SOC_WM9713) += snd-soc-wm9713.o
+obj-$(CONFIG_SND_SOC_ICODEC) += snd-soc-jzcodec.o
--- linux-2.6.24.7.old/sound/soc/codecs/jzcodec.c 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/sound/soc/codecs/jzcodec.c 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/sound/soc/codecs/jzcodec.c
@@ -0,0 +1,725 @@
+/*
+ * This program is free software; you can redistribute it and/or modify
@ -18646,8 +18646,8 @@
+MODULE_DESCRIPTION("ASoC JZCODEC driver");
+MODULE_AUTHOR("Richard");
+MODULE_LICENSE("GPL");
--- linux-2.6.24.7.old/sound/soc/codecs/jzcodec.h 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/sound/soc/codecs/jzcodec.h 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/sound/soc/codecs/jzcodec.h
@@ -0,0 +1,22 @@
+/*
+ * This program is free software; you can redistribute it and/or modify
@ -18671,8 +18671,8 @@
+extern struct snd_soc_codec_device soc_codec_dev_jzcodec;
+
+#endif
--- linux-2.6.24.7.old/sound/soc/jz4740/Kconfig 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/sound/soc/jz4740/Kconfig 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/sound/soc/jz4740/Kconfig
@@ -0,0 +1,34 @@
+config SND_JZ4740_SOC
+ tristate "SoC Audio for Ingenic jz4740 chip"
@ -18708,8 +18708,8 @@
+ tristate "SoC Audio (I2S protocol) for Ingenic jz4740 chip"
+ help
+ Say Y if you want to use I2S protocol and I2S codec on Ingenic Jz4740 PAVO board.
--- linux-2.6.24.7.old/sound/soc/jz4740/Makefile 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/sound/soc/jz4740/Makefile 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/sound/soc/jz4740/Makefile
@@ -0,0 +1,15 @@
+#
+# Jz4740 Platform Support
@ -18726,8 +18726,8 @@
+snd-soc-pavo-objs := pavo.o
+
+obj-$(CONFIG_SND_JZ4740_SOC_PAVO) += snd-soc-pavo.o
--- linux-2.6.24.7.old/sound/soc/jz4740/jz4740-ac97.c 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/sound/soc/jz4740/jz4740-ac97.c 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/sound/soc/jz4740/jz4740-ac97.c
@@ -0,0 +1,261 @@
+/*
+ * linux/sound/jz4740-ac97.c -- AC97 support for the Ingenic jz4740 chip.
@ -18990,8 +18990,8 @@
+MODULE_AUTHOR("Richard");
+MODULE_DESCRIPTION("AC97 driver for the Ingenic jz4740 chip");
+MODULE_LICENSE("GPL");
--- linux-2.6.24.7.old/sound/soc/jz4740/jz4740-ac97.h 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/sound/soc/jz4740/jz4740-ac97.h 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/sound/soc/jz4740/jz4740-ac97.h
@@ -0,0 +1,21 @@
+/*
+ * linux/sound/soc/jz4740/jz4740-ac97.h
@ -19014,8 +19014,8 @@
+extern struct snd_ac97_bus_ops jz4740_ac97_ops;
+
+#endif
--- linux-2.6.24.7.old/sound/soc/jz4740/jz4740-i2s.c 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/sound/soc/jz4740/jz4740-i2s.c 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/sound/soc/jz4740/jz4740-i2s.c
@@ -0,0 +1,296 @@
+/*
+ * This program is free software; you can redistribute it and/or modify it
@ -19313,8 +19313,8 @@
+MODULE_AUTHOR("Richard, cjfeng@ingenic.cn, www.ingenic.cn");
+MODULE_DESCRIPTION("jz4740 I2S SoC Interface");
+MODULE_LICENSE("GPL");
--- linux-2.6.24.7.old/sound/soc/jz4740/jz4740-i2s.h 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/sound/soc/jz4740/jz4740-i2s.h 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/sound/soc/jz4740/jz4740-i2s.h
@@ -0,0 +1,18 @@
+/*
+ * This program is free software; you can redistribute it and/or modify
@ -19334,8 +19334,8 @@
+extern struct snd_soc_cpu_dai jz4740_i2s_dai;
+
+#endif
--- linux-2.6.24.7.old/sound/soc/jz4740/jz4740-pcm.c 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/sound/soc/jz4740/jz4740-pcm.c 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/sound/soc/jz4740/jz4740-pcm.c
@@ -0,0 +1,689 @@
+/*
+ *
@ -20026,8 +20026,8 @@
+MODULE_AUTHOR("Richard");
+MODULE_DESCRIPTION("Ingenic Jz4740 PCM DMA module");
+MODULE_LICENSE("GPL");
--- linux-2.6.24.7.old/sound/soc/jz4740/jz4740-pcm.h 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/sound/soc/jz4740/jz4740-pcm.h 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/sound/soc/jz4740/jz4740-pcm.h
@@ -0,0 +1,33 @@
+/*
+ *
@ -20062,8 +20062,8 @@
+extern struct snd_soc_platform jz4740_soc_platform;
+
+#endif
--- linux-2.6.24.7.old/sound/soc/jz4740/pavo.c 1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.24.7/sound/soc/jz4740/pavo.c 2009-04-12 18:13:57.000000000 +0200
--- /dev/null
+++ b/sound/soc/jz4740/pavo.c
@@ -0,0 +1,360 @@
+/*
+ * pavo.c -- SoC audio for PAVO