diff options
61 files changed, 697 insertions, 855 deletions
| diff --git a/target/linux/brcm47xx/patches-2.6.28/100-board_support.patch b/target/linux/brcm47xx/patches-2.6.28/100-board_support.patch index c6428ac02..ac5d9124e 100644 --- a/target/linux/brcm47xx/patches-2.6.28/100-board_support.patch +++ b/target/linux/brcm47xx/patches-2.6.28/100-board_support.patch @@ -15,7 +15,7 @@   extern char *system_type;  --- a/include/linux/pci_ids.h  +++ b/include/linux/pci_ids.h -@@ -2068,6 +2068,7 @@ +@@ -2069,6 +2069,7 @@   #define PCI_DEVICE_ID_TIGON3_5906M	0x1713   #define PCI_DEVICE_ID_BCM4401		0x4401   #define PCI_DEVICE_ID_BCM4401B0		0x4402 diff --git a/target/linux/brcm47xx/patches-2.6.28/270-ehci-ssb.patch b/target/linux/brcm47xx/patches-2.6.28/270-ehci-ssb.patch index 32eb0bdd7..68f7322ca 100644 --- a/target/linux/brcm47xx/patches-2.6.28/270-ehci-ssb.patch +++ b/target/linux/brcm47xx/patches-2.6.28/270-ehci-ssb.patch @@ -22,7 +22,7 @@   	depends on USB  --- a/drivers/usb/host/ehci-hcd.c  +++ b/drivers/usb/host/ehci-hcd.c -@@ -1034,8 +1034,16 @@ MODULE_LICENSE ("GPL"); +@@ -1036,8 +1036,16 @@ MODULE_LICENSE ("GPL");   #define	PLATFORM_DRIVER		ixp4xx_ehci_driver   #endif diff --git a/target/linux/brcm47xx/patches-2.6.28/400-arch-bcm47xx.patch b/target/linux/brcm47xx/patches-2.6.28/400-arch-bcm47xx.patch index ad7e66702..ef6b71267 100644 --- a/target/linux/brcm47xx/patches-2.6.28/400-arch-bcm47xx.patch +++ b/target/linux/brcm47xx/patches-2.6.28/400-arch-bcm47xx.patch @@ -1,7 +1,5 @@ -Index: linux-2.6.28.7/arch/mips/Kconfig -=================================================================== ---- linux-2.6.28.7.orig/arch/mips/Kconfig	2009-03-17 17:26:23.000000000 +0100 -+++ linux-2.6.28.7/arch/mips/Kconfig	2009-03-17 17:27:33.000000000 +0100 +--- a/arch/mips/Kconfig ++++ b/arch/mips/Kconfig  @@ -53,6 +53,7 @@ config BCM47XX   	select SSB_DRIVER_MIPS   	select SSB_DRIVER_EXTIF @@ -10,20 +8,16 @@ Index: linux-2.6.28.7/arch/mips/Kconfig   	select SSB_PCICORE_HOSTMODE if PCI   	select GENERIC_GPIO   	select SYS_HAS_EARLY_PRINTK -Index: linux-2.6.28.7/arch/mips/bcm47xx/Makefile -=================================================================== ---- linux-2.6.28.7.orig/arch/mips/bcm47xx/Makefile	2009-03-17 17:26:19.000000000 +0100 -+++ linux-2.6.28.7/arch/mips/bcm47xx/Makefile	2009-03-17 17:26:56.000000000 +0100 +--- a/arch/mips/bcm47xx/Makefile ++++ b/arch/mips/bcm47xx/Makefile  @@ -3,4 +3,4 @@   # under Linux.   #  -obj-y := gpio.o irq.o prom.o serial.o setup.o time.o wgt634u.o  +obj-y := cfe_env.o gpio.o irq.o nvram.o prom.o serial.o setup.o time.o wgt634u.o -Index: linux-2.6.28.7/arch/mips/bcm47xx/irq.c -=================================================================== ---- linux-2.6.28.7.orig/arch/mips/bcm47xx/irq.c	2009-03-17 17:26:19.000000000 +0100 -+++ linux-2.6.28.7/arch/mips/bcm47xx/irq.c	2009-03-17 17:26:23.000000000 +0100 +--- a/arch/mips/bcm47xx/irq.c ++++ b/arch/mips/bcm47xx/irq.c  @@ -1,5 +1,6 @@   /*    *  Copyright (C) 2004 Florian Schirmer <jolt@tuxbox.org> @@ -51,10 +45,8 @@ Index: linux-2.6.28.7/arch/mips/bcm47xx/irq.c   void plat_irq_dispatch(void)   {   	u32 cause; -Index: linux-2.6.28.7/arch/mips/bcm47xx/nvram.c -=================================================================== ---- linux-2.6.28.7.orig/arch/mips/bcm47xx/nvram.c	2009-03-17 17:26:19.000000000 +0100 -+++ linux-2.6.28.7/arch/mips/bcm47xx/nvram.c	2009-03-17 17:26:23.000000000 +0100 +--- a/arch/mips/bcm47xx/nvram.c ++++ b/arch/mips/bcm47xx/nvram.c  @@ -24,10 +24,10 @@   #include <asm/io.h>   #include <asm/uaccess.h> @@ -77,10 +69,8 @@ Index: linux-2.6.28.7/arch/mips/bcm47xx/nvram.c   	struct nvram_header *header;   	int i;   	u32 base, lim, off; -Index: linux-2.6.28.7/arch/mips/bcm47xx/setup.c -=================================================================== ---- linux-2.6.28.7.orig/arch/mips/bcm47xx/setup.c	2009-03-17 17:26:19.000000000 +0100 -+++ linux-2.6.28.7/arch/mips/bcm47xx/setup.c	2009-03-17 17:26:23.000000000 +0100 +--- a/arch/mips/bcm47xx/setup.c ++++ b/arch/mips/bcm47xx/setup.c  @@ -2,7 +2,7 @@    *  Copyright (C) 2004 Florian Schirmer <jolt@tuxbox.org>    *  Copyright (C) 2005 Waldemar Brodkorb <wbx@openwrt.org> @@ -305,10 +295,8 @@ Index: linux-2.6.28.7/arch/mips/bcm47xx/setup.c  +	return 0;  +}  +device_initcall(bcm47xx_register_gpiodev); -Index: linux-2.6.28.7/arch/mips/bcm47xx/time.c -=================================================================== ---- linux-2.6.28.7.orig/arch/mips/bcm47xx/time.c	2009-03-17 17:26:19.000000000 +0100 -+++ linux-2.6.28.7/arch/mips/bcm47xx/time.c	2009-03-17 17:26:23.000000000 +0100 +--- a/arch/mips/bcm47xx/time.c ++++ b/arch/mips/bcm47xx/time.c  @@ -22,11 +22,17 @@    *  675 Mass Ave, Cambridge, MA 02139, USA.    */ diff --git a/target/linux/brcm47xx/patches-2.6.28/500-lzma_initramfs.patch b/target/linux/brcm47xx/patches-2.6.28/500-lzma_initramfs.patch index c2acdeeca..6a4a666c3 100644 --- a/target/linux/brcm47xx/patches-2.6.28/500-lzma_initramfs.patch +++ b/target/linux/brcm47xx/patches-2.6.28/500-lzma_initramfs.patch @@ -1,5 +1,5 @@ ---- a/init/initramfs.c	2009-03-23 22:55:52.000000000 +0100 -+++ b/init/initramfs.c	2009-05-01 11:15:46.000000000 +0200 +--- a/init/initramfs.c ++++ b/init/initramfs.c  @@ -7,6 +7,7 @@   #include <linux/string.h>   #include <linux/syscalls.h> @@ -8,7 +8,7 @@   static __initdata char *message;   static void __init error(char *x) -@@ -475,6 +476,69 @@ +@@ -475,6 +476,69 @@ static void __init flush_window(void)   	outcnt = 0;   } @@ -78,7 +78,7 @@   static char * __init unpack_to_rootfs(char *buf, unsigned len, int check_only)   {   	int written; -@@ -509,12 +573,28 @@ +@@ -509,12 +573,28 @@ static char * __init unpack_to_rootfs(ch   		inptr = 0;   		outcnt = 0;		/* bytes in output buffer */   		bytes_out = 0; @@ -112,9 +112,9 @@   		buf += inptr;   		len -= inptr;   	} ---- a/scripts/gen_initramfs_list.sh	2009-03-23 22:55:52.000000000 +0100 -+++ b/scripts/gen_initramfs_list.sh	2009-05-01 11:12:45.000000000 +0200 -@@ -287,7 +287,7 @@ +--- a/scripts/gen_initramfs_list.sh ++++ b/scripts/gen_initramfs_list.sh +@@ -287,7 +287,7 @@ if [ ! -z ${output_file} ]; then   	if [ "${is_cpio_compressed}" = "compressed" ]; then   		cat ${cpio_tfile} > ${output_file}   	else diff --git a/target/linux/brcm47xx/patches-2.6.28/900-disable_early_printk.patch b/target/linux/brcm47xx/patches-2.6.28/900-disable_early_printk.patch index 32b57764b..3f1aeef8d 100644 --- a/target/linux/brcm47xx/patches-2.6.28/900-disable_early_printk.patch +++ b/target/linux/brcm47xx/patches-2.6.28/900-disable_early_printk.patch @@ -1,6 +1,6 @@ ---- linux-2.6.28.9/arch/mips/Kconfig	2009-04-17 10:43:28.000000000 +0200 -+++ linux-2.6.28.9.new/arch/mips/Kconfig	2009-04-17 10:43:51.000000000 +0200 -@@ -56,7 +56,6 @@ +--- a/arch/mips/Kconfig ++++ b/arch/mips/Kconfig +@@ -56,7 +56,6 @@ config BCM47XX   	select SSB_B43_PCI_BRIDGE if PCI   	select SSB_PCICORE_HOSTMODE if PCI   	select GENERIC_GPIO diff --git a/target/linux/brcm63xx/patches-2.6.27/008-usb_ehci_support.patch b/target/linux/brcm63xx/patches-2.6.27/008-usb_ehci_support.patch index e5cfdb82a..630078b2f 100644 --- a/target/linux/brcm63xx/patches-2.6.27/008-usb_ehci_support.patch +++ b/target/linux/brcm63xx/patches-2.6.27/008-usb_ehci_support.patch @@ -33,7 +33,7 @@ Signed-off-by: Maxime Bizon <mbizon@freebox.fr>   #error "missing bus glue for ehci-hcd"  --- a/drivers/usb/host/ehci.h  +++ b/drivers/usb/host/ehci.h -@@ -761,6 +761,11 @@ ehci_port_speed(struct ehci_hcd *ehci, u +@@ -764,6 +764,11 @@ ehci_port_speed(struct ehci_hcd *ehci, u   #define writel_be(val, addr)	__raw_writel(val, (__force unsigned *)addr)   #endif diff --git a/target/linux/etrax/patches-2.6.29/100-cris-makefiles.patch b/target/linux/etrax/patches-2.6.29/100-cris-makefiles.patch index 6495c4957..bf43914f7 100644 --- a/target/linux/etrax/patches-2.6.29/100-cris-makefiles.patch +++ b/target/linux/etrax/patches-2.6.29/100-cris-makefiles.patch @@ -1,7 +1,6 @@ -diff -urN linux-2.6.28.clean/arch/cris/Makefile linux-2.6.28.mod/arch/cris/Makefile ---- linux-2.6.28.clean/arch/cris/Makefile	2008-12-25 00:26:37.000000000 +0100 -+++ linux-2.6.28.mod/arch/cris/Makefile	2009-04-07 11:52:30.000000000 +0200 -@@ -40,7 +40,7 @@ +--- a/arch/cris/Makefile ++++ b/arch/cris/Makefile +@@ -40,7 +40,7 @@ endif   LD = $(CROSS_COMPILE)ld -mcrislinux @@ -10,9 +9,8 @@ diff -urN linux-2.6.28.clean/arch/cris/Makefile linux-2.6.28.mod/arch/cris/Makef   CPPFLAGS_vmlinux.lds = -DDRAM_VIRTUAL_BASE=0x$(CONFIG_ETRAX_DRAM_VIRTUAL_BASE) -diff -urN linux-2.6.28.clean/arch/cris/arch-v10/boot/Makefile linux-2.6.28.mod/arch/cris/arch-v10/boot/Makefile ---- linux-2.6.28.clean/arch/cris/arch-v10/boot/Makefile	2008-12-25 00:26:37.000000000 +0100 -+++ linux-2.6.28.mod/arch/cris/arch-v10/boot/Makefile	2009-04-07 11:55:01.000000000 +0200 +--- a/arch/cris/arch-v10/boot/Makefile ++++ b/arch/cris/arch-v10/boot/Makefile  @@ -2,8 +2,6 @@   # arch/cris/arch-v10/boot/Makefile   # @@ -22,7 +20,7 @@ diff -urN linux-2.6.28.clean/arch/cris/arch-v10/boot/Makefile linux-2.6.28.mod/a   subdir- := compressed rescue   targets := Image -@@ -13,7 +11,7 @@ +@@ -13,7 +11,7 @@ $(obj)/Image: vmlinux FORCE   $(obj)/compressed/vmlinux: $(obj)/Image FORCE   	$(Q)$(MAKE) $(build)=$(obj)/compressed $@ @@ -31,10 +29,9 @@ diff -urN linux-2.6.28.clean/arch/cris/arch-v10/boot/Makefile linux-2.6.28.mod/a   $(obj)/zImage:  $(obj)/compressed/vmlinux   	@cp $< $@ -diff -urN linux-2.6.28.clean/arch/cris/arch-v10/boot/compressed/Makefile linux-2.6.28.mod/arch/cris/arch-v10/boot/compressed/Makefile ---- linux-2.6.28.clean/arch/cris/arch-v10/boot/compressed/Makefile	2008-12-25 00:26:37.000000000 +0100 -+++ linux-2.6.28.mod/arch/cris/arch-v10/boot/compressed/Makefile	2009-04-07 11:53:02.000000000 +0200 -@@ -6,7 +6,6 @@ +--- a/arch/cris/arch-v10/boot/compressed/Makefile ++++ b/arch/cris/arch-v10/boot/compressed/Makefile +@@ -6,7 +6,6 @@ asflags-y += $(LINUXINCLUDE)   ccflags-y += -O2 $(LINUXINCLUDE)   ldflags-y += -T $(srctree)/$(src)/decompress.lds   OBJECTS = $(obj)/head.o $(obj)/misc.o @@ -42,9 +39,8 @@ diff -urN linux-2.6.28.clean/arch/cris/arch-v10/boot/compressed/Makefile linux-2   quiet_cmd_image = BUILD   $@   cmd_image = cat $(obj)/decompress.bin $(obj)/piggy.gz > $@ -diff -urN linux-2.6.28.clean/arch/cris/arch-v10/boot/rescue/Makefile linux-2.6.28.mod/arch/cris/arch-v10/boot/rescue/Makefile ---- linux-2.6.28.clean/arch/cris/arch-v10/boot/rescue/Makefile	2008-12-25 00:26:37.000000000 +0100 -+++ linux-2.6.28.mod/arch/cris/arch-v10/boot/rescue/Makefile	2009-04-07 11:53:09.000000000 +0200 +--- a/arch/cris/arch-v10/boot/rescue/Makefile ++++ b/arch/cris/arch-v10/boot/rescue/Makefile  @@ -5,7 +5,6 @@   ccflags-y += -O2 $(LINUXINCLUDE)   asflags-y += $(LINUXINCLUDE) diff --git a/target/linux/etrax/patches-2.6.29/200-samsung_flash.patch b/target/linux/etrax/patches-2.6.29/200-samsung_flash.patch index 5df6590fa..d04c2794d 100644 --- a/target/linux/etrax/patches-2.6.29/200-samsung_flash.patch +++ b/target/linux/etrax/patches-2.6.29/200-samsung_flash.patch @@ -1,10 +1,8 @@ -Index: linux-2.6.28.2/drivers/mtd/chips/cfi_cmdset_0002.c -=================================================================== ---- linux-2.6.28.2.orig/drivers/mtd/chips/cfi_cmdset_0002.c	2009-02-04 13:42:19.000000000 +0100 -+++ linux-2.6.28.2/drivers/mtd/chips/cfi_cmdset_0002.c	2009-02-04 13:44:11.000000000 +0100 -@@ -364,7 +364,7 @@ - 			return NULL; - 		} +--- a/drivers/mtd/chips/cfi_cmdset_0002.c ++++ b/drivers/mtd/chips/cfi_cmdset_0002.c +@@ -374,7 +374,7 @@ struct mtd_info *cfi_cmdset_0002(struct  +  + 		cfi_fixup_major_minor(cfi, extp);  -		if (extp->MajorVersion != '1' ||  +		if (extp->MajorVersion < '1' || extp->MajorVersion > '3' || diff --git a/target/linux/etrax/patches-2.6.29/201-flashsize.patch b/target/linux/etrax/patches-2.6.29/201-flashsize.patch index e825acf1f..42a467f74 100644 --- a/target/linux/etrax/patches-2.6.29/201-flashsize.patch +++ b/target/linux/etrax/patches-2.6.29/201-flashsize.patch @@ -1,8 +1,6 @@ -Index: linux-2.6.28.2/arch/cris/arch-v10/drivers/axisflashmap.c -=================================================================== ---- linux-2.6.28.2.orig/arch/cris/arch-v10/drivers/axisflashmap.c	2009-02-04 13:49:34.000000000 +0100 -+++ linux-2.6.28.2/arch/cris/arch-v10/drivers/axisflashmap.c	2009-02-04 13:55:30.000000000 +0100 -@@ -113,7 +113,7 @@ +--- a/arch/cris/arch-v10/drivers/axisflashmap.c ++++ b/arch/cris/arch-v10/drivers/axisflashmap.c +@@ -113,7 +113,7 @@ static struct map_info map_cse1 = {   /* If no partition-table was found, we use this default-set. */   #define MAX_PARTITIONS         7 @@ -11,7 +9,7 @@ Index: linux-2.6.28.2/arch/cris/arch-v10/drivers/axisflashmap.c   /*    * Default flash size is 2MB. CONFIG_ETRAX_PTABLE_SECTOR is most likely the -@@ -122,19 +122,14 @@ +@@ -122,19 +122,14 @@ static struct map_info map_cse1 = {    */   static struct mtd_partition axis_default_partitions[NUM_DEFAULT_PARTITIONS] = {   	{ @@ -36,7 +34,7 @@ Index: linux-2.6.28.2/arch/cris/arch-v10/drivers/axisflashmap.c   	}   }; -@@ -281,6 +276,11 @@ +@@ -281,6 +276,11 @@ static int __init init_axis_flash(void)   	struct partitiontable_entry *ptable;   	int use_default_ptable = 1; /* Until proven otherwise. */   	const char pmsg[] = "  /dev/flash%d at 0x%08x, size 0x%08x\n"; @@ -48,7 +46,7 @@ Index: linux-2.6.28.2/arch/cris/arch-v10/drivers/axisflashmap.c   	if (!(mymtd = flash_probe())) {   		/* There's no reason to use this module if no flash chip can -@@ -293,6 +293,31 @@ +@@ -293,6 +293,31 @@ static int __init init_axis_flash(void)   		axisflash_mtd = mymtd;   	} @@ -80,10 +78,8 @@ Index: linux-2.6.28.2/arch/cris/arch-v10/drivers/axisflashmap.c   	if (mymtd) {   		mymtd->owner = THIS_MODULE;   		ptable_head = (struct partitiontable_head *)(FLASH_CACHED_ADDR + -Index: linux-2.6.28.2/arch/cris/arch-v10/lib/hw_settings.S -=================================================================== ---- linux-2.6.28.2.orig/arch/cris/arch-v10/lib/hw_settings.S	2009-02-04 13:48:25.000000000 +0100 -+++ linux-2.6.28.2/arch/cris/arch-v10/lib/hw_settings.S	2009-02-04 13:49:04.000000000 +0100 +--- a/arch/cris/arch-v10/lib/hw_settings.S ++++ b/arch/cris/arch-v10/lib/hw_settings.S  @@ -60,3 +60,5 @@   	.dword R_PORT_PB_SET   	.dword PB_SET_VALUE diff --git a/target/linux/etrax/patches-2.6.29/300-sysfs.patch b/target/linux/etrax/patches-2.6.29/300-sysfs.patch index 9f415b4a8..ffaec3675 100644 --- a/target/linux/etrax/patches-2.6.29/300-sysfs.patch +++ b/target/linux/etrax/patches-2.6.29/300-sysfs.patch @@ -8,7 +8,7 @@   #include <asm/io.h>   #include <asm/irq.h> -@@ -4384,6 +4385,7 @@ static const struct tty_operations rs_op +@@ -4393,6 +4394,7 @@ static const struct tty_operations rs_op   	.tiocmset = rs_tiocmset   }; @@ -16,7 +16,7 @@   static int __init   rs_init(void)   { -@@ -4518,6 +4520,24 @@ rs_init(void) +@@ -4527,6 +4529,24 @@ rs_init(void)   #endif   #endif /* CONFIG_SVINTO_SIM */ diff --git a/target/linux/etrax/patches-2.6.29/400-Kconfig_source.patch b/target/linux/etrax/patches-2.6.29/400-Kconfig_source.patch index d0fdbf589..ed2bfe459 100644 --- a/target/linux/etrax/patches-2.6.29/400-Kconfig_source.patch +++ b/target/linux/etrax/patches-2.6.29/400-Kconfig_source.patch @@ -1,8 +1,6 @@ -Index: linux-2.6.28.9/arch/cris/Kconfig -=================================================================== ---- linux-2.6.28.9.orig/arch/cris/Kconfig	2009-03-23 22:55:52.000000000 +0100 -+++ linux-2.6.28.9/arch/cris/Kconfig	2009-04-08 16:53:30.000000000 +0200 -@@ -662,6 +662,12 @@ +--- a/arch/cris/Kconfig ++++ b/arch/cris/Kconfig +@@ -662,6 +662,12 @@ source "drivers/block/Kconfig"   source "drivers/ide/Kconfig" diff --git a/target/linux/etrax/patches-2.6.29/500-i2c_gvc.patch b/target/linux/etrax/patches-2.6.29/500-i2c_gvc.patch index 7eed8b2a7..dc63165c5 100644 --- a/target/linux/etrax/patches-2.6.29/500-i2c_gvc.patch +++ b/target/linux/etrax/patches-2.6.29/500-i2c_gvc.patch @@ -1,8 +1,6 @@ -Index: linux-2.6.25.20/arch/cris/arch-v10/drivers/Kconfig -=================================================================== ---- linux-2.6.25.20.orig/arch/cris/arch-v10/drivers/Kconfig	2009-02-09 09:30:40.000000000 +0100 -+++ linux-2.6.25.20/arch/cris/arch-v10/drivers/Kconfig	2009-02-09 21:23:12.000000000 +0100 -@@ -450,11 +450,18 @@ +--- a/arch/cris/arch-v10/drivers/Kconfig ++++ b/arch/cris/arch-v10/drivers/Kconfig +@@ -450,11 +450,18 @@ config ETRAX_I2C   	  i2c_arg = I2C_READARG(STA013_READ_ADDR, reg);   	  val = ioctl(fd, _IO(ETRAXI2C_IOCTYPE, I2C_READREG), i2c_arg); @@ -22,7 +20,7 @@ Index: linux-2.6.25.20/arch/cris/arch-v10/drivers/Kconfig   	help   	  Select whether to use the special I2C mode in the PB I/O register or   	  not.  This option needs to be selected in order to use some drivers -@@ -478,7 +485,7 @@ +@@ -478,7 +485,7 @@ config ETRAX_I2C_CLK_PORT   config ETRAX_I2C_EEPROM   	bool "I2C EEPROM (non-volatile RAM) support" @@ -31,10 +29,8 @@ Index: linux-2.6.25.20/arch/cris/arch-v10/drivers/Kconfig   	help   	  Enables I2C EEPROM (non-volatile RAM) on PB0 and PB1 using the I2C   	  driver.  Select size option: Probed, 2k, 8k, 16k. -Index: linux-2.6.25.20/arch/cris/arch-v10/drivers/Makefile -=================================================================== ---- linux-2.6.25.20.orig/arch/cris/arch-v10/drivers/Makefile	2009-02-09 09:30:41.000000000 +0100 -+++ linux-2.6.25.20/arch/cris/arch-v10/drivers/Makefile	2009-02-09 09:35:39.000000000 +0100 +--- a/arch/cris/arch-v10/drivers/Makefile ++++ b/arch/cris/arch-v10/drivers/Makefile  @@ -4,6 +4,7 @@   obj-$(CONFIG_ETRAX_AXISFLASHMAP)	+= axisflashmap.o diff --git a/target/linux/etrax/patches-2.6.29/600-fix_serial_cris.patch b/target/linux/etrax/patches-2.6.29/600-fix_serial_cris.patch index 7ac24a474..403255066 100644 --- a/target/linux/etrax/patches-2.6.29/600-fix_serial_cris.patch +++ b/target/linux/etrax/patches-2.6.29/600-fix_serial_cris.patch @@ -1,8 +1,6 @@ -Index: linux-2.6.28.9/drivers/serial/crisv10.c -=================================================================== ---- linux-2.6.28.9.orig/drivers/serial/crisv10.c	2009-04-10 12:58:18.000000000 +0200 -+++ linux-2.6.28.9/drivers/serial/crisv10.c	2009-04-10 12:58:22.000000000 +0200 -@@ -28,12 +28,15 @@ +--- a/drivers/serial/crisv10.c ++++ b/drivers/serial/crisv10.c +@@ -28,12 +28,15 @@ static char *serial_version = "$Revision   #include <linux/mutex.h>   #include <linux/bitops.h>   #include <linux/device.h> @@ -20,7 +18,7 @@ Index: linux-2.6.28.9/drivers/serial/crisv10.c   #include <arch/svinto.h> -@@ -457,7 +460,6 @@ +@@ -457,7 +460,6 @@ static struct e100_serial rs_table[] = {   #define NR_PORTS (sizeof(rs_table)/sizeof(struct e100_serial)) @@ -28,7 +26,7 @@ Index: linux-2.6.28.9/drivers/serial/crisv10.c   #ifdef CONFIG_ETRAX_SERIAL_FAST_TIMER   static struct fast_timer fast_timers[NR_PORTS];   #endif -@@ -4221,151 +4223,132 @@ +@@ -4221,151 +4223,132 @@ rs_open(struct tty_struct *tty, struct f   	return 0;   } @@ -249,7 +247,7 @@ Index: linux-2.6.28.9/drivers/serial/crisv10.c   	       &serial_version[11]); /* "$Revision: x.yy" */   } -@@ -4389,9 +4372,11 @@ +@@ -4389,9 +4372,11 @@ static const struct tty_operations rs_op   	.break_ctl = rs_break,   	.send_xchar = rs_send_xchar,   	.wait_until_sent = rs_wait_until_sent, diff --git a/target/linux/generic-2.6/patches-2.6.21/100-netfilter_layer7_2.21.patch b/target/linux/generic-2.6/patches-2.6.21/100-netfilter_layer7_2.21.patch index 16b5fa2f3..403b7d0e4 100644 --- a/target/linux/generic-2.6/patches-2.6.21/100-netfilter_layer7_2.21.patch +++ b/target/linux/generic-2.6/patches-2.6.21/100-netfilter_layer7_2.21.patch @@ -16,7 +16,7 @@  +#endif /* _XT_LAYER7_H */  --- a/include/net/netfilter/nf_conntrack.h  +++ b/include/net/netfilter/nf_conntrack.h -@@ -128,6 +128,22 @@ +@@ -128,6 +128,22 @@ struct nf_conn   	u_int32_t secmark;   #endif @@ -41,7 +41,7 @@  --- a/net/ipv4/netfilter/nf_conntrack_l3proto_ipv4_compat.c  +++ b/net/ipv4/netfilter/nf_conntrack_l3proto_ipv4_compat.c -@@ -163,6 +163,12 @@ +@@ -163,6 +163,12 @@ static int ct_seq_show(struct seq_file *   		return -ENOSPC;   #endif @@ -56,7 +56,7 @@  --- a/net/netfilter/Kconfig  +++ b/net/netfilter/Kconfig -@@ -640,6 +640,27 @@ +@@ -640,6 +640,27 @@ config NETFILTER_XT_MATCH_STATE   	  To compile it as a module, choose M here.  If unsure, say N. @@ -86,7 +86,7 @@   	depends on NETFILTER_XTABLES  --- a/net/netfilter/Makefile  +++ b/net/netfilter/Makefile -@@ -68,6 +68,7 @@ +@@ -68,6 +68,7 @@ obj-$(CONFIG_NETFILTER_XT_MATCH_QUOTA) +   obj-$(CONFIG_NETFILTER_XT_MATCH_REALM) += xt_realm.o   obj-$(CONFIG_NETFILTER_XT_MATCH_SCTP) += xt_sctp.o   obj-$(CONFIG_NETFILTER_XT_MATCH_STATE) += xt_state.o @@ -96,7 +96,7 @@   obj-$(CONFIG_NETFILTER_XT_MATCH_TCPMSS) += xt_tcpmss.o  --- a/net/netfilter/nf_conntrack_core.c  +++ b/net/netfilter/nf_conntrack_core.c -@@ -352,6 +352,14 @@ +@@ -352,6 +352,14 @@ destroy_conntrack(struct nf_conntrack *n   	 * too. */   	nf_ct_remove_expectations(ct); @@ -113,7 +113,7 @@   		BUG_ON(list_empty(&ct->tuplehash[IP_CT_DIR_ORIGINAL].list));  --- a/net/netfilter/nf_conntrack_standalone.c  +++ b/net/netfilter/nf_conntrack_standalone.c -@@ -195,6 +195,11 @@ +@@ -195,6 +195,11 @@ static int ct_seq_show(struct seq_file *   		return -ENOSPC;   #endif diff --git a/target/linux/generic-2.6/patches-2.6.21/101-netfilter_layer7_pktmatch.patch b/target/linux/generic-2.6/patches-2.6.21/101-netfilter_layer7_pktmatch.patch index cdadbe198..d3129eed7 100644 --- a/target/linux/generic-2.6/patches-2.6.21/101-netfilter_layer7_pktmatch.patch +++ b/target/linux/generic-2.6/patches-2.6.21/101-netfilter_layer7_pktmatch.patch @@ -1,6 +1,6 @@  --- a/include/linux/netfilter/xt_layer7.h  +++ b/include/linux/netfilter/xt_layer7.h -@@ -8,6 +8,7 @@ +@@ -8,6 +8,7 @@ struct xt_layer7_info {       char protocol[MAX_PROTOCOL_LEN];       char invert:1;       char pattern[MAX_PATTERN_LEN]; @@ -10,7 +10,7 @@   #endif /* _XT_LAYER7_H */  --- a/net/netfilter/xt_layer7.c  +++ b/net/netfilter/xt_layer7.c -@@ -296,34 +296,36 @@ +@@ -296,34 +296,36 @@ static int match_no_append(struct nf_con   }   /* add the new app data to the conntrack.  Return number of bytes added. */ @@ -61,7 +61,7 @@   	return length;   } -@@ -410,7 +412,7 @@ +@@ -410,7 +412,7 @@ match(const struct sk_buff *skbin,   	struct xt_layer7_info * info = (struct xt_layer7_info *)matchinfo;   	enum ip_conntrack_info master_ctinfo, ctinfo;   	struct nf_conn *master_conntrack, *conntrack; @@ -70,7 +70,7 @@   	unsigned int pattern_result, appdatalen;   	regexp * comppattern; -@@ -438,8 +440,8 @@ +@@ -438,8 +440,8 @@ match(const struct sk_buff *skbin,   		master_conntrack = master_ct(master_conntrack);   	/* if we've classified it or seen too many packets */ @@ -81,7 +81,7 @@   		pattern_result = match_no_append(conntrack, master_conntrack,    						 ctinfo, master_ctinfo, info); -@@ -472,6 +474,25 @@ +@@ -472,6 +474,25 @@ match(const struct sk_buff *skbin,   	/* the return value gets checked later, when we're ready to use it */   	comppattern = compile_and_cache(info->pattern, info->protocol); diff --git a/target/linux/generic-2.6/patches-2.6.23/100-netfilter_layer7_2.21.patch b/target/linux/generic-2.6/patches-2.6.23/100-netfilter_layer7_2.21.patch index d8b58bf09..c1af264ea 100644 --- a/target/linux/generic-2.6/patches-2.6.23/100-netfilter_layer7_2.21.patch +++ b/target/linux/generic-2.6/patches-2.6.23/100-netfilter_layer7_2.21.patch @@ -16,7 +16,7 @@  +#endif /* _XT_LAYER7_H */  --- a/include/net/netfilter/nf_conntrack.h  +++ b/include/net/netfilter/nf_conntrack.h -@@ -127,6 +127,22 @@ +@@ -127,6 +127,22 @@ struct nf_conn   	u_int32_t secmark;   #endif @@ -41,7 +41,7 @@  --- a/net/netfilter/Kconfig  +++ b/net/netfilter/Kconfig -@@ -633,6 +633,27 @@ +@@ -633,6 +633,27 @@ config NETFILTER_XT_MATCH_STATE   	  To compile it as a module, choose M here.  If unsure, say N. @@ -71,7 +71,7 @@   	depends on NETFILTER_XTABLES  --- a/net/netfilter/Makefile  +++ b/net/netfilter/Makefile -@@ -71,6 +71,7 @@ +@@ -71,6 +71,7 @@ obj-$(CONFIG_NETFILTER_XT_MATCH_QUOTA) +   obj-$(CONFIG_NETFILTER_XT_MATCH_REALM) += xt_realm.o   obj-$(CONFIG_NETFILTER_XT_MATCH_SCTP) += xt_sctp.o   obj-$(CONFIG_NETFILTER_XT_MATCH_STATE) += xt_state.o @@ -81,7 +81,7 @@   obj-$(CONFIG_NETFILTER_XT_MATCH_TCPMSS) += xt_tcpmss.o  --- a/net/netfilter/nf_conntrack_core.c  +++ b/net/netfilter/nf_conntrack_core.c -@@ -207,6 +207,14 @@ +@@ -207,6 +207,14 @@ destroy_conntrack(struct nf_conntrack *n   	 * too. */   	nf_ct_remove_expectations(ct); @@ -98,7 +98,7 @@   		BUG_ON(hlist_unhashed(&ct->tuplehash[IP_CT_DIR_ORIGINAL].hnode));  --- a/net/netfilter/nf_conntrack_standalone.c  +++ b/net/netfilter/nf_conntrack_standalone.c -@@ -179,6 +179,11 @@ +@@ -179,6 +179,11 @@ static int ct_seq_show(struct seq_file *   		return -ENOSPC;   #endif diff --git a/target/linux/generic-2.6/patches-2.6.25/100-netfilter_layer7_2.21.patch b/target/linux/generic-2.6/patches-2.6.25/100-netfilter_layer7_2.21.patch index b91605d6c..307f08860 100644 --- a/target/linux/generic-2.6/patches-2.6.25/100-netfilter_layer7_2.21.patch +++ b/target/linux/generic-2.6/patches-2.6.25/100-netfilter_layer7_2.21.patch @@ -16,7 +16,7 @@  +#endif /* _XT_LAYER7_H */  --- a/include/net/netfilter/nf_conntrack.h  +++ b/include/net/netfilter/nf_conntrack.h -@@ -124,6 +124,22 @@ +@@ -124,6 +124,22 @@ struct nf_conn   	u_int32_t secmark;   #endif @@ -41,7 +41,7 @@  --- a/net/netfilter/Kconfig  +++ b/net/netfilter/Kconfig -@@ -735,6 +735,27 @@ +@@ -735,6 +735,27 @@ config NETFILTER_XT_MATCH_STATE   	  To compile it as a module, choose M here.  If unsure, say N. @@ -71,7 +71,7 @@   	depends on NETFILTER_XTABLES  --- a/net/netfilter/Makefile  +++ b/net/netfilter/Makefile -@@ -77,6 +77,7 @@ +@@ -77,6 +77,7 @@ obj-$(CONFIG_NETFILTER_XT_MATCH_RATEEST)   obj-$(CONFIG_NETFILTER_XT_MATCH_REALM) += xt_realm.o   obj-$(CONFIG_NETFILTER_XT_MATCH_SCTP) += xt_sctp.o   obj-$(CONFIG_NETFILTER_XT_MATCH_STATE) += xt_state.o @@ -81,7 +81,7 @@   obj-$(CONFIG_NETFILTER_XT_MATCH_TCPMSS) += xt_tcpmss.o  --- a/net/netfilter/nf_conntrack_core.c  +++ b/net/netfilter/nf_conntrack_core.c -@@ -208,6 +208,14 @@ +@@ -208,6 +208,14 @@ destroy_conntrack(struct nf_conntrack *n   	 * too. */   	nf_ct_remove_expectations(ct); @@ -98,7 +98,7 @@   		BUG_ON(hlist_unhashed(&ct->tuplehash[IP_CT_DIR_ORIGINAL].hnode));  --- a/net/netfilter/nf_conntrack_standalone.c  +++ b/net/netfilter/nf_conntrack_standalone.c -@@ -181,6 +181,12 @@ +@@ -181,6 +181,12 @@ static int ct_seq_show(struct seq_file *   		return -ENOSPC;   #endif diff --git a/target/linux/generic-2.6/patches-2.6.25/101-netfilter_layer7_pktmatch.patch b/target/linux/generic-2.6/patches-2.6.25/101-netfilter_layer7_pktmatch.patch index d2088dfd9..7b0dd43c0 100644 --- a/target/linux/generic-2.6/patches-2.6.25/101-netfilter_layer7_pktmatch.patch +++ b/target/linux/generic-2.6/patches-2.6.25/101-netfilter_layer7_pktmatch.patch @@ -1,6 +1,6 @@  --- a/include/linux/netfilter/xt_layer7.h  +++ b/include/linux/netfilter/xt_layer7.h -@@ -8,6 +8,7 @@ +@@ -8,6 +8,7 @@ struct xt_layer7_info {       char protocol[MAX_PROTOCOL_LEN];       char pattern[MAX_PATTERN_LEN];       u_int8_t invert; @@ -10,7 +10,7 @@   #endif /* _XT_LAYER7_H */  --- a/net/netfilter/xt_layer7.c  +++ b/net/netfilter/xt_layer7.c -@@ -314,34 +314,36 @@ +@@ -314,34 +314,36 @@ static int match_no_append(struct nf_con   }   /* add the new app data to the conntrack.  Return number of bytes added. */ @@ -61,7 +61,7 @@   	return length;   } -@@ -438,7 +440,7 @@ +@@ -438,7 +440,7 @@ match(const struct sk_buff *skbin,   	enum ip_conntrack_info master_ctinfo, ctinfo;   	struct nf_conn *master_conntrack, *conntrack; @@ -70,7 +70,7 @@   	unsigned int pattern_result, appdatalen;   	regexp * comppattern; -@@ -466,9 +468,8 @@ +@@ -466,9 +468,8 @@ match(const struct sk_buff *skbin,   		master_conntrack = master_ct(master_conntrack);   	/* if we've classified it or seen too many packets */ @@ -82,7 +82,7 @@   		pattern_result = match_no_append(conntrack, master_conntrack,    						 ctinfo, master_ctinfo, info); -@@ -500,6 +501,25 @@ +@@ -500,6 +501,25 @@ match(const struct sk_buff *skbin,   	/* the return value gets checked later, when we're ready to use it */   	comppattern = compile_and_cache(info->pattern, info->protocol); diff --git a/target/linux/generic-2.6/patches-2.6.26/100-netfilter_layer7_2.21.patch b/target/linux/generic-2.6/patches-2.6.26/100-netfilter_layer7_2.21.patch index 1be8568f1..e71a578b7 100644 --- a/target/linux/generic-2.6/patches-2.6.26/100-netfilter_layer7_2.21.patch +++ b/target/linux/generic-2.6/patches-2.6.26/100-netfilter_layer7_2.21.patch @@ -16,7 +16,7 @@  +#endif /* _XT_LAYER7_H */  --- a/include/net/netfilter/nf_conntrack.h  +++ b/include/net/netfilter/nf_conntrack.h -@@ -124,6 +124,22 @@ +@@ -124,6 +124,22 @@ struct nf_conn   	u_int32_t secmark;   #endif @@ -41,7 +41,7 @@  --- a/net/netfilter/Kconfig  +++ b/net/netfilter/Kconfig -@@ -749,6 +749,27 @@ +@@ -749,6 +749,27 @@ config NETFILTER_XT_MATCH_STATE   	  To compile it as a module, choose M here.  If unsure, say N. @@ -71,7 +71,7 @@   	depends on NETFILTER_XTABLES  --- a/net/netfilter/Makefile  +++ b/net/netfilter/Makefile -@@ -78,6 +78,7 @@ +@@ -78,6 +78,7 @@ obj-$(CONFIG_NETFILTER_XT_MATCH_RATEEST)   obj-$(CONFIG_NETFILTER_XT_MATCH_REALM) += xt_realm.o   obj-$(CONFIG_NETFILTER_XT_MATCH_SCTP) += xt_sctp.o   obj-$(CONFIG_NETFILTER_XT_MATCH_STATE) += xt_state.o @@ -81,7 +81,7 @@   obj-$(CONFIG_NETFILTER_XT_MATCH_TCPMSS) += xt_tcpmss.o  --- a/net/netfilter/nf_conntrack_core.c  +++ b/net/netfilter/nf_conntrack_core.c -@@ -205,6 +205,14 @@ +@@ -205,6 +205,14 @@ destroy_conntrack(struct nf_conntrack *n   	 * too. */   	nf_ct_remove_expectations(ct); @@ -98,7 +98,7 @@   		BUG_ON(hlist_unhashed(&ct->tuplehash[IP_CT_DIR_ORIGINAL].hnode));  --- a/net/netfilter/nf_conntrack_standalone.c  +++ b/net/netfilter/nf_conntrack_standalone.c -@@ -174,6 +174,12 @@ +@@ -174,6 +174,12 @@ static int ct_seq_show(struct seq_file *   		return -ENOSPC;   #endif diff --git a/target/linux/generic-2.6/patches-2.6.26/101-netfilter_layer7_pktmatch.patch b/target/linux/generic-2.6/patches-2.6.26/101-netfilter_layer7_pktmatch.patch index 81ca6cee7..e5481df33 100644 --- a/target/linux/generic-2.6/patches-2.6.26/101-netfilter_layer7_pktmatch.patch +++ b/target/linux/generic-2.6/patches-2.6.26/101-netfilter_layer7_pktmatch.patch @@ -1,6 +1,6 @@  --- a/include/linux/netfilter/xt_layer7.h  +++ b/include/linux/netfilter/xt_layer7.h -@@ -8,6 +8,7 @@ +@@ -8,6 +8,7 @@ struct xt_layer7_info {       char protocol[MAX_PROTOCOL_LEN];       char pattern[MAX_PATTERN_LEN];       u_int8_t invert; @@ -10,7 +10,7 @@   #endif /* _XT_LAYER7_H */  --- a/net/netfilter/xt_layer7.c  +++ b/net/netfilter/xt_layer7.c -@@ -314,34 +314,36 @@ +@@ -314,34 +314,36 @@ static int match_no_append(struct nf_con   }   /* add the new app data to the conntrack.  Return number of bytes added. */ @@ -60,7 +60,7 @@   	return length;   } -@@ -438,7 +440,7 @@ +@@ -438,7 +440,7 @@ match(const struct sk_buff *skbin,   	enum ip_conntrack_info master_ctinfo, ctinfo;   	struct nf_conn *master_conntrack, *conntrack; @@ -69,7 +69,7 @@   	unsigned int pattern_result, appdatalen;   	regexp * comppattern; -@@ -466,8 +468,8 @@ +@@ -466,8 +468,8 @@ match(const struct sk_buff *skbin,   		master_conntrack = master_ct(master_conntrack);   	/* if we've classified it or seen too many packets */ @@ -80,7 +80,7 @@   		pattern_result = match_no_append(conntrack, master_conntrack,    						 ctinfo, master_ctinfo, info); -@@ -500,6 +502,25 @@ +@@ -500,6 +502,25 @@ match(const struct sk_buff *skbin,   	/* the return value gets checked later, when we're ready to use it */   	comppattern = compile_and_cache(info->pattern, info->protocol); diff --git a/target/linux/generic-2.6/patches-2.6.27/100-netfilter_layer7_2.21.patch b/target/linux/generic-2.6/patches-2.6.27/100-netfilter_layer7_2.21.patch index 43da4e253..e70a5fe3f 100644 --- a/target/linux/generic-2.6/patches-2.6.27/100-netfilter_layer7_2.21.patch +++ b/target/linux/generic-2.6/patches-2.6.27/100-netfilter_layer7_2.21.patch @@ -16,7 +16,7 @@  +#endif /* _XT_LAYER7_H */  --- a/include/net/netfilter/nf_conntrack.h  +++ b/include/net/netfilter/nf_conntrack.h -@@ -118,6 +118,22 @@ +@@ -118,6 +118,22 @@ struct nf_conn   	u_int32_t secmark;   #endif @@ -41,7 +41,7 @@  --- a/net/netfilter/Kconfig  +++ b/net/netfilter/Kconfig -@@ -757,6 +757,27 @@ +@@ -757,6 +757,27 @@ config NETFILTER_XT_MATCH_STATE   	  To compile it as a module, choose M here.  If unsure, say N. @@ -71,7 +71,7 @@   	depends on NETFILTER_XTABLES  --- a/net/netfilter/Makefile  +++ b/net/netfilter/Makefile -@@ -78,6 +78,7 @@ +@@ -78,6 +78,7 @@ obj-$(CONFIG_NETFILTER_XT_MATCH_RATEEST)   obj-$(CONFIG_NETFILTER_XT_MATCH_REALM) += xt_realm.o   obj-$(CONFIG_NETFILTER_XT_MATCH_SCTP) += xt_sctp.o   obj-$(CONFIG_NETFILTER_XT_MATCH_STATE) += xt_state.o @@ -81,7 +81,7 @@   obj-$(CONFIG_NETFILTER_XT_MATCH_TCPMSS) += xt_tcpmss.o  --- a/net/netfilter/nf_conntrack_core.c  +++ b/net/netfilter/nf_conntrack_core.c -@@ -206,6 +206,14 @@ +@@ -206,6 +206,14 @@ destroy_conntrack(struct nf_conntrack *n   	 * too. */   	nf_ct_remove_expectations(ct); @@ -98,7 +98,7 @@   		BUG_ON(hlist_unhashed(&ct->tuplehash[IP_CT_DIR_ORIGINAL].hnode));  --- a/net/netfilter/nf_conntrack_standalone.c  +++ b/net/netfilter/nf_conntrack_standalone.c -@@ -162,6 +162,12 @@ +@@ -162,6 +162,12 @@ static int ct_seq_show(struct seq_file *   		return -ENOSPC;   #endif diff --git a/target/linux/generic-2.6/patches-2.6.27/101-netfilter_layer7_pktmatch.patch b/target/linux/generic-2.6/patches-2.6.27/101-netfilter_layer7_pktmatch.patch index 4931b1bdb..f65e301fd 100644 --- a/target/linux/generic-2.6/patches-2.6.27/101-netfilter_layer7_pktmatch.patch +++ b/target/linux/generic-2.6/patches-2.6.27/101-netfilter_layer7_pktmatch.patch @@ -1,6 +1,6 @@  --- a/include/linux/netfilter/xt_layer7.h  +++ b/include/linux/netfilter/xt_layer7.h -@@ -8,6 +8,7 @@ +@@ -8,6 +8,7 @@ struct xt_layer7_info {       char protocol[MAX_PROTOCOL_LEN];       char pattern[MAX_PATTERN_LEN];       u_int8_t invert; @@ -10,7 +10,7 @@   #endif /* _XT_LAYER7_H */  --- a/net/netfilter/xt_layer7.c  +++ b/net/netfilter/xt_layer7.c -@@ -314,33 +314,35 @@ +@@ -314,33 +314,35 @@ static int match_no_append(struct nf_con   }   /* add the new app data to the conntrack.  Return number of bytes added. */ @@ -60,7 +60,7 @@   	return length;   } -@@ -438,7 +440,7 @@ +@@ -438,7 +440,7 @@ match(const struct sk_buff *skbin,   	enum ip_conntrack_info master_ctinfo, ctinfo;   	struct nf_conn *master_conntrack, *conntrack; @@ -69,7 +69,7 @@   	unsigned int pattern_result, appdatalen;   	regexp * comppattern; -@@ -466,8 +468,8 @@ +@@ -466,8 +468,8 @@ match(const struct sk_buff *skbin,   		master_conntrack = master_ct(master_conntrack);   	/* if we've classified it or seen too many packets */ @@ -80,7 +80,7 @@   		pattern_result = match_no_append(conntrack, master_conntrack,    						 ctinfo, master_ctinfo, info); -@@ -500,6 +502,25 @@ +@@ -500,6 +502,25 @@ match(const struct sk_buff *skbin,   	/* the return value gets checked later, when we're ready to use it */   	comppattern = compile_and_cache(info->pattern, info->protocol); diff --git a/target/linux/generic-2.6/patches-2.6.27/208-rtl8110sb_fix.patch b/target/linux/generic-2.6/patches-2.6.27/208-rtl8110sb_fix.patch index d3cb74fa1..4d8dfeb55 100644 --- a/target/linux/generic-2.6/patches-2.6.27/208-rtl8110sb_fix.patch +++ b/target/linux/generic-2.6/patches-2.6.27/208-rtl8110sb_fix.patch @@ -1,6 +1,6 @@  --- a/drivers/net/r8169.c  +++ b/drivers/net/r8169.c -@@ -1507,7 +1507,7 @@ static const struct rtl_cfg_info { +@@ -1527,7 +1527,7 @@ static const struct rtl_cfg_info {   		.hw_start	= rtl_hw_start_8169,   		.region		= 1,   		.align		= 0, @@ -9,7 +9,7 @@   				  RxFIFOOver | TxErr | TxOK | RxOK | RxErr,   		.napi_event	= RxFIFOOver | TxErr | TxOK | RxOK | RxOverflow,   		.features	= RTL_FEATURE_GMII -@@ -1516,7 +1516,7 @@ static const struct rtl_cfg_info { +@@ -1536,7 +1536,7 @@ static const struct rtl_cfg_info {   		.hw_start	= rtl_hw_start_8168,   		.region		= 2,   		.align		= 8, @@ -18,7 +18,7 @@   				  TxErr | TxOK | RxOK | RxErr,   		.napi_event	= TxErr | TxOK | RxOK | RxOverflow,   		.features	= RTL_FEATURE_GMII | RTL_FEATURE_MSI -@@ -1525,7 +1525,7 @@ static const struct rtl_cfg_info { +@@ -1545,7 +1545,7 @@ static const struct rtl_cfg_info {   		.hw_start	= rtl_hw_start_8101,   		.region		= 2,   		.align		= 8, @@ -27,7 +27,7 @@   				  RxFIFOOver | TxErr | TxOK | RxOK | RxErr,   		.napi_event	= RxFIFOOver | TxErr | TxOK | RxOK | RxOverflow,   		.features	= RTL_FEATURE_MSI -@@ -2866,10 +2866,12 @@ static irqreturn_t rtl8169_interrupt(int +@@ -2879,10 +2879,12 @@ static irqreturn_t rtl8169_interrupt(int   		goto out;   	} diff --git a/target/linux/generic-2.6/patches-2.6.27/977-textsearch_kconfig_hacks.patch b/target/linux/generic-2.6/patches-2.6.27/977-textsearch_kconfig_hacks.patch index 9ce0484ac..6370139ef 100644 --- a/target/linux/generic-2.6/patches-2.6.27/977-textsearch_kconfig_hacks.patch +++ b/target/linux/generic-2.6/patches-2.6.27/977-textsearch_kconfig_hacks.patch @@ -1,6 +1,6 @@ ---- a/lib/Kconfig	2009-03-23 23:04:09.000000000 +0100 -+++ b/lib/Kconfig	2009-03-26 12:43:09.000000000 +0100 -@@ -122,13 +122,13 @@ +--- a/lib/Kconfig ++++ b/lib/Kconfig +@@ -122,13 +122,13 @@ config TEXTSEARCH   	boolean   config TEXTSEARCH_KMP diff --git a/target/linux/generic-2.6/patches-2.6.29/100-netfilter_layer7_2.21.patch b/target/linux/generic-2.6/patches-2.6.29/100-netfilter_layer7_2.21.patch index 165202102..61259b4c8 100644 --- a/target/linux/generic-2.6/patches-2.6.29/100-netfilter_layer7_2.21.patch +++ b/target/linux/generic-2.6/patches-2.6.29/100-netfilter_layer7_2.21.patch @@ -16,7 +16,7 @@  +#endif /* _XT_LAYER7_H */  --- a/include/net/netfilter/nf_conntrack.h  +++ b/include/net/netfilter/nf_conntrack.h -@@ -118,6 +118,22 @@ +@@ -118,6 +118,22 @@ struct nf_conn   	u_int32_t secmark;   #endif @@ -41,7 +41,7 @@  --- a/net/netfilter/Kconfig  +++ b/net/netfilter/Kconfig -@@ -794,6 +794,27 @@ +@@ -794,6 +794,27 @@ config NETFILTER_XT_MATCH_STATE   	  To compile it as a module, choose M here.  If unsure, say N. @@ -71,7 +71,7 @@   	depends on NETFILTER_ADVANCED  --- a/net/netfilter/Makefile  +++ b/net/netfilter/Makefile -@@ -84,6 +84,7 @@ +@@ -84,6 +84,7 @@ obj-$(CONFIG_NETFILTER_XT_MATCH_RECENT)    obj-$(CONFIG_NETFILTER_XT_MATCH_SCTP) += xt_sctp.o   obj-$(CONFIG_NETFILTER_XT_MATCH_SOCKET) += xt_socket.o   obj-$(CONFIG_NETFILTER_XT_MATCH_STATE) += xt_state.o @@ -81,7 +81,7 @@   obj-$(CONFIG_NETFILTER_XT_MATCH_TCPMSS) += xt_tcpmss.o  --- a/net/netfilter/nf_conntrack_core.c  +++ b/net/netfilter/nf_conntrack_core.c -@@ -202,6 +202,14 @@ +@@ -202,6 +202,14 @@ destroy_conntrack(struct nf_conntrack *n   	 * too. */   	nf_ct_remove_expectations(ct); @@ -98,7 +98,7 @@   		BUG_ON(hlist_unhashed(&ct->tuplehash[IP_CT_DIR_ORIGINAL].hnode));  --- a/net/netfilter/nf_conntrack_standalone.c  +++ b/net/netfilter/nf_conntrack_standalone.c -@@ -165,6 +165,12 @@ +@@ -165,6 +165,12 @@ static int ct_seq_show(struct seq_file *   		return -ENOSPC;   #endif diff --git a/target/linux/generic-2.6/patches-2.6.29/101-netfilter_layer7_pktmatch.patch b/target/linux/generic-2.6/patches-2.6.29/101-netfilter_layer7_pktmatch.patch index 4931b1bdb..f65e301fd 100644 --- a/target/linux/generic-2.6/patches-2.6.29/101-netfilter_layer7_pktmatch.patch +++ b/target/linux/generic-2.6/patches-2.6.29/101-netfilter_layer7_pktmatch.patch @@ -1,6 +1,6 @@  --- a/include/linux/netfilter/xt_layer7.h  +++ b/include/linux/netfilter/xt_layer7.h -@@ -8,6 +8,7 @@ +@@ -8,6 +8,7 @@ struct xt_layer7_info {       char protocol[MAX_PROTOCOL_LEN];       char pattern[MAX_PATTERN_LEN];       u_int8_t invert; @@ -10,7 +10,7 @@   #endif /* _XT_LAYER7_H */  --- a/net/netfilter/xt_layer7.c  +++ b/net/netfilter/xt_layer7.c -@@ -314,33 +314,35 @@ +@@ -314,33 +314,35 @@ static int match_no_append(struct nf_con   }   /* add the new app data to the conntrack.  Return number of bytes added. */ @@ -60,7 +60,7 @@   	return length;   } -@@ -438,7 +440,7 @@ +@@ -438,7 +440,7 @@ match(const struct sk_buff *skbin,   	enum ip_conntrack_info master_ctinfo, ctinfo;   	struct nf_conn *master_conntrack, *conntrack; @@ -69,7 +69,7 @@   	unsigned int pattern_result, appdatalen;   	regexp * comppattern; -@@ -466,8 +468,8 @@ +@@ -466,8 +468,8 @@ match(const struct sk_buff *skbin,   		master_conntrack = master_ct(master_conntrack);   	/* if we've classified it or seen too many packets */ @@ -80,7 +80,7 @@   		pattern_result = match_no_append(conntrack, master_conntrack,    						 ctinfo, master_ctinfo, info); -@@ -500,6 +502,25 @@ +@@ -500,6 +502,25 @@ match(const struct sk_buff *skbin,   	/* the return value gets checked later, when we're ready to use it */   	comppattern = compile_and_cache(info->pattern, info->protocol); diff --git a/target/linux/generic-2.6/patches-2.6.29/208-rtl8110sb_fix.patch b/target/linux/generic-2.6/patches-2.6.29/208-rtl8110sb_fix.patch index 1aea706de..7f46c0b51 100644 --- a/target/linux/generic-2.6/patches-2.6.29/208-rtl8110sb_fix.patch +++ b/target/linux/generic-2.6/patches-2.6.29/208-rtl8110sb_fix.patch @@ -27,7 +27,7 @@   				  RxFIFOOver | TxErr | TxOK | RxOK | RxErr,   		.napi_event	= RxFIFOOver | TxErr | TxOK | RxOK | RxOverflow,   		.features	= RTL_FEATURE_MSI -@@ -3581,10 +3581,12 @@ static irqreturn_t rtl8169_interrupt(int +@@ -3582,10 +3582,12 @@ static irqreturn_t rtl8169_interrupt(int   		goto out;   	} diff --git a/target/linux/generic-2.6/patches-2.6.29/980-vm_exports.patch b/target/linux/generic-2.6/patches-2.6.29/980-vm_exports.patch index bad3af96e..f4942cb3c 100644 --- a/target/linux/generic-2.6/patches-2.6.29/980-vm_exports.patch +++ b/target/linux/generic-2.6/patches-2.6.29/980-vm_exports.patch @@ -68,7 +68,7 @@    * macro override instead of weak attribute alias, to workaround  --- a/kernel/sched.c  +++ b/kernel/sched.c -@@ -5121,6 +5121,7 @@ int can_nice(const struct task_struct *p +@@ -5178,6 +5178,7 @@ int can_nice(const struct task_struct *p   	return (nice_rlim <= p->signal->rlim[RLIMIT_NICE].rlim_cur ||   		capable(CAP_SYS_NICE));   } diff --git a/target/linux/orion/patches/200-dt2_board_support.patch b/target/linux/orion/patches/200-dt2_board_support.patch index bf82ed760..4735a221e 100644 --- a/target/linux/orion/patches/200-dt2_board_support.patch +++ b/target/linux/orion/patches/200-dt2_board_support.patch @@ -1,7 +1,6 @@ -diff -ruN linux-2.6.28.5.orig/arch/arm/mach-orion5x/Kconfig linux-2.6.28.5/arch/arm/mach-orion5x/Kconfig ---- linux-2.6.28.5.orig/arch/arm/mach-orion5x/Kconfig	2009-02-21 00:41:27.000000000 +0200 -+++ linux-2.6.28.5/arch/arm/mach-orion5x/Kconfig	2009-02-28 10:06:24.000000000 +0200 -@@ -16,6 +16,13 @@ +--- a/arch/arm/mach-orion5x/Kconfig ++++ b/arch/arm/mach-orion5x/Kconfig +@@ -16,6 +16,13 @@ config MACH_RD88F5182   	  Say 'Y' here if you want your kernel to support the   	  Marvell Orion-NAS (88F5182) RD2 @@ -15,12 +14,10 @@ diff -ruN linux-2.6.28.5.orig/arch/arm/mach-orion5x/Kconfig linux-2.6.28.5/arch/   config MACH_KUROBOX_PRO   	bool "KuroBox Pro"   	select I2C_BOARDINFO -diff -ruN linux-2.6.28.5.orig/arch/arm/mach-orion5x/Makefile linux-2.6.28.5/arch/arm/mach-orion5x/Makefile ---- linux-2.6.28.5.orig/arch/arm/mach-orion5x/Makefile	2009-02-21 00:41:27.000000000 +0200 -+++ linux-2.6.28.5/arch/arm/mach-orion5x/Makefile	2009-02-28 10:07:35.000000000 +0200 -@@ -17,3 +17,4 @@ +--- a/arch/arm/mach-orion5x/Makefile ++++ b/arch/arm/mach-orion5x/Makefile +@@ -17,3 +17,4 @@ obj-$(CONFIG_MACH_WNR854T)	+= wnr854t-se   obj-$(CONFIG_MACH_RD88F5181L_GE)	+= rd88f5181l-ge-setup.o   obj-$(CONFIG_MACH_RD88F5181L_FXO)	+= rd88f5181l-fxo-setup.o   obj-$(CONFIG_MACH_RD88F6183AP_GE)	+= rd88f6183ap-ge-setup.o  +obj-$(CONFIG_MACH_DT2)		+= dt2-setup.o - diff --git a/target/linux/rb532/patches-2.6.28/002-pci_io_map_base.patch b/target/linux/rb532/patches-2.6.28/002-pci_io_map_base.patch index 5786803e4..49dea20c6 100644 --- a/target/linux/rb532/patches-2.6.28/002-pci_io_map_base.patch +++ b/target/linux/rb532/patches-2.6.28/002-pci_io_map_base.patch @@ -7,11 +7,9 @@ Tested-by: Florian Fainelli <florian@openwrt.org>   arch/mips/pci/pci-rc32434.c |   11 +++++++++++   1 files changed, 11 insertions(+), 0 deletions(-) -diff --git a/arch/mips/pci/pci-rc32434.c b/arch/mips/pci/pci-rc32434.c -index 1c2821e..71f7d27 100644  --- a/arch/mips/pci/pci-rc32434.c  +++ b/arch/mips/pci/pci-rc32434.c -@@ -205,6 +205,8 @@ static int __init rc32434_pcibridge_init(void) +@@ -205,6 +205,8 @@ static int __init rc32434_pcibridge_init   static int __init rc32434_pci_init(void)   { @@ -36,7 +34,3 @@ index 1c2821e..71f7d27 100644   	register_pci_controller(&rc32434_controller);   	rc32434_sync(); ---  -1.5.6.4 - - diff --git a/target/linux/rb532/patches-2.6.28/003-gpio_bit_setting.patch b/target/linux/rb532/patches-2.6.28/003-gpio_bit_setting.patch index 49f9f4b3b..80272aec4 100644 --- a/target/linux/rb532/patches-2.6.28/003-gpio_bit_setting.patch +++ b/target/linux/rb532/patches-2.6.28/003-gpio_bit_setting.patch @@ -8,11 +8,9 @@ Signed-off-by: Phil Sutter <n0-1@freewrt.org>   arch/mips/rb532/gpio.c |    6 ++----   1 files changed, 2 insertions(+), 4 deletions(-) -diff --git a/arch/mips/rb532/gpio.c b/arch/mips/rb532/gpio.c -index 0e84c8a..e35cb75 100644  --- a/arch/mips/rb532/gpio.c  +++ b/arch/mips/rb532/gpio.c -@@ -119,13 +119,11 @@ static inline void rb532_set_bit(unsigned bitval, +@@ -119,13 +119,11 @@ static inline void rb532_set_bit(unsigne   	unsigned long flags;   	u32 val; @@ -28,8 +26,3 @@ index 0e84c8a..e35cb75 100644   	writel(val, ioaddr);   	local_irq_restore(flags); ---  -1.5.6.4 - - - diff --git a/target/linux/rb532/patches-2.6.28/004-fix_pata_rb532_cf.patch b/target/linux/rb532/patches-2.6.28/004-fix_pata_rb532_cf.patch index d1d73ac9c..e1e417a55 100644 --- a/target/linux/rb532/patches-2.6.28/004-fix_pata_rb532_cf.patch +++ b/target/linux/rb532/patches-2.6.28/004-fix_pata_rb532_cf.patch @@ -10,9 +10,8 @@ be cleared. This is being done at the end of rb532_pata_irq_handler.  Signed-off-by: Phil Sutter <n0-1@freewrt.org>  Acked-by: Florian Fainelli <florian@openwrt.org>  --- -diff -urN linux-2.6.28.7/drivers/ata/pata_rb532_cf.c linux-2.6.28.7.new/drivers/ata/pata_rb532_cf.c ---- linux-2.6.28.7/drivers/ata/pata_rb532_cf.c	2009-02-20 23:41:27.000000000 +0100 -+++ linux-2.6.28.7.new/drivers/ata/pata_rb532_cf.c	2009-03-15 13:21:06.000000000 +0100 +--- a/drivers/ata/pata_rb532_cf.c ++++ b/drivers/ata/pata_rb532_cf.c  @@ -31,6 +31,7 @@   #include <scsi/scsi_host.h> @@ -21,7 +20,7 @@ diff -urN linux-2.6.28.7/drivers/ata/pata_rb532_cf.c linux-2.6.28.7.new/drivers/   #define DRV_NAME	"pata-rb532-cf"   #define DRV_VERSION	"0.1.0" -@@ -63,8 +64,8 @@ +@@ -63,8 +64,8 @@ static inline void rb532_pata_finish_io(   	   ata_sff_sync might be sufficient. */   	ata_sff_dma_pause(ap);   	ndelay(RB500_CF_IO_DELAY); @@ -32,7 +31,7 @@ diff -urN linux-2.6.28.7/drivers/ata/pata_rb532_cf.c linux-2.6.28.7.new/drivers/   }   static void rb532_pata_exec_command(struct ata_port *ap, -@@ -113,13 +114,15 @@ +@@ -113,13 +114,15 @@ static irqreturn_t rb532_pata_irq_handle   	struct rb532_cf_info *info = ah->private_data;   	if (gpio_get_value(info->gpio_line)) { diff --git a/target/linux/rb532/patches-2.6.28/005-pata_rb532_cf_4bytes_rw.patch b/target/linux/rb532/patches-2.6.28/005-pata_rb532_cf_4bytes_rw.patch index 1af14ad6f..ff1f8dc8c 100644 --- a/target/linux/rb532/patches-2.6.28/005-pata_rb532_cf_4bytes_rw.patch +++ b/target/linux/rb532/patches-2.6.28/005-pata_rb532_cf_4bytes_rw.patch @@ -10,10 +10,9 @@ original driver always transfers 512 Bytes at once.  Signed-off-by: Phil Sutter <n0-1@freewrt.org>  Acked-by: Sergei Shtyltov <sshtylyov@ru.mvista.com>  --- -diff -urN linux-2.6.28.7/drivers/ata/pata_rb532_cf.c linux-2.6.28.7.new/drivers/ata/pata_rb532_cf.c ---- linux-2.6.28.7/drivers/ata/pata_rb532_cf.c	2009-03-15 13:24:24.000000000 +0100 -+++ linux-2.6.28.7.new/drivers/ata/pata_rb532_cf.c	2009-03-15 13:26:19.000000000 +0100 -@@ -82,13 +82,10 @@ +--- a/drivers/ata/pata_rb532_cf.c ++++ b/drivers/ata/pata_rb532_cf.c +@@ -82,13 +82,10 @@ static unsigned int rb532_pata_data_xfer   	void __iomem *ioaddr = ap->ioaddr.data_addr;   	int retlen = buflen; diff --git a/target/linux/rb532/patches-2.6.28/006-pata_rb532_cf_fix_prototype.patch b/target/linux/rb532/patches-2.6.28/006-pata_rb532_cf_fix_prototype.patch index 7a25bcb68..72f00eb0d 100644 --- a/target/linux/rb532/patches-2.6.28/006-pata_rb532_cf_fix_prototype.patch +++ b/target/linux/rb532/patches-2.6.28/006-pata_rb532_cf_fix_prototype.patch @@ -5,10 +5,9 @@ bytes, so alter the return value accordingly.  Signed-off-by: Phil Sutter <n0-1@freewrt.org>  --- -diff -urN linux-2.6.28.7/drivers/ata/pata_rb532_cf.c linux-2.6.28.7.new/drivers/ata/pata_rb532_cf.c ---- linux-2.6.28.7/drivers/ata/pata_rb532_cf.c	2009-03-15 13:29:09.000000000 +0100 -+++ linux-2.6.28.7.new/drivers/ata/pata_rb532_cf.c	2009-03-15 13:29:46.000000000 +0100 -@@ -88,7 +88,7 @@ +--- a/drivers/ata/pata_rb532_cf.c ++++ b/drivers/ata/pata_rb532_cf.c +@@ -88,7 +88,7 @@ static unsigned int rb532_pata_data_xfer   		readsl(ioaddr, buf, buflen / sizeof(u32));   	rb532_pata_finish_io(adev->link->ap); diff --git a/target/linux/rb532/patches-2.6.28/007-cmdline_hack.patch b/target/linux/rb532/patches-2.6.28/007-cmdline_hack.patch index 5f2ed2f2f..1127019fe 100644 --- a/target/linux/rb532/patches-2.6.28/007-cmdline_hack.patch +++ b/target/linux/rb532/patches-2.6.28/007-cmdline_hack.patch @@ -1,6 +1,5 @@ -diff -urN linux-2.6.27.5/arch/mips/kernel/head.S linux-2.6.27.5.new/arch/mips/kernel/head.S ---- linux-2.6.27.5/arch/mips/kernel/head.S	2008-11-15 19:24:03.000000000 +0100 -+++ linux-2.6.27.5.new/arch/mips/kernel/head.S	2008-11-15 19:24:55.000000000 +0100 +--- a/arch/mips/kernel/head.S ++++ b/arch/mips/kernel/head.S  @@ -123,6 +123,11 @@   	j kernel_entry diff --git a/target/linux/rb532/patches-2.6.28/008-korina_reset_resource_buffer_size_1536.patch b/target/linux/rb532/patches-2.6.28/008-korina_reset_resource_buffer_size_1536.patch index 1db2e0ecb..c1c56d960 100644 --- a/target/linux/rb532/patches-2.6.28/008-korina_reset_resource_buffer_size_1536.patch +++ b/target/linux/rb532/patches-2.6.28/008-korina_reset_resource_buffer_size_1536.patch @@ -9,8 +9,6 @@ Signed-off-by: Phil Sutter <n0-1@freewrt.org>   drivers/net/korina.c |    5 ++++-   1 files changed, 4 insertions(+), 1 deletions(-) -diff --git a/drivers/net/korina.c b/drivers/net/korina.c -index fefb33d..e30c2f4 100644  --- a/drivers/net/korina.c  +++ b/drivers/net/korina.c  @@ -84,7 +84,10 @@ @@ -25,7 +23,3 @@ index fefb33d..e30c2f4 100644   #define KORINA_RDS_MASK	(KORINA_NUM_RDS - 1)   #define KORINA_TDS_MASK	(KORINA_NUM_TDS - 1)   #define RD_RING_SIZE 	(KORINA_NUM_RDS * sizeof(struct dma_desc)) ---  -1.5.6.4 - - diff --git a/target/linux/rb532/patches-2.6.28/009-korina_disable_napi_on_close_and_restart.patch b/target/linux/rb532/patches-2.6.28/009-korina_disable_napi_on_close_and_restart.patch index 4eec6fd05..364d307fc 100644 --- a/target/linux/rb532/patches-2.6.28/009-korina_disable_napi_on_close_and_restart.patch +++ b/target/linux/rb532/patches-2.6.28/009-korina_disable_napi_on_close_and_restart.patch @@ -5,11 +5,9 @@ Signed-off-by: Phil Sutter <n0-1@freewrt.org>   drivers/net/korina.c |    4 ++++   1 files changed, 4 insertions(+), 0 deletions(-) -diff --git a/drivers/net/korina.c b/drivers/net/korina.c -index e30c2f4..65b8487 100644  --- a/drivers/net/korina.c  +++ b/drivers/net/korina.c -@@ -904,6 +904,8 @@ static int korina_restart(struct net_device *dev) +@@ -905,6 +905,8 @@ static int korina_restart(struct net_dev   	korina_free_ring(dev); @@ -18,7 +16,7 @@ index e30c2f4..65b8487 100644   	ret = korina_init(dev);   	if (ret < 0) {   		printk(KERN_ERR DRV_NAME "%s: cannot restart device\n", -@@ -1070,6 +1072,8 @@ static int korina_close(struct net_device *dev) +@@ -1071,6 +1073,8 @@ static int korina_close(struct net_devic   	korina_free_ring(dev); @@ -27,7 +25,3 @@ index e30c2f4..65b8487 100644   	free_irq(lp->rx_irq, dev);   	free_irq(lp->tx_irq, dev);   	free_irq(lp->ovr_irq, dev); ---  -1.5.6.4 - - diff --git a/target/linux/rb532/patches-2.6.28/010-korina_rework_korina_rx.patch b/target/linux/rb532/patches-2.6.28/010-korina_rework_korina_rx.patch index 177678b98..bfb91a91a 100644 --- a/target/linux/rb532/patches-2.6.28/010-korina_rework_korina_rx.patch +++ b/target/linux/rb532/patches-2.6.28/010-korina_rework_korina_rx.patch @@ -4,9 +4,9 @@ packets and korina_rx is called again (and again and again and ...).  Signed-off-by: Phil Sutter <n0-1@freewrt.org>  --- ---- a/drivers/net/korina.c	2009-01-19 23:19:10.000000000 +0100 -+++ b/drivers/net/korina.c	2009-01-19 23:25:31.000000000 +0100 -@@ -353,15 +353,20 @@ +--- a/drivers/net/korina.c ++++ b/drivers/net/korina.c +@@ -353,15 +353,20 @@ static int korina_rx(struct net_device *   	struct dma_desc *rd = &lp->rd_ring[lp->rx_next_done];   	struct sk_buff *skb, *skb_new;   	u8 *pkt_buf; @@ -28,7 +28,7 @@ Signed-off-by: Phil Sutter <n0-1@freewrt.org>   		/* Update statistics counters */   		if (devcs & ETH_RX_CRC)   			dev->stats.rx_crc_errors++; -@@ -384,64 +389,53 @@ +@@ -384,64 +389,53 @@ static int korina_rx(struct net_device *   			 * in Rc32434 (errata ref #077) */   			dev->stats.rx_errors++;   			dev->stats.rx_dropped++; diff --git a/target/linux/rb532/patches-2.6.28/011-korina_do_schedule_napi_after_testing_it.patch b/target/linux/rb532/patches-2.6.28/011-korina_do_schedule_napi_after_testing_it.patch index c5e1b9a40..d9e6f33eb 100644 --- a/target/linux/rb532/patches-2.6.28/011-korina_do_schedule_napi_after_testing_it.patch +++ b/target/linux/rb532/patches-2.6.28/011-korina_do_schedule_napi_after_testing_it.patch @@ -5,9 +5,9 @@ Before this change, the driver received absolutely nothing.  Signed-off-by: Phil Sutter <n0-1@freewrt.org>  --- ---- a/drivers/net/korina.c	2009-01-19 23:26:19.000000000 +0100 -+++ b/drivers/net/korina.c	2009-01-19 23:27:06.000000000 +0100 -@@ -330,7 +330,7 @@ +--- a/drivers/net/korina.c ++++ b/drivers/net/korina.c +@@ -330,7 +330,7 @@ static irqreturn_t korina_rx_dma_interru   	dmas = readl(&lp->rx_dma_regs->dmas);   	if (dmas & (DMA_STAT_DONE | DMA_STAT_HALT | DMA_STAT_ERR)) { diff --git a/target/linux/rb532/patches-2.6.28/012-korina_do_tx_at_right_position.patch b/target/linux/rb532/patches-2.6.28/012-korina_do_tx_at_right_position.patch index 101e869d0..665e09ae4 100644 --- a/target/linux/rb532/patches-2.6.28/012-korina_do_tx_at_right_position.patch +++ b/target/linux/rb532/patches-2.6.28/012-korina_do_tx_at_right_position.patch @@ -7,9 +7,9 @@ upstream.  Signed-off-by: Phil Sutter <n0-1@freewrt.org>  --- ---- a/drivers/net/korina.c	2009-01-19 23:27:41.000000000 +0100 -+++ b/drivers/net/korina.c	2009-01-19 23:29:08.000000000 +0100 -@@ -330,12 +330,12 @@ +--- a/drivers/net/korina.c ++++ b/drivers/net/korina.c +@@ -330,12 +330,12 @@ static irqreturn_t korina_rx_dma_interru   	dmas = readl(&lp->rx_dma_regs->dmas);   	if (dmas & (DMA_STAT_DONE | DMA_STAT_HALT | DMA_STAT_ERR)) { @@ -24,7 +24,7 @@ Signed-off-by: Phil Sutter <n0-1@freewrt.org>   		if (dmas & DMA_STAT_ERR)   			printk(KERN_ERR DRV_NAME "%s: DMA error\n", dev->name); -@@ -621,11 +621,11 @@ +@@ -621,11 +621,11 @@ korina_tx_dma_interrupt(int irq, void *d   	dmas = readl(&lp->tx_dma_regs->dmas);   	if (dmas & (DMA_STAT_FINI | DMA_STAT_ERR)) { diff --git a/target/linux/rb532/patches-2.6.28/013-korina_fix_handling_tx_chain_tail.patch b/target/linux/rb532/patches-2.6.28/013-korina_fix_handling_tx_chain_tail.patch index 6babc3230..88fcc53a6 100644 --- a/target/linux/rb532/patches-2.6.28/013-korina_fix_handling_tx_chain_tail.patch +++ b/target/linux/rb532/patches-2.6.28/013-korina_fix_handling_tx_chain_tail.patch @@ -10,11 +10,9 @@ Signed-off-by: Phil Sutter <n0-1@freewrt.org>   drivers/net/korina.c |   22 +++++++++++-----------   1 files changed, 11 insertions(+), 11 deletions(-) -diff --git a/drivers/net/korina.c b/drivers/net/korina.c -index dced5e7..f200175 100644  --- a/drivers/net/korina.c  +++ b/drivers/net/korina.c -@@ -199,7 +199,7 @@ static int korina_send_packet(struct sk_buff *skb, struct net_device *dev) +@@ -199,7 +199,7 @@ static int korina_send_packet(struct sk_   	struct korina_private *lp = netdev_priv(dev);   	unsigned long flags;   	u32 length; @@ -23,7 +21,7 @@ index dced5e7..f200175 100644   	struct dma_desc *td;   	spin_lock_irqsave(&lp->lock, flags); -@@ -231,8 +231,8 @@ static int korina_send_packet(struct sk_buff *skb, struct net_device *dev) +@@ -231,8 +231,8 @@ static int korina_send_packet(struct sk_   	/* Setup the transmit descriptor. */   	dma_cache_inv((u32) td, sizeof(*td));   	td->ca = CPHYSADDR(skb->data); @@ -34,7 +32,7 @@ index dced5e7..f200175 100644   	if (readl(&(lp->tx_dma_regs->dmandptr)) == 0) {   		if (lp->tx_chain_status == desc_empty) { -@@ -240,7 +240,7 @@ static int korina_send_packet(struct sk_buff *skb, struct net_device *dev) +@@ -240,7 +240,7 @@ static int korina_send_packet(struct sk_   			td->control = DMA_COUNT(length) |   					DMA_DESC_COF | DMA_DESC_IOF;   			/* Move tail */ @@ -43,7 +41,7 @@ index dced5e7..f200175 100644   			/* Write to NDPTR */   			writel(CPHYSADDR(&lp->td_ring[lp->tx_chain_head]),   					&lp->tx_dma_regs->dmandptr); -@@ -251,12 +251,12 @@ static int korina_send_packet(struct sk_buff *skb, struct net_device *dev) +@@ -251,12 +251,12 @@ static int korina_send_packet(struct sk_   			td->control = DMA_COUNT(length) |   					DMA_DESC_COF | DMA_DESC_IOF;   			/* Link to prev */ @@ -59,7 +57,7 @@ index dced5e7..f200175 100644   			/* Write to NDPTR */   			writel(CPHYSADDR(&lp->td_ring[lp->tx_chain_head]),   					&(lp->tx_dma_regs->dmandptr)); -@@ -270,17 +270,17 @@ static int korina_send_packet(struct sk_buff *skb, struct net_device *dev) +@@ -270,17 +270,17 @@ static int korina_send_packet(struct sk_   			td->control = DMA_COUNT(length) |   					DMA_DESC_COF | DMA_DESC_IOF;   			/* Move tail */ @@ -81,7 +79,3 @@ index dced5e7..f200175 100644   		}   	}   	dma_cache_wback((u32) td, sizeof(*td)); ---  -1.5.6.4 - - diff --git a/target/linux/rb532/patches-2.6.28/014-korina_do_not_stop_queue_here.patch b/target/linux/rb532/patches-2.6.28/014-korina_do_not_stop_queue_here.patch index 79ae024b6..bccd307c1 100644 --- a/target/linux/rb532/patches-2.6.28/014-korina_do_not_stop_queue_here.patch +++ b/target/linux/rb532/patches-2.6.28/014-korina_do_not_stop_queue_here.patch @@ -7,11 +7,9 @@ Signed-off-by: Phil Sutter <n0-1@freewrt.org>   drivers/net/korina.c |    1 -   1 files changed, 0 insertions(+), 1 deletions(-) -diff --git a/drivers/net/korina.c b/drivers/net/korina.c -index f200175..bd33fa9 100644  --- a/drivers/net/korina.c  +++ b/drivers/net/korina.c -@@ -272,7 +272,6 @@ static int korina_send_packet(struct sk_buff *skb, struct net_device *dev) +@@ -272,7 +272,6 @@ static int korina_send_packet(struct sk_   			/* Move tail */   			lp->tx_chain_tail = chain_next;   			lp->tx_chain_status = desc_filled; @@ -19,7 +17,3 @@ index f200175..bd33fa9 100644   		} else {   			/* Update tail */   			td->control = DMA_COUNT(length) | ---  -1.5.6.4 - - diff --git a/target/linux/rb532/patches-2.6.28/015-korina_irqf_flags.patch b/target/linux/rb532/patches-2.6.28/015-korina_irqf_flags.patch index 74059fbeb..12b8036fa 100644 --- a/target/linux/rb532/patches-2.6.28/015-korina_irqf_flags.patch +++ b/target/linux/rb532/patches-2.6.28/015-korina_irqf_flags.patch @@ -8,11 +8,9 @@ Signed-off-by: Phil Sutter <n0-1@freewrt.org>   drivers/net/korina.c |    8 ++++----   1 files changed, 4 insertions(+), 4 deletions(-) -diff --git a/drivers/net/korina.c b/drivers/net/korina.c -index bd33fa9..1d6e48e 100644  --- a/drivers/net/korina.c  +++ b/drivers/net/korina.c -@@ -1000,14 +1000,14 @@ static int korina_open(struct net_device *dev) +@@ -998,14 +998,14 @@ static int korina_open(struct net_device   	 * that handles the Done Finished   	 * Ovr and Und Events */   	ret = request_irq(lp->rx_irq, &korina_rx_dma_interrupt, @@ -29,7 +27,7 @@ index bd33fa9..1d6e48e 100644   	if (ret < 0) {   		printk(KERN_ERR DRV_NAME "%s: unable to get Tx DMA IRQ %d\n",   		    dev->name, lp->tx_irq); -@@ -1016,7 +1016,7 @@ static int korina_open(struct net_device *dev) +@@ -1014,7 +1014,7 @@ static int korina_open(struct net_device   	/* Install handler for overrun error. */   	ret = request_irq(lp->ovr_irq, &korina_ovr_interrupt, @@ -38,7 +36,7 @@ index bd33fa9..1d6e48e 100644   	if (ret < 0) {   		printk(KERN_ERR DRV_NAME"%s: unable to get OVR IRQ %d\n",   		    dev->name, lp->ovr_irq); -@@ -1025,7 +1025,7 @@ static int korina_open(struct net_device *dev) +@@ -1023,7 +1023,7 @@ static int korina_open(struct net_device   	/* Install handler for underflow error. */   	ret = request_irq(lp->und_irq, &korina_und_interrupt, @@ -47,7 +45,3 @@ index bd33fa9..1d6e48e 100644   	if (ret < 0) {   		printk(KERN_ERR DRV_NAME "%s: unable to get UND IRQ %d\n",   		    dev->name, lp->und_irq); ---  -1.5.6.4 - - diff --git a/target/linux/rb532/patches-2.6.28/016-korina_drop_left_over_assignment.patch b/target/linux/rb532/patches-2.6.28/016-korina_drop_left_over_assignment.patch index ab82cb5af..19dd71ca7 100644 --- a/target/linux/rb532/patches-2.6.28/016-korina_drop_left_over_assignment.patch +++ b/target/linux/rb532/patches-2.6.28/016-korina_drop_left_over_assignment.patch @@ -7,11 +7,9 @@ Signed-off-by: Phil Sutter <n0-1@freewrt.org>   drivers/net/korina.c |    3 +--   1 files changed, 1 insertions(+), 2 deletions(-) -diff --git a/drivers/net/korina.c b/drivers/net/korina.c -index 60ae7bf..75010ca 100644  --- a/drivers/net/korina.c  +++ b/drivers/net/korina.c -@@ -743,6 +743,7 @@ static struct ethtool_ops netdev_ethtool_ops = { +@@ -738,6 +738,7 @@ static struct ethtool_ops netdev_ethtool   static void korina_alloc_ring(struct net_device *dev)   {   	struct korina_private *lp = netdev_priv(dev); @@ -19,7 +17,7 @@ index 60ae7bf..75010ca 100644   	int i;   	/* Initialize the transmit descriptors */ -@@ -758,8 +759,6 @@ static void korina_alloc_ring(struct net_device *dev) +@@ -753,8 +754,6 @@ static void korina_alloc_ring(struct net   	/* Initialize the receive descriptors */   	for (i = 0; i < KORINA_NUM_RDS; i++) { @@ -28,7 +26,3 @@ index 60ae7bf..75010ca 100644   		skb = dev_alloc_skb(KORINA_RBSIZE + 2);   		if (!skb)   			break; ---  -1.5.6.4 - - diff --git a/target/linux/rb532/patches-2.6.28/017-korina_fix_loop_back_rx_desc.patch b/target/linux/rb532/patches-2.6.28/017-korina_fix_loop_back_rx_desc.patch index 0484f2cbe..5b684b40c 100644 --- a/target/linux/rb532/patches-2.6.28/017-korina_fix_loop_back_rx_desc.patch +++ b/target/linux/rb532/patches-2.6.28/017-korina_fix_loop_back_rx_desc.patch @@ -9,11 +9,9 @@ Signed-off-by: Phil Sutter <n0-1@freewrt.org>   drivers/net/korina.c |    9 +++++----   1 files changed, 5 insertions(+), 4 deletions(-) -diff --git a/drivers/net/korina.c b/drivers/net/korina.c -index 1d6e48e..67fbdf4 100644  --- a/drivers/net/korina.c  +++ b/drivers/net/korina.c -@@ -769,11 +769,12 @@ static void korina_alloc_ring(struct net_device *dev) +@@ -766,11 +766,12 @@ static void korina_alloc_ring(struct net   		lp->rd_ring[i].link = CPHYSADDR(&lp->rd_ring[i+1]);   	} @@ -30,7 +28,3 @@ index 1d6e48e..67fbdf4 100644   	lp->rx_chain_head = 0;   	lp->rx_chain_tail = 0;   	lp->rx_chain_status = desc_empty; ---  -1.5.6.4 - - diff --git a/target/linux/rb532/patches-2.6.28/018-korina_adjust_headroom.patch b/target/linux/rb532/patches-2.6.28/018-korina_adjust_headroom.patch index f9f8daccc..4ec3d0e62 100644 --- a/target/linux/rb532/patches-2.6.28/018-korina_adjust_headroom.patch +++ b/target/linux/rb532/patches-2.6.28/018-korina_adjust_headroom.patch @@ -8,11 +8,9 @@ Signed-off-by: Phil Sutter <n0-1@freewrt.org>   drivers/net/korina.c |    3 +++   1 files changed, 3 insertions(+), 0 deletions(-) -diff --git a/drivers/net/korina.c b/drivers/net/korina.c -index 67fbdf4..60ae7bf 100644  --- a/drivers/net/korina.c  +++ b/drivers/net/korina.c -@@ -416,6 +416,9 @@ static int korina_rx(struct net_device *dev, int limit) +@@ -415,6 +415,9 @@ static int korina_rx(struct net_device *   			if (devcs & ETH_RX_MP)   				dev->stats.multicast++; @@ -21,8 +19,4 @@ index 67fbdf4..60ae7bf 100644  +   			lp->rx_skb[lp->rx_next_done] = skb_new;   		} -  ---  -1.5.6.4 - - + 		rd->devcs = 0; diff --git a/target/linux/rb532/patches-2.6.28/019-korina_set_dev_field_allocated_skb.patch b/target/linux/rb532/patches-2.6.28/019-korina_set_dev_field_allocated_skb.patch index bec351488..e54d6113e 100644 --- a/target/linux/rb532/patches-2.6.28/019-korina_set_dev_field_allocated_skb.patch +++ b/target/linux/rb532/patches-2.6.28/019-korina_set_dev_field_allocated_skb.patch @@ -7,19 +7,17 @@ Signed-off-by: Phil Sutter <n0-1@freewrt.org>   drivers/net/korina.c |    2 ++   1 files changed, 2 insertions(+), 0 deletions(-) -diff --git a/drivers/net/korina.c b/drivers/net/korina.c -index 75010ca..56b4db2 100644  --- a/drivers/net/korina.c  +++ b/drivers/net/korina.c -@@ -419,6 +419,7 @@ static int korina_rx(struct net_device *dev, int limit) +@@ -418,6 +418,7 @@ static int korina_rx(struct net_device *   			/* 16 bit align */   			skb_reserve(skb_new, 2);  +			skb_new->dev = dev;   			lp->rx_skb[lp->rx_next_done] = skb_new;   		} -  -@@ -763,6 +764,7 @@ static void korina_alloc_ring(struct net_device *dev) + 		rd->devcs = 0; +@@ -761,6 +762,7 @@ static void korina_alloc_ring(struct net   		if (!skb)   			break;   		skb_reserve(skb, 2); @@ -27,7 +25,3 @@ index 75010ca..56b4db2 100644   		lp->rx_skb[i] = skb;   		lp->rd_ring[i].control = DMA_DESC_IOD |   				DMA_COUNT(KORINA_RBSIZE); ---  -1.5.6.4 - - diff --git a/target/linux/rb532/patches-2.6.28/021-rb532_driver_data.patch b/target/linux/rb532/patches-2.6.28/021-rb532_driver_data.patch index 9aaeef334..bb4b47001 100644 --- a/target/linux/rb532/patches-2.6.28/021-rb532_driver_data.patch +++ b/target/linux/rb532/patches-2.6.28/021-rb532_driver_data.patch @@ -7,11 +7,9 @@ Signed-off-by: Phil Sutter <n0-1@freewrt.org>   arch/mips/rb532/devices.c |    2 +-   1 files changed, 1 insertions(+), 1 deletions(-) -diff --git a/arch/mips/rb532/devices.c b/arch/mips/rb532/devices.c -index 9b6b744..3c74561 100644  --- a/arch/mips/rb532/devices.c  +++ b/arch/mips/rb532/devices.c -@@ -89,7 +89,7 @@ static struct korina_device korina_dev0_data = { +@@ -86,7 +86,7 @@ static struct korina_device korina_dev0_   static struct platform_device korina_dev0 = {   	.id = -1,   	.name = "korina", @@ -20,7 +18,3 @@ index 9b6b744..3c74561 100644   	.resource = korina_dev0_res,   	.num_resources = ARRAY_SIZE(korina_dev0_res),   }; ---  -1.5.6.4 - - diff --git a/target/linux/rb532/patches-2.6.28/022-rb532_uart_autodetect.patch b/target/linux/rb532/patches-2.6.28/022-rb532_uart_autodetect.patch index ae42a4dbc..e50610342 100644 --- a/target/linux/rb532/patches-2.6.28/022-rb532_uart_autodetect.patch +++ b/target/linux/rb532/patches-2.6.28/022-rb532_uart_autodetect.patch @@ -8,8 +8,6 @@ Signed-off-by: Phil Sutter <n0-1@freewrt.org>   arch/mips/rb532/serial.c  |    2 +-   2 files changed, 27 insertions(+), 1 deletions(-) -diff --git a/arch/mips/rb532/devices.c b/arch/mips/rb532/devices.c -index c1c2918..9b6b744 100644  --- a/arch/mips/rb532/devices.c  +++ b/arch/mips/rb532/devices.c  @@ -24,6 +24,7 @@ @@ -29,7 +27,7 @@ index c1c2918..9b6b744 100644   static struct resource korina_dev0_res[] = {   	{   		.name = "korina_regs", -@@ -214,12 +217,32 @@ static struct platform_device rb532_wdt = { +@@ -214,12 +217,32 @@ static struct platform_device rb532_wdt    	.num_resources	= ARRAY_SIZE(rb532_wdt_res),   }; @@ -62,7 +60,7 @@ index c1c2918..9b6b744 100644   	&rb532_wdt   }; -@@ -294,6 +317,9 @@ static int __init plat_setup_devices(void) +@@ -294,6 +317,9 @@ static int __init plat_setup_devices(voi   	/* Initialise the NAND device */   	rb532_nand_setup(); @@ -72,8 +70,6 @@ index c1c2918..9b6b744 100644   	return platform_add_devices(rb532_devs, ARRAY_SIZE(rb532_devs));   } -diff --git a/arch/mips/rb532/serial.c b/arch/mips/rb532/serial.c -index 3e0d7ec..00ed19f 100644  --- a/arch/mips/rb532/serial.c  +++ b/arch/mips/rb532/serial.c  @@ -36,7 +36,7 @@ @@ -85,7 +81,3 @@ index 3e0d7ec..00ed19f 100644   	.line = 0,   	.irq = UART0_IRQ,   	.iotype = UPIO_MEM, ---  -1.5.6.4 - - diff --git a/target/linux/rb532/patches-2.6.28/023-rb532_fix_init_of_rb532_dev3_ctl_res.patch b/target/linux/rb532/patches-2.6.28/023-rb532_fix_init_of_rb532_dev3_ctl_res.patch index 64a6d8934..ab60afc1e 100644 --- a/target/linux/rb532/patches-2.6.28/023-rb532_fix_init_of_rb532_dev3_ctl_res.patch +++ b/target/linux/rb532/patches-2.6.28/023-rb532_fix_init_of_rb532_dev3_ctl_res.patch @@ -3,11 +3,9 @@ initialisation has to be the same as cf_slot0_res and nand_slot0_res.  Signed-off-by: Phil Sutter <n0-1@freewrt.org>  --- -diff --git a/arch/mips/rb532/gpio.c b/arch/mips/rb532/gpio.c -index d75eb19..40deb11 100644  --- a/arch/mips/rb532/gpio.c  +++ b/arch/mips/rb532/gpio.c -@@ -55,8 +55,6 @@ static struct resource rb532_gpio_reg0_res[] = { +@@ -55,8 +55,6 @@ static struct resource rb532_gpio_reg0_r   static struct resource rb532_dev3_ctl_res[] = {   	{   		.name	= "dev3_ctl", @@ -16,7 +14,7 @@ index d75eb19..40deb11 100644   		.flags	= IORESOURCE_MEM,   	}   }; -@@ -243,6 +241,9 @@ int __init rb532_gpio_init(void) +@@ -251,6 +249,9 @@ int __init rb532_gpio_init(void)   	/* Register our GPIO chip */   	gpiochip_add(&rb532_gpio_chip->chip); @@ -26,7 +24,3 @@ index d75eb19..40deb11 100644   	r = rb532_dev3_ctl_res;   	dev3.base = ioremap_nocache(r->start, r->end - r->start); ---  -1.5.6.4 - - diff --git a/target/linux/rb532/patches-2.6.28/024-rb532_fix_set_latch_u5.patch b/target/linux/rb532/patches-2.6.28/024-rb532_fix_set_latch_u5.patch index fc0c77ec2..edad9d868 100644 --- a/target/linux/rb532/patches-2.6.28/024-rb532_fix_set_latch_u5.patch +++ b/target/linux/rb532/patches-2.6.28/024-rb532_fix_set_latch_u5.patch @@ -4,11 +4,9 @@ is wrong.  Signed-off-by: Phil Sutter <n0-1@freewrt.org>  --- -diff --git a/arch/mips/rb532/gpio.c b/arch/mips/rb532/gpio.c -index 40deb11..7e0cb4f 100644  --- a/arch/mips/rb532/gpio.c  +++ b/arch/mips/rb532/gpio.c -@@ -93,7 +93,7 @@ void set_latch_u5(unsigned char or_mask, unsigned char nand_mask) +@@ -93,7 +93,7 @@ void set_latch_u5(unsigned char or_mask,   	spin_lock_irqsave(&dev3.lock, flags);   	dev3.state = (dev3.state | or_mask) & ~nand_mask; @@ -17,7 +15,3 @@ index 40deb11..7e0cb4f 100644   	spin_unlock_irqrestore(&dev3.lock, flags);   } ---  -1.5.6.4 - - diff --git a/target/linux/rb532/patches-2.6.28/025-rb532_nand_fixup.patch b/target/linux/rb532/patches-2.6.28/025-rb532_nand_fixup.patch index 709160980..3c7cccacb 100644 --- a/target/linux/rb532/patches-2.6.28/025-rb532_nand_fixup.patch +++ b/target/linux/rb532/patches-2.6.28/025-rb532_nand_fixup.patch @@ -1,6 +1,6 @@ ---- a/arch/mips/rb532/devices.c	2009-01-25 13:36:15.000000000 +0100 -+++ b/arch/mips/rb532/devices.c	2009-01-25 14:00:56.000000000 +0100 -@@ -119,6 +119,19 @@ +--- a/arch/mips/rb532/devices.c ++++ b/arch/mips/rb532/devices.c +@@ -119,6 +119,19 @@ static struct platform_device cf_slot0 =   };   /* Resources and device for NAND */ @@ -20,7 +20,7 @@   static int rb532_dev_ready(struct mtd_info *mtd)   {   	return gpio_get_value(GPIO_RDY); -@@ -277,6 +290,16 @@ +@@ -277,6 +290,16 @@ static void __init parse_mac_addr(char *   /* NAND definitions */   #define NAND_CHIP_DELAY	25 @@ -37,7 +37,7 @@   static void __init rb532_nand_setup(void)   {   	switch (mips_machtype) { -@@ -296,6 +319,8 @@ +@@ -296,6 +319,8 @@ static void __init rb532_nand_setup(void   	rb532_nand_data.chip.partitions = rb532_partition_info;   	rb532_nand_data.chip.chip_delay = NAND_CHIP_DELAY;   	rb532_nand_data.chip.options = NAND_NO_AUTOINCR; diff --git a/target/linux/rdc/patches-2.6.28/001-rdc3210_flash_map.patch b/target/linux/rdc/patches-2.6.28/001-rdc3210_flash_map.patch index 4c12471ec..2c35b841a 100644 --- a/target/linux/rdc/patches-2.6.28/001-rdc3210_flash_map.patch +++ b/target/linux/rdc/patches-2.6.28/001-rdc3210_flash_map.patch @@ -1,6 +1,6 @@  --- a/drivers/mtd/maps/Kconfig  +++ b/drivers/mtd/maps/Kconfig -@@ -110,6 +110,50 @@ +@@ -112,6 +112,50 @@ config MTD_SUN_UFLASH   	  Sun Microsystems boardsets.  This driver will require CFI support   	  in the kernel, so if you did not enable CFI previously, do that now. @@ -53,7 +53,7 @@   	depends on X86 && MTD_CFI && MTD_CONCAT  --- a/drivers/mtd/maps/Makefile  +++ b/drivers/mtd/maps/Makefile -@@ -29,6 +29,7 @@ +@@ -27,6 +27,7 @@ obj-$(CONFIG_MTD_PHYSMAP_OF)	+= physmap_   obj-$(CONFIG_MTD_PMC_MSP_EVM)   += pmcmsp-flash.o   obj-$(CONFIG_MTD_PMC_MSP_RAMROOT)+= pmcmsp-ramroot.o   obj-$(CONFIG_MTD_PCMCIA)	+= pcmciamtd.o diff --git a/target/linux/rdc/patches-2.6.28/003-rootfstype.patch b/target/linux/rdc/patches-2.6.28/003-rootfstype.patch index 55a4cd49f..386e63897 100644 --- a/target/linux/rdc/patches-2.6.28/003-rootfstype.patch +++ b/target/linux/rdc/patches-2.6.28/003-rootfstype.patch @@ -1,6 +1,6 @@  --- a/init/do_mounts.c  +++ b/init/do_mounts.c -@@ -163,6 +163,8 @@ +@@ -189,6 +189,8 @@ static void __init get_fs_names(char *pa   {   	char *s = page; diff --git a/target/linux/rdc/patches-2.6.28/004-yenta_mystery.patch b/target/linux/rdc/patches-2.6.28/004-yenta_mystery.patch index 7faabdf7a..4c2e2face 100644 --- a/target/linux/rdc/patches-2.6.28/004-yenta_mystery.patch +++ b/target/linux/rdc/patches-2.6.28/004-yenta_mystery.patch @@ -1,6 +1,6 @@ ---- linux-2.6.24.7.orig/drivers/pcmcia/yenta_socket.c	2008-10-26 08:30:07.000000000 -0700 -+++ linux-2.6.24.7/drivers/pcmcia/yenta_socket.c	2008-10-26 08:54:27.000000000 -0700 -@@ -1171,6 +1171,17 @@ +--- a/drivers/pcmcia/yenta_socket.c ++++ b/drivers/pcmcia/yenta_socket.c +@@ -1174,6 +1174,17 @@ static int __devinit yenta_probe (struct   	/* We must finish initialization here */ diff --git a/target/linux/rdc/patches-2.6.28/005-fix_amit_breakage.patch b/target/linux/rdc/patches-2.6.28/005-fix_amit_breakage.patch index eabfd04ed..8103e841d 100644 --- a/target/linux/rdc/patches-2.6.28/005-fix_amit_breakage.patch +++ b/target/linux/rdc/patches-2.6.28/005-fix_amit_breakage.patch @@ -1,7 +1,6 @@ -diff -ru linux-2.6.24.7.orig/arch/x86/boot/boot.h linux-2.6.24.7/arch/x86/boot/boot.h ---- linux-2.6.24.7.orig/arch/x86/boot/boot.h	2008-10-26 20:18:14.000000000 -0700 -+++ linux-2.6.24.7/arch/x86/boot/boot.h	2008-10-26 20:18:36.000000000 -0700 -@@ -60,7 +60,7 @@ +--- a/arch/x86/boot/boot.h ++++ b/arch/x86/boot/boot.h +@@ -62,7 +62,7 @@ static inline void outl(u32 v, u16 port)   {   	asm volatile("outl %0,%1" : : "a" (v), "dN" (port));   } @@ -10,10 +9,9 @@ diff -ru linux-2.6.24.7.orig/arch/x86/boot/boot.h linux-2.6.24.7/arch/x86/boot/b   {   	u32 v;   	asm volatile("inl %1,%0" : "=a" (v) : "dN" (port)); -diff -ru linux-2.6.24.7.orig/arch/x86/boot/pm.c linux-2.6.24.7/arch/x86/boot/pm.c ---- linux-2.6.24.7.orig/arch/x86/boot/pm.c	2008-10-26 19:55:50.000000000 -0700 -+++ linux-2.6.24.7/arch/x86/boot/pm.c	2008-10-26 21:38:12.000000000 -0700 -@@ -16,6 +16,9 @@ +--- a/arch/x86/boot/pm.c ++++ b/arch/x86/boot/pm.c +@@ -14,6 +14,9 @@   #include "boot.h"   #include <asm/segment.h> @@ -23,7 +21,7 @@ diff -ru linux-2.6.24.7.orig/arch/x86/boot/pm.c linux-2.6.24.7/arch/x86/boot/pm.   /*    * Invoke the realmode switch hook if present; otherwise -@@ -160,6 +163,16 @@ +@@ -156,6 +159,16 @@ void go_to_protected_mode(void)   		die();   	} diff --git a/target/linux/rdc/patches-2.6.28/006-bzip2_lzma_x86.patch b/target/linux/rdc/patches-2.6.28/006-bzip2_lzma_x86.patch index 7e9252e2d..6ebe0585a 100644 --- a/target/linux/rdc/patches-2.6.28/006-bzip2_lzma_x86.patch +++ b/target/linux/rdc/patches-2.6.28/006-bzip2_lzma_x86.patch @@ -1,7 +1,6 @@ -diff -urN linux-2.6.28.9/arch/arm/boot/compressed/Makefile linux-2.6.28.9.new/arch/arm/boot/compressed/Makefile ---- linux-2.6.28.9/arch/arm/boot/compressed/Makefile	2009-03-23 22:55:52.000000000 +0100 -+++ linux-2.6.28.9.new/arch/arm/boot/compressed/Makefile	2009-04-24 14:08:08.000000000 +0200 -@@ -67,8 +67,15 @@ +--- a/arch/arm/boot/compressed/Makefile ++++ b/arch/arm/boot/compressed/Makefile +@@ -67,8 +67,15 @@ endif   SEDFLAGS	= s/TEXT_START/$(ZTEXTADDR)/;s/BSS_START/$(ZBSSADDR)/ @@ -19,7 +18,7 @@ diff -urN linux-2.6.28.9/arch/arm/boot/compressed/Makefile linux-2.6.28.9.new/ar   ifeq ($(CONFIG_FUNCTION_TRACER),y)   ORIG_CFLAGS := $(KBUILD_CFLAGS) -@@ -95,7 +102,7 @@ +@@ -95,7 +102,7 @@ LDFLAGS_vmlinux += -p --no-undefined -X    # would otherwise mess up our GOT table   CFLAGS_misc.o := -Dstatic= @@ -28,7 +27,7 @@ diff -urN linux-2.6.28.9/arch/arm/boot/compressed/Makefile linux-2.6.28.9.new/ar   	 	$(addprefix $(obj)/, $(OBJS)) FORCE   	$(call if_changed,ld)   	@: -@@ -103,7 +110,17 @@ +@@ -103,7 +110,17 @@ $(obj)/vmlinux: $(obj)/vmlinux.lds $(obj   $(obj)/piggy.gz: $(obj)/../Image FORCE   	$(call if_changed,gzip) @@ -47,10 +46,9 @@ diff -urN linux-2.6.28.9/arch/arm/boot/compressed/Makefile linux-2.6.28.9.new/ar   CFLAGS_font.o := -Dstatic= -diff -urN linux-2.6.28.9/arch/arm/boot/compressed/misc.c linux-2.6.28.9.new/arch/arm/boot/compressed/misc.c ---- linux-2.6.28.9/arch/arm/boot/compressed/misc.c	2009-03-23 22:55:52.000000000 +0100 -+++ linux-2.6.28.9.new/arch/arm/boot/compressed/misc.c	2009-04-24 14:08:08.000000000 +0200 -@@ -169,116 +169,34 @@ +--- a/arch/arm/boot/compressed/misc.c ++++ b/arch/arm/boot/compressed/misc.c +@@ -169,116 +169,34 @@ static inline __ptr_t memcpy(__ptr_t __d   /*    * gzip delarations    */ @@ -176,7 +174,7 @@ diff -urN linux-2.6.28.9/arch/arm/boot/compressed/misc.c linux-2.6.28.9.new/arch   #ifndef arch_error   #define arch_error(x) -@@ -301,16 +219,24 @@ +@@ -301,16 +219,24 @@ ulg   decompress_kernel(ulg output_start, ulg free_mem_ptr_p, ulg free_mem_ptr_end_p,   		  int arch_id)   { @@ -207,7 +205,7 @@ diff -urN linux-2.6.28.9/arch/arm/boot/compressed/misc.c linux-2.6.28.9.new/arch   	putstr(" done, booting the kernel.\n");   	return output_ptr;   } -@@ -320,11 +246,8 @@ +@@ -320,11 +246,8 @@ char output_buffer[1500*1024];   int main()   { @@ -220,9 +218,8 @@ diff -urN linux-2.6.28.9/arch/arm/boot/compressed/misc.c linux-2.6.28.9.new/arch   	putstr("done.\n");   	return 0;   } -diff -urN linux-2.6.28.9/arch/x86/boot/compressed/Makefile linux-2.6.28.9.new/arch/x86/boot/compressed/Makefile ---- linux-2.6.28.9/arch/x86/boot/compressed/Makefile	2009-03-23 22:55:52.000000000 +0100 -+++ linux-2.6.28.9.new/arch/x86/boot/compressed/Makefile	2009-04-24 14:10:01.000000000 +0200 +--- a/arch/x86/boot/compressed/Makefile ++++ b/arch/x86/boot/compressed/Makefile  @@ -4,7 +4,7 @@   # create a compressed vmlinux image from the original vmlinux   # @@ -232,7 +229,7 @@ diff -urN linux-2.6.28.9/arch/x86/boot/compressed/Makefile linux-2.6.28.9.new/ar   KBUILD_CFLAGS := -m$(BITS) -D__KERNEL__ $(LINUX_INCLUDE) -O2   KBUILD_CFLAGS += -fno-strict-aliasing -fPIC -@@ -47,9 +47,17 @@ +@@ -47,9 +47,17 @@ ifeq ($(CONFIG_X86_32),y)   ifdef CONFIG_RELOCATABLE   $(obj)/vmlinux.bin.gz: $(obj)/vmlinux.bin.all FORCE   	$(call if_changed,gzip) @@ -250,7 +247,7 @@ diff -urN linux-2.6.28.9/arch/x86/boot/compressed/Makefile linux-2.6.28.9.new/ar   endif   LDFLAGS_piggy.o := -r --format binary --oformat elf32-i386 -T -@@ -60,5 +68,9 @@ +@@ -60,5 +68,9 @@ $(obj)/vmlinux.bin.gz: $(obj)/vmlinux.bi   LDFLAGS_piggy.o := -r --format binary --oformat elf64-x86-64 -T   endif @@ -261,9 +258,8 @@ diff -urN linux-2.6.28.9/arch/x86/boot/compressed/Makefile linux-2.6.28.9.new/ar  +  +$(obj)/piggy.o: $(obj)/vmlinux.scr $(obj)/vmlinux.bin.$(suffix_y) FORCE   	$(call if_changed,ld) -diff -urN linux-2.6.28.9/arch/x86/boot/compressed/misc.c linux-2.6.28.9.new/arch/x86/boot/compressed/misc.c ---- linux-2.6.28.9/arch/x86/boot/compressed/misc.c	2009-03-23 22:55:52.000000000 +0100 -+++ linux-2.6.28.9.new/arch/x86/boot/compressed/misc.c	2009-04-24 14:08:08.000000000 +0200 +--- a/arch/x86/boot/compressed/misc.c ++++ b/arch/x86/boot/compressed/misc.c  @@ -116,71 +116,13 @@   /*    * gzip declarations @@ -336,7 +332,7 @@ diff -urN linux-2.6.28.9/arch/x86/boot/compressed/misc.c linux-2.6.28.9.new/arch   static void error(char *m);   /* -@@ -189,11 +131,6 @@ +@@ -189,11 +131,6 @@ static void error(char *m);   static struct boot_params *real_mode;		/* Pointer to real-mode data */   static int quiet; @@ -348,7 +344,7 @@ diff -urN linux-2.6.28.9/arch/x86/boot/compressed/misc.c linux-2.6.28.9.new/arch   static void *memset(void *s, int c, unsigned n);   static void *memcpy(void *dest, const void *src, unsigned n); -@@ -213,7 +150,19 @@ +@@ -213,7 +150,19 @@ static char *vidmem;   static int vidport;   static int lines, cols; @@ -368,7 +364,7 @@ diff -urN linux-2.6.28.9/arch/x86/boot/compressed/misc.c linux-2.6.28.9.new/arch   static void scroll(void)   { -@@ -293,38 +242,6 @@ +@@ -293,38 +242,6 @@ static void *memcpy(void *dest, const vo   	return dest;   } @@ -407,7 +403,7 @@ diff -urN linux-2.6.28.9/arch/x86/boot/compressed/misc.c linux-2.6.28.9.new/arch   static void error(char *x)   { -@@ -407,12 +324,8 @@ +@@ -407,12 +324,8 @@ asmlinkage void decompress_kernel(void *   	lines = real_mode->screen_info.orig_video_lines;   	cols = real_mode->screen_info.orig_video_cols; @@ -420,7 +416,7 @@ diff -urN linux-2.6.28.9/arch/x86/boot/compressed/misc.c linux-2.6.28.9.new/arch   #ifdef CONFIG_X86_64   	if ((unsigned long)output & (__KERNEL_ALIGN - 1)) -@@ -430,10 +343,9 @@ +@@ -430,10 +343,9 @@ asmlinkage void decompress_kernel(void *   #endif   #endif @@ -432,9 +428,8 @@ diff -urN linux-2.6.28.9/arch/x86/boot/compressed/misc.c linux-2.6.28.9.new/arch   	parse_elf(output);   	if (!quiet)   		putstr("done.\nBooting the kernel.\n"); -diff -urN linux-2.6.28.9/arch/x86/include/asm/boot.h linux-2.6.28.9.new/arch/x86/include/asm/boot.h ---- linux-2.6.28.9/arch/x86/include/asm/boot.h	2009-03-23 22:55:52.000000000 +0100 -+++ linux-2.6.28.9.new/arch/x86/include/asm/boot.h	2009-04-24 14:08:08.000000000 +0200 +--- a/arch/x86/include/asm/boot.h ++++ b/arch/x86/include/asm/boot.h  @@ -15,11 +15,21 @@   				+ (CONFIG_PHYSICAL_ALIGN - 1)) \   				& ~(CONFIG_PHYSICAL_ALIGN - 1)) @@ -458,10 +453,9 @@ diff -urN linux-2.6.28.9/arch/x86/include/asm/boot.h linux-2.6.28.9.new/arch/x86   #define BOOT_STACK_SIZE	0x1000   #endif -diff -urN linux-2.6.28.9/drivers/block/Kconfig linux-2.6.28.9.new/drivers/block/Kconfig ---- linux-2.6.28.9/drivers/block/Kconfig	2009-03-23 22:55:52.000000000 +0100 -+++ linux-2.6.28.9.new/drivers/block/Kconfig	2009-04-24 14:08:08.000000000 +0200 -@@ -358,6 +358,30 @@ +--- a/drivers/block/Kconfig ++++ b/drivers/block/Kconfig +@@ -358,6 +358,30 @@ config BLK_DEV_XIP   	  will prevent RAM block device backing store memory from being   	  allocated from highmem (only a problem for highmem systems). @@ -492,9 +486,8 @@ diff -urN linux-2.6.28.9/drivers/block/Kconfig linux-2.6.28.9.new/drivers/block/   config CDROM_PKTCDVD   	tristate "Packet writing on CD/DVD media"   	depends on !UML -diff -urN linux-2.6.28.9/include/linux/decompress/bunzip2.h linux-2.6.28.9.new/include/linux/decompress/bunzip2.h ---- linux-2.6.28.9/include/linux/decompress/bunzip2.h	1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.6.28.9.new/include/linux/decompress/bunzip2.h	2009-04-24 14:08:08.000000000 +0200 +--- /dev/null ++++ b/include/linux/decompress/bunzip2.h  @@ -0,0 +1,10 @@  +#ifndef DECOMPRESS_BUNZIP2_H  +#define DECOMPRESS_BUNZIP2_H @@ -506,9 +499,8 @@ diff -urN linux-2.6.28.9/include/linux/decompress/bunzip2.h linux-2.6.28.9.new/i  +	    int *pos,  +	    void(*error)(char *x));  +#endif -diff -urN linux-2.6.28.9/include/linux/decompress/generic.h linux-2.6.28.9.new/include/linux/decompress/generic.h ---- linux-2.6.28.9/include/linux/decompress/generic.h	1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.6.28.9.new/include/linux/decompress/generic.h	2009-04-24 14:08:08.000000000 +0200 +--- /dev/null ++++ b/include/linux/decompress/generic.h  @@ -0,0 +1,30 @@  +#ifndef DECOMPRESS_GENERIC_H  +#define DECOMPRESS_GENERIC_H @@ -540,9 +532,8 @@ diff -urN linux-2.6.28.9/include/linux/decompress/generic.h linux-2.6.28.9.new/i  +  +  +#endif -diff -urN linux-2.6.28.9/include/linux/decompress/inflate.h linux-2.6.28.9.new/include/linux/decompress/inflate.h ---- linux-2.6.28.9/include/linux/decompress/inflate.h	1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.6.28.9.new/include/linux/decompress/inflate.h	2009-04-24 14:08:08.000000000 +0200 +--- /dev/null ++++ b/include/linux/decompress/inflate.h  @@ -0,0 +1,13 @@  +#ifndef INFLATE_H  +#define INFLATE_H @@ -557,9 +548,8 @@ diff -urN linux-2.6.28.9/include/linux/decompress/inflate.h linux-2.6.28.9.new/i  +	   int *pos,  +	   void(*error_fn)(char *x));  +#endif -diff -urN linux-2.6.28.9/include/linux/decompress/mm.h linux-2.6.28.9.new/include/linux/decompress/mm.h ---- linux-2.6.28.9/include/linux/decompress/mm.h	1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.6.28.9.new/include/linux/decompress/mm.h	2009-04-24 14:08:08.000000000 +0200 +--- /dev/null ++++ b/include/linux/decompress/mm.h  @@ -0,0 +1,89 @@  +/*  + * linux/compr_mm.h @@ -650,9 +640,8 @@ diff -urN linux-2.6.28.9/include/linux/decompress/mm.h linux-2.6.28.9.new/includ  +#endif /* STATIC */  +  +#endif /* DECOMPR_MM_H */ -diff -urN linux-2.6.28.9/include/linux/decompress/unlzma.h linux-2.6.28.9.new/include/linux/decompress/unlzma.h ---- linux-2.6.28.9/include/linux/decompress/unlzma.h	1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.6.28.9.new/include/linux/decompress/unlzma.h	2009-04-24 14:08:08.000000000 +0200 +--- /dev/null ++++ b/include/linux/decompress/unlzma.h  @@ -0,0 +1,12 @@  +#ifndef DECOMPRESS_UNLZMA_H  +#define DECOMPRESS_UNLZMA_H @@ -666,10 +655,9 @@ diff -urN linux-2.6.28.9/include/linux/decompress/unlzma.h linux-2.6.28.9.new/in  +	);  +  +#endif -diff -urN linux-2.6.28.9/init/Kconfig linux-2.6.28.9.new/init/Kconfig ---- linux-2.6.28.9/init/Kconfig	2009-03-23 22:55:52.000000000 +0100 -+++ linux-2.6.28.9.new/init/Kconfig	2009-04-24 14:08:08.000000000 +0200 -@@ -101,6 +101,56 @@ +--- a/init/Kconfig ++++ b/init/Kconfig +@@ -101,6 +101,56 @@ config LOCALVERSION_AUTO   	  which is done within the script "scripts/setlocalversion".) @@ -726,9 +714,8 @@ diff -urN linux-2.6.28.9/init/Kconfig linux-2.6.28.9.new/init/Kconfig   config SWAP   	bool "Support for paging of anonymous memory (swap)"   	depends on MMU && BLOCK -diff -urN linux-2.6.28.9/init/do_mounts_rd.c linux-2.6.28.9.new/init/do_mounts_rd.c ---- linux-2.6.28.9/init/do_mounts_rd.c	2009-04-24 13:59:44.000000000 +0200 -+++ linux-2.6.28.9.new/init/do_mounts_rd.c	2009-04-24 14:08:08.000000000 +0200 +--- a/init/do_mounts_rd.c ++++ b/init/do_mounts_rd.c  @@ -11,6 +11,12 @@   #include "do_mounts.h" @@ -742,7 +729,7 @@ diff -urN linux-2.6.28.9/init/do_mounts_rd.c linux-2.6.28.9.new/init/do_mounts_r   int __initdata rd_prompt = 1;/* 1 = prompt for RAM disk, 0 = don't prompt */   static int __init prompt_ramdisk(char *str) -@@ -29,7 +35,7 @@ +@@ -29,7 +35,7 @@ static int __init ramdisk_start_setup(ch   }   __setup("ramdisk_start=", ramdisk_start_setup); @@ -751,7 +738,7 @@ diff -urN linux-2.6.28.9/init/do_mounts_rd.c linux-2.6.28.9.new/init/do_mounts_r   /*    * This routine tries to find a RAM disk image to load, and returns the -@@ -46,7 +52,7 @@ +@@ -46,7 +52,7 @@ static int __init crd_load(int in_fd, in    * 	gzip    */   static int __init  @@ -760,7 +747,7 @@ diff -urN linux-2.6.28.9/init/do_mounts_rd.c linux-2.6.28.9.new/init/do_mounts_r   {   	const int size = 512;   	struct minix_super_block *minixsb; -@@ -74,6 +80,7 @@ +@@ -74,6 +80,7 @@ identify_ramdisk_image(int fd, int start   	sys_lseek(fd, start_block * BLOCK_SIZE, 0);   	sys_read(fd, buf, size); @@ -768,7 +755,7 @@ diff -urN linux-2.6.28.9/init/do_mounts_rd.c linux-2.6.28.9.new/init/do_mounts_r   	/*   	 * If it matches the gzip magic numbers, return 0   	 */ -@@ -81,9 +88,39 @@ +@@ -81,9 +88,39 @@ identify_ramdisk_image(int fd, int start   		printk(KERN_NOTICE   		       "RAMDISK: Compressed image found at block %d\n",   		       start_block); @@ -808,7 +795,7 @@ diff -urN linux-2.6.28.9/init/do_mounts_rd.c linux-2.6.28.9.new/init/do_mounts_r   	/* romfs is at block zero too */   	if (romfsb->word0 == ROMSB_WORD0 && -@@ -156,6 +193,7 @@ +@@ -156,6 +193,7 @@ int __init rd_load_image(char *from)   	int nblocks, i, disk;   	char *buf = NULL;   	unsigned short rotate = 0; @@ -816,7 +803,7 @@ diff -urN linux-2.6.28.9/init/do_mounts_rd.c linux-2.6.28.9.new/init/do_mounts_r   #if !defined(CONFIG_S390) && !defined(CONFIG_PPC_ISERIES)   	char rotator[4] = { '|' , '/' , '-' , '\\' };   #endif -@@ -168,12 +206,12 @@ +@@ -168,12 +206,12 @@ int __init rd_load_image(char *from)   	if (in_fd < 0)   		goto noclose_input; @@ -831,7 +818,7 @@ diff -urN linux-2.6.28.9/init/do_mounts_rd.c linux-2.6.28.9.new/init/do_mounts_r   			goto successful_load;   		goto done;   	} -@@ -272,138 +310,48 @@ +@@ -272,138 +310,48 @@ int __init rd_load_disk(int n)   	return rd_load_image("/dev/root");   } @@ -993,10 +980,9 @@ diff -urN linux-2.6.28.9/init/do_mounts_rd.c linux-2.6.28.9.new/init/do_mounts_r  -	kfree(window);   	return result;   } -diff -urN linux-2.6.28.9/init/initramfs.c linux-2.6.28.9.new/init/initramfs.c ---- linux-2.6.28.9/init/initramfs.c	2009-03-23 22:55:52.000000000 +0100 -+++ linux-2.6.28.9.new/init/initramfs.c	2009-04-24 14:13:53.000000000 +0200 -@@ -389,11 +389,14 @@ +--- a/init/initramfs.c ++++ b/init/initramfs.c +@@ -389,11 +389,14 @@ static int __init write_buffer(char *buf   	return len - count;   } @@ -1013,7 +999,7 @@ diff -urN linux-2.6.28.9/init/initramfs.c linux-2.6.28.9.new/init/initramfs.c   	while ((written = write_buffer(buf, len)) < len && !message) {   		char c = buf[written];   		if (c == '0') { -@@ -407,73 +410,14 @@ +@@ -407,73 +410,14 @@ static void __init flush_buffer(char *bu   		} else   			error("junk in compressed archive");   	} @@ -1092,7 +1078,7 @@ diff -urN linux-2.6.28.9/init/initramfs.c linux-2.6.28.9.new/init/initramfs.c   static char * __init unpack_to_rootfs(char *buf, unsigned len, int check_only)   { -@@ -482,9 +426,10 @@ +@@ -482,9 +426,10 @@ static char * __init unpack_to_rootfs(ch   	header_buf = kmalloc(110, GFP_KERNEL);   	symlink_buf = kmalloc(PATH_MAX + N_ALIGN(PATH_MAX) + 1, GFP_KERNEL);   	name_buf = kmalloc(N_ALIGN(PATH_MAX), GFP_KERNEL); @@ -1105,7 +1091,7 @@ diff -urN linux-2.6.28.9/init/initramfs.c linux-2.6.28.9.new/init/initramfs.c   	state = Start;   	this_header = 0;   	message = NULL; -@@ -504,22 +449,38 @@ +@@ -504,22 +449,38 @@ static char * __init unpack_to_rootfs(ch   			continue;   		}   		this_header = 0; @@ -1157,10 +1143,9 @@ diff -urN linux-2.6.28.9/init/initramfs.c linux-2.6.28.9.new/init/initramfs.c   	kfree(name_buf);   	kfree(symlink_buf);   	kfree(header_buf); -diff -urN linux-2.6.28.9/lib/Makefile linux-2.6.28.9.new/lib/Makefile ---- linux-2.6.28.9/lib/Makefile	2009-04-24 13:59:44.000000000 +0200 -+++ linux-2.6.28.9.new/lib/Makefile	2009-04-24 14:08:08.000000000 +0200 -@@ -11,7 +11,8 @@ +--- a/lib/Makefile ++++ b/lib/Makefile +@@ -11,7 +11,8 @@ lib-y := ctype.o string.o vsprintf.o cmd   	 rbtree.o radix-tree.o dump_stack.o \   	 idr.o int_sqrt.o extable.o prio_tree.o \   	 sha1.o irq_regs.o reciprocal_div.o argv_split.o \ @@ -1170,9 +1155,8 @@ diff -urN linux-2.6.28.9/lib/Makefile linux-2.6.28.9.new/lib/Makefile   lib-$(CONFIG_MMU) += ioremap.o   lib-$(CONFIG_SMP) += cpumask.o -diff -urN linux-2.6.28.9/lib/decompress_bunzip2.c linux-2.6.28.9.new/lib/decompress_bunzip2.c ---- linux-2.6.28.9/lib/decompress_bunzip2.c	1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.6.28.9.new/lib/decompress_bunzip2.c	2009-04-24 14:08:08.000000000 +0200 +--- /dev/null ++++ b/lib/decompress_bunzip2.c  @@ -0,0 +1,735 @@  +/* vi: set sw = 4 ts = 4: */  +/*	Small bzip2 deflate implementation, by Rob Landley (rob@landley.net). @@ -1909,9 +1893,8 @@ diff -urN linux-2.6.28.9/lib/decompress_bunzip2.c linux-2.6.28.9.new/lib/decompr  +}  +  +#define decompress bunzip2 -diff -urN linux-2.6.28.9/lib/decompress_unlzma.c linux-2.6.28.9.new/lib/decompress_unlzma.c ---- linux-2.6.28.9/lib/decompress_unlzma.c	1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.6.28.9.new/lib/decompress_unlzma.c	2009-04-24 14:08:08.000000000 +0200 +--- /dev/null ++++ b/lib/decompress_unlzma.c  @@ -0,0 +1,647 @@  +/* Lzma decompressor for Linux kernel. Shamelessly snarfed  + *from busybox 1.1.1 @@ -2560,10 +2543,9 @@ diff -urN linux-2.6.28.9/lib/decompress_unlzma.c linux-2.6.28.9.new/lib/decompre  +}  +  +#define decompress unlzma -diff -urN linux-2.6.28.9/lib/inflate.c linux-2.6.28.9.new/lib/inflate.c ---- linux-2.6.28.9/lib/inflate.c	2009-03-23 22:55:52.000000000 +0100 -+++ linux-2.6.28.9.new/lib/inflate.c	2009-04-24 14:08:08.000000000 +0200 -@@ -109,20 +109,78 @@ +--- a/lib/inflate.c ++++ b/lib/inflate.c +@@ -109,20 +109,78 @@ static char rcsid[] = "#Id: inflate.c,v    #endif   #ifndef STATIC @@ -2651,7 +2633,7 @@ diff -urN linux-2.6.28.9/lib/inflate.c linux-2.6.28.9.new/lib/inflate.c   #define slide window   /* Huffman code lookup table entry--this entry is four bytes for machines -@@ -133,10 +191,10 @@ +@@ -133,10 +191,10 @@ static char rcsid[] = "#Id: inflate.c,v       an unused code.  If a code with e == 99 is looked up, this implies an      error in the data. */   struct huft { @@ -2665,7 +2647,7 @@ diff -urN linux-2.6.28.9/lib/inflate.c linux-2.6.28.9.new/lib/inflate.c       struct huft *t;     /* pointer to next level of table */     } v;   }; -@@ -144,7 +202,7 @@ +@@ -144,7 +202,7 @@ struct huft {   /* Function prototypes */   STATIC int INIT huft_build OF((unsigned *, unsigned, unsigned,  @@ -2674,7 +2656,7 @@ diff -urN linux-2.6.28.9/lib/inflate.c linux-2.6.28.9.new/lib/inflate.c   STATIC int INIT huft_free OF((struct huft *));   STATIC int INIT inflate_codes OF((struct huft *, struct huft *, int, int));   STATIC int INIT inflate_stored OF((void)); -@@ -159,28 +217,28 @@ +@@ -159,28 +217,28 @@ STATIC int INIT inflate OF((void));      circular buffer.  The index is updated simply by incrementing and then      ANDing with 0x7fff (32K-1). */   /* It is left to other modules to supply the 32 K area.  It is assumed @@ -2710,7 +2692,7 @@ diff -urN linux-2.6.28.9/lib/inflate.c linux-2.6.28.9.new/lib/inflate.c           0, 0, 0, 0, 1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6,           7, 7, 8, 8, 9, 9, 10, 10, 11, 11,           12, 12, 13, 13}; -@@ -217,59 +275,21 @@ +@@ -217,59 +275,21 @@ static const ush cpdext[] = {         /*      the stream.    */ @@ -2776,7 +2758,7 @@ diff -urN linux-2.6.28.9/lib/inflate.c linux-2.6.28.9.new/lib/inflate.c   /*      Huffman code decoding is performed using a multi-level table lookup.      The fastest way to decode is to simply build a lookup table whose -@@ -307,7 +327,7 @@ +@@ -307,7 +327,7 @@ STATIC const int lbits = 9;          /*    STATIC const int dbits = 6;          /* bits in base distance lookup table */ @@ -2785,7 +2767,7 @@ diff -urN linux-2.6.28.9/lib/inflate.c linux-2.6.28.9.new/lib/inflate.c   #define BMAX 16         /* maximum bit length of any code (16 for explode) */   #define N_MAX 288       /* maximum number of codes in any set */ -@@ -319,8 +339,8 @@ +@@ -319,8 +339,8 @@ STATIC int INIT huft_build(   	unsigned *b,            /* code lengths in bits (all assumed <= BMAX) */   	unsigned n,             /* number of codes (assumed <= N_MAX) */   	unsigned s,             /* number of simple-valued codes (0..s-1) */ @@ -2796,7 +2778,7 @@ diff -urN linux-2.6.28.9/lib/inflate.c linux-2.6.28.9.new/lib/inflate.c   	struct huft **t,        /* result: starting table */   	int *m                  /* maximum lookup bits, returns actual */   	) -@@ -500,8 +520,8 @@ +@@ -500,8 +520,8 @@ DEBG1("5 ");           if (h)           {             x[h] = i;             /* save pattern for backing up */ @@ -2807,7 +2789,7 @@ diff -urN linux-2.6.28.9/lib/inflate.c linux-2.6.28.9.new/lib/inflate.c             r.v.t = q;            /* pointer to this table */             j = i >> (w - l);     /* (get around Turbo C bug) */             u[h-1][j] = r;        /* connect to last table */ -@@ -511,18 +531,18 @@ +@@ -511,18 +531,18 @@ DEBG1("6 ");   DEBG("h6c ");         /* set up table entry in r */ @@ -2830,7 +2812,7 @@ diff -urN linux-2.6.28.9/lib/inflate.c linux-2.6.28.9.new/lib/inflate.c           r.v.n = d[*p++ - s];         }   DEBG("h6d "); -@@ -592,11 +612,12 @@ +@@ -592,11 +612,12 @@ STATIC int INIT inflate_codes(      Return an error code or zero if it all goes ok. */   {     register unsigned e;  /* table entry flag/number of extra bits */ @@ -2845,7 +2827,7 @@ diff -urN linux-2.6.28.9/lib/inflate.c linux-2.6.28.9.new/lib/inflate.c     register unsigned k;  /* number of bits in bit buffer */ -@@ -622,7 +643,7 @@ +@@ -622,7 +643,7 @@ STATIC int INIT inflate_codes(       DUMPBITS(t->b)       if (e == 16)                /* then it's a literal */       { @@ -2854,7 +2836,7 @@ diff -urN linux-2.6.28.9/lib/inflate.c linux-2.6.28.9.new/lib/inflate.c         Tracevv((stderr, "%c", slide[w-1]));         if (w == WSIZE)         { -@@ -659,11 +680,25 @@ +@@ -659,11 +680,25 @@ STATIC int INIT inflate_codes(         /* do the copy */         do { @@ -2882,7 +2864,7 @@ diff -urN linux-2.6.28.9/lib/inflate.c linux-2.6.28.9.new/lib/inflate.c             w += e;             d += e;           } -@@ -673,9 +708,8 @@ +@@ -673,9 +708,8 @@ STATIC int INIT inflate_codes(               slide[w++] = slide[d++];   	    Tracevv((stderr, "%c", slide[w-1]));             } while (--e); @@ -2894,7 +2876,7 @@ diff -urN linux-2.6.28.9/lib/inflate.c linux-2.6.28.9.new/lib/inflate.c             w = 0;           }         } while (n); -@@ -702,7 +736,7 @@ +@@ -702,7 +736,7 @@ STATIC int INIT inflate_stored(void)   {     unsigned n;           /* number of bytes in block */     unsigned w;           /* current window position */ @@ -2903,7 +2885,7 @@ diff -urN linux-2.6.28.9/lib/inflate.c linux-2.6.28.9.new/lib/inflate.c     register unsigned k;  /* number of bits in bit buffer */   DEBG("<stor"); -@@ -732,7 +766,7 @@ +@@ -732,7 +766,7 @@ DEBG("<stor");     while (n--)     {       NEEDBITS(8) @@ -2912,7 +2894,7 @@ diff -urN linux-2.6.28.9/lib/inflate.c linux-2.6.28.9.new/lib/inflate.c       if (w == WSIZE)       {         flush_output(w); -@@ -838,7 +872,7 @@ +@@ -838,7 +872,7 @@ STATIC int noinline INIT inflate_dynamic     unsigned nl;          /* number of literal/length codes */     unsigned nd;          /* number of distance codes */     unsigned *ll;         /* literal/length and distance code lengths */ @@ -2921,7 +2903,7 @@ diff -urN linux-2.6.28.9/lib/inflate.c linux-2.6.28.9.new/lib/inflate.c     register unsigned k;  /* number of bits in bit buffer */     int ret; -@@ -1033,7 +1067,7 @@ +@@ -1033,7 +1067,7 @@ STATIC int INIT inflate_block(   /* decompress an inflated block */   {     unsigned t;           /* block type */ @@ -2930,7 +2912,7 @@ diff -urN linux-2.6.28.9/lib/inflate.c linux-2.6.28.9.new/lib/inflate.c     register unsigned k;  /* number of bits in bit buffer */     DEBG("<blk"); -@@ -1130,8 +1164,8 @@ +@@ -1130,8 +1164,8 @@ STATIC int INIT inflate(void)    *    **********************************************************************/ @@ -2941,7 +2923,7 @@ diff -urN linux-2.6.28.9/lib/inflate.c linux-2.6.28.9.new/lib/inflate.c   #define CRC_VALUE (crc ^ 0xffffffffUL)   /* -@@ -1172,7 +1206,7 @@ +@@ -1172,7 +1206,7 @@ makecrc(void)     }     /* this is initialized here so this code could reside in ROM */ @@ -2950,7 +2932,7 @@ diff -urN linux-2.6.28.9/lib/inflate.c linux-2.6.28.9.new/lib/inflate.c   }   /* gzip flag byte */ -@@ -1184,18 +1218,89 @@ +@@ -1184,18 +1218,89 @@ makecrc(void)   #define ENCRYPTED    0x20 /* bit 5 set: file is encrypted */   #define RESERVED     0xC0 /* bit 6,7:   reserved */ @@ -3044,7 +3026,7 @@ diff -urN linux-2.6.28.9/lib/inflate.c linux-2.6.28.9.new/lib/inflate.c       magic[0] = NEXTBYTE();       magic[1] = NEXTBYTE();       method   = NEXTBYTE(); -@@ -1212,7 +1317,7 @@ +@@ -1212,7 +1317,7 @@ static int INIT gunzip(void)   	    return -1;       } @@ -3053,7 +3035,7 @@ diff -urN linux-2.6.28.9/lib/inflate.c linux-2.6.28.9.new/lib/inflate.c       if ((flags & ENCRYPTED) != 0) {   	    error("Input is encrypted");   	    return -1; -@@ -1277,15 +1382,15 @@ +@@ -1277,15 +1382,15 @@ static int INIT gunzip(void)       /* crc32  (see algorithm.doc)        * uncompressed input size modulo 2^32        */ @@ -3077,7 +3059,7 @@ diff -urN linux-2.6.28.9/lib/inflate.c linux-2.6.28.9.new/lib/inflate.c       /* Validate decompression */       if (orig_crc != CRC_VALUE) { -@@ -1296,11 +1401,22 @@ +@@ -1296,11 +1401,22 @@ static int INIT gunzip(void)   	    error("length error");   	    return -1;       } @@ -3101,10 +3083,9 @@ diff -urN linux-2.6.28.9/lib/inflate.c linux-2.6.28.9.new/lib/inflate.c  -  +#define decompress gunzip -diff -urN linux-2.6.28.9/scripts/Makefile.lib linux-2.6.28.9.new/scripts/Makefile.lib ---- linux-2.6.28.9/scripts/Makefile.lib	2009-03-23 22:55:52.000000000 +0100 -+++ linux-2.6.28.9.new/scripts/Makefile.lib	2009-04-24 14:08:08.000000000 +0200 -@@ -183,3 +183,17 @@ +--- a/scripts/Makefile.lib ++++ b/scripts/Makefile.lib +@@ -183,3 +183,17 @@ quiet_cmd_gzip = GZIP    $@   cmd_gzip = gzip -f -9 < $< > $@ @@ -3122,9 +3103,8 @@ diff -urN linux-2.6.28.9/scripts/Makefile.lib linux-2.6.28.9.new/scripts/Makefil  +  +quiet_cmd_lzma = LZMA    $@  +cmd_lzma = (/usr/bin/lzma -9 -c $< ; $(size_append) $<) >$@ || (rm -f $@ ; false) -diff -urN linux-2.6.28.9/scripts/bin_size linux-2.6.28.9.new/scripts/bin_size ---- linux-2.6.28.9/scripts/bin_size	1970-01-01 01:00:00.000000000 +0100 -+++ linux-2.6.28.9.new/scripts/bin_size	2009-04-24 14:08:08.000000000 +0200 +--- /dev/null ++++ b/scripts/bin_size  @@ -0,0 +1,10 @@  +#!/bin/sh  + diff --git a/target/linux/rdc/patches-2.6.28/007-r6040_git_updates.patch b/target/linux/rdc/patches-2.6.28/007-r6040_git_updates.patch index 777add380..6447be43b 100644 --- a/target/linux/rdc/patches-2.6.28/007-r6040_git_updates.patch +++ b/target/linux/rdc/patches-2.6.28/007-r6040_git_updates.patch @@ -1,5 +1,5 @@ ---- linux-2.6.28.9/drivers/net/r6040.c	2009-03-23 22:55:52.000000000 +0100 -+++ linux-2.6.28.9.new/drivers/net/r6040.c	2009-04-24 14:24:51.000000000 +0200 +--- a/drivers/net/r6040.c ++++ b/drivers/net/r6040.c  @@ -49,12 +49,12 @@   #include <asm/processor.h> @@ -16,7 +16,7 @@   #define PHY_MODE	0x3100	/* PHY CHIP Register 0 */   #define PHY_CAP		0x01E1	/* PHY CHIP Register 4 */ -@@ -160,6 +160,7 @@ +@@ -160,6 +160,7 @@ MODULE_AUTHOR("Sten Wang <sten.wang@rdc.   	"Florian Fainelli <florian@openwrt.org>");   MODULE_LICENSE("GPL");   MODULE_DESCRIPTION("RDC R6040 NAPI PCI FastEthernet driver"); @@ -24,7 +24,7 @@   /* RX and TX interrupts that we handle */   #define RX_INTS			(RX_FIFO_FULL | RX_NO_DESC | RX_FINISH) -@@ -200,7 +201,7 @@ +@@ -200,7 +201,7 @@ struct r6040_private {   static char version[] __devinitdata = KERN_INFO DRV_NAME   	": RDC R6040 NAPI net driver," @@ -33,7 +33,7 @@   static int phy_table[] = { PHY1_ADDR, PHY2_ADDR }; -@@ -330,7 +331,7 @@ +@@ -330,7 +331,7 @@ static int r6040_alloc_rxbufs(struct net   	do {   		skb = netdev_alloc_skb(dev, MAX_BUF_SIZE);   		if (!skb) { @@ -42,7 +42,7 @@   			rc = -ENOMEM;   			goto err_exit;   		} -@@ -438,7 +439,6 @@ +@@ -438,7 +439,6 @@ static void r6040_down(struct net_device   {   	struct r6040_private *lp = netdev_priv(dev);   	void __iomem *ioaddr = lp->base; @@ -50,7 +50,7 @@   	int limit = 2048;   	u16 *adrp;   	u16 cmd; -@@ -457,22 +457,12 @@ +@@ -457,22 +457,12 @@ static void r6040_down(struct net_device   	iowrite16(adrp[0], ioaddr + MID_0L);   	iowrite16(adrp[1], ioaddr + MID_0M);   	iowrite16(adrp[2], ioaddr + MID_0H); @@ -74,7 +74,7 @@   	/* deleted timer */   	del_timer_sync(&lp->timer); -@@ -481,8 +471,28 @@ +@@ -481,8 +471,28 @@ static int r6040_close(struct net_device   	napi_disable(&lp->napi);   	netif_stop_queue(dev);   	r6040_down(dev); @@ -103,7 +103,7 @@   	return 0;   } -@@ -598,7 +608,6 @@ +@@ -598,7 +608,6 @@ static int r6040_rx(struct net_device *d   		/* Send to upper layer */   		netif_receive_skb(skb_ptr); @@ -111,7 +111,7 @@   		dev->stats.rx_packets++;   		dev->stats.rx_bytes += descptr->len - 4; -@@ -668,7 +677,7 @@ +@@ -668,7 +677,7 @@ static int r6040_poll(struct napi_struct   	work_done = r6040_rx(dev, budget);   	if (work_done < budget) { @@ -120,7 +120,7 @@   		/* Enable RX interrupt */   		iowrite16(ioread16(ioaddr + MIER) | RX_INTS, ioaddr + MIER);   	} -@@ -705,7 +714,7 @@ +@@ -705,7 +714,7 @@ static irqreturn_t r6040_interrupt(int i   		/* Mask off RX interrupt */   		misr &= ~RX_INTS; @@ -129,7 +129,7 @@   	}   	/* TX interrupt request */ -@@ -1063,20 +1088,20 @@ +@@ -1063,20 +1072,20 @@ static int __devinit r6040_init_one(stru   	/* this should always be supported */   	err = pci_set_dma_mask(pdev, DMA_32BIT_MASK);   	if (err) { @@ -153,7 +153,7 @@   		err = -EIO;   		goto err_out;   	} -@@ -1086,7 +1111,7 @@ +@@ -1086,7 +1095,7 @@ static int __devinit r6040_init_one(stru   	dev = alloc_etherdev(sizeof(struct r6040_private));   	if (!dev) { @@ -162,7 +162,7 @@   		err = -ENOMEM;   		goto err_out;   	} -@@ -1102,11 +1127,15 @@ +@@ -1102,11 +1111,15 @@ static int __devinit r6040_init_one(stru   	ioaddr = pci_iomap(pdev, bar, io_size);   	if (!ioaddr) { @@ -179,7 +179,7 @@   	/* Init system & device */   	lp->base = ioaddr; -@@ -1123,6 +1152,13 @@ +@@ -1123,6 +1136,13 @@ static int __devinit r6040_init_one(stru   	adrp[1] = ioread16(ioaddr + MID_0M);   	adrp[2] = ioread16(ioaddr + MID_0H); diff --git a/target/linux/s3c24xx/patches-2.6.28/001-merge-openmoko.patch b/target/linux/s3c24xx/patches-2.6.28/001-merge-openmoko.patch index d32860234..1092bc826 100644 --- a/target/linux/s3c24xx/patches-2.6.28/001-merge-openmoko.patch +++ b/target/linux/s3c24xx/patches-2.6.28/001-merge-openmoko.patch @@ -7,7 +7,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009  --- a/arch/arm/common/vic.c  +++ b/arch/arm/common/vic.c -@@ -69,12 +69,12 @@ +@@ -69,12 +69,12 @@ void __init vic_init(void __iomem *base,   	/*   	 * Make sure we clear all existing interrupts   	 */ @@ -23,7 +23,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	}   	for (i = 0; i < 16; i++) { -@@ -82,7 +82,7 @@ +@@ -82,7 +82,7 @@ void __init vic_init(void __iomem *base,   		writel(VIC_VECT_CNTL_ENABLE | i, reg);   	} @@ -6657,7 +6657,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009  +CONFIG_HAS_DMA=y  --- a/arch/arm/Kconfig  +++ b/arch/arm/Kconfig -@@ -498,6 +498,13 @@ +@@ -498,6 +498,13 @@ config ARCH_S3C2410   	  BAST (<http://www.simtec.co.uk/products/EB110ITX/>), the IPAQ 1940 or   	  the Samsung SMDK2410 development board (and derivatives). @@ -6671,7 +6671,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   config ARCH_SHARK   	bool "Shark"   	select ISA -@@ -590,6 +597,7 @@ +@@ -590,6 +597,7 @@ source "arch/arm/mach-orion5x/Kconfig"   source "arch/arm/mach-kirkwood/Kconfig"   source "arch/arm/plat-s3c24xx/Kconfig" @@ -6679,7 +6679,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   source "arch/arm/plat-s3c/Kconfig"   if ARCH_S3C2410 -@@ -601,6 +609,11 @@ +@@ -601,6 +609,11 @@ source "arch/arm/mach-s3c2442/Kconfig"   source "arch/arm/mach-s3c2443/Kconfig"   endif @@ -6691,7 +6691,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   source "arch/arm/mach-lh7a40x/Kconfig"   source "arch/arm/mach-imx/Kconfig" -@@ -1256,6 +1269,8 @@ +@@ -1256,6 +1269,8 @@ source "drivers/usb/Kconfig"   source "drivers/uwb/Kconfig" @@ -6700,7 +6700,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   source "drivers/mmc/Kconfig"   source "drivers/memstick/Kconfig" -@@ -1268,6 +1283,8 @@ +@@ -1268,6 +1283,8 @@ source "drivers/rtc/Kconfig"   source "drivers/dma/Kconfig" @@ -6711,7 +6711,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   source "drivers/auxdisplay/Kconfig"  --- a/arch/arm/kernel/vmlinux.lds.S  +++ b/arch/arm/kernel/vmlinux.lds.S -@@ -106,6 +106,8 @@ +@@ -106,6 +106,8 @@ SECTIONS   		*(.got)			/* Global offset table		*/   	} @@ -7757,7 +7757,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009  +					     resume_dependency, int uart_index);  --- a/arch/arm/mach-s3c2410/include/mach/spi-gpio.h  +++ b/arch/arm/mach-s3c2410/include/mach/spi-gpio.h -@@ -21,7 +21,15 @@ +@@ -21,7 +21,15 @@ struct s3c2410_spigpio_info {   	int			 num_chipselect;   	int			 bus_num; @@ -7776,7 +7776,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009  --- a/arch/arm/mach-s3c2410/include/mach/spi.h  +++ b/arch/arm/mach-s3c2410/include/mach/spi.h -@@ -22,5 +22,12 @@ +@@ -22,5 +22,12 @@ struct s3c2410_spi_info {   	void (*set_cs)(struct s3c2410_spi_info *spi, int cs, int pol);   }; @@ -7917,7 +7917,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009  -#endif /* __ASM_ARCH_VMALLOC_H */  --- a/arch/arm/mach-s3c2410/Kconfig  +++ b/arch/arm/mach-s3c2410/Kconfig -@@ -9,6 +9,7 @@ +@@ -9,6 +9,7 @@ config CPU_S3C2410   	depends on ARCH_S3C2410   	select S3C2410_CLOCK   	select S3C2410_GPIO @@ -7925,7 +7925,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	select CPU_LLSERIAL_S3C2410   	select S3C2410_PM if PM   	help -@@ -32,11 +33,6 @@ +@@ -32,11 +33,6 @@ config S3C2410_GPIO   	help   	  GPIO code for S3C2410 and similar processors @@ -7937,7 +7937,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   config SIMTEC_NOR   	bool   	help -@@ -49,6 +45,12 @@ +@@ -49,6 +45,12 @@ config MACH_BAST_IDE   	  Internal node for machines with an BAST style IDE   	  interface @@ -7950,7 +7950,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   menu "S3C2410 Machines"   config ARCH_SMDK2410 -@@ -84,6 +86,7 @@ +@@ -84,6 +86,7 @@ config ARCH_BAST   	select PM_SIMTEC if PM   	select SIMTEC_NOR   	select MACH_BAST_IDE @@ -7958,7 +7958,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	select ISA   	help   	  Say Y here if you are using the Simtec Electronics EB2410ITX -@@ -121,6 +124,7 @@ +@@ -121,6 +124,7 @@ config MACH_TCT_HAMMER   config MACH_VR1000   	bool "Thorcom VR1000"   	select PM_SIMTEC if PM @@ -7966,7 +7966,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	select SIMTEC_NOR   	select MACH_BAST_IDE   	select CPU_S3C2410 -@@ -130,7 +134,16 @@ +@@ -130,7 +134,16 @@ config MACH_VR1000   config MACH_QT2410   	bool "QT2410"   	select CPU_S3C2410 @@ -7993,7 +7993,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   #include <plat/devs.h>   #include <plat/cpu.h> -@@ -150,7 +151,7 @@ +@@ -150,7 +151,7 @@ static struct platform_device *amlm5900_   #endif   	&s3c_device_adc,   	&s3c_device_wdt, @@ -8002,7 +8002,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	&s3c_device_usb,    	&s3c_device_rtc,   	&s3c_device_usbgadget, -@@ -233,6 +234,7 @@ +@@ -233,6 +234,7 @@ static void __init amlm5900_init(void)   #ifdef CONFIG_FB_S3C2410   	s3c24xx_fb_set_platdata(&amlm5900_fb_info);   #endif @@ -8023,7 +8023,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   #include <mach/fb.h>   #include <linux/mtd/mtd.h> -@@ -406,7 +406,7 @@ +@@ -406,7 +406,7 @@ static struct platform_device bast_sio =    * standard 100KHz i2c bus frequency   */ @@ -8032,7 +8032,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	.flags		= 0,   	.slave_addr	= 0x10,   	.bus_freq	= 100*1000, -@@ -553,7 +553,7 @@ +@@ -553,7 +553,7 @@ static struct platform_device *bast_devi   	&s3c_device_usb,   	&s3c_device_lcd,   	&s3c_device_wdt, @@ -8041,7 +8041,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009    	&s3c_device_rtc,   	&s3c_device_nand,   	&bast_device_dm9k, -@@ -588,7 +588,8 @@ +@@ -588,7 +588,8 @@ static void __init bast_map_io(void)   	s3c24xx_register_clocks(bast_clocks, ARRAY_SIZE(bast_clocks));   	s3c_device_nand.dev.platform_data = &bast_nand_info; @@ -8857,7 +8857,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   #include <plat/pm.h>   static struct map_desc h1940_iodesc[] __initdata = { -@@ -129,6 +131,11 @@ +@@ -129,6 +131,11 @@ static struct s3c2410_udc_mach_info h194   	.vbus_pin_inverted	= 1,   }; @@ -8869,7 +8869,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   /**    * Set lcd on or off -@@ -183,9 +190,10 @@ +@@ -183,9 +190,10 @@ static struct platform_device *h1940_dev   	&s3c_device_usb,   	&s3c_device_lcd,   	&s3c_device_wdt, @@ -8881,7 +8881,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	&s3c_device_leds,   	&s3c_device_bluetooth,   }; -@@ -201,7 +209,7 @@ +@@ -201,7 +209,7 @@ static void __init h1940_map_io(void)   #ifdef CONFIG_PM_H1940   	memcpy(phys_to_virt(H1940_SUSPEND_RESUMEAT), h1940_pm_return, 1024);   #endif @@ -8890,7 +8890,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   }   static void __init h1940_init_irq(void) -@@ -214,7 +222,9 @@ +@@ -214,7 +222,9 @@ static void __init h1940_init(void)   	u32 tmp;   	s3c24xx_fb_set_platdata(&h1940_fb_info); @@ -8900,7 +8900,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	/* Turn off suspend on both USB ports, and switch the   	 * selectable USB port to USB device mode. */ -@@ -223,10 +233,9 @@ +@@ -223,10 +233,9 @@ static void __init h1940_init(void)   			      S3C2410_MISCCR_USBSUSPND0 |   			      S3C2410_MISCCR_USBSUSPND1, 0x0); @@ -8933,7 +8933,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   static struct map_desc n30_iodesc[] __initdata = {   	/* nothing here yet */ -@@ -320,7 +320,7 @@ +@@ -320,7 +320,7 @@ static struct s3c2410fb_mach_info n30_fb   static struct platform_device *n30_devices[] __initdata = {   	&s3c_device_lcd,   	&s3c_device_wdt, @@ -8942,7 +8942,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	&s3c_device_iis,   	&s3c_device_usb,   	&s3c_device_usbgadget, -@@ -332,7 +332,7 @@ +@@ -332,7 +332,7 @@ static struct platform_device *n30_devic   static struct platform_device *n35_devices[] __initdata = {   	&s3c_device_lcd,   	&s3c_device_wdt, @@ -8951,7 +8951,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	&s3c_device_iis,   	&s3c_device_usbgadget,   	&n35_button_device, -@@ -501,7 +501,7 @@ +@@ -501,7 +501,7 @@ static void __init n30_init_irq(void)   static void __init n30_init(void)   {   	s3c24xx_fb_set_platdata(&n30_fb_info); @@ -8970,7 +8970,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   #include <plat/cpu.h>   static struct map_desc otom11_iodesc[] __initdata = { -@@ -94,7 +95,7 @@ +@@ -94,7 +95,7 @@ static struct platform_device *otom11_de   	&s3c_device_usb,   	&s3c_device_lcd,   	&s3c_device_wdt, @@ -8979,7 +8979,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	&s3c_device_iis,    	&s3c_device_rtc,   	&otom_device_nor, -@@ -109,6 +110,7 @@ +@@ -109,6 +110,7 @@ static void __init otom11_map_io(void)   static void __init otom11_init(void)   { @@ -9011,7 +9011,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   #include <plat/common-smdk.h>   #include <plat/devs.h> -@@ -213,7 +214,7 @@ +@@ -213,7 +214,7 @@ static struct platform_device qt2410_led   /* SPI */ @@ -9020,7 +9020,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   {   	switch (cs) {   	case BITBANG_CS_ACTIVE: -@@ -247,7 +248,7 @@ +@@ -247,7 +248,7 @@ static struct platform_device *qt2410_de   	&s3c_device_usb,   	&s3c_device_lcd,   	&s3c_device_wdt, @@ -9029,7 +9029,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	&s3c_device_iis,   	&s3c_device_sdi,   	&s3c_device_usbgadget, -@@ -320,6 +321,24 @@ +@@ -320,6 +321,24 @@ static int __init qt2410_tft_setup(char    __setup("tft=", qt2410_tft_setup); @@ -9054,7 +9054,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   static void __init qt2410_map_io(void)   {   	s3c24xx_init_io(qt2410_iodesc, ARRAY_SIZE(qt2410_iodesc)); -@@ -349,11 +368,12 @@ +@@ -349,11 +368,12 @@ static void __init qt2410_machine_init(v   	s3c2410_gpio_setpin(S3C2410_GPB0, 1);   	s3c24xx_udc_set_platdata(&qt2410_udc_cfg); @@ -9078,7 +9078,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   #include <plat/devs.h>   #include <plat/cpu.h> -@@ -89,7 +90,7 @@ +@@ -89,7 +90,7 @@ static struct platform_device *smdk2410_   	&s3c_device_usb,   	&s3c_device_lcd,   	&s3c_device_wdt, @@ -9087,7 +9087,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	&s3c_device_iis,   }; -@@ -102,6 +103,7 @@ +@@ -102,6 +103,7 @@ static void __init smdk2410_map_io(void)   static void __init smdk2410_init(void)   { @@ -9105,7 +9105,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   #include <plat/devs.h>   #include <plat/cpu.h> -@@ -127,7 +128,7 @@ +@@ -127,7 +128,7 @@ static struct s3c2410_uartcfg tct_hammer   static struct platform_device *tct_hammer_devices[] __initdata = {   	&s3c_device_adc,   	&s3c_device_wdt, @@ -9114,7 +9114,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	&s3c_device_usb,   	&s3c_device_rtc,   	&s3c_device_usbgadget, -@@ -146,6 +147,7 @@ +@@ -146,6 +147,7 @@ static void __init tct_hammer_map_io(voi   static void __init tct_hammer_init(void)   { @@ -9132,7 +9132,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   #include "usb-simtec.h"   #include "nor-simtec.h" -@@ -334,7 +335,7 @@ +@@ -334,7 +335,7 @@ static struct platform_device *vr1000_de   	&s3c_device_usb,   	&s3c_device_lcd,   	&s3c_device_wdt, @@ -9141,7 +9141,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	&s3c_device_adc,   	&serial_device,   	&vr1000_dm9k0, -@@ -384,6 +385,7 @@ +@@ -384,6 +385,7 @@ static void __init vr1000_map_io(void)   static void __init vr1000_init(void)   { @@ -9151,7 +9151,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	i2c_register_board_info(0, vr1000_i2c_devs,  --- a/arch/arm/mach-s3c2410/Makefile  +++ b/arch/arm/mach-s3c2410/Makefile -@@ -15,7 +15,8 @@ +@@ -15,7 +15,8 @@ obj-$(CONFIG_CPU_S3C2410_DMA)	+= dma.o   obj-$(CONFIG_CPU_S3C2410_DMA)	+= dma.o   obj-$(CONFIG_S3C2410_PM)	+= pm.o sleep.o   obj-$(CONFIG_S3C2410_GPIO)	+= gpio.o @@ -9161,7 +9161,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   # Machine support -@@ -38,3 +39,5 @@ +@@ -38,3 +39,5 @@ obj-$(CONFIG_SIMTEC_NOR)	+= nor-simtec.o   # machine additions   obj-$(CONFIG_MACH_BAST_IDE)	+= bast-ide.o @@ -9512,7 +9512,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   /* Initial IO mappings */ -@@ -59,25 +63,28 @@ +@@ -59,25 +63,28 @@ void __init s3c2410_init_uarts(struct s3    * machine specific initialisation.   */ @@ -9547,7 +9547,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	tmp = __raw_readl(S3C2410_CLKDIVN); -@@ -95,7 +102,13 @@ +@@ -95,7 +102,13 @@ void __init s3c2410_init_clocks(int xtal   	 * console to use them   	 */ @@ -9564,7 +9564,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009  --- a/arch/arm/mach-s3c2412/clock.c  +++ b/arch/arm/mach-s3c2412/clock.c -@@ -93,12 +93,6 @@ +@@ -93,12 +93,6 @@ static int s3c2412_upll_enable(struct cl   /* clock selections */ @@ -9577,7 +9577,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   static struct clk clk_erefclk = {   	.name		= "erefclk",   	.id		= -1, -@@ -773,5 +767,6 @@ +@@ -773,5 +767,6 @@ int __init s3c2412_baseclk_add(void)   		s3c2412_clkcon_enable(clkp, 0);   	} @@ -9625,7 +9625,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   static struct map_desc jive_iodesc[] __initdata = {   }; -@@ -450,14 +451,14 @@ +@@ -450,14 +451,14 @@ static struct spi_board_info __initdata    /* I2C bus and device configuration. */ @@ -9642,7 +9642,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	[0] = {   		I2C_BOARD_INFO("lis302dl", 0x1c),   		.irq	= IRQ_EINT14, -@@ -470,7 +471,7 @@ +@@ -470,7 +471,7 @@ static struct platform_device *jive_devi   	&s3c_device_usb,   	&s3c_device_rtc,   	&s3c_device_wdt, @@ -9651,7 +9651,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	&s3c_device_lcd,   	&jive_device_lcdspi,   	&jive_device_wm8750, -@@ -492,7 +493,7 @@ +@@ -492,7 +493,7 @@ static int jive_pm_suspend(struct sys_de   	 * correct address to resume from. */   	__raw_writel(0x2BED, S3C2412_INFORM0); @@ -9660,7 +9660,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	return 0;   } -@@ -628,7 +629,7 @@ +@@ -628,7 +629,7 @@ static void __init jive_machine_init(voi   	/* initialise the power management now we've setup everything. */ @@ -9669,7 +9669,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	s3c_device_nand.dev.platform_data = &jive_nand_info; -@@ -663,7 +664,7 @@ +@@ -663,7 +664,7 @@ static void __init jive_machine_init(voi   	spi_register_board_info(jive_spi_devs, ARRAY_SIZE(jive_spi_devs)); @@ -9690,7 +9690,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   #include <mach/fb.h>   #include <plat/s3c2410.h> -@@ -105,7 +106,7 @@ +@@ -105,7 +106,7 @@ static struct platform_device *smdk2413_   	&s3c_device_usb,   	//&s3c_device_lcd,   	&s3c_device_wdt, @@ -9699,7 +9699,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	&s3c_device_iis,   	&s3c_device_usbgadget,   }; -@@ -142,6 +143,7 @@ +@@ -142,6 +143,7 @@ static void __init smdk2413_machine_init    	s3c24xx_udc_set_platdata(&smdk2413_udc_cfg); @@ -9719,7 +9719,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   #include <plat/s3c2410.h>   #include <plat/s3c2412.h> -@@ -122,7 +123,7 @@ +@@ -122,7 +123,7 @@ static struct s3c2410_platform_nand vstm   static struct platform_device *vstms_devices[] __initdata = {   	&s3c_device_usb,   	&s3c_device_wdt, @@ -9728,7 +9728,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	&s3c_device_iis,   	&s3c_device_rtc,   	&s3c_device_nand, -@@ -151,6 +152,7 @@ +@@ -151,6 +152,7 @@ static void __init vstms_map_io(void)   static void __init vstms_init(void)   { @@ -9738,7 +9738,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009  --- a/arch/arm/mach-s3c2412/pm.c  +++ b/arch/arm/mach-s3c2412/pm.c -@@ -85,7 +85,7 @@ +@@ -85,7 +85,7 @@ static struct sleep_save s3c2412_sleep[]   static int s3c2412_pm_suspend(struct sys_device *dev, pm_message_t state)   { @@ -9747,7 +9747,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	return 0;   } -@@ -98,7 +98,7 @@ +@@ -98,7 +98,7 @@ static int s3c2412_pm_resume(struct sys_   	tmp |=  S3C2412_PWRCFG_STANDBYWFI_IDLE;   	__raw_writel(tmp, S3C2412_PWRCFG); @@ -9791,7 +9791,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   #ifndef CONFIG_CPU_S3C2412_ONLY   void __iomem *s3c24xx_va_gpio2 = S3C24XX_VA_GPIO; -@@ -136,7 +140,7 @@ +@@ -136,7 +140,7 @@ static void s3c2412_hard_reset(void)    * machine specific initialisation.   */ @@ -9800,7 +9800,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   {   	/* move base of IO */ -@@ -153,20 +157,25 @@ +@@ -153,20 +157,25 @@ void __init s3c2412_map_io(struct map_de   	/* register our io-tables */   	iotable_init(s3c2412_iodesc, ARRAY_SIZE(s3c2412_iodesc)); @@ -9829,7 +9829,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	clk_mpll.rate = fclk; -@@ -183,11 +192,17 @@ +@@ -183,11 +192,17 @@ void __init s3c2412_init_clocks(int xtal   	printk("S3C2412: core %ld.%03ld MHz, memory %ld.%03ld MHz, peripheral %ld.%03ld MHz\n",   	       print_mhz(fclk), print_mhz(hclk), print_mhz(pclk)); @@ -9848,7 +9848,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	s3c2412_baseclk_add();   } -@@ -216,5 +231,8 @@ +@@ -216,5 +231,8 @@ int __init s3c2412_init(void)   {   	printk("S3C2412: Initialising architecture\n"); @@ -16112,7 +16112,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009  +#endif /* _LINUX_FIQ_C_ISR_H */  --- a/arch/arm/mach-s3c2440/Kconfig  +++ b/arch/arm/mach-s3c2440/Kconfig -@@ -22,12 +22,20 @@ +@@ -22,12 +22,20 @@ config S3C2440_DMA   	help   	  Support for S3C2440 specific DMA code5A @@ -16133,7 +16133,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	select PM_SIMTEC if PM   	select HAVE_PATA_PLATFORM   	help -@@ -37,6 +45,7 @@ +@@ -37,6 +45,7 @@ config MACH_ANUBIS   config MACH_OSIRIS   	bool "Simtec IM2440D20 (OSIRIS) module"   	select CPU_S3C2440 @@ -16141,7 +16141,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	select PM_SIMTEC if PM   	help   	  Say Y here if you are using the Simtec IM2440D20 module, also -@@ -74,5 +83,30 @@ +@@ -74,5 +83,30 @@ config MACH_AT2440EVB   	help   	  Say Y here if you are using the AT2440EVB development board @@ -16184,7 +16184,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   #include <linux/mtd/mtd.h>   #include <linux/mtd/nand.h> -@@ -404,7 +405,7 @@ +@@ -404,7 +405,7 @@ static struct platform_device *anubis_de   	&s3c_device_usb,   	&s3c_device_wdt,   	&s3c_device_adc, @@ -16193,7 +16193,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009    	&s3c_device_rtc,   	&s3c_device_nand,   	&anubis_device_ide0, -@@ -468,6 +469,7 @@ +@@ -468,6 +469,7 @@ static void __init anubis_map_io(void)   static void __init anubis_init(void)   { @@ -16213,7 +16213,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   #include <linux/mtd/mtd.h>   #include <linux/mtd/nand.h> -@@ -166,7 +167,7 @@ +@@ -166,7 +167,7 @@ static struct platform_device *at2440evb   	&s3c_device_usb,   	&s3c_device_wdt,   	&s3c_device_adc, @@ -16222,7 +16222,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	&s3c_device_rtc,   	&s3c_device_nand,   	&at2440evb_device_eth, -@@ -183,6 +184,7 @@ +@@ -183,6 +184,7 @@ static void __init at2440evb_map_io(void   static void __init at2440evb_init(void)   { @@ -18021,7 +18021,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   #include <plat/s3c2410.h>   #include <plat/s3c2440.h> -@@ -107,7 +108,7 @@ +@@ -107,7 +108,7 @@ static struct platform_device *nexcoder_   	&s3c_device_usb,   	&s3c_device_lcd,   	&s3c_device_wdt, @@ -18030,7 +18030,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	&s3c_device_iis,    	&s3c_device_rtc,   	&s3c_device_camif, -@@ -142,6 +143,7 @@ +@@ -142,6 +143,7 @@ static void __init nexcoder_map_io(void)   static void __init nexcoder_init(void)   { @@ -18050,7 +18050,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   #include <linux/mtd/mtd.h>   #include <linux/mtd/nand.h> -@@ -335,7 +336,7 @@ +@@ -335,7 +336,7 @@ static struct i2c_board_info osiris_i2c_   /* Standard Osiris devices */   static struct platform_device *osiris_devices[] __initdata = { @@ -18059,7 +18059,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	&s3c_device_wdt,   	&s3c_device_nand,   	&osiris_pcmcia, -@@ -398,6 +399,8 @@ +@@ -398,6 +399,8 @@ static void __init osiris_init(void)   	sysdev_class_register(&osiris_pm_sysclass);   	sysdev_register(&osiris_pm_sysdev); @@ -18079,7 +18079,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   #include <mach/fb.h>   #include <plat/clock.h> -@@ -179,7 +179,7 @@ +@@ -179,7 +179,7 @@ static struct platform_device *rx3715_de   	&s3c_device_usb,   	&s3c_device_lcd,   	&s3c_device_wdt, @@ -18088,7 +18088,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	&s3c_device_iis,   	&s3c_device_nand,   }; -@@ -203,7 +203,7 @@ +@@ -203,7 +203,7 @@ static void __init rx3715_init_machine(v   #ifdef CONFIG_PM_H1940   	memcpy(phys_to_virt(H1940_SUSPEND_RESUMEAT), h1940_pm_return, 1024);   #endif @@ -18107,7 +18107,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   #include <plat/s3c2410.h>   #include <plat/s3c2440.h> -@@ -152,7 +153,7 @@ +@@ -152,7 +153,7 @@ static struct platform_device *smdk2440_   	&s3c_device_usb,   	&s3c_device_lcd,   	&s3c_device_wdt, @@ -18116,7 +18116,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	&s3c_device_iis,   }; -@@ -166,6 +167,7 @@ +@@ -166,6 +167,7 @@ static void __init smdk2440_map_io(void)   static void __init smdk2440_machine_init(void)   {   	s3c24xx_fb_set_platdata(&smdk2440_fb_info); @@ -18126,7 +18126,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	smdk_machine_init();  --- a/arch/arm/mach-s3c2440/Makefile  +++ b/arch/arm/mach-s3c2440/Makefile -@@ -13,6 +13,7 @@ +@@ -13,6 +13,7 @@ obj-$(CONFIG_CPU_S3C2440)	+= s3c2440.o d   obj-$(CONFIG_CPU_S3C2440)	+= irq.o   obj-$(CONFIG_CPU_S3C2440)	+= clock.o   obj-$(CONFIG_S3C2440_DMA)	+= dma.o @@ -18134,7 +18134,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   # Machine support -@@ -22,3 +23,6 @@ +@@ -22,3 +23,6 @@ obj-$(CONFIG_MACH_RX3715)	+= mach-rx3715   obj-$(CONFIG_ARCH_S3C2440)	+= mach-smdk2440.o   obj-$(CONFIG_MACH_NEXCODER_2440) += mach-nexcoder.o   obj-$(CONFIG_MACH_AT2440EVB) += mach-at2440evb.o @@ -18143,7 +18143,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009  +  --- a/arch/arm/mach-s3c2440/s3c2440.c  +++ b/arch/arm/mach-s3c2440/s3c2440.c -@@ -46,6 +46,9 @@ +@@ -46,6 +46,9 @@ int __init s3c2440_init(void)   	s3c_device_wdt.resource[1].start = IRQ_S3C2440_WDT;   	s3c_device_wdt.resource[1].end   = IRQ_S3C2440_WDT; @@ -18178,7 +18178,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   static struct sys_device s3c2442_sysdev = {   	.cls		= &s3c2442_sysclass, -@@ -30,5 +31,8 @@ +@@ -30,5 +31,8 @@ int __init s3c2442_init(void)   {   	printk("S3C2442: Initialising architecture\n"); @@ -18198,7 +18198,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   #include <plat/s3c2443.h>   #include <plat/clock.h>   #include <plat/cpu.h> -@@ -145,12 +147,6 @@ +@@ -145,12 +147,6 @@ static unsigned long s3c2443_roundrate_c   /* clock selections */ @@ -18211,7 +18211,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   static struct clk clk_mpllref = {   	.name		= "mpllref",   	.parent		= &clk_xtal, -@@ -165,14 +161,6 @@ +@@ -165,14 +161,6 @@ static struct clk clk_mpll = {   };   #endif @@ -18226,7 +18226,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   static struct clk clk_i2s_ext = {   	.name		= "i2s-ext",   	.id		= -1, -@@ -1011,22 +999,20 @@ +@@ -1011,22 +999,20 @@ static struct clk *clks[] __initdata = {   	&clk_prediv,   }; @@ -18255,7 +18255,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	pll = s3c2443_get_mpll(mpllcon, xtal);   	clk_msysclk.rate = pll; -@@ -1036,13 +1022,29 @@ +@@ -1036,13 +1022,29 @@ void __init s3c2443_init_clocks(int xtal   	hclk /= s3c2443_get_hdiv(clkdiv0);    	pclk = hclk / ((clkdiv0 & S3C2443_CLKDIV0_HALF_PCLK) ? 2 : 1); @@ -18286,7 +18286,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	s3c2443_clk_initparents();   	for (ptr = 0; ptr < ARRAY_SIZE(clks); ptr++) { -@@ -1056,7 +1058,7 @@ +@@ -1056,7 +1058,7 @@ void __init s3c2443_init_clocks(int xtal   	}   	clk_epll.rate = s3c2443_get_epll(epllcon, xtal); @@ -18295,7 +18295,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	clk_usb_bus.parent = &clk_usb_bus_host;   	/* ensure usb bus clock is within correct rate of 48MHz */ -@@ -1105,4 +1107,6 @@ +@@ -1105,4 +1107,6 @@ void __init s3c2443_init_clocks(int xtal   		(clkp->enable)(clkp, 0);   	} @@ -18321,7 +18321,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   		[0]	= (x) | DMA_CH_VALID,	\  --- a/arch/arm/mach-s3c2443/Kconfig  +++ b/arch/arm/mach-s3c2443/Kconfig -@@ -24,6 +24,7 @@ +@@ -24,6 +24,7 @@ config MACH_SMDK2443   	bool "SMDK2443"   	select CPU_S3C2443   	select MACH_SMDK @@ -18339,7 +18339,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   #include <plat/s3c2410.h>   #include <plat/s3c2440.h> -@@ -103,8 +104,8 @@ +@@ -103,8 +104,8 @@ static struct s3c2410_uartcfg smdk2443_u   static struct platform_device *smdk2443_devices[] __initdata = {   	&s3c_device_wdt, @@ -18350,7 +18350,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   };   static void __init smdk2443_map_io(void) -@@ -116,6 +117,7 @@ +@@ -116,6 +117,7 @@ static void __init smdk2443_map_io(void)   static void __init smdk2443_machine_init(void)   { @@ -18360,7 +18360,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   }  --- a/arch/arm/mach-s3c2443/s3c2443.c  +++ b/arch/arm/mach-s3c2443/s3c2443.c -@@ -81,10 +81,9 @@ +@@ -81,10 +81,9 @@ void __init s3c2443_init_uarts(struct s3    * machine specific initialisation.    */ @@ -21366,7 +21366,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009  +}  --- a/arch/arm/Makefile  +++ b/arch/arm/Makefile -@@ -121,7 +121,10 @@ +@@ -121,7 +121,10 @@ endif    machine-$(CONFIG_ARCH_OMAP3)	   := omap2       plat-$(CONFIG_ARCH_OMAP)	   := omap    machine-$(CONFIG_ARCH_S3C2410)	   := s3c2410 s3c2400 s3c2412 s3c2440 s3c2442 s3c2443 @@ -21379,7 +21379,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009    machine-$(CONFIG_ARCH_IMX)	   := imx  --- a/arch/arm/mm/Kconfig  +++ b/arch/arm/mm/Kconfig -@@ -183,14 +183,14 @@ +@@ -183,14 +183,14 @@ config CPU_ARM926T   	depends on ARCH_INTEGRATOR || ARCH_VERSATILE_PB || \   		MACH_VERSATILE_AB || ARCH_OMAP730 || \   		ARCH_OMAP16XX || MACH_REALVIEW_EB || \ @@ -21396,7 +21396,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   		ARCH_AT91SAM9260 || ARCH_AT91SAM9261 || \   		ARCH_AT91SAM9263 || ARCH_AT91SAM9RL || \   		ARCH_AT91SAM9G20 || ARCH_AT91CAP9 || \ -@@ -400,9 +400,10 @@ +@@ -400,9 +400,10 @@ config CPU_FEROCEON_OLD_ID   # ARMv6   config CPU_V6   	bool "Support ARM V6 processor" @@ -24626,7 +24626,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   #ifndef __ASSEMBLY__   /* struct s3c24xx_uart_clksrc -@@ -224,7 +243,7 @@ +@@ -224,7 +243,7 @@ struct s3c2410_uartcfg {    * or platform_add_device() before the console_initcall()   */ @@ -24830,7 +24830,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009  +#endif /* __PLAT_S3C_SDHCI_H */  --- a/arch/arm/plat-s3c/include/plat/uncompress.h  +++ b/arch/arm/plat-s3c/include/plat/uncompress.h -@@ -28,7 +28,7 @@ +@@ -28,7 +28,7 @@ static void arch_detect_cpu(void);   /* defines for UART registers */   #include <plat/regs-serial.h> @@ -24839,7 +24839,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   /* working in physical space... */   #undef S3C2410_WDOGREG -@@ -37,7 +37,7 @@ +@@ -37,7 +37,7 @@ static void arch_detect_cpu(void);   /* how many bytes we allow into the FIFO at a time in FIFO mode */   #define FIFO_MAX	 (14) @@ -24848,7 +24848,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   static __inline__ void   uart_wr(unsigned int reg, unsigned int val) -@@ -139,6 +139,28 @@ +@@ -139,6 +139,28 @@ static void arch_decomp_error(const char   static void error(char *err); @@ -24877,7 +24877,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   static void   arch_decomp_setup(void)   { -@@ -149,6 +171,12 @@ +@@ -149,6 +171,12 @@ arch_decomp_setup(void)   	arch_detect_cpu();   	arch_decomp_wdog_start(); @@ -25067,7 +25067,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	select NO_IOPORT   	help   	  Base platform code for any Samsung S3C device -@@ -16,24 +16,24 @@ +@@ -16,24 +16,24 @@ config PLAT_S3C   config CPU_LLSERIAL_S3C2410_ONLY   	bool @@ -25096,7 +25096,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	help   	  Selected if there is an S3C2440 (or register compatible) serial   	  low-level implementation needed -@@ -57,6 +57,14 @@ +@@ -57,6 +57,14 @@ config S3C_BOOT_ERROR_RESET   	  Say y here to use the watchdog to reset the system if the   	  kernel decompressor detects an error during decompression. @@ -25111,7 +25111,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   comment "Power management"   config S3C2410_PM_DEBUG -@@ -67,6 +75,15 @@ +@@ -67,6 +75,15 @@ config S3C2410_PM_DEBUG   	  Resume code. See <file:Documentation/arm/Samsung-S3C24XX/Suspend.txt>   	  for more information. @@ -25127,7 +25127,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   config S3C2410_PM_CHECK   	bool "S3C2410 PM Suspend Memory CRC"   	depends on PLAT_S3C && PM && CRC32 -@@ -102,3 +119,73 @@ +@@ -102,3 +119,73 @@ config S3C_LOWLEVEL_UART_PORT   	  such as the `Uncompressing...` at start time. The value of   	  this configuration should be between zero and two. The port   	  must have been initialised by the boot-loader before use. @@ -27737,7 +27737,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   #include <plat/common-smdk.h>   #include <plat/devs.h> -@@ -201,5 +201,5 @@ +@@ -201,5 +201,5 @@ void __init smdk_machine_init(void)   	platform_add_devices(smdk_devs, ARRAY_SIZE(smdk_devs)); @@ -27763,7 +27763,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   /* table of supported CPUs */   static const char name_s3c2400[]  = "S3C2400"; -@@ -72,6 +62,7 @@ +@@ -72,6 +62,7 @@ static const char name_s3c2410[]  = "S3C   static const char name_s3c2412[]  = "S3C2412";   static const char name_s3c2440[]  = "S3C2440";   static const char name_s3c2442[]  = "S3C2442"; @@ -27771,7 +27771,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   static const char name_s3c2443[]  = "S3C2443";   static const char name_s3c2410a[] = "S3C2410A";   static const char name_s3c2440a[] = "S3C2440A"; -@@ -123,6 +114,15 @@ +@@ -123,6 +114,15 @@ static struct cpu_table cpu_ids[] __init   		.name		= name_s3c2442   	},   	{ @@ -27787,7 +27787,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   		.idcode		= 0x32412001,   		.idmask		= 0xffffffff,   		.map_io		= s3c2412_map_io, -@@ -169,23 +169,7 @@ +@@ -169,23 +169,7 @@ static struct map_desc s3c_iodesc[] __in   	IODESC_ENT(UART)   }; @@ -27812,7 +27812,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   static unsigned long s3c24xx_read_idcode_v5(void)   { -@@ -231,6 +215,7 @@ +@@ -231,6 +215,7 @@ void __init s3c24xx_init_io(struct map_d   	unsigned long idcode = 0x0;   	/* initialise the io descriptors we need for initialisation */ @@ -27820,7 +27820,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	iotable_init(s3c_iodesc, ARRAY_SIZE(s3c_iodesc));   	if (cpu_architecture() >= CPU_ARCH_ARMv5) { -@@ -239,117 +224,7 @@ +@@ -239,117 +224,7 @@ void __init s3c24xx_init_io(struct map_d   		idcode = s3c24xx_read_idcode_v4();   	} @@ -27960,7 +27960,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   /* Serial port registrations */ -@@ -76,6 +78,19 @@ +@@ -76,6 +78,19 @@ static struct resource s3c2410_uart2_res   	}   }; @@ -27980,7 +27980,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   struct s3c24xx_uart_resources s3c2410_uart_resources[] __initdata = {   	[0] = {   		.resources	= s3c2410_uart0_resource, -@@ -89,6 +104,10 @@ +@@ -89,6 +104,10 @@ struct s3c24xx_uart_resources s3c2410_ua   		.resources	= s3c2410_uart2_resource,   		.nr_resources	= ARRAY_SIZE(s3c2410_uart2_resource),   	}, @@ -27991,7 +27991,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   };   /* yart devices */ -@@ -105,13 +124,18 @@ +@@ -105,13 +124,18 @@ static struct platform_device s3c24xx_ua   	.id		= 2,   }; @@ -28012,7 +28012,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   };   /* USB Host Controller */ -@@ -192,8 +216,8 @@ +@@ -192,8 +216,8 @@ void __init s3c24xx_fb_set_platdata(stru   static struct resource s3c_nand_resource[] = {   	[0] = { @@ -28023,7 +28023,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   		.flags = IORESOURCE_MEM,   	}   }; -@@ -207,6 +231,23 @@ +@@ -207,6 +231,23 @@ struct platform_device s3c_device_nand =   EXPORT_SYMBOL(s3c_device_nand); @@ -28047,7 +28047,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   /* USB Device (Gadget)*/   static struct resource s3c_usbgadget_resource[] = { -@@ -271,31 +312,6 @@ +@@ -271,31 +312,6 @@ struct platform_device s3c_device_wdt =    EXPORT_SYMBOL(s3c_device_wdt); @@ -28079,7 +28079,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   /* IIS */   static struct resource s3c_iis_resource[] = { -@@ -382,8 +398,8 @@ +@@ -382,8 +398,8 @@ struct platform_device s3c_device_adc =    static struct resource s3c_sdi_resource[] = {   	[0] = { @@ -28090,7 +28090,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   		.flags = IORESOURCE_MEM,   	},   	[1] = { -@@ -403,36 +419,6 @@ +@@ -403,36 +419,6 @@ struct platform_device s3c_device_sdi =    EXPORT_SYMBOL(s3c_device_sdi); @@ -28137,7 +28137,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   void s3c2410_gpio_cfgpin(unsigned int pin, unsigned int function)   { -@@ -215,3 +216,423 @@ +@@ -215,3 +216,423 @@ int s3c2410_gpio_irq2pin(unsigned int ir   }   EXPORT_SYMBOL(s3c2410_gpio_irq2pin); @@ -28670,7 +28670,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   static int s3c24xx_gpiolib_banka_input(struct gpio_chip *chip, unsigned offset)   {   	return -EINVAL; -@@ -125,7 +34,7 @@ +@@ -125,7 +34,7 @@ static int s3c24xx_gpiolib_banka_input(s   static int s3c24xx_gpiolib_banka_output(struct gpio_chip *chip,   					unsigned offset, int value)   { @@ -28679,7 +28679,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	void __iomem *base = ourchip->base;   	unsigned long flags;   	unsigned long dat; -@@ -151,9 +60,10 @@ +@@ -151,9 +60,10 @@ static int s3c24xx_gpiolib_banka_output(   	return 0;   } @@ -28691,7 +28691,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   		.chip	= {   			.base			= S3C2410_GPA0,   			.owner			= THIS_MODULE, -@@ -161,97 +71,87 @@ +@@ -161,97 +71,87 @@ static struct s3c24xx_gpio_chip gpios[]    			.ngpio			= 24,   			.direction_input	= s3c24xx_gpiolib_banka_input,   			.direction_output	= s3c24xx_gpiolib_banka_output, @@ -29222,7 +29222,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   #define irqdbf(x...)   #define irqdbf2(x...) -@@ -25,8 +31,15 @@ +@@ -25,8 +31,15 @@ s3c_irqsub_mask(unsigned int irqno, unsi   {   	unsigned long mask;   	unsigned long submask; @@ -29238,7 +29238,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	mask = __raw_readl(S3C2410_INTMSK);   	submask |= (1UL << (irqno - IRQ_S3CUART_RX0)); -@@ -39,6 +52,9 @@ +@@ -39,6 +52,9 @@ s3c_irqsub_mask(unsigned int irqno, unsi   	/* write back masks */   	__raw_writel(submask, S3C2410_INTSUBMSK); @@ -29248,7 +29248,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   } -@@ -47,8 +63,15 @@ +@@ -47,8 +63,15 @@ s3c_irqsub_unmask(unsigned int irqno, un   {   	unsigned long mask;   	unsigned long submask; @@ -29264,7 +29264,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	mask = __raw_readl(S3C2410_INTMSK);   	submask &= ~(1UL << (irqno - IRQ_S3CUART_RX0)); -@@ -57,6 +80,9 @@ +@@ -57,6 +80,9 @@ s3c_irqsub_unmask(unsigned int irqno, un   	/* write back masks */   	__raw_writel(submask, S3C2410_INTSUBMSK);   	__raw_writel(mask, S3C2410_INTMSK); @@ -29855,7 +29855,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009  --- a/arch/arm/plat-s3c24xx/include/plat/s3c2443.h  +++ b/arch/arm/plat-s3c24xx/include/plat/s3c2443.h -@@ -16,7 +16,7 @@ +@@ -16,7 +16,7 @@ struct s3c2410_uartcfg;   extern  int s3c2443_init(void); @@ -30054,7 +30054,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   }   static inline void -@@ -155,9 +67,19 @@ +@@ -155,9 +67,19 @@ s3c_irq_maskack(unsigned int irqno)   {   	unsigned long bitval = 1UL << (irqno - IRQ_EINT0);   	unsigned long mask; @@ -30074,7 +30074,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	__raw_writel(bitval, S3C2410_SRCPND);   	__raw_writel(bitval, S3C2410_INTPND); -@@ -168,15 +90,25 @@ +@@ -168,15 +90,25 @@ static void   s3c_irq_unmask(unsigned int irqno)   {   	unsigned long mask; @@ -30100,7 +30100,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   }   struct irq_chip s3c_irq_level_chip = { -@@ -589,59 +521,6 @@ +@@ -589,59 +521,6 @@ s3c_irq_demux_extint4t7(unsigned int irq   	}   } @@ -30160,7 +30160,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   /* s3c24xx_init_irq    *    * Initialise S3C2410 IRQ system -@@ -672,26 +551,26 @@ +@@ -672,26 +551,26 @@ void __init s3c24xx_init_irq(void)   	last = 0;   	for (i = 0; i < 4; i++) { @@ -30353,7 +30353,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	help   	  Support for S3C2440 and S3C2442 Samsung Mobile CPU based systems. -@@ -49,9 +63,31 @@ +@@ -49,9 +63,31 @@ config S3C2410_DMA_DEBUG   	  Enable debugging output for the DMA code. This option sends info   	  to the kernel log, at priority KERN_DEBUG. @@ -30387,7 +30387,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   endif  --- a/arch/arm/plat-s3c24xx/Makefile  +++ b/arch/arm/plat-s3c24xx/Makefile -@@ -17,9 +17,8 @@ +@@ -17,9 +17,8 @@ obj-y				+= irq.o   obj-y				+= devs.o   obj-y				+= gpio.o   obj-y				+= gpiolib.o @@ -30398,7 +30398,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   # Architecture dependant builds -@@ -28,7 +27,26 @@ +@@ -28,7 +27,26 @@ obj-$(CONFIG_CPU_S3C244X)	+= s3c244x-irq   obj-$(CONFIG_CPU_S3C244X)	+= s3c244x-clock.o   obj-$(CONFIG_PM_SIMTEC)		+= pm-simtec.o   obj-$(CONFIG_PM)		+= pm.o @@ -31940,7 +31940,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   #define PFX "s3c24xx-pm: "   static struct sleep_save core_save[] = { -@@ -76,371 +67,26 @@ +@@ -76,371 +67,26 @@ static struct sleep_save core_save[] = {   	SAVE_ITEM(S3C2410_BANKCON4),   	SAVE_ITEM(S3C2410_BANKCON5), @@ -32317,7 +32317,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   {   	unsigned long irqstate;   	unsigned long pinstate; -@@ -455,21 +101,21 @@ +@@ -455,21 +101,21 @@ static void s3c2410_pm_check_resume_pin(   	if (!irqstate) {   		if (pinstate == S3C2410_GPIO_IRQ) @@ -32343,7 +32343,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   {   	int pin; -@@ -479,336 +125,24 @@ +@@ -479,336 +125,24 @@ static void s3c2410_pm_configure_extint(   	*/   	for (pin = S3C2410_GPF0; pin <= S3C2410_GPF7; pin++) { @@ -32690,7 +32690,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009  -}  --- a/arch/arm/plat-s3c24xx/pm-simtec.c  +++ b/arch/arm/plat-s3c24xx/pm-simtec.c -@@ -61,7 +61,7 @@ +@@ -61,7 +61,7 @@ static __init int pm_simtec_init(void)   	__raw_writel(gstatus4, S3C2410_GSTATUS4); @@ -33014,7 +33014,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   static struct map_desc s3c244x_iodesc[] __initdata = {   	IODESC_ENT(CLKPWR), -@@ -56,32 +59,37 @@ +@@ -56,32 +59,37 @@ void __init s3c244x_init_uarts(struct s3   	s3c24xx_init_uartdevs("s3c2440-uart", s3c2410_uart_resources, cfg, no);   } @@ -33059,7 +33059,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	clkdiv = __raw_readl(S3C2410_CLKDIVN);   	camdiv = __raw_readl(S3C2440_CAMDIVN); -@@ -107,18 +115,24 @@ +@@ -107,18 +115,24 @@ void __init s3c244x_init_clocks(int xtal   	}   	hclk = fclk / hdiv; @@ -33086,7 +33086,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	s3c2410_baseclk_add();   } -@@ -134,13 +148,13 @@ +@@ -134,13 +148,13 @@ static struct sleep_save s3c244x_sleep[]   static int s3c244x_suspend(struct sys_device *dev, pm_message_t state)   { @@ -33112,7 +33112,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   #include <linux/clk.h>   #include <linux/io.h> -@@ -102,13 +101,13 @@ +@@ -102,13 +101,13 @@ static int s3c244x_clk_add(struct sys_de   	if (clk_get_rate(clock_upll) > (94 * MHZ)) {   		clk_usb_bus.rate = clk_get_rate(clock_upll) / 2; @@ -33187,7 +33187,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	stmfd	sp!, { r4 - r12, lr }   	@@ store co-processor registers -@@ -84,7 +84,7 @@ +@@ -84,7 +84,7 @@ resume_with_mmu:   	.ltorg   	@@ the next bits sit in the .data segment, even though they @@ -33196,7 +33196,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	@@ accessed by the resume code before it can restore the MMU.   	@@ This means that the variable has to be close enough for the   	@@ code to read it... since the .text segment needs to be RO, -@@ -92,19 +92,19 @@ +@@ -92,19 +92,19 @@ resume_with_mmu:   	.data @@ -33220,7 +33220,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	 *   	 * resume code entry for bootloader to call   	 * -@@ -113,7 +113,7 @@ +@@ -113,7 +113,7 @@ s3c2410_sleep_save_phys:   	 * must not write to the code segment (code is read-only)   	*/ @@ -33229,7 +33229,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	mov	r0, #PSR_I_BIT | PSR_F_BIT | SVC_MODE   	msr	cpsr_c, r0 -@@ -145,7 +145,7 @@ +@@ -145,7 +145,7 @@ ENTRY(s3c2410_cpu_resume)   	mcr	p15, 0, r1, c8, c7, 0		@@ invalidate I & D TLBs   	mcr	p15, 0, r1, c7, c7, 0		@@ invalidate I & D caches @@ -33361,7 +33361,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   #define TIMER_USEC_SHIFT 16 -@@ -177,11 +183,7 @@ +@@ -177,11 +183,7 @@ static void s3c2410_timer_setup (void)   		tcfg1 &= ~S3C2410_TCFG1_MUX4_MASK;   		tcfg1 |= S3C2410_TCFG1_MUX4_TCLK1;   	} else { @@ -33374,7 +33374,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   		 * 70MHz are not values we can directly generate the timer   		 * value from, we need to pre-scale and divide before using it.   		 * -@@ -189,19 +191,9 @@ +@@ -189,19 +191,9 @@ static void s3c2410_timer_setup (void)   		 * (8.45 ticks per usec)   		 */ @@ -33395,7 +33395,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   		tcfg1 &= ~S3C2410_TCFG1_MUX4_MASK;   		tcfg1 |= S3C2410_TCFG1_MUX4_DIV2; -@@ -245,16 +237,244 @@ +@@ -245,16 +237,244 @@ static void s3c2410_timer_setup (void)   	tcon |= S3C2410_TCON_T4START;   	tcon &= ~S3C2410_TCON_T4MANUALUPD;   	__raw_writel(tcon, S3C2410_TCON); @@ -38455,7 +38455,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009  +  --- a/Documentation/arm/Samsung-S3C24XX/Suspend.txt  +++ b/Documentation/arm/Samsung-S3C24XX/Suspend.txt -@@ -40,13 +40,13 @@ +@@ -40,13 +40,13 @@ Resuming   Machine Support   --------------- @@ -38472,7 +38472,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009     needs to setup anything else for power management support.     There is currently no support for over-riding the default method of -@@ -74,7 +74,7 @@ +@@ -74,7 +74,7 @@ statuc void __init machine_init(void)   	enable_irq_wake(IRQ_EINT0); @@ -78733,7 +78733,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009  +#endif /* _WMI_HOST_H_ */  --- a/drivers/base/bus.c  +++ b/drivers/base/bus.c -@@ -141,6 +141,29 @@ +@@ -141,6 +141,29 @@ void bus_remove_file(struct bus_type *bu   }   EXPORT_SYMBOL_GPL(bus_remove_file); @@ -78765,7 +78765,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   };  --- a/drivers/base/core.c  +++ b/drivers/base/core.c -@@ -55,6 +55,11 @@ +@@ -55,6 +55,11 @@ static inline int device_is_not_partitio    */   const char *dev_driver_string(const struct device *dev)   { @@ -78779,7 +78779,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   			(dev->class ? dev->class->name : ""));  --- a/drivers/base/power/main.c  +++ b/drivers/base/power/main.c -@@ -69,9 +69,9 @@ +@@ -69,9 +69,9 @@ void device_pm_unlock(void)    */   void device_pm_add(struct device *dev)   { @@ -78793,7 +78793,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   		if (dev->parent->power.status >= DPM_SUSPENDING)  --- a/drivers/char/Kconfig  +++ b/drivers/char/Kconfig -@@ -66,6 +66,18 @@ +@@ -66,6 +66,18 @@ config VT_CONSOLE   	  If unsure, say Y. @@ -78844,7 +78844,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   /* i2c controller state */ -@@ -64,6 +62,7 @@ +@@ -64,6 +62,7 @@ struct s3c24xx_i2c {   	unsigned int		msg_ptr;   	unsigned int		tx_setup; @@ -78852,7 +78852,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	enum s3c24xx_i2c_state	state;   	unsigned long		clkrate; -@@ -71,7 +70,6 @@ +@@ -71,7 +70,6 @@ struct s3c24xx_i2c {   	void __iomem		*regs;   	struct clk		*clk;   	struct device		*dev; @@ -78860,7 +78860,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	struct resource		*ioarea;   	struct i2c_adapter	adap; -@@ -80,16 +78,7 @@ +@@ -80,16 +78,7 @@ struct s3c24xx_i2c {   #endif   }; @@ -78878,7 +78878,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   /* s3c24xx_i2c_is2440()    * -@@ -103,21 +92,6 @@ +@@ -103,21 +92,6 @@ static inline int s3c24xx_i2c_is2440(str   	return !strcmp(pdev->name, "s3c2440-i2c");   } @@ -78900,7 +78900,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   /* s3c24xx_i2c_master_complete    *    * complete the message and wake up the caller, using the given return code, -@@ -130,7 +104,7 @@ +@@ -130,7 +104,7 @@ static inline void s3c24xx_i2c_master_co   	i2c->msg_ptr = 0;   	i2c->msg = NULL; @@ -78909,7 +78909,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	i2c->msg_num = 0;   	if (ret)   		i2c->msg_idx = ret; -@@ -141,19 +115,17 @@ +@@ -141,19 +115,17 @@ static inline void s3c24xx_i2c_master_co   static inline void s3c24xx_i2c_disable_ack(struct s3c24xx_i2c *i2c)   {   	unsigned long tmp; @@ -78931,7 +78931,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   }   /* irq enable/disable functions */ -@@ -161,15 +133,23 @@ +@@ -161,15 +133,23 @@ static inline void s3c24xx_i2c_enable_ac   static inline void s3c24xx_i2c_disable_irq(struct s3c24xx_i2c *i2c)   {   	unsigned long tmp; @@ -78957,7 +78957,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	tmp = readl(i2c->regs + S3C2410_IICCON);   	writel(tmp | S3C2410_IICCON_IRQEN, i2c->regs + S3C2410_IICCON);   } -@@ -177,10 +157,10 @@ +@@ -177,10 +157,10 @@ static inline void s3c24xx_i2c_enable_ir   /* s3c24xx_i2c_message_start    * @@ -78970,7 +78970,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   				      struct i2c_msg *msg)   {   	unsigned int addr = (msg->addr & 0x7f) << 1; -@@ -199,15 +179,15 @@ +@@ -199,15 +179,15 @@ static void s3c24xx_i2c_message_start(st   	if (msg->flags & I2C_M_REV_DIR_ADDR)   		addr ^= 1; @@ -78989,7 +78989,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	/* delay here to ensure the data byte has gotten onto the bus   	 * before the transaction is started */ -@@ -215,8 +195,8 @@ +@@ -215,8 +195,8 @@ static void s3c24xx_i2c_message_start(st   	dev_dbg(i2c->dev, "iiccon, %08lx\n", iiccon);   	writel(iiccon, i2c->regs + S3C2410_IICCON); @@ -79000,7 +79000,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	writel(stat, i2c->regs + S3C2410_IICSTAT);   } -@@ -227,11 +207,11 @@ +@@ -227,11 +207,11 @@ static inline void s3c24xx_i2c_stop(stru   	dev_dbg(i2c->dev, "STOP\n");   	/* stop the transfer */ @@ -79015,7 +79015,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	s3c24xx_i2c_master_complete(i2c, ret);   	s3c24xx_i2c_disable_irq(i2c);   } -@@ -241,7 +221,7 @@ +@@ -241,7 +221,7 @@ static inline void s3c24xx_i2c_stop(stru   /* is_lastmsg()    * @@ -79024,7 +79024,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   */   static inline int is_lastmsg(struct s3c24xx_i2c *i2c) -@@ -289,14 +269,14 @@ +@@ -289,14 +269,14 @@ static int i2s_s3c_irq_nextbyte(struct s   	case STATE_STOP:   		dev_err(i2c->dev, "%s: called in STATE_STOP\n", __func__); @@ -79041,7 +79041,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   		if (iicstat & S3C2410_IICSTAT_LASTBIT &&   		    !(i2c->msg->flags & I2C_M_IGNORE_NAK)) {   			/* ack was not received... */ -@@ -322,7 +302,7 @@ +@@ -322,7 +302,7 @@ static int i2s_s3c_irq_nextbyte(struct s   		if (i2c->state == STATE_READ)   			goto prepare_read; @@ -79050,7 +79050,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   		 * send a byte as well */   	case STATE_WRITE: -@@ -339,7 +319,7 @@ +@@ -339,7 +319,7 @@ static int i2s_s3c_irq_nextbyte(struct s   			}   		} @@ -79059,7 +79059,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   		if (!is_msgend(i2c)) {   			byte = i2c->msg->buf[i2c->msg_ptr++]; -@@ -359,9 +339,9 @@ +@@ -359,9 +339,9 @@ static int i2s_s3c_irq_nextbyte(struct s   			dev_dbg(i2c->dev, "WRITE: Next Message\n");   			i2c->msg_ptr = 0; @@ -79071,7 +79071,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   			/* check to see if we need to do another message */   			if (i2c->msg->flags & I2C_M_NOSTART) { -@@ -375,7 +355,6 @@ +@@ -375,7 +355,6 @@ static int i2s_s3c_irq_nextbyte(struct s   				goto retry_write;   			} else { @@ -79079,7 +79079,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   				/* send the new start */   				s3c24xx_i2c_message_start(i2c, i2c->msg);   				i2c->state = STATE_START; -@@ -389,7 +368,7 @@ +@@ -389,7 +368,7 @@ static int i2s_s3c_irq_nextbyte(struct s   		break;   	case STATE_READ: @@ -79088,7 +79088,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   		 * something with it, and then work out wether we are   		 * going to do any more read/write   		 */ -@@ -397,13 +376,13 @@ +@@ -397,13 +376,13 @@ static int i2s_s3c_irq_nextbyte(struct s   		byte = readb(i2c->regs + S3C2410_IICDS);   		i2c->msg->buf[i2c->msg_ptr++] = byte; @@ -79104,7 +79104,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   		} else if (is_msgend(i2c)) {   			/* ok, we've read the entire buffer, see if there   			 * is anything else we need to do */ -@@ -429,7 +408,7 @@ +@@ -429,7 +408,7 @@ static int i2s_s3c_irq_nextbyte(struct s   	/* acknowlegde the IRQ and get back on with the work */    out_ack: @@ -79113,7 +79113,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	tmp &= ~S3C2410_IICCON_IRQPEND;   	writel(tmp, i2c->regs + S3C2410_IICCON);    out: -@@ -450,19 +429,19 @@ +@@ -450,19 +429,19 @@ static irqreturn_t s3c24xx_i2c_irq(int i   	status = readl(i2c->regs + S3C2410_IICSTAT);   	if (status & S3C2410_IICSTAT_ARBITR) { @@ -79136,7 +79136,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	/* pretty much this leaves us with the fact that we've   	 * transmitted or received whatever byte we last sent */ -@@ -485,16 +464,13 @@ +@@ -485,16 +464,13 @@ static int s3c24xx_i2c_set_master(struct   	while (timeout-- > 0) {   		iicstat = readl(i2c->regs + S3C2410_IICSTAT); @@ -79154,7 +79154,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	return -ETIMEDOUT;   } -@@ -503,7 +479,8 @@ +@@ -503,7 +479,8 @@ static int s3c24xx_i2c_set_master(struct    * this starts an i2c transfer   */ @@ -79164,7 +79164,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   {   	unsigned long timeout;   	int ret; -@@ -511,6 +488,15 @@ +@@ -511,6 +488,15 @@ static int s3c24xx_i2c_doxfer(struct s3c   	if (i2c->suspended)   		return -EIO; @@ -79180,7 +79180,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	ret = s3c24xx_i2c_set_master(i2c);   	if (ret != 0) {   		dev_err(i2c->dev, "cannot get bus (error %d)\n", ret); -@@ -529,12 +515,12 @@ +@@ -529,12 +515,12 @@ static int s3c24xx_i2c_doxfer(struct s3c   	s3c24xx_i2c_enable_irq(i2c);   	s3c24xx_i2c_message_start(i2c, msgs);   	spin_unlock_irq(&i2c->lock); @@ -79195,7 +79195,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	 * noisy when doing an i2cdetect */   	if (timeout == 0) -@@ -591,19 +577,6 @@ +@@ -591,19 +577,6 @@ static const struct i2c_algorithm s3c24x   	.functionality		= s3c24xx_i2c_func,   }; @@ -79215,7 +79215,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   /* s3c24xx_i2c_calcdivisor    *    * return the divisor settings for a given frequency -@@ -643,7 +616,7 @@ +@@ -643,7 +616,7 @@ static inline int freq_acceptable(unsign   {   	int diff = freq - wanted; @@ -79224,7 +79224,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   }   /* s3c24xx_i2c_clockrate -@@ -655,7 +628,7 @@ +@@ -655,7 +628,7 @@ static inline int freq_acceptable(unsign   static int s3c24xx_i2c_clockrate(struct s3c24xx_i2c *i2c, unsigned int *got)   { @@ -79233,7 +79233,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	unsigned long clkin = clk_get_rate(i2c->clk);   	unsigned int divs, div1;   	u32 iiccon; -@@ -663,10 +636,8 @@ +@@ -663,10 +636,8 @@ static int s3c24xx_i2c_clockrate(struct    	int start, end;   	i2c->clkrate = clkin; @@ -79245,7 +79245,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	dev_dbg(i2c->dev, "pdata %p, freq %lu %lu..%lu\n",   		 pdata, pdata->bus_freq, pdata->min_freq, pdata->max_freq); -@@ -774,7 +745,7 @@ +@@ -774,7 +745,7 @@ static inline void s3c24xx_i2c_deregiste   /* s3c24xx_i2c_init    * @@ -79254,7 +79254,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   */   static int s3c24xx_i2c_init(struct s3c24xx_i2c *i2c) -@@ -785,15 +756,15 @@ +@@ -785,15 +756,15 @@ static int s3c24xx_i2c_init(struct s3c24   	/* get the plafrom data */ @@ -79274,7 +79274,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	writeb(pdata->slave_addr, i2c->regs + S3C2410_IICADD);   	dev_info(i2c->dev, "slave address 0x%02x\n", pdata->slave_addr); -@@ -831,12 +802,32 @@ +@@ -831,12 +802,32 @@ static int s3c24xx_i2c_init(struct s3c24   static int s3c24xx_i2c_probe(struct platform_device *pdev)   { @@ -79309,7 +79309,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	/* find the clock and enable it */ -@@ -878,7 +869,8 @@ +@@ -878,7 +869,8 @@ static int s3c24xx_i2c_probe(struct plat   		goto err_ioarea;   	} @@ -79319,7 +79319,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	/* setup info block for the i2c core */ -@@ -892,29 +884,23 @@ +@@ -892,29 +884,23 @@ static int s3c24xx_i2c_probe(struct plat   		goto err_iomap;   	/* find the IRQ for this unit (note, this relies on the init call to @@ -79355,7 +79355,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	ret = s3c24xx_i2c_register_cpufreq(i2c);   	if (ret < 0) {   		dev_err(&pdev->dev, "failed to register cpufreq notifier\n"); -@@ -944,7 +930,7 @@ +@@ -944,7 +930,7 @@ static int s3c24xx_i2c_probe(struct plat   	s3c24xx_i2c_deregister_cpufreq(i2c);    err_irq: @@ -79364,7 +79364,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009    err_iomap:   	iounmap(i2c->regs); -@@ -958,6 +944,7 @@ +@@ -958,6 +944,7 @@ static int s3c24xx_i2c_probe(struct plat   	clk_put(i2c->clk);    err_noclk: @@ -79372,7 +79372,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	return ret;   } -@@ -973,7 +960,7 @@ +@@ -973,7 +960,7 @@ static int s3c24xx_i2c_remove(struct pla   	s3c24xx_i2c_deregister_cpufreq(i2c);   	i2c_del_adapter(&i2c->adap); @@ -79381,7 +79381,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	clk_disable(i2c->clk);   	clk_put(i2c->clk); -@@ -982,6 +969,7 @@ +@@ -982,6 +969,7 @@ static int s3c24xx_i2c_remove(struct pla   	release_resource(i2c->ioarea);   	kfree(i2c->ioarea); @@ -79391,7 +79391,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   }  --- a/drivers/i2c/busses/Kconfig  +++ b/drivers/i2c/busses/Kconfig -@@ -455,11 +455,12 @@ +@@ -455,11 +455,12 @@ config I2C_PXA_SLAVE   	  I2C bus.   config I2C_S3C2410 @@ -79409,7 +79409,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	tristate "Renesas SH7760 I2C Controller"  --- a/drivers/i2c/chips/Kconfig  +++ b/drivers/i2c/chips/Kconfig -@@ -53,6 +53,26 @@ +@@ -53,6 +53,26 @@ config SENSORS_EEPROM   	  This driver can also be built as a module.  If so, the module   	  will be called eeprom. @@ -79436,7 +79436,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   config SENSORS_PCF8574   	tristate "Philips PCF8574 and PCF8574A (DEPRECATED)"   	depends on EXPERIMENTAL && GPIO_PCF857X = "n" -@@ -185,4 +205,23 @@ +@@ -185,4 +205,23 @@ config MCU_MPC8349EMITX   	  also register MCU GPIOs with the generic GPIO API, so you'll able   	  to use MCU pins as GPIOs. @@ -79462,7 +79462,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   endmenu  --- a/drivers/i2c/chips/Makefile  +++ b/drivers/i2c/chips/Makefile -@@ -15,6 +15,8 @@ +@@ -15,6 +15,8 @@ obj-$(CONFIG_AT24)		+= at24.o   obj-$(CONFIG_SENSORS_EEPROM)	+= eeprom.o   obj-$(CONFIG_SENSORS_MAX6875)	+= max6875.o   obj-$(CONFIG_SENSORS_PCA9539)	+= pca9539.o @@ -79471,7 +79471,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   obj-$(CONFIG_SENSORS_PCF8574)	+= pcf8574.o   obj-$(CONFIG_PCF8575)		+= pcf8575.o   obj-$(CONFIG_SENSORS_PCF8591)	+= pcf8591.o -@@ -23,6 +25,8 @@ +@@ -23,6 +25,8 @@ obj-$(CONFIG_TPS65010)		+= tps65010.o   obj-$(CONFIG_MENELAUS)		+= menelaus.o   obj-$(CONFIG_SENSORS_TSL2550)	+= tsl2550.o   obj-$(CONFIG_MCU_MPC8349EMITX)	+= mcu_mpc8349emitx.o @@ -84455,7 +84455,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   /* ------------------------------------------------------------------------- */   /*   Copyright (C) 1995-99 Simon G. Vogl -@@ -158,10 +157,16 @@ +@@ -158,10 +157,16 @@ static int i2c_device_suspend(struct dev   	if (!dev->driver)   		return 0; @@ -84472,7 +84472,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   }   static int i2c_device_resume(struct device * dev) -@@ -170,10 +175,16 @@ +@@ -170,10 +175,16 @@ static int i2c_device_resume(struct devi   	if (!dev->driver)   		return 0; @@ -84489,7 +84489,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   }   static void i2c_client_release(struct device *dev) -@@ -1129,11 +1140,11 @@ +@@ -1129,11 +1140,11 @@ static int i2c_probe_address(struct i2c_   	int err;   	/* Make sure the address is valid */ @@ -84516,7 +84516,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	struct gpio_keys_button *button;  --- a/drivers/input/keyboard/Kconfig  +++ b/drivers/input/keyboard/Kconfig -@@ -323,4 +323,21 @@ +@@ -323,4 +323,21 @@ config KEYBOARD_SH_KEYSC   	  To compile this driver as a module, choose M here: the   	  module will be called sh_keysc. @@ -84540,7 +84540,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   endif  --- a/drivers/input/keyboard/Makefile  +++ b/drivers/input/keyboard/Makefile -@@ -14,6 +14,8 @@ +@@ -14,6 +14,8 @@ obj-$(CONFIG_KEYBOARD_LOCOMO)		+= locomo   obj-$(CONFIG_KEYBOARD_NEWTON)		+= newtonkbd.o   obj-$(CONFIG_KEYBOARD_STOWAWAY)		+= stowaway.o   obj-$(CONFIG_KEYBOARD_CORGI)		+= corgikbd.o @@ -85253,7 +85253,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009  +MODULE_LICENSE("GPL");  --- a/drivers/input/misc/Kconfig  +++ b/drivers/input/misc/Kconfig -@@ -236,4 +236,25 @@ +@@ -236,4 +236,25 @@ config INPUT_GPIO_BUTTONS   	  To compile this driver as a module, choose M here: the   	  module will be called gpio-buttons. @@ -86158,7 +86158,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009  +module_exit(lis302dl_exit);  --- a/drivers/input/misc/Makefile  +++ b/drivers/input/misc/Makefile -@@ -22,3 +22,6 @@ +@@ -22,3 +22,6 @@ obj-$(CONFIG_INPUT_UINPUT)		+= uinput.o   obj-$(CONFIG_INPUT_APANEL)		+= apanel.o   obj-$(CONFIG_INPUT_SGI_BTNS)		+= sgi_btns.o   obj-$(CONFIG_INPUT_GPIO_BUTTONS)	+= gpio_buttons.o @@ -86419,7 +86419,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009  +MODULE_ALIAS("platform:pcf50633-input");  --- a/drivers/input/mousedev.c  +++ b/drivers/input/mousedev.c -@@ -1016,6 +1016,7 @@ +@@ -1016,6 +1016,7 @@ static const struct input_device_id mous   		.evbit = { BIT_MASK(EV_KEY) | BIT_MASK(EV_REL) },   		.relbit = { BIT_MASK(REL_WHEEL) },   	},	/* A separate scrollwheel */ @@ -86427,7 +86427,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	{   		.flags = INPUT_DEVICE_ID_MATCH_EVBIT |   				INPUT_DEVICE_ID_MATCH_KEYBIT | -@@ -1025,6 +1026,7 @@ +@@ -1025,6 +1026,7 @@ static const struct input_device_id mous   		.absbit = { BIT_MASK(ABS_X) | BIT_MASK(ABS_Y) },   	},	/* A tablet like device, at least touch detection,   		   two absolute axes */ @@ -86437,7 +86437,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   				INPUT_DEVICE_ID_MATCH_KEYBIT |  --- a/drivers/input/touchscreen/Kconfig  +++ b/drivers/input/touchscreen/Kconfig -@@ -11,6 +11,50 @@ +@@ -11,6 +11,50 @@ menuconfig INPUT_TOUCHSCREEN   if INPUT_TOUCHSCREEN @@ -86488,7 +86488,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   config TOUCHSCREEN_ADS7846   	tristate "ADS7846/TSC2046 and ADS7843 based touchscreens"   	depends on SPI_MASTER -@@ -71,6 +115,25 @@ +@@ -71,6 +115,25 @@ config TOUCHSCREEN_FUJITSU   	  To compile this driver as a module, choose M here: the   	  module will be called fujitsu-ts. @@ -86514,7 +86514,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   config TOUCHSCREEN_GUNZE   	tristate "Gunze AHL-51S touchscreen"   	select SERIO -@@ -376,4 +439,15 @@ +@@ -376,4 +439,15 @@ config TOUCHSCREEN_TOUCHIT213   	  To compile this driver as a module, choose M here: the   	  module will be called touchit213. @@ -86532,7 +86532,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009  +  --- a/drivers/input/touchscreen/Makefile  +++ b/drivers/input/touchscreen/Makefile -@@ -31,3 +31,10 @@ +@@ -31,3 +31,10 @@ wm97xx-ts-$(CONFIG_TOUCHSCREEN_WM9705)	+   wm97xx-ts-$(CONFIG_TOUCHSCREEN_WM9712)	+= wm9712.o   wm97xx-ts-$(CONFIG_TOUCHSCREEN_WM9713)	+= wm9713.o   obj-$(CONFIG_TOUCHSCREEN_WM97XX_MAINSTONE)	+= mainstone-wm97xx.o @@ -88029,7 +88029,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009  +};  --- a/drivers/Kconfig  +++ b/drivers/Kconfig -@@ -107,4 +107,6 @@ +@@ -107,4 +107,6 @@ source "drivers/uio/Kconfig"   source "drivers/xen/Kconfig"   source "drivers/staging/Kconfig" @@ -88038,7 +88038,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   endmenu  --- a/drivers/leds/Kconfig  +++ b/drivers/leds/Kconfig -@@ -33,7 +33,7 @@ +@@ -33,7 +33,7 @@ config LEDS_LOCOMO   config LEDS_S3C24XX   	tristate "LED Support for Samsung S3C24XX GPIO LEDs" @@ -88047,7 +88047,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	help   	  This option enables support for LEDs connected to GPIO lines   	  on Samsung S3C24XX series CPUs, such as the S3C2410 and S3C2440. -@@ -171,6 +171,18 @@ +@@ -171,6 +171,18 @@ config LEDS_DA903X   	  This option enables support for on-chip LED drivers found   	  on Dialog Semiconductor DA9030/DA9034 PMICs. @@ -88068,7 +88068,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   config LEDS_TRIGGERS  --- a/drivers/leds/led-class.c  +++ b/drivers/leds/led-class.c -@@ -56,8 +56,10 @@ +@@ -56,8 +56,10 @@ static ssize_t led_brightness_store(stru   	if (count == size) {   		ret = count; @@ -88475,7 +88475,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009  +MODULE_LICENSE("GPL");  --- a/drivers/leds/Makefile  +++ b/drivers/leds/Makefile -@@ -24,6 +24,8 @@ +@@ -24,6 +24,8 @@ obj-$(CONFIG_LEDS_FSG)			+= leds-fsg.o   obj-$(CONFIG_LEDS_PCA955X)		+= leds-pca955x.o   obj-$(CONFIG_LEDS_DA903X)		+= leds-da903x.o   obj-$(CONFIG_LEDS_HP_DISK)		+= leds-hp-disk.o @@ -88486,7 +88486,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   obj-$(CONFIG_LEDS_TRIGGER_TIMER)	+= ledtrig-timer.o  --- a/drivers/Makefile  +++ b/drivers/Makefile -@@ -86,6 +86,7 @@ +@@ -86,6 +86,7 @@ obj-$(CONFIG_CPU_IDLE)		+= cpuidle/   obj-y				+= idle/   obj-$(CONFIG_MMC)		+= mmc/   obj-$(CONFIG_MEMSTICK)		+= memstick/ @@ -88494,7 +88494,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   obj-$(CONFIG_NEW_LEDS)		+= leds/   obj-$(CONFIG_INFINIBAND)	+= infiniband/   obj-$(CONFIG_SGI_SN)		+= sn/ -@@ -98,6 +99,7 @@ +@@ -98,6 +99,7 @@ obj-$(CONFIG_DCA)		+= dca/   obj-$(CONFIG_HID)		+= hid/   obj-$(CONFIG_PPC_PS3)		+= ps3/   obj-$(CONFIG_OF)		+= of/ @@ -93571,7 +93571,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009  +  --- a/drivers/mfd/Kconfig  +++ b/drivers/mfd/Kconfig -@@ -153,6 +153,55 @@ +@@ -153,6 +153,55 @@ config MFD_WM8350_I2C   	  I2C as the control interface.  Additional options must be   	  selected to enable support for the functionality of the chip. @@ -93637,7 +93637,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   obj-$(CONFIG_HTC_EGPIO)		+= htc-egpio.o   obj-$(CONFIG_HTC_PASIC3)	+= htc-pasic3.o -@@ -31,4 +32,13 @@ +@@ -31,4 +32,13 @@ obj-$(CONFIG_MCP_UCB1200)	+= ucb1x00-ass   endif   obj-$(CONFIG_UCB1400_CORE)	+= ucb1400_core.o @@ -95605,7 +95605,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009  +  --- a/drivers/misc/Kconfig  +++ b/drivers/misc/Kconfig -@@ -401,6 +401,11 @@ +@@ -401,6 +401,11 @@ config THINKPAD_ACPI_HOTKEY_POLL   	  If you are not sure, say Y here.  The driver enables polling only if   	  it is strictly necessary to do so. @@ -95617,7 +95617,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   config ATMEL_SSC   	tristate "Device driver for Atmel SSC peripheral"   	depends on AVR32 || ARCH_AT91 -@@ -500,4 +505,9 @@ +@@ -500,4 +505,9 @@ config SGI_GRU_DEBUG   source "drivers/misc/c2port/Kconfig" @@ -95751,7 +95751,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009  +  --- a/drivers/misc/Makefile  +++ b/drivers/misc/Makefile -@@ -33,3 +33,8 @@ +@@ -33,3 +33,8 @@ obj-$(CONFIG_SGI_XP)		+= sgi-xp/   obj-$(CONFIG_SGI_GRU)		+= sgi-gru/   obj-$(CONFIG_HP_ILO)		+= hpilo.o   obj-$(CONFIG_C2PORT)		+= c2port/ @@ -96429,7 +96429,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009  +MODULE_LICENSE("GPL");  --- a/drivers/mmc/core/core.c  +++ b/drivers/mmc/core/core.c -@@ -57,10 +57,11 @@ +@@ -57,10 +57,11 @@ static int mmc_schedule_delayed_work(str   /*    * Internal function. Flush all scheduled work from the MMC work queue.    */ @@ -96442,7 +96442,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   /**    *	mmc_request_done - finish processing an MMC request -@@ -495,7 +496,13 @@ +@@ -495,7 +496,13 @@ void mmc_set_timing(struct mmc_host *hos    */   static void mmc_power_up(struct mmc_host *host)   { @@ -96459,7 +96459,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	if (mmc_host_is_spi(host)) {  --- a/drivers/mmc/host/Kconfig  +++ b/drivers/mmc/host/Kconfig -@@ -48,6 +48,18 @@ +@@ -48,6 +48,18 @@ config MMC_SDHCI_PCI   	  If unsure, say N. @@ -96480,7 +96480,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	depends on MMC_SDHCI_PCI  --- a/drivers/mmc/host/Makefile  +++ b/drivers/mmc/host/Makefile -@@ -11,6 +11,7 @@ +@@ -11,6 +11,7 @@ obj-$(CONFIG_MMC_PXA)		+= pxamci.o   obj-$(CONFIG_MMC_IMX)		+= imxmmc.o   obj-$(CONFIG_MMC_SDHCI)		+= sdhci.o   obj-$(CONFIG_MMC_SDHCI_PCI)	+= sdhci-pci.o @@ -96515,7 +96515,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   #include "s3cmci.h" -@@ -47,6 +56,9 @@ +@@ -47,6 +56,9 @@ static const int dbgmap_err   = dbg_fail   static const int dbgmap_info  = dbg_info | dbg_conf;   static const int dbgmap_debug = dbg_err | dbg_debug; @@ -96525,7 +96525,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   #define dbg(host, channels, args...)		  \   	do {					  \   	if (dbgmap_err & channels) 		  \ -@@ -280,8 +292,11 @@ +@@ -280,8 +292,11 @@ static void do_pio_read(struct s3cmci_ho   		 * an even multiple of 4. */   		if (fifo >= host->pio_bytes)   			fifo = host->pio_bytes; @@ -96538,7 +96538,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   		host->pio_bytes -= fifo;   		host->pio_count += fifo; -@@ -353,8 +368,11 @@ +@@ -353,8 +368,11 @@ static void do_pio_write(struct s3cmci_h   		 * words, so round down to an even multiple of 4. */   		if (fifo >= host->pio_bytes)   			fifo = host->pio_bytes; @@ -96551,7 +96551,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   		host->pio_bytes -= fifo;   		host->pio_count += fifo; -@@ -373,7 +391,6 @@ +@@ -373,7 +391,6 @@ static void pio_tasklet(unsigned long da   {   	struct s3cmci_host *host = (struct s3cmci_host *) data; @@ -96559,7 +96559,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	disable_irq(host->irq);   	if (host->pio_active == XFER_WRITE) -@@ -614,7 +631,6 @@ +@@ -614,7 +631,6 @@ irq_out:   	spin_unlock_irqrestore(&host->complete_lock, iflags);   	return IRQ_HANDLED; @@ -96567,7 +96567,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   }   /* -@@ -1026,6 +1042,7 @@ +@@ -1026,6 +1042,7 @@ static void s3cmci_send_request(struct m   			dbg(host, dbg_err, "data prepare error %d\n", res);   			cmd->error = res;   			cmd->data->error = res; @@ -96575,7 +96575,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   			mmc_request_done(mmc, mrq);   			return; -@@ -1263,10 +1280,8 @@ +@@ -1263,10 +1280,8 @@ static int __devinit s3cmci_probe(struct   	host->is2440	= is2440;   	host->pdata = pdev->dev.platform_data; @@ -96587,7 +96587,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	spin_lock_init(&host->complete_lock);   	tasklet_init(&host->pio_tasklet, pio_tasklet, (unsigned long) host); -@@ -1379,6 +1394,18 @@ +@@ -1379,6 +1394,18 @@ static int __devinit s3cmci_probe(struct   	mmc->f_min 	= host->clk_rate / (host->clk_div * 256);   	mmc->f_max 	= host->clk_rate / host->clk_div; @@ -96606,7 +96606,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	if (host->pdata->ocr_avail)   		mmc->ocr_avail = host->pdata->ocr_avail; -@@ -1491,18 +1518,60 @@ +@@ -1491,18 +1518,60 @@ static int __devinit s3cmci_2440_probe(s   #ifdef CONFIG_PM @@ -96669,7 +96669,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   }   #else /* CONFIG_PM */ -@@ -1560,9 +1629,13 @@ +@@ -1560,9 +1629,13 @@ static void __exit s3cmci_exit(void)   module_init(s3cmci_init);   module_exit(s3cmci_exit); @@ -96695,7 +96695,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   /* FIXME: DMA Resource management ?! */   #define S3CMCI_DMA 0 -@@ -68,6 +71,13 @@ +@@ -68,6 +71,13 @@ struct s3cmci_host {   	unsigned int		ccnt, dcnt;   	struct tasklet_struct	pio_tasklet; @@ -96711,7 +96711,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   #endif  --- a/drivers/mmc/host/sdhci.c  +++ b/drivers/mmc/host/sdhci.c -@@ -73,6 +73,11 @@ +@@ -73,6 +73,11 @@ static void sdhci_dumpregs(struct sdhci_   		readl(host->ioaddr + SDHCI_CAPABILITIES),   		readl(host->ioaddr + SDHCI_MAX_CURRENT)); @@ -96723,7 +96723,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	printk(KERN_DEBUG DRIVER_NAME ": ===========================================\n");   } -@@ -731,6 +736,23 @@ +@@ -731,6 +736,23 @@ static void sdhci_set_transfer_mode(stru   	writew(mode, host->ioaddr + SDHCI_TRANSFER_MODE);   } @@ -96747,7 +96747,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   static void sdhci_finish_data(struct sdhci_host *host)   {   	struct mmc_data *data; -@@ -744,6 +766,8 @@ +@@ -744,6 +766,8 @@ static void sdhci_finish_data(struct sdh   		if (host->flags & SDHCI_USE_ADMA)   			sdhci_adma_table_post(host, data);   		else { @@ -96756,7 +96756,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   			dma_unmap_sg(mmc_dev(host->mmc), data->sg,   				data->sg_len, (data->flags & MMC_DATA_READ) ?   					DMA_FROM_DEVICE : DMA_TO_DEVICE); -@@ -883,13 +907,18 @@ +@@ -883,13 +907,18 @@ static void sdhci_finish_command(struct    static void sdhci_set_clock(struct sdhci_host *host, unsigned int clock)   { @@ -96778,7 +96778,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	writew(0, host->ioaddr + SDHCI_CLOCK_CONTROL);   	if (clock == 0) -@@ -926,6 +955,8 @@ +@@ -926,6 +955,8 @@ out:   	host->clock = clock;   } @@ -96787,7 +96787,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   static void sdhci_set_power(struct sdhci_host *host, unsigned short power)   {   	u8 pwr; -@@ -999,12 +1030,13 @@ +@@ -999,12 +1030,13 @@ static void sdhci_request(struct mmc_hos   #endif   	host->mrq = mrq; @@ -96802,7 +96802,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   		sdhci_send_command(host, mrq->cmd);   	mmiowb(); -@@ -1033,6 +1065,9 @@ +@@ -1033,6 +1065,9 @@ static void sdhci_set_ios(struct mmc_hos   		sdhci_init(host);   	} @@ -96812,7 +96812,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	sdhci_set_clock(host, ios->clock);   	if (ios->power_mode == MMC_POWER_OFF) -@@ -1136,7 +1171,7 @@ +@@ -1136,7 +1171,7 @@ static void sdhci_tasklet_card(unsigned    	host = (struct sdhci_host*)param;   	spin_lock_irqsave(&host->lock, flags); @@ -96821,7 +96821,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	if (!(readl(host->ioaddr + SDHCI_PRESENT_STATE) & SDHCI_CARD_PRESENT)) {   		if (host->mrq) {   			printk(KERN_ERR "%s: Card removed during transfer!\n", -@@ -1151,7 +1186,7 @@ +@@ -1151,7 +1186,7 @@ static void sdhci_tasklet_card(unsigned    			tasklet_schedule(&host->finish_tasklet);   		}   	} @@ -96830,7 +96830,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	spin_unlock_irqrestore(&host->lock, flags);   	mmc_detect_change(host->mmc, msecs_to_jiffies(200)); -@@ -1607,17 +1642,23 @@ +@@ -1607,17 +1642,23 @@ int sdhci_add_host(struct sdhci_host *ho   		mmc_dev(host->mmc)->dma_mask = &host->dma_mask;   	} @@ -96869,7 +96869,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   #define SDHCI_HOST_CONTROL 	0x28   #define  SDHCI_CTRL_LED		0x01 -@@ -270,6 +271,14 @@ +@@ -270,6 +271,14 @@ struct sdhci_host {   struct sdhci_ops {   	int		(*enable_dma)(struct sdhci_host *host); @@ -96884,7 +96884,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   }; -@@ -277,6 +286,8 @@ +@@ -277,6 +286,8 @@ extern struct sdhci_host *sdhci_alloc_ho   	size_t priv_size);   extern void sdhci_free_host(struct sdhci_host *host); @@ -96895,7 +96895,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	return (void *)host->private;  --- a/drivers/mmc/host/sdhci-pci.c  +++ b/drivers/mmc/host/sdhci-pci.c -@@ -392,6 +392,7 @@ +@@ -392,6 +392,7 @@ static int sdhci_pci_enable_dma(struct s   static struct sdhci_ops sdhci_pci_ops = {   	.enable_dma	= sdhci_pci_enable_dma, @@ -97338,7 +97338,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   #ifdef CONFIG_MTD_NAND_S3C2410_HWECC   static int hardware_ecc = 1; -@@ -231,8 +231,6 @@ +@@ -231,8 +231,6 @@ static int s3c2410_nand_setrate(struct s   		BUG();   	} @@ -97347,7 +97347,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	local_irq_save(flags);   	cfg = readl(info->regs + S3C2410_NFCONF); -@@ -240,6 +238,8 @@ +@@ -240,6 +238,8 @@ static int s3c2410_nand_setrate(struct s   	cfg |= set;   	writel(cfg, info->regs + S3C2410_NFCONF); @@ -97356,7 +97356,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	local_irq_restore(flags);   	return 0; -@@ -438,7 +438,7 @@ +@@ -438,7 +438,7 @@ static int s3c2410_nand_correct_data(str   	if ((diff0 & ~(1<<fls(diff0))) == 0)   		return 1; @@ -97365,7 +97365,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   }   /* ECC functions -@@ -530,7 +530,12 @@ +@@ -530,7 +530,12 @@ static void s3c2410_nand_read_buf(struct   static void s3c2440_nand_read_buf(struct mtd_info *mtd, u_char *buf, int len)   {   	struct s3c2410_nand_info *info = s3c2410_nand_mtd_toinfo(mtd); @@ -97378,7 +97378,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   }   static void s3c2410_nand_write_buf(struct mtd_info *mtd, const u_char *buf, int len) -@@ -645,17 +650,31 @@ +@@ -645,17 +650,31 @@ static int s3c2410_nand_remove(struct pl   }   #ifdef CONFIG_MTD_PARTITIONS @@ -97412,7 +97412,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	return add_mtd_device(&mtd->mtd);   }   #else -@@ -684,9 +703,13 @@ +@@ -684,9 +703,13 @@ static void s3c2410_nand_init_chip(struc   	chip->select_chip  = s3c2410_nand_select_chip;   	chip->chip_delay   = 50;   	chip->priv	   = nmtd; @@ -97427,7 +97427,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	switch (info->cpu_type) {   	case TYPE_S3C2410:   		chip->IO_ADDR_W = regs + S3C2410_NFDATA; -@@ -726,7 +749,7 @@ +@@ -726,7 +749,7 @@ static void s3c2410_nand_init_chip(struc   	nmtd->mtd.owner    = THIS_MODULE;   	nmtd->set	   = set; @@ -97438,7 +97438,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   		chip->ecc.mode	    = NAND_ECC_HW;  --- a/drivers/net/wireless/libertas/if_sdio.c  +++ b/drivers/net/wireless/libertas/if_sdio.c -@@ -48,6 +48,7 @@ +@@ -48,6 +48,7 @@ module_param_named(fw_name, lbs_fw_name,   static const struct sdio_device_id if_sdio_ids[] = {   	{ SDIO_DEVICE(SDIO_VENDOR_ID_MARVELL, SDIO_DEVICE_ID_MARVELL_LIBERTAS) }, @@ -97446,7 +97446,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	{ /* end: all zeroes */						},   }; -@@ -72,7 +73,12 @@ +@@ -72,7 +73,12 @@ static struct if_sdio_model if_sdio_mode   		.helper = "sd8686_helper.bin",   		.firmware = "sd8686.bin",   	}, @@ -97473,7 +97473,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	  peripherals to be configured by software, e.g. assign IRQ's or other  --- a/drivers/pnp/resource.c  +++ b/drivers/pnp/resource.c -@@ -436,6 +436,7 @@ +@@ -436,6 +436,7 @@ int pnp_check_dma(struct pnp_dev *dev, s   		}   	} @@ -97481,7 +97481,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	/* check if the resource is already in use, skip if the   	 * device is active because it itself may be in use */   	if (!dev->active) { -@@ -443,6 +444,7 @@ +@@ -443,6 +444,7 @@ int pnp_check_dma(struct pnp_dev *dev, s   			return 0;   		free_dma(*dma);   	} @@ -98252,7 +98252,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009  +MODULE_LICENSE("GPL");  --- a/drivers/power/Kconfig  +++ b/drivers/power/Kconfig -@@ -68,4 +68,24 @@ +@@ -68,4 +68,24 @@ config BATTERY_BQ27x00   	help   	  Say Y here to enable support for batteries with BQ27200(I2C) chip. @@ -98279,7 +98279,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009  +  --- a/drivers/power/Makefile  +++ b/drivers/power/Makefile -@@ -23,3 +23,9 @@ +@@ -23,3 +23,9 @@ obj-$(CONFIG_BATTERY_OLPC)	+= olpc_batte   obj-$(CONFIG_BATTERY_TOSA)	+= tosa_battery.o   obj-$(CONFIG_BATTERY_WM97XX)	+= wm97xx_battery.o   obj-$(CONFIG_BATTERY_BQ27x00)	+= bq27x00_battery.o @@ -98709,7 +98709,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009  +MODULE_ALIAS("platform:pcf50633-mbc");  --- a/drivers/regulator/core.c  +++ b/drivers/regulator/core.c -@@ -1113,6 +1113,7 @@ +@@ -1113,6 +1113,7 @@ int regulator_disable(struct regulator *   	if (!regulator->enabled) {   		printk(KERN_ERR "%s: not in use by this consumer\n",   			__func__); @@ -98719,7 +98719,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009  --- a/drivers/regulator/Kconfig  +++ b/drivers/regulator/Kconfig -@@ -73,4 +73,10 @@ +@@ -73,4 +73,10 @@ config REGULATOR_DA903X   	  Say y here to support the BUCKs and LDOs regulators found on   	  Dialog Semiconductor DA9030/DA9034 PMIC. @@ -98732,7 +98732,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   endif  --- a/drivers/regulator/Makefile  +++ b/drivers/regulator/Makefile -@@ -11,5 +11,6 @@ +@@ -11,5 +11,6 @@ obj-$(CONFIG_REGULATOR_BQ24022) += bq240   obj-$(CONFIG_REGULATOR_WM8350) += wm8350-regulator.o   obj-$(CONFIG_REGULATOR_WM8400) += wm8400-regulator.o   obj-$(CONFIG_REGULATOR_DA903X)	+= da903x.o @@ -99074,7 +99074,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009  +MODULE_ALIAS("platform:pcf50633-regulator");  --- a/drivers/rtc/Kconfig  +++ b/drivers/rtc/Kconfig -@@ -219,6 +219,18 @@ +@@ -219,6 +219,18 @@ config RTC_DRV_PCF8583   	  This driver can also be built as a module. If so, the module   	  will be called rtc-pcf8583. @@ -99095,7 +99095,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	help  --- a/drivers/rtc/Makefile  +++ b/drivers/rtc/Makefile -@@ -50,6 +50,8 @@ +@@ -50,6 +50,8 @@ obj-$(CONFIG_RTC_DRV_MAX6902)	+= rtc-max   obj-$(CONFIG_RTC_DRV_OMAP)	+= rtc-omap.o   obj-$(CONFIG_RTC_DRV_PCF8563)	+= rtc-pcf8563.o   obj-$(CONFIG_RTC_DRV_PCF8583)	+= rtc-pcf8583.o @@ -99723,7 +99723,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009    * of these rtc blocks in */  --- a/drivers/serial/Kconfig  +++ b/drivers/serial/Kconfig -@@ -447,7 +447,7 @@ +@@ -447,7 +447,7 @@ config SERIAL_CLPS711X_CONSOLE   config SERIAL_SAMSUNG   	tristate "Samsung SoC serial support" @@ -99732,7 +99732,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	select SERIAL_CORE   	help   	  Support for the on-chip UARTs on the Samsung S3C24XX series CPUs, -@@ -455,6 +455,16 @@ +@@ -455,6 +455,16 @@ config SERIAL_SAMSUNG   	  provide all of these ports, depending on how the serial port   	  pins are configured. @@ -99749,7 +99749,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   config SERIAL_SAMSUNG_DEBUG   	bool "Samsung SoC serial debug"   	depends on SERIAL_SAMSUNG && DEBUG_LL -@@ -508,7 +518,20 @@ +@@ -508,7 +518,20 @@ config SERIAL_S3C2440   	help   	  Serial port support for the Samsung S3C2440 and S3C2442 SoC @@ -99773,7 +99773,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	bool "DECstation DZ serial driver"  --- a/drivers/serial/Makefile  +++ b/drivers/serial/Makefile -@@ -41,6 +41,8 @@ +@@ -41,6 +41,8 @@ obj-$(CONFIG_SERIAL_S3C2400) += s3c2400.   obj-$(CONFIG_SERIAL_S3C2410) += s3c2410.o   obj-$(CONFIG_SERIAL_S3C2412) += s3c2412.o   obj-$(CONFIG_SERIAL_S3C2440) += s3c2440.o @@ -100109,7 +100109,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   /* macros to change one thing to another */   #define tx_enabled(port) ((port)->unused[0]) -@@ -136,8 +128,10 @@ +@@ -136,8 +128,10 @@ static void s3c24xx_serial_rx_disable(st   static void s3c24xx_serial_stop_tx(struct uart_port *port)   { @@ -100121,7 +100121,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   		tx_enabled(port) = 0;   		if (port->flags & UPF_CONS_FLOW)   			s3c24xx_serial_rx_enable(port); -@@ -146,11 +140,13 @@ +@@ -146,11 +140,13 @@ static void s3c24xx_serial_stop_tx(struc   static void s3c24xx_serial_start_tx(struct uart_port *port)   { @@ -100136,7 +100136,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   		tx_enabled(port) = 1;   	}   } -@@ -158,9 +154,11 @@ +@@ -158,9 +154,11 @@ static void s3c24xx_serial_start_tx(stru   static void s3c24xx_serial_stop_rx(struct uart_port *port)   { @@ -100149,7 +100149,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   		rx_enabled(port) = 0;   	}   } -@@ -241,7 +239,7 @@ +@@ -241,7 +239,7 @@ s3c24xx_serial_rx_chars(int irq, void *d   		port->icount.rx++;   		if (unlikely(uerstat & S3C2410_UERSTAT_ANY)) { @@ -100158,7 +100158,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   			    ch, uerstat);   			/* check for break */ -@@ -384,13 +382,13 @@ +@@ -384,13 +382,13 @@ static void s3c24xx_serial_shutdown(stru   	struct s3c24xx_uart_port *ourport = to_ourport(port);   	if (ourport->tx_claimed) { @@ -100174,7 +100174,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   		ourport->rx_claimed = 0;   		rx_enabled(port) = 0;   	} -@@ -407,12 +405,11 @@ +@@ -407,12 +405,11 @@ static int s3c24xx_serial_startup(struct   	rx_enabled(port) = 1; @@ -100189,7 +100189,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   		return ret;   	} -@@ -422,12 +419,11 @@ +@@ -422,12 +419,11 @@ static int s3c24xx_serial_startup(struct   	tx_enabled(port) = 1; @@ -100204,7 +100204,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   		goto err;   	} -@@ -452,6 +448,8 @@ +@@ -452,6 +448,8 @@ static void s3c24xx_serial_pm(struct uar   {   	struct s3c24xx_uart_port *ourport = to_ourport(port); @@ -100213,7 +100213,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	switch (level) {   	case 3:   		if (!IS_ERR(ourport->baudclk) && ourport->baudclk != NULL) -@@ -514,6 +512,7 @@ +@@ -514,6 +512,7 @@ s3c24xx_serial_setsource(struct uart_por   struct baud_calc {   	struct s3c24xx_uart_clksrc	*clksrc;   	unsigned int			 calc; @@ -100221,7 +100221,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	unsigned int			 quot;   	struct clk			*src;   }; -@@ -523,6 +522,7 @@ +@@ -523,6 +522,7 @@ static int s3c24xx_serial_calcbaud(struc   				   struct s3c24xx_uart_clksrc *clksrc,   				   unsigned int baud)   { @@ -100229,7 +100229,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	unsigned long rate;   	calc->src = clk_get(port->dev, clksrc->name); -@@ -533,8 +533,24 @@ +@@ -533,8 +533,24 @@ static int s3c24xx_serial_calcbaud(struc   	rate /= clksrc->divisor;   	calc->clksrc = clksrc; @@ -100256,7 +100256,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	calc->quot--;   	return 1; -@@ -617,6 +633,30 @@ +@@ -617,6 +633,30 @@ static unsigned int s3c24xx_serial_getcl   	return best->quot;   } @@ -100287,7 +100287,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   static void s3c24xx_serial_set_termios(struct uart_port *port,   				       struct ktermios *termios,   				       struct ktermios *old) -@@ -629,6 +669,7 @@ +@@ -629,6 +669,7 @@ static void s3c24xx_serial_set_termios(s   	unsigned int baud, quot;   	unsigned int ulcon;   	unsigned int umcon; @@ -100295,7 +100295,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	/*   	 * We don't support modem control lines. -@@ -650,6 +691,7 @@ +@@ -650,6 +691,7 @@ static void s3c24xx_serial_set_termios(s   	/* check to see if we need  to change clock source */   	if (ourport->clksrc != clksrc || ourport->baudclk != clk) { @@ -100303,7 +100303,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   		s3c24xx_serial_setsource(port, clksrc);   		if (ourport->baudclk != NULL && !IS_ERR(ourport->baudclk)) { -@@ -661,6 +703,14 @@ +@@ -661,6 +703,14 @@ static void s3c24xx_serial_set_termios(s   		ourport->clksrc = clksrc;   		ourport->baudclk = clk; @@ -100318,7 +100318,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	}   	switch (termios->c_cflag & CSIZE) { -@@ -702,12 +752,16 @@ +@@ -702,12 +752,16 @@ static void s3c24xx_serial_set_termios(s   	spin_lock_irqsave(&port->lock, flags); @@ -100336,7 +100336,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	dbg("uart: ulcon = 0x%08x, ucon = 0x%08x, ufcon = 0x%08x\n",   	    rd_regl(port, S3C2410_ULCON),   	    rd_regl(port, S3C2410_UCON), -@@ -752,6 +806,8 @@ +@@ -752,6 +806,8 @@ static const char *s3c24xx_serial_type(s   		return "S3C2440";   	case PORT_S3C2412:   		return "S3C2412"; @@ -100345,7 +100345,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	default:   		return NULL;   	} -@@ -827,14 +883,14 @@ +@@ -827,14 +883,14 @@ static struct uart_ops s3c24xx_serial_op   static struct uart_driver s3c24xx_uart_drv = {   	.owner		= THIS_MODULE,   	.dev_name	= "s3c2410_serial", @@ -100362,7 +100362,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	[0] = {   		.port = {   			.lock		= __SPIN_LOCK_UNLOCKED(s3c24xx_serial_ports[0].port.lock), -@@ -859,7 +915,7 @@ +@@ -859,7 +915,7 @@ static struct s3c24xx_uart_port s3c24xx_   			.line		= 1,   		}   	}, @@ -100371,7 +100371,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	[2] = {   		.port = { -@@ -872,10 +928,88 @@ +@@ -872,10 +928,88 @@ static struct s3c24xx_uart_port s3c24xx_   			.flags		= UPF_BOOT_AUTOCONF,   			.line		= 2,   		} @@ -100460,7 +100460,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   /* s3c24xx_serial_resetport    *    * wrapper to call the specific reset for this port (reset the fifos -@@ -890,6 +1024,93 @@ +@@ -890,6 +1024,93 @@ static inline int s3c24xx_serial_resetpo   	return (info->reset_port)(port, cfg);   } @@ -100554,7 +100554,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   /* s3c24xx_serial_init_port    *    * initialise a single serial port from the platform device given -@@ -914,8 +1135,11 @@ +@@ -914,8 +1135,11 @@ static int s3c24xx_serial_init_port(stru   	if (port->mapbase != 0)   		return 0; @@ -100568,7 +100568,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	/* setup info for port */   	port->dev	= &platdev->dev; -@@ -943,18 +1167,26 @@ +@@ -943,18 +1167,26 @@ static int s3c24xx_serial_init_port(stru   	dbg("resource %p (%lx..%lx)\n", res, res->start, res->end); @@ -100600,7 +100600,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	/* reset the fifos (and setup the uart) */   	s3c24xx_serial_resetport(port, cfg); -@@ -987,6 +1219,7 @@ +@@ -987,6 +1219,7 @@ int s3c24xx_serial_probe(struct platform   	ourport = &s3c24xx_serial_ports[probe_index];   	probe_index++; @@ -100608,7 +100608,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	dbg("%s: initialising port %p...\n", __func__, ourport); -@@ -1002,6 +1235,10 @@ +@@ -1002,6 +1235,10 @@ int s3c24xx_serial_probe(struct platform   	if (ret < 0)   		printk(KERN_ERR "%s: failed to add clksrc attr.\n", __func__); @@ -100619,7 +100619,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	return 0;    probe_err: -@@ -1015,6 +1252,7 @@ +@@ -1015,6 +1252,7 @@ int s3c24xx_serial_remove(struct platfor   	struct uart_port *port = s3c24xx_dev_to_port(&dev->dev);   	if (port) { @@ -100627,7 +100627,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   		device_remove_file(&dev->dev, &dev_attr_clock_source);   		uart_remove_one_port(&s3c24xx_uart_drv, port);   	} -@@ -1038,6 +1276,16 @@ +@@ -1038,6 +1276,16 @@ static int s3c24xx_serial_suspend(struct   	return 0;   } @@ -100644,7 +100644,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   static int s3c24xx_serial_resume(struct platform_device *dev)   {   	struct uart_port *port = s3c24xx_dev_to_port(&dev->dev); -@@ -1049,6 +1297,9 @@ +@@ -1049,6 +1297,9 @@ static int s3c24xx_serial_resume(struct    		clk_disable(ourport->clk);   		uart_resume_port(&s3c24xx_uart_drv, port); @@ -100654,7 +100654,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	}   	return 0; -@@ -1059,6 +1310,12 @@ +@@ -1059,6 +1310,12 @@ int s3c24xx_serial_init(struct platform_   			struct s3c24xx_uart_info *info)   {   	dbg("s3c24xx_serial_init(%p,%p)\n", drv, info); @@ -100667,7 +100667,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   #ifdef CONFIG_PM   	drv->suspend = s3c24xx_serial_suspend; -@@ -1098,6 +1355,13 @@ +@@ -1098,6 +1355,13 @@ module_exit(s3c24xx_serial_modexit);   #ifdef CONFIG_SERIAL_SAMSUNG_CONSOLE   static struct uart_port *cons_uart; @@ -100681,7 +100681,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   static int   s3c24xx_serial_console_txrdy(struct uart_port *port, unsigned int ufcon) -@@ -1122,9 +1386,21 @@ +@@ -1122,9 +1386,21 @@ static void   s3c24xx_serial_console_putchar(struct uart_port *port, int ch)   {   	unsigned int ufcon = rd_regl(cons_uart, S3C2410_UFCON); @@ -100703,7 +100703,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   }   static void -@@ -1219,7 +1495,7 @@ +@@ -1219,7 +1495,7 @@ static int s3c24xx_serial_init_ports(str   	platdev_ptr = s3c24xx_uart_devs; @@ -100712,7 +100712,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   		s3c24xx_serial_init_port(ptr, info, *platdev_ptr);   	} -@@ -1240,7 +1516,7 @@ +@@ -1240,7 +1516,7 @@ s3c24xx_serial_console_setup(struct cons   	/* is this a valid port */ @@ -100732,7 +100732,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   struct s3c24xx_uart_info {   	char			*name;   	unsigned int		type; -@@ -21,6 +23,10 @@ +@@ -21,6 +23,10 @@ struct s3c24xx_uart_info {   	unsigned long		tx_fifoshift;   	unsigned long		tx_fifofull; @@ -100743,7 +100743,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	/* clock source control */   	int (*get_clksrc)(struct uart_port *, struct s3c24xx_uart_clksrc *clk); -@@ -33,12 +39,23 @@ +@@ -33,12 +39,23 @@ struct s3c24xx_uart_info {   struct s3c24xx_uart_port {   	unsigned char			rx_claimed;   	unsigned char			tx_claimed; @@ -100780,7 +100780,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   struct s3c24xx_spi {  --- a/drivers/spi/spi_s3c24xx_gpio.c  +++ b/drivers/spi/spi_s3c24xx_gpio.c -@@ -91,7 +91,7 @@ +@@ -91,7 +91,7 @@ static void s3c2410_spigpio_chipselect(s   	struct s3c2410_spigpio *sg = spidev_to_sg(dev);   	if (sg->info && sg->info->chip_select) @@ -100789,7 +100789,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   }   static int s3c2410_spigpio_probe(struct platform_device *dev) -@@ -100,6 +100,7 @@ +@@ -100,6 +100,7 @@ static int s3c2410_spigpio_probe(struct    	struct spi_master	*master;   	struct s3c2410_spigpio  *sp;   	int ret; @@ -100797,7 +100797,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	master = spi_alloc_master(&dev->dev, sizeof(struct s3c2410_spigpio));   	if (master == NULL) { -@@ -112,9 +113,11 @@ +@@ -112,9 +113,11 @@ static int s3c2410_spigpio_probe(struct    	platform_set_drvdata(dev, sp); @@ -100810,7 +100810,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	/* setup spi bitbang adaptor */   	sp->bitbang.master = spi_master_get(master);   	sp->bitbang.master->bus_num = info->bus_num; -@@ -143,6 +146,22 @@ +@@ -143,6 +146,22 @@ static int s3c2410_spigpio_probe(struct    	if (ret)   		goto err_no_bitbang; @@ -100835,7 +100835,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009    err_no_bitbang:  --- a/drivers/usb/gadget/composite.c  +++ b/drivers/usb/gadget/composite.c -@@ -1045,7 +1045,11 @@ +@@ -1045,7 +1045,11 @@ composite_resume(struct usb_gadget *gadg   /*-------------------------------------------------------------------------*/   static struct usb_gadget_driver composite_driver = { @@ -100849,7 +100849,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	.unbind		= __exit_p(composite_unbind),  --- a/drivers/usb/gadget/ether.c  +++ b/drivers/usb/gadget/ether.c -@@ -122,11 +122,16 @@ +@@ -122,11 +122,16 @@ static inline bool has_rndis(void)    * Instead:  allocate your own, using normal USB-IF procedures.    */ @@ -100866,7 +100866,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   /* For hardware that can't talk CDC, we use the same vendor ID that    * ARM Linux has used for ethernet-over-usb, both with sa1100 and -@@ -147,8 +152,8 @@ +@@ -147,8 +152,8 @@ static inline bool has_rndis(void)    * used with CDC Ethernet, Linux 2.4 hosts will need updates to choose    * the non-RNDIS configuration.    */ @@ -100890,7 +100890,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   #include "s3c2410_udc.h" -@@ -134,6 +134,8 @@ +@@ -134,6 +134,8 @@ static int dprintk(int level, const char   	return 0;   }   #endif @@ -100899,7 +100899,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   static int s3c2410_udc_debugfs_seq_show(struct seq_file *m, void *p)   {   	u32 addr_reg,pwr_reg,ep_int_reg,usb_int_reg; -@@ -197,6 +199,7 @@ +@@ -197,6 +199,7 @@ static const struct file_operations s3c2   	.release	= single_release,   	.owner		= THIS_MODULE,   }; @@ -100907,7 +100907,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   /* io macros */ -@@ -843,6 +846,7 @@ +@@ -843,6 +846,7 @@ static void s3c2410_udc_handle_ep(struct   	u32			ep_csr1;   	u32			idx; @@ -100915,7 +100915,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	if (likely (!list_empty(&ep->queue)))   		req = list_entry(ep->queue.next,   				struct s3c2410_request, queue); -@@ -882,6 +886,8 @@ +@@ -882,6 +886,8 @@ static void s3c2410_udc_handle_ep(struct   		if ((ep_csr1 & S3C2410_UDC_OCSR1_PKTRDY) && req) {   			s3c2410_udc_read_fifo(ep,req); @@ -100924,7 +100924,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   		}   	}   } -@@ -1890,6 +1896,7 @@ +@@ -1890,6 +1896,7 @@ static int s3c2410_udc_probe(struct plat   		udc->vbus = 1;   	} @@ -100932,7 +100932,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	if (s3c2410_udc_debugfs_root) {   		udc->regs_info = debugfs_create_file("registers", S_IRUGO,   				s3c2410_udc_debugfs_root, -@@ -1897,6 +1904,7 @@ +@@ -1897,6 +1904,7 @@ static int s3c2410_udc_probe(struct plat   		if (!udc->regs_info)   			dev_warn(dev, "debugfs file creation failed\n");   	} @@ -100940,7 +100940,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	dev_dbg(dev, "probe ok\n"); -@@ -2003,12 +2011,14 @@ +@@ -2003,12 +2011,14 @@ static int __init udc_init(void)   	dprintk(DEBUG_NORMAL, "%s: version %s\n", gadget_name, DRIVER_VERSION); @@ -100965,7 +100965,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   #define valid_port(idx) ((idx) == 1 || (idx) == 2) -@@ -308,6 +309,42 @@ +@@ -308,6 +309,42 @@ static void s3c2410_hcd_oc(struct s3c241   	local_irq_restore(flags);   } @@ -101008,7 +101008,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   /* may be called without controller electrically present */   /* may be called with controller, bus, and devices active */ -@@ -325,6 +362,7 @@ +@@ -325,6 +362,7 @@ static void s3c2410_hcd_oc(struct s3c241   static void   usb_hcd_s3c2410_remove (struct usb_hcd *hcd, struct platform_device *dev)   { @@ -101016,7 +101016,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	usb_remove_hcd(hcd);   	s3c2410_stop_hc(dev);   	iounmap(hcd->regs); -@@ -392,8 +430,15 @@ +@@ -392,8 +430,15 @@ static int usb_hcd_s3c2410_probe (const    	if (retval != 0)   		goto err_ioremap; @@ -101306,7 +101306,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009  +MODULE_LICENSE("GPL");  --- a/drivers/video/backlight/Kconfig  +++ b/drivers/video/backlight/Kconfig -@@ -152,6 +152,13 @@ +@@ -152,6 +152,13 @@ config BACKLIGHT_OMAP1   	  the PWL module of OMAP1 processors.  Say Y if your board   	  uses this hardware. @@ -101322,7 +101322,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	depends on BACKLIGHT_CLASS_DEVICE && SH_HP6XX  --- a/drivers/video/backlight/Makefile  +++ b/drivers/video/backlight/Makefile -@@ -12,6 +12,7 @@ +@@ -12,6 +12,7 @@ obj-$(CONFIG_LCD_TOSA)		   += tosa_lcd.o   obj-$(CONFIG_BACKLIGHT_CLASS_DEVICE) += backlight.o   obj-$(CONFIG_BACKLIGHT_ATMEL_PWM)    += atmel-pwm-bl.o   obj-$(CONFIG_BACKLIGHT_CORGI)	+= corgi_bl.o @@ -101332,7 +101332,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   obj-$(CONFIG_BACKLIGHT_OMAP1)	+= omap1_bl.o  --- a/drivers/video/console/fbcon.c  +++ b/drivers/video/console/fbcon.c -@@ -401,6 +401,9 @@ +@@ -401,6 +401,9 @@ static void fb_flashcursor(struct work_s   	int c;   	int mode; @@ -101342,7 +101342,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	acquire_console_sem();   	if (ops && ops->currcon != -1)   		vc = vc_cons[ops->currcon].d; -@@ -3225,13 +3228,17 @@ +@@ -3225,13 +3228,17 @@ static void fbcon_get_requirement(struct   static int fbcon_event_notify(struct notifier_block *self,    			      unsigned long action, void *data)   { @@ -102176,7 +102176,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009  +module_exit(jbt_exit);  --- a/drivers/video/display/Kconfig  +++ b/drivers/video/display/Kconfig -@@ -21,4 +21,15 @@ +@@ -21,4 +21,15 @@ config DISPLAY_SUPPORT   comment "Display hardware drivers"   	depends on DISPLAY_SUPPORT @@ -102202,7 +102202,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009  --- a/drivers/video/Kconfig  +++ b/drivers/video/Kconfig -@@ -1918,6 +1918,30 @@ +@@ -1918,6 +1918,30 @@ config FB_TMIO_ACCELL   	depends on FB_TMIO   	default y @@ -102235,7 +102235,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	depends on FB && ARCH_S3C2410  --- a/drivers/video/logo/Kconfig  +++ b/drivers/video/logo/Kconfig -@@ -77,6 +77,11 @@ +@@ -77,6 +77,11 @@ config LOGO_SUPERH_CLUT224   	depends on SUPERH   	default y @@ -102249,7 +102249,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	depends on M32R  --- a/drivers/video/logo/logo.c  +++ b/drivers/video/logo/logo.c -@@ -35,6 +35,7 @@ +@@ -35,6 +35,7 @@ extern const struct linux_logo logo_supe   extern const struct linux_logo logo_superh_vga16;   extern const struct linux_logo logo_superh_clut224;   extern const struct linux_logo logo_m32r_clut224; @@ -102257,7 +102257,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   static int nologo;   module_param(nologo, bool, 0); -@@ -115,6 +116,10 @@ +@@ -115,6 +116,10 @@ const struct linux_logo * __init_refok f   		/* M32R Linux logo */   		logo = &logo_m32r_clut224;   #endif @@ -142276,7 +142276,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009  +0 0 0  0 0 0  0 0 0  0 0 0  0 0 0  0 0 0  --- a/drivers/video/logo/Makefile  +++ b/drivers/video/logo/Makefile -@@ -15,6 +15,7 @@ +@@ -15,6 +15,7 @@ obj-$(CONFIG_LOGO_SUPERH_MONO)		+= logo_   obj-$(CONFIG_LOGO_SUPERH_VGA16)		+= logo_superh_vga16.o   obj-$(CONFIG_LOGO_SUPERH_CLUT224)	+= logo_superh_clut224.o   obj-$(CONFIG_LOGO_M32R_CLUT224)		+= logo_m32r_clut224.o @@ -142286,7 +142286,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009  --- a/drivers/video/Makefile  +++ b/drivers/video/Makefile -@@ -109,6 +109,7 @@ +@@ -109,6 +109,7 @@ obj-$(CONFIG_FB_METRONOME)        += met   obj-$(CONFIG_FB_S1D13XXX)	  += s1d13xxxfb.o   obj-$(CONFIG_FB_SH7760)		  += sh7760fb.o   obj-$(CONFIG_FB_IMX)              += imxfb.o @@ -142296,7 +142296,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   obj-$(CONFIG_FB_COBALT)           += cobalt_lcdfb.o  --- a/drivers/video/s3c2410fb.c  +++ b/drivers/video/s3c2410fb.c -@@ -1017,6 +1017,8 @@ +@@ -1017,6 +1017,8 @@ static int s3c2410fb_resume(struct platf   	s3c2410fb_init_registers(fbinfo); @@ -143346,7 +143346,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009  +MODULE_ALIAS("platform:s3c-fb");  --- a/drivers/watchdog/Kconfig  +++ b/drivers/watchdog/Kconfig -@@ -233,6 +233,12 @@ +@@ -233,6 +233,12 @@ config ORION5X_WATCHDOG   	  To compile this driver as a module, choose M here: the   	  module will be called orion5x_wdt. @@ -143359,7 +143359,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   # ARM26 Architecture   # AVR32 Architecture -@@ -784,7 +790,7 @@ +@@ -784,7 +790,7 @@ config WATCHDOG_RTAS   	tristate "RTAS watchdog"   	depends on PPC_RTAS   	help @@ -143370,7 +143370,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	  will be called wdrtas.  --- a/drivers/watchdog/Makefile  +++ b/drivers/watchdog/Makefile -@@ -41,6 +41,7 @@ +@@ -41,6 +41,7 @@ obj-$(CONFIG_PNX4008_WATCHDOG) += pnx400   obj-$(CONFIG_IOP_WATCHDOG) += iop_wdt.o   obj-$(CONFIG_DAVINCI_WATCHDOG) += davinci_wdt.o   obj-$(CONFIG_ORION5X_WATCHDOG) += orion5x_wdt.o @@ -143607,7 +143607,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009  --- a/fs/jffs2/background.c  +++ b/fs/jffs2/background.c -@@ -95,13 +95,17 @@ +@@ -95,13 +95,17 @@ static int jffs2_garbage_collect_thread(   			spin_unlock(&c->erase_completion_lock); @@ -145046,7 +145046,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009  +#endif  --- a/include/linux/device.h  +++ b/include/linux/device.h -@@ -48,6 +48,11 @@ +@@ -48,6 +48,11 @@ extern int __must_check bus_create_file(   					struct bus_attribute *);   extern void bus_remove_file(struct bus_type *, struct bus_attribute *); @@ -145060,7 +145060,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	struct bus_attribute	*bus_attrs;  --- a/include/linux/fb.h  +++ b/include/linux/fb.h -@@ -123,6 +123,7 @@ +@@ -123,6 +123,7 @@ struct dentry;   #define FB_ACCEL_TRIDENT_3DIMAGE 51	/* Trident 3DImage		*/   #define FB_ACCEL_TRIDENT_BLADE3D 52	/* Trident Blade3D		*/   #define FB_ACCEL_TRIDENT_BLADEXP 53	/* Trident BladeXP		*/ @@ -145270,7 +145270,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009  +#endif  --- a/include/linux/kernel.h  +++ b/include/linux/kernel.h -@@ -225,6 +225,8 @@ +@@ -225,6 +225,8 @@ extern struct ratelimit_state printk_rat   extern int printk_ratelimit(void);   extern bool printk_timed_ratelimit(unsigned long *caller_jiffies,   				   unsigned int interval_msec); @@ -146781,7 +146781,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009  +  --- a/include/linux/mmc/core.h  +++ b/include/linux/mmc/core.h -@@ -129,6 +129,8 @@ +@@ -129,6 +129,8 @@ struct mmc_request {   struct mmc_host;   struct mmc_card; @@ -146803,7 +146803,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   #endif  --- a/include/linux/mm.h  +++ b/include/linux/mm.h -@@ -713,7 +713,7 @@ +@@ -713,7 +713,7 @@ static inline int shmem_lock(struct file   }   #endif   struct file *shmem_file_setup(char *name, loff_t size, unsigned long flags); @@ -147743,7 +147743,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009  +#endif  --- a/include/linux/suspend.h  +++ b/include/linux/suspend.h -@@ -146,6 +146,12 @@ +@@ -146,6 +146,12 @@ struct pbe {   	struct pbe *next;   }; @@ -148002,7 +148002,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009  +#endif  --- a/include/linux/vt.h  +++ b/include/linux/vt.h -@@ -18,8 +18,19 @@ +@@ -18,8 +18,19 @@ extern int unregister_vt_notifier(struct    * resizing).    */   #define MIN_NR_CONSOLES 1       /* must be at least 1 */ @@ -148024,7 +148024,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009  --- a/include/sound/soc-dapm.h  +++ b/include/sound/soc-dapm.h -@@ -244,6 +244,13 @@ +@@ -244,6 +244,13 @@ int snd_soc_dapm_nc_pin(struct snd_soc_c   int snd_soc_dapm_get_pin_status(struct snd_soc_codec *codec, char *pin);   int snd_soc_dapm_sync(struct snd_soc_codec *codec); @@ -148040,7 +148040,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	snd_soc_dapm_input = 0,		/* input pin */  --- a/init/Kconfig  +++ b/init/Kconfig -@@ -732,6 +732,15 @@ +@@ -720,6 +720,15 @@ config AIO             by some high performance threaded applications. Disabling             this option saves about 7k. @@ -148058,7 +148058,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	bool "Enable VM event counters for /proc/vmstat" if EMBEDDED  --- a/kernel/irq/chip.c  +++ b/kernel/irq/chip.c -@@ -380,6 +380,7 @@ +@@ -380,6 +380,7 @@ handle_level_irq(unsigned int irq, struc   out_unlock:   	spin_unlock(&desc->lock);   } @@ -148066,7 +148066,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   /**    *	handle_fasteoi_irq - irq handler for transparent controllers -@@ -583,6 +584,7 @@ +@@ -583,6 +584,7 @@ __set_irq_handler(unsigned int irq, irq_   	}   	spin_unlock_irqrestore(&desc->lock, flags);   } @@ -148076,7 +148076,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   set_irq_chip_and_handler(unsigned int irq, struct irq_chip *chip,  --- a/kernel/power/main.c  +++ b/kernel/power/main.c -@@ -132,6 +132,9 @@ +@@ -132,6 +132,9 @@ static inline int suspend_test(int level   #endif /* CONFIG_PM_SLEEP */ @@ -148086,7 +148086,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   #ifdef CONFIG_SUSPEND   #ifdef CONFIG_PM_TEST_SUSPEND -@@ -322,6 +325,8 @@ +@@ -322,6 +325,8 @@ int suspend_devices_and_enter(suspend_st   	if (!suspend_ops)   		return -ENOSYS; @@ -148095,7 +148095,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	if (suspend_ops->begin) {   		error = suspend_ops->begin(state);   		if (error) -@@ -365,6 +370,8 @@ +@@ -365,6 +370,8 @@ int suspend_devices_and_enter(suspend_st    Close:   	if (suspend_ops->end)   		suspend_ops->end(); @@ -148104,7 +148104,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	return error;    Recover_platform: -@@ -427,6 +434,8 @@ +@@ -427,6 +434,8 @@ static int enter_state(suspend_state_t s   		return -EBUSY;   	printk(KERN_INFO "PM: Syncing filesystems ... "); @@ -148127,7 +148127,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   /*    * Architectures can override it: -@@ -67,6 +70,12 @@ +@@ -67,6 +70,12 @@ int console_printk[4] = {   int oops_in_progress;   EXPORT_SYMBOL(oops_in_progress); @@ -148140,7 +148140,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   /*    * console_sem protects the console_drivers list, and also    * provides serialisation for access to the entire console -@@ -667,8 +676,39 @@ +@@ -667,8 +676,39 @@ asmlinkage int vprintk(const char *fmt,    	/* Emit the output into the temporary buffer */   	printed_len += vscnprintf(printk_buf + printed_len,   				  sizeof(printk_buf) - printed_len, fmt, args); @@ -148184,7 +148184,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	 * appropriate log level tags, we insert them here  --- a/kernel/timer.c  +++ b/kernel/timer.c -@@ -813,7 +813,11 @@ +@@ -813,7 +813,11 @@ static int cascade(struct tvec_base *bas   	 * don't have to detach them individually.   	 */   	list_for_each_entry_safe(timer, tmp, &tv_list, entry) { @@ -148199,7 +148199,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009  --- a/MAINTAINERS  +++ b/MAINTAINERS -@@ -1705,6 +1705,20 @@ +@@ -1705,6 +1705,20 @@ FILE LOCKING (flock() and fcntl()/lockf(   P:	Matthew Wilcox   M:	matthew@wil.cx   L:	linux-fsdevel@vger.kernel.org @@ -148902,7 +148902,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009  +MODULE_LICENSE("GPL");  --- a/mm/Makefile  +++ b/mm/Makefile -@@ -22,6 +22,7 @@ +@@ -22,6 +22,7 @@ obj-$(CONFIG_NUMA) 	+= mempolicy.o   obj-$(CONFIG_SPARSEMEM)	+= sparse.o   obj-$(CONFIG_SPARSEMEM_VMEMMAP) += sparse-vmemmap.o   obj-$(CONFIG_SHMEM) += shmem.o @@ -148912,7 +148912,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   obj-$(CONFIG_SLOB) += slob.o  --- a/mm/tiny-shmem.c  +++ b/mm/tiny-shmem.c -@@ -97,6 +97,22 @@ +@@ -97,6 +97,22 @@ put_memory:   }   EXPORT_SYMBOL_GPL(shmem_file_setup); @@ -148935,7 +148935,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   /**    * shmem_zero_setup - setup a shared anonymous mapping    * @vma: the vma to be mmapped is prepared by do_mmap_pgoff -@@ -110,10 +126,8 @@ +@@ -110,10 +126,8 @@ int shmem_zero_setup(struct vm_area_stru   	if (IS_ERR(file))   		return PTR_ERR(file); @@ -148971,7 +148971,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009  +  --- a/scripts/mkuboot.sh  +++ b/scripts/mkuboot.sh -@@ -11,7 +11,7 @@ +@@ -11,7 +11,7 @@ if [ -z "${MKIMAGE}" ]; then   	if [ -z "${MKIMAGE}" ]; then   		# Doesn't exist   		echo '"mkimage" command not found - U-Boot images will not be built' >&2 @@ -148982,7 +148982,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009  --- a/sound/soc/codecs/wm8753.c  +++ b/sound/soc/codecs/wm8753.c -@@ -1584,6 +1584,9 @@ +@@ -1584,6 +1584,9 @@ static int wm8753_init(struct snd_soc_de   	schedule_delayed_work(&codec->delayed_work,   		msecs_to_jiffies(caps_charge)); @@ -148992,7 +148992,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	/* set the update bits */   	reg = wm8753_read_reg_cache(codec, WM8753_LDAC);   	wm8753_write(codec, WM8753_LDAC, reg | 0x0100); -@@ -1644,17 +1647,20 @@ +@@ -1644,17 +1647,20 @@ static int wm8753_i2c_probe(struct i2c_c   	struct snd_soc_codec *codec = socdev->codec;   	int ret; @@ -149015,7 +149015,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   {   	struct snd_soc_codec *codec = i2c_get_clientdata(client);   	kfree(codec->reg_cache); -@@ -1675,6 +1681,7 @@ +@@ -1675,6 +1681,7 @@ static struct i2c_driver wm8753_i2c_driv   	.probe =    wm8753_i2c_probe,   	.remove =   wm8753_i2c_remove,   	.id_table = wm8753_i2c_id, @@ -149023,7 +149023,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   };   static int wm8753_add_i2c_device(struct platform_device *pdev, -@@ -1716,6 +1723,8 @@ +@@ -1716,6 +1723,8 @@ err_driver:   	i2c_del_driver(&wm8753_i2c_driver);   	return -ENODEV;   } @@ -149032,7 +149032,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   #endif   #if defined(CONFIG_SPI_MASTER) -@@ -1783,7 +1792,7 @@ +@@ -1783,7 +1792,7 @@ static int wm8753_probe(struct platform_   	struct wm8753_priv *wm8753;   	int ret = 0; @@ -149041,7 +149041,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	setup = socdev->codec_data;   	codec = kzalloc(sizeof(struct snd_soc_codec), GFP_KERNEL); -@@ -1820,6 +1829,7 @@ +@@ -1820,6 +1829,7 @@ static int wm8753_probe(struct platform_   #endif   	if (ret != 0) { @@ -149049,7 +149049,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   		kfree(codec->private_data);   		kfree(codec);   	} -@@ -1857,7 +1867,6 @@ +@@ -1857,7 +1867,6 @@ static int wm8753_remove(struct platform   	snd_soc_free_pcms(socdev);   	snd_soc_dapm_free(socdev);   #if defined(CONFIG_I2C) || defined(CONFIG_I2C_MODULE) @@ -149059,7 +149059,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   #if defined(CONFIG_SPI_MASTER)  --- a/sound/soc/s3c24xx/Kconfig  +++ b/sound/soc/s3c24xx/Kconfig -@@ -26,6 +26,15 @@ +@@ -26,6 +26,15 @@ config SND_S3C24XX_SOC_NEO1973_WM8753   	  Say Y if you want to add support for SoC audio on smdk2440   	  with the WM8753. @@ -149077,7 +149077,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	depends on SND_S3C24XX_SOC && MACH_SMDK2443  --- a/sound/soc/s3c24xx/Makefile  +++ b/sound/soc/s3c24xx/Makefile -@@ -13,7 +13,10 @@ +@@ -13,7 +13,10 @@ obj-$(CONFIG_SND_S3C2412_SOC_I2S) += snd   snd-soc-neo1973-wm8753-objs := neo1973_wm8753.o   snd-soc-smdk2443-wm9710-objs := smdk2443_wm9710.o   snd-soc-ln2440sbc-alc650-objs := ln2440sbc_alc650.o @@ -149775,7 +149775,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   #include <asm/plat-s3c24xx/regs-iis.h>   #include "../codecs/wm8753.h" -@@ -585,7 +585,7 @@ +@@ -585,7 +585,7 @@ static struct snd_soc_machine neo1973 =    	.num_links = ARRAY_SIZE(neo1973_dai),   }; @@ -149784,7 +149784,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	.i2c_bus = 0,   	.i2c_address = 0x1a,   }; -@@ -594,7 +594,7 @@ +@@ -594,7 +594,7 @@ static struct snd_soc_device neo1973_snd   	.machine = &neo1973,   	.platform = &s3c24xx_soc_platform,   	.codec_dev = &soc_codec_dev_wm8753, @@ -149793,7 +149793,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   };   static int lm4857_i2c_probe(struct i2c_client *client, -@@ -676,7 +676,7 @@ +@@ -676,7 +676,7 @@ static int __init neo1973_init(void)   {   	int ret; @@ -149815,7 +149815,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   #include <mach/audio.h>  --- a/sound/soc/s3c24xx/s3c24xx-i2s.c  +++ b/sound/soc/s3c24xx/s3c24xx-i2s.c -@@ -175,7 +175,7 @@ +@@ -175,7 +175,7 @@ static void s3c24xx_snd_rxctrl(int on)   static int s3c24xx_snd_lrsync(void)   {   	u32 iiscon; @@ -149824,7 +149824,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	DBG("Entered %s\n", __func__); -@@ -282,11 +282,14 @@ +@@ -282,11 +282,14 @@ static int s3c24xx_i2s_trigger(struct sn   	case SNDRV_PCM_TRIGGER_START:   	case SNDRV_PCM_TRIGGER_RESUME:   	case SNDRV_PCM_TRIGGER_PAUSE_RELEASE: @@ -149844,7 +149844,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   		if (substream->stream == SNDRV_PCM_STREAM_CAPTURE)   			s3c24xx_snd_rxctrl(1); -@@ -306,7 +309,6 @@ +@@ -306,7 +309,6 @@ static int s3c24xx_i2s_trigger(struct sn   		break;   	} @@ -149854,7 +149854,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009  --- a/sound/soc/s3c24xx/s3c24xx-pcm.c  +++ b/sound/soc/s3c24xx/s3c24xx-pcm.c -@@ -168,7 +168,7 @@ +@@ -168,7 +168,7 @@ static int s3c24xx_pcm_hw_params(struct    					  prtd->params->client, NULL);   		if (ret < 0) { @@ -149865,7 +149865,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   	}  --- a/sound/soc/soc-core.c  +++ b/sound/soc/soc-core.c -@@ -1003,6 +1003,38 @@ +@@ -1003,6 +1003,38 @@ static ssize_t codec_reg_show(struct dev   }   static DEVICE_ATTR(codec_reg, 0444, codec_reg_show, NULL); @@ -149904,7 +149904,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   /**    * snd_soc_new_ac97_codec - initailise AC97 device    * @codec: audio codec -@@ -1218,6 +1250,9 @@ +@@ -1218,6 +1250,9 @@ int snd_soc_register_card(struct snd_soc   	mutex_unlock(&codec->mutex); @@ -149916,7 +149916,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009   }  --- a/sound/soc/soc-dapm.c  +++ b/sound/soc/soc-dapm.c -@@ -1525,6 +1525,56 @@ +@@ -1525,6 +1525,56 @@ int snd_soc_dapm_get_pin_status(struct s   EXPORT_SYMBOL_GPL(snd_soc_dapm_get_pin_status);   /** diff --git a/target/linux/s3c24xx/patches-2.6.28/005-dont-suspend-regulator.patch b/target/linux/s3c24xx/patches-2.6.28/005-dont-suspend-regulator.patch index 12204c847..ac51ce3d6 100644 --- a/target/linux/s3c24xx/patches-2.6.28/005-dont-suspend-regulator.patch +++ b/target/linux/s3c24xx/patches-2.6.28/005-dont-suspend-regulator.patch @@ -15,8 +15,6 @@ gets rid of the regulator related backtrace seen upon resume.  Signed-off-by: Balaji Rao <balajirrao@openmoko.org>  --- -diff --git a/arch/arm/plat-s3c/pm.c b/arch/arm/plat-s3c/pm.c -index 422dea2..889f191 100644  --- a/arch/arm/plat-s3c/pm.c  +++ b/arch/arm/plat-s3c/pm.c  @@ -18,7 +18,6 @@ @@ -50,11 +48,9 @@ index 422dea2..889f191 100644   };   /* s3c_pm_init -diff --git a/drivers/regulator/pcf50633-regulator.c b/drivers/regulator/pcf50633-regulator.c -index 343f43e..d284200 100644  --- a/drivers/regulator/pcf50633-regulator.c  +++ b/drivers/regulator/pcf50633-regulator.c -@@ -249,8 +249,6 @@ struct regulator_ops pcf50633_regulator_ops = { +@@ -249,8 +249,6 @@ struct regulator_ops pcf50633_regulator_   	.enable = pcf50633_regulator_enable,   	.disable = pcf50633_regulator_disable,   	.is_enabled = pcf50633_regulator_is_enabled, diff --git a/target/linux/s3c24xx/patches-2.6.28/010-preserve-resolution.patch b/target/linux/s3c24xx/patches-2.6.28/010-preserve-resolution.patch index 6beff0d7b..01eddb7cf 100644 --- a/target/linux/s3c24xx/patches-2.6.28/010-preserve-resolution.patch +++ b/target/linux/s3c24xx/patches-2.6.28/010-preserve-resolution.patch @@ -1,8 +1,6 @@ -diff --git a/drivers/video/display/jbt6k74.c b/drivers/video/display/jbt6k74.c -index a1d48dd..2ca1bd4 100644  --- a/drivers/video/display/jbt6k74.c  +++ b/drivers/video/display/jbt6k74.c -@@ -443,8 +443,17 @@ int jbt6k74_enter_state(struct jbt_info *jbt, enum jbt_state new_state) +@@ -443,8 +443,17 @@ int jbt6k74_enter_state(struct jbt_info    		break;   	} @@ -21,7 +19,7 @@ index a1d48dd..2ca1bd4 100644   	return rc;   } -@@ -595,7 +604,14 @@ static int fb_notifier_callback(struct notifier_block *self, +@@ -595,7 +604,14 @@ static int fb_notifier_callback(struct n   	switch (fb_blank) {   	case FB_BLANK_UNBLANK:   		dev_info(&jbt->spi_dev->dev, "**** jbt6k74 unblank\n"); @@ -37,7 +35,7 @@ index a1d48dd..2ca1bd4 100644   		break;   	case FB_BLANK_NORMAL:   		dev_info(&jbt->spi_dev->dev, "**** jbt6k74 normal\n"); -@@ -720,8 +736,6 @@ static int jbt_suspend(struct spi_device *spi, pm_message_t state) +@@ -720,8 +736,6 @@ static int jbt_suspend(struct spi_device   {   	struct jbt_info *jbt = dev_get_drvdata(&spi->dev); | 
