Browse Source

update to 2.6.30-rc7

SVN-Revision: 16048
Imre Kaloz 17 years ago
parent
commit
04bca7b528
31 changed files with 411 additions and 634 deletions
  1. 1 1
      target/linux/cavium-octeon/Makefile
  2. 1 1
      target/linux/cobalt/Makefile
  3. 1 1
      target/linux/etrax/Makefile
  4. 1 1
      target/linux/gemini/Makefile
  5. 1 1
      target/linux/gemini/patches/001-git_sync.patch
  6. 1 1
      target/linux/generic-2.6/patches-2.6.30/922-gpiommc.patch
  7. 1 1
      target/linux/kirkwood/Makefile
  8. 1 1
      target/linux/s3c24xx/Makefile
  9. 115 173
      target/linux/s3c24xx/patches-2.6.30/001-merge-openmoko.patch
  10. 55 83
      target/linux/s3c24xx/patches-2.6.30/010-s3c-dma.patch
  11. 12 22
      target/linux/s3c24xx/patches-2.6.30/011-s3c-pwm.patch
  12. 13 23
      target/linux/s3c24xx/patches-2.6.30/012-s3c-usb.patch
  13. 18 26
      target/linux/s3c24xx/patches-2.6.30/013-fiq_c_handler.patch
  14. 9 15
      target/linux/s3c24xx/patches-2.6.30/014-neo1973_mach.patch
  15. 8 14
      target/linux/s3c24xx/patches-2.6.30/015-mach-gta02.patch
  16. 18 30
      target/linux/s3c24xx/patches-2.6.30/050-s3c2442-touchscreen.patch
  17. 6 10
      target/linux/s3c24xx/patches-2.6.30/051-gta02kbd.patch
  18. 6 10
      target/linux/s3c24xx/patches-2.6.30/052-touchscreen_filter.patch
  19. 8 14
      target/linux/s3c24xx/patches-2.6.30/053-glamo.patch
  20. 6 10
      target/linux/s3c24xx/patches-2.6.30/054-bq27000.patch
  21. 6 10
      target/linux/s3c24xx/patches-2.6.30/055-gta02-leds.patch
  22. 5 9
      target/linux/s3c24xx/patches-2.6.30/055-jbt6k74.patch
  23. 31 49
      target/linux/s3c24xx/patches-2.6.30/056-pcf50633.patch
  24. 6 10
      target/linux/s3c24xx/patches-2.6.30/057-lis302dl.patch
  25. 27 41
      target/linux/s3c24xx/patches-2.6.30/060-spi-gpio-non-blocking.patch
  26. 6 10
      target/linux/s3c24xx/patches-2.6.30/068-ar6000.patch
  27. 2 4
      target/linux/s3c24xx/patches-2.6.30/070-s3c24xx-time.patch
  28. 6 10
      target/linux/s3c24xx/patches-2.6.30/080-nr-tty-devices.patch
  29. 16 24
      target/linux/s3c24xx/patches-2.6.30/090-sound.patch
  30. 21 27
      target/linux/s3c24xx/patches-2.6.30/100-udc-poll-vbus.patch
  31. 3 2
      target/linux/sibyte/Makefile

+ 1 - 1
target/linux/cavium-octeon/Makefile

@@ -12,7 +12,7 @@ BOARDNAME:=Cavium Networks Octeon
 FEATURES:=squashfs jffs2 pci
 FEATURES:=squashfs jffs2 pci
 CFLAGS:=-Os -pipe -funit-at-a-time
 CFLAGS:=-Os -pipe -funit-at-a-time
 
 
-LINUX_VERSION:=2.6.30-rc6
+LINUX_VERSION:=2.6.30-rc7
 
 
 include $(INCLUDE_DIR)/target.mk
 include $(INCLUDE_DIR)/target.mk
 
 

+ 1 - 1
target/linux/cobalt/Makefile

@@ -11,7 +11,7 @@ BOARD:=cobalt
 BOARDNAME:=Cobalt Microservers
 BOARDNAME:=Cobalt Microservers
 FEATURES:=tgz pci
 FEATURES:=tgz pci
 
 
-LINUX_VERSION:=2.6.30-rc6
+LINUX_VERSION:=2.6.30-rc7
 
 
 include $(INCLUDE_DIR)/target.mk
 include $(INCLUDE_DIR)/target.mk
 
 

+ 1 - 1
target/linux/etrax/Makefile

@@ -10,7 +10,7 @@ ARCH:=cris
 BOARD:=etrax
 BOARD:=etrax
 BOARDNAME:=Foxboard (ETRAX 100LX)
 BOARDNAME:=Foxboard (ETRAX 100LX)
 FEATURES:=squashfs jffs2
 FEATURES:=squashfs jffs2
-LINUX_VERSION:=2.6.30-rc6
+LINUX_VERSION:=2.6.30-rc7
 DEVICE_TYPE=
 DEVICE_TYPE=
 
 
 include $(INCLUDE_DIR)/target.mk
 include $(INCLUDE_DIR)/target.mk

+ 1 - 1
target/linux/gemini/Makefile

@@ -12,7 +12,7 @@ BOARDNAME:=Cortina Systems CS351x
 FEATURES:=jffs2 broken
 FEATURES:=jffs2 broken
 CFLAGS:=-Os -pipe -march=armv4 -mtune=arm9tdmi -funit-at-a-time
 CFLAGS:=-Os -pipe -march=armv4 -mtune=arm9tdmi -funit-at-a-time
 
 
-LINUX_VERSION:=2.6.30-rc6
+LINUX_VERSION:=2.6.30-rc7
 
 
 include $(INCLUDE_DIR)/target.mk
 include $(INCLUDE_DIR)/target.mk
 
 

+ 1 - 1
target/linux/gemini/patches/001-git_sync.patch

@@ -80,7 +80,7 @@
  static inline int dma_is_consistent(struct device *dev, dma_addr_t handle)
  static inline int dma_is_consistent(struct device *dev, dma_addr_t handle)
 --- a/arch/arm/Kconfig
 --- a/arch/arm/Kconfig
 +++ b/arch/arm/Kconfig
 +++ b/arch/arm/Kconfig
-@@ -824,7 +824,7 @@ config ISA_DMA_API
+@@ -825,7 +825,7 @@ config ISA_DMA_API
  	bool
  	bool
  
  
  config PCI
  config PCI

+ 1 - 1
target/linux/generic-2.6/patches-2.6.30/922-gpiommc.patch

@@ -824,7 +824,7 @@
 +be done automatically.
 +be done automatically.
 --- a/MAINTAINERS
 --- a/MAINTAINERS
 +++ b/MAINTAINERS
 +++ b/MAINTAINERS
-@@ -2487,6 +2487,11 @@ T:	git git://git.kernel.org/pub/scm/linu
+@@ -2495,6 +2495,11 @@ T:	git git://git.kernel.org/pub/scm/linu
  S:	Maintained
  S:	Maintained
  F:	drivers/media/video/gspca/
  F:	drivers/media/video/gspca/
  
  

+ 1 - 1
target/linux/kirkwood/Makefile

@@ -11,7 +11,7 @@ BOARD:=kirkwood
 BOARDNAME:=Marvell Kirkwood
 BOARDNAME:=Marvell Kirkwood
 FEATURES:=jffs2 usb broken
 FEATURES:=jffs2 usb broken
 
 
-LINUX_VERSION:=2.6.30-rc6
+LINUX_VERSION:=2.6.30-rc7
 
 
 include $(INCLUDE_DIR)/target.mk
 include $(INCLUDE_DIR)/target.mk
 
 

+ 1 - 1
target/linux/s3c24xx/Makefile

@@ -12,7 +12,7 @@ BOARDNAME:=Samsung S3C24xx
 FEATURES:=jffs2
 FEATURES:=jffs2
 CFLAGS:=-O2 -pipe -march=armv4t -mtune=arm920t -funit-at-a-time
 CFLAGS:=-O2 -pipe -march=armv4t -mtune=arm920t -funit-at-a-time
 
 
-LINUX_VERSION:=2.6.30-rc6
+LINUX_VERSION:=2.6.30-rc7
 
 
 DEVICE_TYPE=phone
 DEVICE_TYPE=phone
 
 

+ 115 - 173
target/linux/s3c24xx/patches-2.6.30/001-merge-openmoko.patch

@@ -5,10 +5,8 @@ lars@lars-laptop   Thu May 14 18:33:23 UTC 2009
 
 
 ---
 ---
 
 
-Index: linux-2.6.30-rc6/arch/arm/mach-s3c2410/include/mach/mci.h
-===================================================================
---- /dev/null	1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.30-rc6/arch/arm/mach-s3c2410/include/mach/mci.h	2009-05-18 19:07:48.000000000 +0200
+--- /dev/null
++++ b/arch/arm/mach-s3c2410/include/mach/mci.h
 @@ -0,0 +1,13 @@
 @@ -0,0 +1,13 @@
 +#ifndef _ARCH_MCI_H
 +#ifndef _ARCH_MCI_H
 +#define _ARCH_MCI_H
 +#define _ARCH_MCI_H
@@ -23,10 +21,8 @@ Index: linux-2.6.30-rc6/arch/arm/mach-s3c2410/include/mach/mci.h
 +};
 +};
 +
 +
 +#endif /* _ARCH_NCI_H */
 +#endif /* _ARCH_NCI_H */
-Index: linux-2.6.30-rc6/arch/arm/mach-s3c2410/include/mach/regs-sdi.h
-===================================================================
---- linux-2.6.30-rc6.orig/arch/arm/mach-s3c2410/include/mach/regs-sdi.h	2009-05-16 06:12:57.000000000 +0200
-+++ linux-2.6.30-rc6/arch/arm/mach-s3c2410/include/mach/regs-sdi.h	2009-05-18 19:07:48.000000000 +0200
+--- a/arch/arm/mach-s3c2410/include/mach/regs-sdi.h
++++ b/arch/arm/mach-s3c2410/include/mach/regs-sdi.h
 @@ -30,6 +30,7 @@
 @@ -30,6 +30,7 @@
  #define S3C2410_SDIFSTA               (0x38)
  #define S3C2410_SDIFSTA               (0x38)
  
  
@@ -44,11 +40,9 @@ Index: linux-2.6.30-rc6/arch/arm/mach-s3c2410/include/mach/regs-sdi.h
  #define S3C2410_SDICON_BYTEORDER      (1<<4)
  #define S3C2410_SDICON_BYTEORDER      (1<<4)
  #define S3C2410_SDICON_SDIOIRQ        (1<<3)
  #define S3C2410_SDICON_SDIOIRQ        (1<<3)
  #define S3C2410_SDICON_RWAITEN        (1<<2)
  #define S3C2410_SDICON_RWAITEN        (1<<2)
-Index: linux-2.6.30-rc6/arch/arm/mach-s3c2440/s3c2440.c
-===================================================================
---- linux-2.6.30-rc6.orig/arch/arm/mach-s3c2440/s3c2440.c	2009-05-16 06:12:57.000000000 +0200
-+++ linux-2.6.30-rc6/arch/arm/mach-s3c2440/s3c2440.c	2009-05-18 19:07:48.000000000 +0200
-@@ -46,6 +46,9 @@
+--- a/arch/arm/mach-s3c2440/s3c2440.c
++++ b/arch/arm/mach-s3c2440/s3c2440.c
+@@ -46,6 +46,9 @@ int __init s3c2440_init(void)
  	s3c_device_wdt.resource[1].start = IRQ_S3C2440_WDT;
  	s3c_device_wdt.resource[1].start = IRQ_S3C2440_WDT;
  	s3c_device_wdt.resource[1].end   = IRQ_S3C2440_WDT;
  	s3c_device_wdt.resource[1].end   = IRQ_S3C2440_WDT;
  
  
@@ -58,10 +52,8 @@ Index: linux-2.6.30-rc6/arch/arm/mach-s3c2440/s3c2440.c
  	/* register our system device for everything else */
  	/* register our system device for everything else */
  
  
  	return sysdev_register(&s3c2440_sysdev);
  	return sysdev_register(&s3c2440_sysdev);
-Index: linux-2.6.30-rc6/arch/arm/mach-s3c2442/s3c2442.c
-===================================================================
---- linux-2.6.30-rc6.orig/arch/arm/mach-s3c2442/s3c2442.c	2009-05-16 06:12:57.000000000 +0200
-+++ linux-2.6.30-rc6/arch/arm/mach-s3c2442/s3c2442.c	2009-05-18 19:07:48.000000000 +0200
+--- a/arch/arm/mach-s3c2442/s3c2442.c
++++ b/arch/arm/mach-s3c2442/s3c2442.c
 @@ -21,6 +21,7 @@
 @@ -21,6 +21,7 @@
  
  
  #include <plat/s3c2442.h>
  #include <plat/s3c2442.h>
@@ -70,7 +62,7 @@ Index: linux-2.6.30-rc6/arch/arm/mach-s3c2442/s3c2442.c
  
  
  static struct sys_device s3c2442_sysdev = {
  static struct sys_device s3c2442_sysdev = {
  	.cls		= &s3c2442_sysclass,
  	.cls		= &s3c2442_sysclass,
-@@ -30,5 +31,8 @@
+@@ -30,5 +31,8 @@ int __init s3c2442_init(void)
  {
  {
  	printk("S3C2442: Initialising architecture\n");
  	printk("S3C2442: Initialising architecture\n");
  
  
@@ -79,11 +71,9 @@ Index: linux-2.6.30-rc6/arch/arm/mach-s3c2442/s3c2442.c
 +
 +
  	return sysdev_register(&s3c2442_sysdev);
  	return sysdev_register(&s3c2442_sysdev);
  }
  }
-Index: linux-2.6.30-rc6/arch/arm/Makefile
-===================================================================
---- linux-2.6.30-rc6.orig/arch/arm/Makefile	2009-05-16 06:12:57.000000000 +0200
-+++ linux-2.6.30-rc6/arch/arm/Makefile	2009-05-18 19:07:48.000000000 +0200
-@@ -55,7 +55,8 @@
+--- a/arch/arm/Makefile
++++ b/arch/arm/Makefile
+@@ -55,7 +55,8 @@ ifeq ($(CONFIG_CPU_32v6),y)
  arch-$(CONFIG_CPU_32v6K)	:=-D__LINUX_ARM_ARCH__=6 $(call cc-option,-march=armv6k,-march=armv5t -Wa$(comma)-march=armv6k)
  arch-$(CONFIG_CPU_32v6K)	:=-D__LINUX_ARM_ARCH__=6 $(call cc-option,-march=armv6k,-march=armv5t -Wa$(comma)-march=armv6k)
  endif
  endif
  arch-$(CONFIG_CPU_32v5)		:=-D__LINUX_ARM_ARCH__=5 $(call cc-option,-march=armv5te,-march=armv4t)
  arch-$(CONFIG_CPU_32v5)		:=-D__LINUX_ARM_ARCH__=5 $(call cc-option,-march=armv5te,-march=armv4t)
@@ -93,10 +83,8 @@ Index: linux-2.6.30-rc6/arch/arm/Makefile
  arch-$(CONFIG_CPU_32v4)		:=-D__LINUX_ARM_ARCH__=4 -march=armv4
  arch-$(CONFIG_CPU_32v4)		:=-D__LINUX_ARM_ARCH__=4 -march=armv4
  arch-$(CONFIG_CPU_32v3)		:=-D__LINUX_ARM_ARCH__=3 -march=armv3
  arch-$(CONFIG_CPU_32v3)		:=-D__LINUX_ARM_ARCH__=3 -march=armv3
  
  
-Index: linux-2.6.30-rc6/arch/arm/plat-s3c/include/mach/cpu.h
-===================================================================
---- /dev/null	1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.30-rc6/arch/arm/plat-s3c/include/mach/cpu.h	2009-05-18 19:07:48.000000000 +0200
+--- /dev/null
++++ b/arch/arm/plat-s3c/include/mach/cpu.h
 @@ -0,0 +1,165 @@
 @@ -0,0 +1,165 @@
 +/*
 +/*
 + * arch/arm/plat-s3c/include/mach/cpu.h
 + * arch/arm/plat-s3c/include/mach/cpu.h
@@ -263,11 +251,9 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c/include/mach/cpu.h
 +#endif
 +#endif
 +
 +
 +#endif
 +#endif
-Index: linux-2.6.30-rc6/arch/arm/plat-s3c/include/plat/devs.h
-===================================================================
---- linux-2.6.30-rc6.orig/arch/arm/plat-s3c/include/plat/devs.h	2009-05-16 06:12:57.000000000 +0200
-+++ linux-2.6.30-rc6/arch/arm/plat-s3c/include/plat/devs.h	2009-05-18 19:07:48.000000000 +0200
-@@ -16,6 +16,10 @@
+--- a/arch/arm/plat-s3c/include/plat/devs.h
++++ b/arch/arm/plat-s3c/include/plat/devs.h
+@@ -16,6 +16,10 @@ struct s3c24xx_uart_resources {
  	unsigned long		 nr_resources;
  	unsigned long		 nr_resources;
  };
  };
  
  
@@ -278,10 +264,8 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c/include/plat/devs.h
  extern struct s3c24xx_uart_resources s3c2410_uart_resources[];
  extern struct s3c24xx_uart_resources s3c2410_uart_resources[];
  extern struct s3c24xx_uart_resources s3c64xx_uart_resources[];
  extern struct s3c24xx_uart_resources s3c64xx_uart_resources[];
  
  
-Index: linux-2.6.30-rc6/arch/arm/plat-s3c/include/plat/gpio-core.h
-===================================================================
---- linux-2.6.30-rc6.orig/arch/arm/plat-s3c/include/plat/gpio-core.h	2009-05-16 06:12:57.000000000 +0200
-+++ linux-2.6.30-rc6/arch/arm/plat-s3c/include/plat/gpio-core.h	2009-05-18 19:07:48.000000000 +0200
+--- a/arch/arm/plat-s3c/include/plat/gpio-core.h
++++ b/arch/arm/plat-s3c/include/plat/gpio-core.h
 @@ -20,6 +20,19 @@
 @@ -20,6 +20,19 @@
   * specific code.
   * specific code.
  */
  */
@@ -302,7 +286,7 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c/include/plat/gpio-core.h
  struct s3c_gpio_cfg;
  struct s3c_gpio_cfg;
  
  
  /**
  /**
-@@ -27,6 +40,7 @@
+@@ -27,6 +40,7 @@ struct s3c_gpio_cfg;
   * @chip: The chip structure to be exported via gpiolib.
   * @chip: The chip structure to be exported via gpiolib.
   * @base: The base pointer to the gpio configuration registers.
   * @base: The base pointer to the gpio configuration registers.
   * @config: special function and pull-resistor control information.
   * @config: special function and pull-resistor control information.
@@ -310,7 +294,7 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c/include/plat/gpio-core.h
   *
   *
   * This wrapper provides the necessary information for the Samsung
   * This wrapper provides the necessary information for the Samsung
   * specific gpios being registered with gpiolib.
   * specific gpios being registered with gpiolib.
-@@ -34,7 +48,11 @@
+@@ -34,7 +48,11 @@ struct s3c_gpio_cfg;
  struct s3c_gpio_chip {
  struct s3c_gpio_chip {
  	struct gpio_chip	chip;
  	struct gpio_chip	chip;
  	struct s3c_gpio_cfg	*config;
  	struct s3c_gpio_cfg	*config;
@@ -322,7 +306,7 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c/include/plat/gpio-core.h
  };
  };
  
  
  static inline struct s3c_gpio_chip *to_s3c_gpio(struct gpio_chip *gpc)
  static inline struct s3c_gpio_chip *to_s3c_gpio(struct gpio_chip *gpc)
-@@ -75,3 +93,16 @@
+@@ -75,3 +93,16 @@ static inline struct s3c_gpio_chip *s3c_
  
  
  static inline void s3c_gpiolib_track(struct s3c_gpio_chip *chip) { }
  static inline void s3c_gpiolib_track(struct s3c_gpio_chip *chip) { }
  #endif
  #endif
@@ -339,10 +323,8 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c/include/plat/gpio-core.h
 +#define __gpio_pm(x) NULL
 +#define __gpio_pm(x) NULL
 +
 +
 +#endif /* CONFIG_PM */
 +#endif /* CONFIG_PM */
-Index: linux-2.6.30-rc6/arch/arm/plat-s3c/include/plat/map-base.h
-===================================================================
---- linux-2.6.30-rc6.orig/arch/arm/plat-s3c/include/plat/map-base.h	2009-05-16 06:12:57.000000000 +0200
-+++ linux-2.6.30-rc6/arch/arm/plat-s3c/include/plat/map-base.h	2009-05-18 19:07:48.000000000 +0200
+--- a/arch/arm/plat-s3c/include/plat/map-base.h
++++ b/arch/arm/plat-s3c/include/plat/map-base.h
 @@ -36,5 +36,7 @@
 @@ -36,5 +36,7 @@
  #define S3C_VA_TIMER	S3C_ADDR(0x00300000)	/* timer block */
  #define S3C_VA_TIMER	S3C_ADDR(0x00300000)	/* timer block */
  #define S3C_VA_WATCHDOG	S3C_ADDR(0x00400000)	/* watchdog */
  #define S3C_VA_WATCHDOG	S3C_ADDR(0x00400000)	/* watchdog */
@@ -351,10 +333,8 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c/include/plat/map-base.h
 +#define S3C_VA_OTGSFR	S3C_ADDR(0x03a00000)	/* OTGSFR */
 +#define S3C_VA_OTGSFR	S3C_ADDR(0x03a00000)	/* OTGSFR */
  
  
  #endif /* __ASM_PLAT_MAP_H */
  #endif /* __ASM_PLAT_MAP_H */
-Index: linux-2.6.30-rc6/arch/arm/plat-s3c/include/plat/nand.h
-===================================================================
---- linux-2.6.30-rc6.orig/arch/arm/plat-s3c/include/plat/nand.h	2009-05-16 06:12:57.000000000 +0200
-+++ linux-2.6.30-rc6/arch/arm/plat-s3c/include/plat/nand.h	2009-05-18 19:07:48.000000000 +0200
+--- a/arch/arm/plat-s3c/include/plat/nand.h
++++ b/arch/arm/plat-s3c/include/plat/nand.h
 @@ -21,11 +21,14 @@
 @@ -21,11 +21,14 @@
   * partitions	 = mtd partition list
   * partitions	 = mtd partition list
  */
  */
@@ -370,7 +350,7 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c/include/plat/nand.h
  	char			*name;
  	char			*name;
  	int			*nr_map;
  	int			*nr_map;
  	struct mtd_partition	*partitions;
  	struct mtd_partition	*partitions;
-@@ -44,6 +47,9 @@
+@@ -44,6 +47,9 @@ struct s3c2410_platform_nand {
  	int			nr_sets;
  	int			nr_sets;
  	struct s3c2410_nand_set *sets;
  	struct s3c2410_nand_set *sets;
  
  
@@ -380,10 +360,8 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c/include/plat/nand.h
  	void			(*select_chip)(struct s3c2410_nand_set *,
  	void			(*select_chip)(struct s3c2410_nand_set *,
  					       int chip);
  					       int chip);
  };
  };
-Index: linux-2.6.30-rc6/arch/arm/plat-s3c/include/plat/pm.h
-===================================================================
---- linux-2.6.30-rc6.orig/arch/arm/plat-s3c/include/plat/pm.h	2009-05-16 06:12:57.000000000 +0200
-+++ linux-2.6.30-rc6/arch/arm/plat-s3c/include/plat/pm.h	2009-05-18 19:07:48.000000000 +0200
+--- a/arch/arm/plat-s3c/include/plat/pm.h
++++ b/arch/arm/plat-s3c/include/plat/pm.h
 @@ -9,6 +9,8 @@
 @@ -9,6 +9,8 @@
   * published by the Free Software Foundation.
   * published by the Free Software Foundation.
  */
  */
@@ -393,7 +371,7 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c/include/plat/pm.h
  /* s3c_pm_init
  /* s3c_pm_init
   *
   *
   * called from board at initialisation time to setup the power
   * called from board at initialisation time to setup the power
-@@ -44,6 +46,8 @@
+@@ -44,6 +46,8 @@ extern void (*pm_cpu_sleep)(void);
  
  
  extern unsigned long s3c_pm_flags;
  extern unsigned long s3c_pm_flags;
  
  
@@ -402,7 +380,7 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c/include/plat/pm.h
  /* from sleep.S */
  /* from sleep.S */
  
  
  extern int  s3c_cpu_save(unsigned long *saveblk);
  extern int  s3c_cpu_save(unsigned long *saveblk);
-@@ -88,6 +92,7 @@
+@@ -88,6 +92,7 @@ struct pm_uart_save {
  	u32	ufcon;
  	u32	ufcon;
  	u32	umcon;
  	u32	umcon;
  	u32	ubrdiv;
  	u32	ubrdiv;
@@ -410,11 +388,9 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c/include/plat/pm.h
  };
  };
  
  
  /* helper functions to save/restore lists of registers. */
  /* helper functions to save/restore lists of registers. */
-Index: linux-2.6.30-rc6/arch/arm/plat-s3c/include/plat/sdhci.h
-===================================================================
---- linux-2.6.30-rc6.orig/arch/arm/plat-s3c/include/plat/sdhci.h	2009-05-16 06:12:57.000000000 +0200
-+++ linux-2.6.30-rc6/arch/arm/plat-s3c/include/plat/sdhci.h	2009-05-18 19:07:48.000000000 +0200
-@@ -29,6 +29,7 @@
+--- a/arch/arm/plat-s3c/include/plat/sdhci.h
++++ b/arch/arm/plat-s3c/include/plat/sdhci.h
+@@ -29,6 +29,7 @@ struct mmc_ios;
   *            is necessary the controllers and/or GPIO blocks require the
   *            is necessary the controllers and/or GPIO blocks require the
   *	      changing of driver-strength and other controls dependant on
   *	      changing of driver-strength and other controls dependant on
   *	      the card and speed of operation.
   *	      the card and speed of operation.
@@ -422,7 +398,7 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c/include/plat/sdhci.h
   *
   *
   * Initialisation data specific to either the machine or the platform
   * Initialisation data specific to either the machine or the platform
   * for the device driver to use or call-back when configuring gpio or
   * for the device driver to use or call-back when configuring gpio or
-@@ -45,8 +46,11 @@
+@@ -45,8 +46,11 @@ struct s3c_sdhci_platdata {
  			    void __iomem *regbase,
  			    void __iomem *regbase,
  			    struct mmc_ios *ios,
  			    struct mmc_ios *ios,
  			    struct mmc_card *card);
  			    struct mmc_card *card);
@@ -434,10 +410,8 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c/include/plat/sdhci.h
  /**
  /**
   * s3c_sdhci0_set_platdata - Set platform data for S3C SDHCI device.
   * s3c_sdhci0_set_platdata - Set platform data for S3C SDHCI device.
   * @pd: Platform data to register to device.
   * @pd: Platform data to register to device.
-Index: linux-2.6.30-rc6/arch/arm/plat-s3c/init.c
-===================================================================
---- linux-2.6.30-rc6.orig/arch/arm/plat-s3c/init.c	2009-05-16 06:12:57.000000000 +0200
-+++ linux-2.6.30-rc6/arch/arm/plat-s3c/init.c	2009-05-18 19:07:48.000000000 +0200
+--- a/arch/arm/plat-s3c/init.c
++++ b/arch/arm/plat-s3c/init.c
 @@ -31,6 +31,34 @@
 @@ -31,6 +31,34 @@
  
  
  static struct cpu_table *cpu;
  static struct cpu_table *cpu;
@@ -473,7 +447,7 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c/init.c
  static struct cpu_table * __init s3c_lookup_cpu(unsigned long idcode,
  static struct cpu_table * __init s3c_lookup_cpu(unsigned long idcode,
  						struct cpu_table *tab,
  						struct cpu_table *tab,
  						unsigned int count)
  						unsigned int count)
-@@ -53,6 +81,8 @@
+@@ -53,6 +81,8 @@ void __init s3c_init_cpu(unsigned long i
  		panic("Unknown S3C24XX CPU");
  		panic("Unknown S3C24XX CPU");
  	}
  	}
  
  
@@ -482,11 +456,9 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c/init.c
  	printk("CPU %s (id 0x%08lx)\n", cpu->name, idcode);
  	printk("CPU %s (id 0x%08lx)\n", cpu->name, idcode);
  
  
  	if (cpu->map_io == NULL || cpu->init == NULL) {
  	if (cpu->map_io == NULL || cpu->init == NULL) {
-Index: linux-2.6.30-rc6/arch/arm/plat-s3c/Makefile
-===================================================================
---- linux-2.6.30-rc6.orig/arch/arm/plat-s3c/Makefile	2009-05-16 06:12:57.000000000 +0200
-+++ linux-2.6.30-rc6/arch/arm/plat-s3c/Makefile	2009-05-18 19:07:48.000000000 +0200
-@@ -21,6 +21,7 @@
+--- a/arch/arm/plat-s3c/Makefile
++++ b/arch/arm/plat-s3c/Makefile
+@@ -21,6 +21,7 @@ obj-y				+= gpio-config.o
  # PM support
  # PM support
  
  
  obj-$(CONFIG_PM)		+= pm.o
  obj-$(CONFIG_PM)		+= pm.o
@@ -494,10 +466,8 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c/Makefile
  obj-$(CONFIG_S3C2410_PM_CHECK)	+= pm-check.o
  obj-$(CONFIG_S3C2410_PM_CHECK)	+= pm-check.o
  
  
  # devices
  # devices
-Index: linux-2.6.30-rc6/arch/arm/plat-s3c/pm.c
-===================================================================
---- linux-2.6.30-rc6.orig/arch/arm/plat-s3c/pm.c	2009-05-16 06:12:57.000000000 +0200
-+++ linux-2.6.30-rc6/arch/arm/plat-s3c/pm.c	2009-05-18 19:07:48.000000000 +0200
+--- a/arch/arm/plat-s3c/pm.c
++++ b/arch/arm/plat-s3c/pm.c
 @@ -21,11 +21,10 @@
 @@ -21,11 +21,10 @@
  
  
  #include <asm/cacheflush.h>
  #include <asm/cacheflush.h>
@@ -511,7 +481,7 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c/pm.c
  #include <mach/regs-irq.h>
  #include <mach/regs-irq.h>
  #include <asm/irq.h>
  #include <asm/irq.h>
  
  
-@@ -70,6 +69,8 @@
+@@ -70,6 +69,8 @@ static inline void s3c_pm_debug_init(voi
  
  
  /* Save the UART configurations if we are configured for debug. */
  /* Save the UART configurations if we are configured for debug. */
  
  
@@ -520,7 +490,7 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c/pm.c
  #ifdef CONFIG_S3C2410_PM_DEBUG
  #ifdef CONFIG_S3C2410_PM_DEBUG
  
  
  struct pm_uart_save uart_save[CONFIG_SERIAL_SAMSUNG_UARTS];
  struct pm_uart_save uart_save[CONFIG_SERIAL_SAMSUNG_UARTS];
-@@ -83,6 +84,12 @@
+@@ -83,6 +84,12 @@ static void s3c_pm_save_uart(unsigned in
  	save->ufcon = __raw_readl(regs + S3C2410_UFCON);
  	save->ufcon = __raw_readl(regs + S3C2410_UFCON);
  	save->umcon = __raw_readl(regs + S3C2410_UMCON);
  	save->umcon = __raw_readl(regs + S3C2410_UMCON);
  	save->ubrdiv = __raw_readl(regs + S3C2410_UBRDIV);
  	save->ubrdiv = __raw_readl(regs + S3C2410_UBRDIV);
@@ -533,7 +503,7 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c/pm.c
  }
  }
  
  
  static void s3c_pm_save_uarts(void)
  static void s3c_pm_save_uarts(void)
-@@ -98,11 +105,16 @@
+@@ -98,11 +105,16 @@ static void s3c_pm_restore_uart(unsigned
  {
  {
  	void __iomem *regs = S3C_VA_UARTx(uart);
  	void __iomem *regs = S3C_VA_UARTx(uart);
  
  
@@ -550,7 +520,7 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c/pm.c
  }
  }
  
  
  static void s3c_pm_restore_uarts(void)
  static void s3c_pm_restore_uarts(void)
-@@ -289,11 +301,14 @@
+@@ -289,11 +301,14 @@ static int s3c_pm_enter(suspend_state_t 
  
  
  	s3c_pm_arch_stop_clocks();
  	s3c_pm_arch_stop_clocks();
  
  
@@ -570,10 +540,8 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c/pm.c
  
  
  	/* restore the cpu state using the kernel's cpu init code. */
  	/* restore the cpu state using the kernel's cpu init code. */
  
  
-Index: linux-2.6.30-rc6/arch/arm/plat-s3c/pm-gpio.c
-===================================================================
---- /dev/null	1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.30-rc6/arch/arm/plat-s3c/pm-gpio.c	2009-05-18 19:07:48.000000000 +0200
+--- /dev/null
++++ b/arch/arm/plat-s3c/pm-gpio.c
 @@ -0,0 +1,378 @@
 @@ -0,0 +1,378 @@
 +/* linux/arch/arm/plat-s3c/pm-gpio.c
 +/* linux/arch/arm/plat-s3c/pm-gpio.c
 + *
 + *
@@ -953,10 +921,8 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c/pm-gpio.c
 +		gpio_nr += CONFIG_S3C_GPIO_SPACE;
 +		gpio_nr += CONFIG_S3C_GPIO_SPACE;
 +	}
 +	}
 +}
 +}
-Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/clock-dclk.c
-===================================================================
---- linux-2.6.30-rc6.orig/arch/arm/plat-s3c24xx/clock-dclk.c	2009-05-16 06:12:57.000000000 +0200
-+++ linux-2.6.30-rc6/arch/arm/plat-s3c24xx/clock-dclk.c	2009-05-18 19:07:48.000000000 +0200
+--- a/arch/arm/plat-s3c24xx/clock-dclk.c
++++ b/arch/arm/plat-s3c24xx/clock-dclk.c
 @@ -18,6 +18,7 @@
 @@ -18,6 +18,7 @@
  
  
  #include <mach/regs-clock.h>
  #include <mach/regs-clock.h>
@@ -965,11 +931,9 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/clock-dclk.c
  
  
  #include <plat/clock.h>
  #include <plat/clock.h>
  #include <plat/cpu.h>
  #include <plat/cpu.h>
-Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/cpu.c
-===================================================================
---- linux-2.6.30-rc6.orig/arch/arm/plat-s3c24xx/cpu.c	2009-05-16 06:12:57.000000000 +0200
-+++ linux-2.6.30-rc6/arch/arm/plat-s3c24xx/cpu.c	2009-05-18 19:07:48.000000000 +0200
-@@ -61,6 +61,7 @@
+--- a/arch/arm/plat-s3c24xx/cpu.c
++++ b/arch/arm/plat-s3c24xx/cpu.c
+@@ -61,6 +61,7 @@ static const char name_s3c2410[]  = "S3C
  static const char name_s3c2412[]  = "S3C2412";
  static const char name_s3c2412[]  = "S3C2412";
  static const char name_s3c2440[]  = "S3C2440";
  static const char name_s3c2440[]  = "S3C2440";
  static const char name_s3c2442[]  = "S3C2442";
  static const char name_s3c2442[]  = "S3C2442";
@@ -977,7 +941,7 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/cpu.c
  static const char name_s3c2443[]  = "S3C2443";
  static const char name_s3c2443[]  = "S3C2443";
  static const char name_s3c2410a[] = "S3C2410A";
  static const char name_s3c2410a[] = "S3C2410A";
  static const char name_s3c2440a[] = "S3C2440A";
  static const char name_s3c2440a[] = "S3C2440A";
-@@ -112,6 +113,15 @@
+@@ -112,6 +113,15 @@ static struct cpu_table cpu_ids[] __init
  		.name		= name_s3c2442
  		.name		= name_s3c2442
  	},
  	},
  	{
  	{
@@ -993,10 +957,8 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/cpu.c
  		.idcode		= 0x32412001,
  		.idcode		= 0x32412001,
  		.idmask		= 0xffffffff,
  		.idmask		= 0xffffffff,
  		.map_io		= s3c2412_map_io,
  		.map_io		= s3c2412_map_io,
-Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/gpiolib.c
-===================================================================
---- linux-2.6.30-rc6.orig/arch/arm/plat-s3c24xx/gpiolib.c	2009-05-16 06:12:57.000000000 +0200
-+++ linux-2.6.30-rc6/arch/arm/plat-s3c24xx/gpiolib.c	2009-05-18 19:07:48.000000000 +0200
+--- a/arch/arm/plat-s3c24xx/gpiolib.c
++++ b/arch/arm/plat-s3c24xx/gpiolib.c
 @@ -19,9 +19,10 @@
 @@ -19,9 +19,10 @@
  #include <linux/io.h>
  #include <linux/io.h>
  #include <linux/gpio.h>
  #include <linux/gpio.h>
@@ -1009,7 +971,7 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/gpiolib.c
  
  
  #include <mach/regs-gpio.h>
  #include <mach/regs-gpio.h>
  
  
-@@ -78,6 +79,7 @@
+@@ -78,6 +79,7 @@ static int s3c24xx_gpiolib_bankg_toirq(s
  struct s3c_gpio_chip s3c24xx_gpios[] = {
  struct s3c_gpio_chip s3c24xx_gpios[] = {
  	[0] = {
  	[0] = {
  		.base	= S3C24XX_GPIO_BASE(S3C2410_GPA0),
  		.base	= S3C24XX_GPIO_BASE(S3C2410_GPA0),
@@ -1017,7 +979,7 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/gpiolib.c
  		.chip	= {
  		.chip	= {
  			.base			= S3C2410_GPA0,
  			.base			= S3C2410_GPA0,
  			.owner			= THIS_MODULE,
  			.owner			= THIS_MODULE,
-@@ -89,6 +91,7 @@
+@@ -89,6 +91,7 @@ struct s3c_gpio_chip s3c24xx_gpios[] = {
  	},
  	},
  	[1] = {
  	[1] = {
  		.base	= S3C24XX_GPIO_BASE(S3C2410_GPB0),
  		.base	= S3C24XX_GPIO_BASE(S3C2410_GPB0),
@@ -1025,7 +987,7 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/gpiolib.c
  		.chip	= {
  		.chip	= {
  			.base			= S3C2410_GPB0,
  			.base			= S3C2410_GPB0,
  			.owner			= THIS_MODULE,
  			.owner			= THIS_MODULE,
-@@ -98,6 +101,7 @@
+@@ -98,6 +101,7 @@ struct s3c_gpio_chip s3c24xx_gpios[] = {
  	},
  	},
  	[2] = {
  	[2] = {
  		.base	= S3C24XX_GPIO_BASE(S3C2410_GPC0),
  		.base	= S3C24XX_GPIO_BASE(S3C2410_GPC0),
@@ -1033,7 +995,7 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/gpiolib.c
  		.chip	= {
  		.chip	= {
  			.base			= S3C2410_GPC0,
  			.base			= S3C2410_GPC0,
  			.owner			= THIS_MODULE,
  			.owner			= THIS_MODULE,
-@@ -107,6 +111,7 @@
+@@ -107,6 +111,7 @@ struct s3c_gpio_chip s3c24xx_gpios[] = {
  	},
  	},
  	[3] = {
  	[3] = {
  		.base	= S3C24XX_GPIO_BASE(S3C2410_GPD0),
  		.base	= S3C24XX_GPIO_BASE(S3C2410_GPD0),
@@ -1041,7 +1003,7 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/gpiolib.c
  		.chip	= {
  		.chip	= {
  			.base			= S3C2410_GPD0,
  			.base			= S3C2410_GPD0,
  			.owner			= THIS_MODULE,
  			.owner			= THIS_MODULE,
-@@ -116,6 +121,7 @@
+@@ -116,6 +121,7 @@ struct s3c_gpio_chip s3c24xx_gpios[] = {
  	},
  	},
  	[4] = {
  	[4] = {
  		.base	= S3C24XX_GPIO_BASE(S3C2410_GPE0),
  		.base	= S3C24XX_GPIO_BASE(S3C2410_GPE0),
@@ -1049,7 +1011,7 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/gpiolib.c
  		.chip	= {
  		.chip	= {
  			.base			= S3C2410_GPE0,
  			.base			= S3C2410_GPE0,
  			.label			= "GPIOE",
  			.label			= "GPIOE",
-@@ -125,6 +131,7 @@
+@@ -125,6 +131,7 @@ struct s3c_gpio_chip s3c24xx_gpios[] = {
  	},
  	},
  	[5] = {
  	[5] = {
  		.base	= S3C24XX_GPIO_BASE(S3C2410_GPF0),
  		.base	= S3C24XX_GPIO_BASE(S3C2410_GPF0),
@@ -1057,7 +1019,7 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/gpiolib.c
  		.chip	= {
  		.chip	= {
  			.base			= S3C2410_GPF0,
  			.base			= S3C2410_GPF0,
  			.owner			= THIS_MODULE,
  			.owner			= THIS_MODULE,
-@@ -135,12 +142,23 @@
+@@ -135,12 +142,23 @@ struct s3c_gpio_chip s3c24xx_gpios[] = {
  	},
  	},
  	[6] = {
  	[6] = {
  		.base	= S3C24XX_GPIO_BASE(S3C2410_GPG0),
  		.base	= S3C24XX_GPIO_BASE(S3C2410_GPG0),
@@ -1082,11 +1044,9 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/gpiolib.c
  		},
  		},
  	},
  	},
  };
  };
-Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/include/plat/pm-core.h
-===================================================================
---- linux-2.6.30-rc6.orig/arch/arm/plat-s3c24xx/include/plat/pm-core.h	2009-05-16 06:12:57.000000000 +0200
-+++ linux-2.6.30-rc6/arch/arm/plat-s3c24xx/include/plat/pm-core.h	2009-05-18 19:07:48.000000000 +0200
-@@ -57,3 +57,8 @@
+--- a/arch/arm/plat-s3c24xx/include/plat/pm-core.h
++++ b/arch/arm/plat-s3c24xx/include/plat/pm-core.h
+@@ -57,3 +57,8 @@ static inline void s3c_pm_arch_show_resu
  	s3c_pm_show_resume_irqs(IRQ_EINT4-4, __raw_readl(S3C2410_EINTPEND),
  	s3c_pm_show_resume_irqs(IRQ_EINT4-4, __raw_readl(S3C2410_EINTPEND),
  				s3c_irqwake_eintmask);
  				s3c_irqwake_eintmask);
  }
  }
@@ -1095,10 +1055,8 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/include/plat/pm-core.h
 +					   struct pm_uart_save *save)
 +					   struct pm_uart_save *save)
 +{
 +{
 +}
 +}
-Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/irq-pm.c
-===================================================================
---- linux-2.6.30-rc6.orig/arch/arm/plat-s3c24xx/irq-pm.c	2009-05-16 06:12:57.000000000 +0200
-+++ linux-2.6.30-rc6/arch/arm/plat-s3c24xx/irq-pm.c	2009-05-18 19:07:48.000000000 +0200
+--- a/arch/arm/plat-s3c24xx/irq-pm.c
++++ b/arch/arm/plat-s3c24xx/irq-pm.c
 @@ -15,6 +15,7 @@
 @@ -15,6 +15,7 @@
  #include <linux/module.h>
  #include <linux/module.h>
  #include <linux/interrupt.h>
  #include <linux/interrupt.h>
@@ -1107,7 +1065,7 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/irq-pm.c
  
  
  #include <plat/cpu.h>
  #include <plat/cpu.h>
  #include <plat/pm.h>
  #include <plat/pm.h>
-@@ -80,7 +81,9 @@
+@@ -80,7 +81,9 @@ int s3c24xx_irq_suspend(struct sys_devic
  
  
  int s3c24xx_irq_resume(struct sys_device *dev)
  int s3c24xx_irq_resume(struct sys_device *dev)
  {
  {
@@ -1118,7 +1076,7 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/irq-pm.c
  
  
  	for (i = 0; i < ARRAY_SIZE(save_extint); i++)
  	for (i = 0; i < ARRAY_SIZE(save_extint); i++)
  		__raw_writel(save_extint[i], S3C24XX_EXTINT0 + (i*4));
  		__raw_writel(save_extint[i], S3C24XX_EXTINT0 + (i*4));
-@@ -91,5 +94,25 @@
+@@ -91,5 +94,25 @@ int s3c24xx_irq_resume(struct sys_device
  	s3c_pm_do_restore(irq_save, ARRAY_SIZE(irq_save));
  	s3c_pm_do_restore(irq_save, ARRAY_SIZE(irq_save));
  	__raw_writel(save_eintmask, S3C24XX_EINTMASK);
  	__raw_writel(save_eintmask, S3C24XX_EINTMASK);
  
  
@@ -1144,10 +1102,8 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/irq-pm.c
 +
 +
  	return 0;
  	return 0;
  }
  }
-Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/pm.c
-===================================================================
---- linux-2.6.30-rc6.orig/arch/arm/plat-s3c24xx/pm.c	2009-05-16 06:12:57.000000000 +0200
-+++ linux-2.6.30-rc6/arch/arm/plat-s3c24xx/pm.c	2009-05-18 19:07:48.000000000 +0200
+--- a/arch/arm/plat-s3c24xx/pm.c
++++ b/arch/arm/plat-s3c24xx/pm.c
 @@ -39,6 +39,7 @@
 @@ -39,6 +39,7 @@
  #include <mach/regs-gpio.h>
  #include <mach/regs-gpio.h>
  #include <mach/regs-mem.h>
  #include <mach/regs-mem.h>
@@ -1156,7 +1112,7 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/pm.c
  
  
  #include <asm/mach/time.h>
  #include <asm/mach/time.h>
  
  
-@@ -75,43 +76,10 @@
+@@ -75,43 +76,10 @@ static struct sleep_save core_save[] = {
  	SAVE_ITEM(S3C2410_CLKSLOW),
  	SAVE_ITEM(S3C2410_CLKSLOW),
  };
  };
  
  
@@ -1200,7 +1156,7 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/pm.c
  /* s3c_pm_check_resume_pin
  /* s3c_pm_check_resume_pin
   *
   *
   * check to see if the pin is configured correctly for sleep mode, and
   * check to see if the pin is configured correctly for sleep mode, and
-@@ -165,186 +133,6 @@
+@@ -165,186 +133,6 @@ void s3c_pm_configure_extint(void)
  	}
  	}
  }
  }
  
  
@@ -1387,11 +1343,9 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/pm.c
  
  
  void s3c_pm_restore_core(void)
  void s3c_pm_restore_core(void)
  {
  {
-Index: linux-2.6.30-rc6/drivers/mmc/host/Kconfig
-===================================================================
---- linux-2.6.30-rc6.orig/drivers/mmc/host/Kconfig	2009-05-18 19:07:38.000000000 +0200
-+++ linux-2.6.30-rc6/drivers/mmc/host/Kconfig	2009-05-18 19:07:48.000000000 +0200
-@@ -37,13 +37,6 @@
+--- a/drivers/mmc/host/Kconfig
++++ b/drivers/mmc/host/Kconfig
+@@ -37,13 +37,6 @@ config MMC_SDHCI
  
  
  	  If unsure, say N.
  	  If unsure, say N.
  
  
@@ -1405,7 +1359,7 @@ Index: linux-2.6.30-rc6/drivers/mmc/host/Kconfig
  config MMC_SDHCI_PCI
  config MMC_SDHCI_PCI
  	tristate "SDHCI support on PCI bus"
  	tristate "SDHCI support on PCI bus"
  	depends on MMC_SDHCI && PCI
  	depends on MMC_SDHCI && PCI
-@@ -55,6 +48,18 @@
+@@ -55,6 +48,18 @@ config MMC_SDHCI_PCI
  
  
  	  If unsure, say N.
  	  If unsure, say N.
  
  
@@ -1424,7 +1378,7 @@ Index: linux-2.6.30-rc6/drivers/mmc/host/Kconfig
  config MMC_RICOH_MMC
  config MMC_RICOH_MMC
  	tristate "Ricoh MMC Controller Disabler  (EXPERIMENTAL)"
  	tristate "Ricoh MMC Controller Disabler  (EXPERIMENTAL)"
  	depends on MMC_SDHCI_PCI
  	depends on MMC_SDHCI_PCI
-@@ -72,17 +77,6 @@
+@@ -72,17 +77,6 @@ config MMC_RICOH_MMC
  
  
  	  If unsure, say Y.
  	  If unsure, say Y.
  
  
@@ -1442,7 +1396,7 @@ Index: linux-2.6.30-rc6/drivers/mmc/host/Kconfig
  config MMC_OMAP
  config MMC_OMAP
  	tristate "TI OMAP Multimedia Card Interface support"
  	tristate "TI OMAP Multimedia Card Interface support"
  	depends on ARCH_OMAP
  	depends on ARCH_OMAP
-@@ -163,16 +157,6 @@
+@@ -163,16 +157,6 @@ config MMC_IMX
  
  
  	  If unsure, say N.
  	  If unsure, say N.
  
  
@@ -1459,11 +1413,9 @@ Index: linux-2.6.30-rc6/drivers/mmc/host/Kconfig
  config MMC_TIFM_SD
  config MMC_TIFM_SD
  	tristate "TI Flash Media MMC/SD Interface support  (EXPERIMENTAL)"
  	tristate "TI Flash Media MMC/SD Interface support  (EXPERIMENTAL)"
  	depends on EXPERIMENTAL && PCI
  	depends on EXPERIMENTAL && PCI
-Index: linux-2.6.30-rc6/drivers/mmc/host/Makefile
-===================================================================
---- linux-2.6.30-rc6.orig/drivers/mmc/host/Makefile	2009-05-18 19:07:38.000000000 +0200
-+++ linux-2.6.30-rc6/drivers/mmc/host/Makefile	2009-05-18 19:07:48.000000000 +0200
-@@ -9,11 +9,10 @@
+--- a/drivers/mmc/host/Makefile
++++ b/drivers/mmc/host/Makefile
+@@ -9,11 +9,10 @@ endif
  obj-$(CONFIG_MMC_ARMMMCI)	+= mmci.o
  obj-$(CONFIG_MMC_ARMMMCI)	+= mmci.o
  obj-$(CONFIG_MMC_PXA)		+= pxamci.o
  obj-$(CONFIG_MMC_PXA)		+= pxamci.o
  obj-$(CONFIG_MMC_IMX)		+= imxmmc.o
  obj-$(CONFIG_MMC_IMX)		+= imxmmc.o
@@ -1476,7 +1428,7 @@ Index: linux-2.6.30-rc6/drivers/mmc/host/Makefile
  obj-$(CONFIG_MMC_WBSD)		+= wbsd.o
  obj-$(CONFIG_MMC_WBSD)		+= wbsd.o
  obj-$(CONFIG_MMC_AU1X)		+= au1xmmc.o
  obj-$(CONFIG_MMC_AU1X)		+= au1xmmc.o
  obj-$(CONFIG_MMC_OMAP)		+= omap.o
  obj-$(CONFIG_MMC_OMAP)		+= omap.o
-@@ -21,7 +20,6 @@
+@@ -21,7 +20,6 @@ obj-$(CONFIG_MMC_OMAP_HS)	+= omap_hsmmc.
  obj-$(CONFIG_MMC_AT91)		+= at91_mci.o
  obj-$(CONFIG_MMC_AT91)		+= at91_mci.o
  obj-$(CONFIG_MMC_ATMELMCI)	+= atmel-mci.o
  obj-$(CONFIG_MMC_ATMELMCI)	+= atmel-mci.o
  obj-$(CONFIG_MMC_TIFM_SD)	+= tifm_sd.o
  obj-$(CONFIG_MMC_TIFM_SD)	+= tifm_sd.o
@@ -1484,10 +1436,8 @@ Index: linux-2.6.30-rc6/drivers/mmc/host/Makefile
  obj-$(CONFIG_MMC_SPI)		+= mmc_spi.o
  obj-$(CONFIG_MMC_SPI)		+= mmc_spi.o
  ifeq ($(CONFIG_OF),y)
  ifeq ($(CONFIG_OF),y)
  obj-$(CONFIG_MMC_SPI)		+= of_mmc_spi.o
  obj-$(CONFIG_MMC_SPI)		+= of_mmc_spi.o
-Index: linux-2.6.30-rc6/drivers/mmc/host/s3cmci.c
-===================================================================
---- linux-2.6.30-rc6.orig/drivers/mmc/host/s3cmci.c	2009-05-16 06:12:57.000000000 +0200
-+++ linux-2.6.30-rc6/drivers/mmc/host/s3cmci.c	2009-05-18 19:07:48.000000000 +0200
+--- a/drivers/mmc/host/s3cmci.c
++++ b/drivers/mmc/host/s3cmci.c
 @@ -2,6 +2,7 @@
 @@ -2,6 +2,7 @@
   *  linux/drivers/mmc/s3cmci.h - Samsung S3C MCI driver
   *  linux/drivers/mmc/s3cmci.h - Samsung S3C MCI driver
   *
   *
@@ -1515,7 +1465,7 @@ Index: linux-2.6.30-rc6/drivers/mmc/host/s3cmci.c
  #include "s3cmci.h"
  #include "s3cmci.h"
  
  
  #define DRIVER_NAME "s3c-mci"
  #define DRIVER_NAME "s3c-mci"
-@@ -47,6 +57,9 @@
+@@ -47,6 +57,9 @@ static const int dbgmap_err   = dbg_fail
  static const int dbgmap_info  = dbg_info | dbg_conf;
  static const int dbgmap_info  = dbg_info | dbg_conf;
  static const int dbgmap_debug = dbg_err | dbg_debug;
  static const int dbgmap_debug = dbg_err | dbg_debug;
  
  
@@ -1525,7 +1475,7 @@ Index: linux-2.6.30-rc6/drivers/mmc/host/s3cmci.c
  #define dbg(host, channels, args...)		  \
  #define dbg(host, channels, args...)		  \
  	do {					  \
  	do {					  \
  	if (dbgmap_err & channels) 		  \
  	if (dbgmap_err & channels) 		  \
-@@ -280,8 +293,11 @@
+@@ -280,8 +293,11 @@ static void do_pio_read(struct s3cmci_ho
  		 * an even multiple of 4. */
  		 * an even multiple of 4. */
  		if (fifo >= host->pio_bytes)
  		if (fifo >= host->pio_bytes)
  			fifo = host->pio_bytes;
  			fifo = host->pio_bytes;
@@ -1538,7 +1488,7 @@ Index: linux-2.6.30-rc6/drivers/mmc/host/s3cmci.c
  
  
  		host->pio_bytes -= fifo;
  		host->pio_bytes -= fifo;
  		host->pio_count += fifo;
  		host->pio_count += fifo;
-@@ -329,7 +345,7 @@
+@@ -329,7 +345,7 @@ static void do_pio_write(struct s3cmci_h
  
  
  	to_ptr = host->base + host->sdidata;
  	to_ptr = host->base + host->sdidata;
  
  
@@ -1547,7 +1497,7 @@ Index: linux-2.6.30-rc6/drivers/mmc/host/s3cmci.c
  		if (!host->pio_bytes) {
  		if (!host->pio_bytes) {
  			res = get_data_buffer(host, &host->pio_bytes,
  			res = get_data_buffer(host, &host->pio_bytes,
  							&host->pio_ptr);
  							&host->pio_ptr);
-@@ -353,8 +369,11 @@
+@@ -353,8 +369,11 @@ static void do_pio_write(struct s3cmci_h
  		 * words, so round down to an even multiple of 4. */
  		 * words, so round down to an even multiple of 4. */
  		if (fifo >= host->pio_bytes)
  		if (fifo >= host->pio_bytes)
  			fifo = host->pio_bytes;
  			fifo = host->pio_bytes;
@@ -1560,7 +1510,7 @@ Index: linux-2.6.30-rc6/drivers/mmc/host/s3cmci.c
  
  
  		host->pio_bytes -= fifo;
  		host->pio_bytes -= fifo;
  		host->pio_count += fifo;
  		host->pio_count += fifo;
-@@ -373,7 +392,6 @@
+@@ -373,7 +392,6 @@ static void pio_tasklet(unsigned long da
  {
  {
  	struct s3cmci_host *host = (struct s3cmci_host *) data;
  	struct s3cmci_host *host = (struct s3cmci_host *) data;
  
  
@@ -1568,7 +1518,7 @@ Index: linux-2.6.30-rc6/drivers/mmc/host/s3cmci.c
  	disable_irq(host->irq);
  	disable_irq(host->irq);
  
  
  	if (host->pio_active == XFER_WRITE)
  	if (host->pio_active == XFER_WRITE)
-@@ -614,7 +632,6 @@
+@@ -614,7 +632,6 @@ irq_out:
  
  
  	spin_unlock_irqrestore(&host->complete_lock, iflags);
  	spin_unlock_irqrestore(&host->complete_lock, iflags);
  	return IRQ_HANDLED;
  	return IRQ_HANDLED;
@@ -1576,7 +1526,7 @@ Index: linux-2.6.30-rc6/drivers/mmc/host/s3cmci.c
  }
  }
  
  
  /*
  /*
-@@ -789,11 +806,11 @@
+@@ -789,11 +806,11 @@ static void s3cmci_dma_setup(struct s3cm
  
  
  	last_source = source;
  	last_source = source;
  
  
@@ -1590,7 +1540,7 @@ Index: linux-2.6.30-rc6/drivers/mmc/host/s3cmci.c
  		s3c2410_dma_set_buffdone_fn(host->dma,
  		s3c2410_dma_set_buffdone_fn(host->dma,
  					    s3cmci_dma_done_callback);
  					    s3cmci_dma_done_callback);
  		s3c2410_dma_setflags(host->dma, S3C2410_DMAF_AUTOSTART);
  		s3c2410_dma_setflags(host->dma, S3C2410_DMAF_AUTOSTART);
-@@ -1026,6 +1043,7 @@
+@@ -1026,6 +1043,7 @@ static void s3cmci_send_request(struct m
  			dbg(host, dbg_err, "data prepare error %d\n", res);
  			dbg(host, dbg_err, "data prepare error %d\n", res);
  			cmd->error = res;
  			cmd->error = res;
  			cmd->data->error = res;
  			cmd->data->error = res;
@@ -1598,7 +1548,7 @@ Index: linux-2.6.30-rc6/drivers/mmc/host/s3cmci.c
  
  
  			mmc_request_done(mmc, mrq);
  			mmc_request_done(mmc, mrq);
  			return;
  			return;
-@@ -1263,10 +1281,8 @@
+@@ -1263,10 +1281,8 @@ static int __devinit s3cmci_probe(struct
  	host->is2440	= is2440;
  	host->is2440	= is2440;
  
  
  	host->pdata = pdev->dev.platform_data;
  	host->pdata = pdev->dev.platform_data;
@@ -1610,7 +1560,7 @@ Index: linux-2.6.30-rc6/drivers/mmc/host/s3cmci.c
  
  
  	spin_lock_init(&host->complete_lock);
  	spin_lock_init(&host->complete_lock);
  	tasklet_init(&host->pio_tasklet, pio_tasklet, (unsigned long) host);
  	tasklet_init(&host->pio_tasklet, pio_tasklet, (unsigned long) host);
-@@ -1379,6 +1395,18 @@
+@@ -1379,6 +1395,18 @@ static int __devinit s3cmci_probe(struct
  	mmc->f_min 	= host->clk_rate / (host->clk_div * 256);
  	mmc->f_min 	= host->clk_rate / (host->clk_div * 256);
  	mmc->f_max 	= host->clk_rate / host->clk_div;
  	mmc->f_max 	= host->clk_rate / host->clk_div;
  
  
@@ -1629,7 +1579,7 @@ Index: linux-2.6.30-rc6/drivers/mmc/host/s3cmci.c
  	if (host->pdata->ocr_avail)
  	if (host->pdata->ocr_avail)
  		mmc->ocr_avail = host->pdata->ocr_avail;
  		mmc->ocr_avail = host->pdata->ocr_avail;
  
  
-@@ -1491,18 +1519,60 @@
+@@ -1491,18 +1519,60 @@ static int __devinit s3cmci_2440_probe(s
  
  
  #ifdef CONFIG_PM
  #ifdef CONFIG_PM
  
  
@@ -1692,7 +1642,7 @@ Index: linux-2.6.30-rc6/drivers/mmc/host/s3cmci.c
  }
  }
  
  
  #else /* CONFIG_PM */
  #else /* CONFIG_PM */
-@@ -1560,9 +1630,13 @@
+@@ -1560,9 +1630,13 @@ static void __exit s3cmci_exit(void)
  module_init(s3cmci_init);
  module_init(s3cmci_init);
  module_exit(s3cmci_exit);
  module_exit(s3cmci_exit);
  
  
@@ -1706,10 +1656,8 @@ Index: linux-2.6.30-rc6/drivers/mmc/host/s3cmci.c
  MODULE_ALIAS("platform:s3c2412-sdi");
  MODULE_ALIAS("platform:s3c2412-sdi");
  MODULE_ALIAS("platform:s3c2440-sdi");
  MODULE_ALIAS("platform:s3c2440-sdi");
 +
 +
-Index: linux-2.6.30-rc6/drivers/mmc/host/s3cmci.h
-===================================================================
---- linux-2.6.30-rc6.orig/drivers/mmc/host/s3cmci.h	2009-05-16 06:12:57.000000000 +0200
-+++ linux-2.6.30-rc6/drivers/mmc/host/s3cmci.h	2009-05-18 19:07:48.000000000 +0200
+--- a/drivers/mmc/host/s3cmci.h
++++ b/drivers/mmc/host/s3cmci.h
 @@ -8,6 +8,10 @@
 @@ -8,6 +8,10 @@
   * published by the Free Software Foundation.
   * published by the Free Software Foundation.
   */
   */
@@ -1721,7 +1669,7 @@ Index: linux-2.6.30-rc6/drivers/mmc/host/s3cmci.h
  /* FIXME: DMA Resource management ?! */
  /* FIXME: DMA Resource management ?! */
  #define S3CMCI_DMA 0
  #define S3CMCI_DMA 0
  
  
-@@ -68,7 +72,16 @@
+@@ -68,7 +72,16 @@ struct s3cmci_host {
  	unsigned int		ccnt, dcnt;
  	unsigned int		ccnt, dcnt;
  	struct tasklet_struct	pio_tasklet;
  	struct tasklet_struct	pio_tasklet;
  
  
@@ -1738,10 +1686,8 @@ Index: linux-2.6.30-rc6/drivers/mmc/host/s3cmci.h
 +
 +
 +	struct regulator *regulator;
 +	struct regulator *regulator;
  };
  };
-Index: linux-2.6.30-rc6/drivers/mmc/host/sdhci-s3c.c
-===================================================================
---- /dev/null	1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.30-rc6/drivers/mmc/host/sdhci-s3c.c	2009-05-18 19:07:48.000000000 +0200
+--- /dev/null
++++ b/drivers/mmc/host/sdhci-s3c.c
 @@ -0,0 +1,419 @@
 @@ -0,0 +1,419 @@
 +/* linux/drivers/mmc/host/sdhci-s3c.c
 +/* linux/drivers/mmc/host/sdhci-s3c.c
 + *
 + *
@@ -2162,11 +2108,9 @@ Index: linux-2.6.30-rc6/drivers/mmc/host/sdhci-s3c.c
 +MODULE_AUTHOR("Ben Dooks, <[email protected]>");
 +MODULE_AUTHOR("Ben Dooks, <[email protected]>");
 +MODULE_LICENSE("GPL v2");
 +MODULE_LICENSE("GPL v2");
 +MODULE_ALIAS("platform:s3c-sdhci");
 +MODULE_ALIAS("platform:s3c-sdhci");
-Index: linux-2.6.30-rc6/drivers/mtd/nand/s3c2410.c
-===================================================================
---- linux-2.6.30-rc6.orig/drivers/mtd/nand/s3c2410.c	2009-05-16 06:12:57.000000000 +0200
-+++ linux-2.6.30-rc6/drivers/mtd/nand/s3c2410.c	2009-05-18 19:07:48.000000000 +0200
-@@ -438,7 +438,7 @@
+--- a/drivers/mtd/nand/s3c2410.c
++++ b/drivers/mtd/nand/s3c2410.c
+@@ -438,7 +438,7 @@ static int s3c2410_nand_correct_data(str
  	if ((diff0 & ~(1<<fls(diff0))) == 0)
  	if ((diff0 & ~(1<<fls(diff0))) == 0)
  		return 1;
  		return 1;
  
  
@@ -2175,7 +2119,7 @@ Index: linux-2.6.30-rc6/drivers/mtd/nand/s3c2410.c
  }
  }
  
  
  /* ECC functions
  /* 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)
  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);
  	struct s3c2410_nand_info *info = s3c2410_nand_mtd_toinfo(mtd);
@@ -2188,7 +2132,7 @@ Index: linux-2.6.30-rc6/drivers/mtd/nand/s3c2410.c
  }
  }
  
  
  static void s3c2410_nand_write_buf(struct mtd_info *mtd, const u_char *buf, int len)
  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
  #ifdef CONFIG_MTD_PARTITIONS
@@ -2222,7 +2166,7 @@ Index: linux-2.6.30-rc6/drivers/mtd/nand/s3c2410.c
  	return add_mtd_device(&mtd->mtd);
  	return add_mtd_device(&mtd->mtd);
  }
  }
  #else
  #else
-@@ -684,9 +703,13 @@
+@@ -684,9 +703,13 @@ static void s3c2410_nand_init_chip(struc
  	chip->select_chip  = s3c2410_nand_select_chip;
  	chip->select_chip  = s3c2410_nand_select_chip;
  	chip->chip_delay   = 50;
  	chip->chip_delay   = 50;
  	chip->priv	   = nmtd;
  	chip->priv	   = nmtd;
@@ -2237,7 +2181,7 @@ Index: linux-2.6.30-rc6/drivers/mtd/nand/s3c2410.c
  	switch (info->cpu_type) {
  	switch (info->cpu_type) {
  	case TYPE_S3C2410:
  	case TYPE_S3C2410:
  		chip->IO_ADDR_W = regs + S3C2410_NFDATA;
  		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->mtd.owner    = THIS_MODULE;
  	nmtd->set	   = set;
  	nmtd->set	   = set;
  
  
@@ -2246,11 +2190,9 @@ Index: linux-2.6.30-rc6/drivers/mtd/nand/s3c2410.c
  		chip->ecc.calculate = s3c2410_nand_calculate_ecc;
  		chip->ecc.calculate = s3c2410_nand_calculate_ecc;
  		chip->ecc.correct   = s3c2410_nand_correct_data;
  		chip->ecc.correct   = s3c2410_nand_correct_data;
  		chip->ecc.mode	    = NAND_ECC_HW;
  		chip->ecc.mode	    = NAND_ECC_HW;
-Index: linux-2.6.30-rc6/drivers/mmc/core/core.c
-===================================================================
---- linux-2.6.30-rc6.orig/drivers/mmc/core/core.c	2009-05-16 06:12:57.000000000 +0200
-+++ linux-2.6.30-rc6/drivers/mmc/core/core.c	2009-05-18 19:07:48.000000000 +0200
-@@ -59,10 +59,11 @@
+--- a/drivers/mmc/core/core.c
++++ b/drivers/mmc/core/core.c
+@@ -59,10 +59,11 @@ static int mmc_schedule_delayed_work(str
  /*
  /*
   * Internal function. Flush all scheduled work from the MMC work queue.
   * Internal function. Flush all scheduled work from the MMC work queue.
   */
   */

+ 55 - 83
target/linux/s3c24xx/patches-2.6.30/010-s3c-dma.patch

@@ -1,7 +1,5 @@
-Index: linux-2.6.30-rc6/arch/arm/mach-s3c2410/include/mach/dma.h
-===================================================================
---- linux-2.6.30-rc6.orig/arch/arm/mach-s3c2410/include/mach/dma.h	2009-05-16 06:12:57.000000000 +0200
-+++ linux-2.6.30-rc6/arch/arm/mach-s3c2410/include/mach/dma.h	2009-05-18 19:08:29.000000000 +0200
+--- a/arch/arm/mach-s3c2410/include/mach/dma.h
++++ b/arch/arm/mach-s3c2410/include/mach/dma.h
 @@ -3,7 +3,7 @@
 @@ -3,7 +3,7 @@
   * Copyright (C) 2003,2004,2006 Simtec Electronics
   * Copyright (C) 2003,2004,2006 Simtec Electronics
   *	Ben Dooks <[email protected]>
   *	Ben Dooks <[email protected]>
@@ -21,7 +19,7 @@ Index: linux-2.6.30-rc6/arch/arm/mach-s3c2410/include/mach/dma.h
  
  
  #define MAX_DMA_TRANSFER_SIZE   0x100000 /* Data Unit is half word  */
  #define MAX_DMA_TRANSFER_SIZE   0x100000 /* Data Unit is half word  */
  
  
-@@ -55,9 +55,9 @@
+@@ -55,9 +55,9 @@ enum dma_ch {
  
  
  /* we have 4 dma channels */
  /* we have 4 dma channels */
  #ifndef CONFIG_CPU_S3C2443
  #ifndef CONFIG_CPU_S3C2443
@@ -33,7 +31,7 @@ Index: linux-2.6.30-rc6/arch/arm/mach-s3c2410/include/mach/dma.h
  #endif
  #endif
  
  
  /* types */
  /* types */
-@@ -68,7 +68,6 @@
+@@ -68,7 +68,6 @@ enum s3c2410_dma_state {
  	S3C2410_DMA_PAUSED
  	S3C2410_DMA_PAUSED
  };
  };
  
  
@@ -41,7 +39,7 @@ Index: linux-2.6.30-rc6/arch/arm/mach-s3c2410/include/mach/dma.h
  /* enum s3c2410_dma_loadst
  /* enum s3c2410_dma_loadst
   *
   *
   * This represents the state of the DMA engine, wrt to the loaded / running
   * This represents the state of the DMA engine, wrt to the loaded / running
-@@ -104,32 +103,6 @@
+@@ -104,32 +103,6 @@ enum s3c2410_dma_loadst {
  	S3C2410_DMALOAD_1LOADED_1RUNNING,
  	S3C2410_DMALOAD_1LOADED_1RUNNING,
  };
  };
  
  
@@ -74,7 +72,7 @@ Index: linux-2.6.30-rc6/arch/arm/mach-s3c2410/include/mach/dma.h
  
  
  /* flags */
  /* flags */
  
  
-@@ -137,19 +110,18 @@
+@@ -137,19 +110,18 @@ enum s3c2410_chan_op {
  					    * waiting for reloads */
  					    * waiting for reloads */
  #define S3C2410_DMAF_AUTOSTART    (1<<1)   /* auto-start if buffer queued */
  #define S3C2410_DMAF_AUTOSTART    (1<<1)   /* auto-start if buffer queued */
  
  
@@ -98,7 +96,7 @@ Index: linux-2.6.30-rc6/arch/arm/mach-s3c2410/include/mach/dma.h
  struct s3c2410_dma_buf {
  struct s3c2410_dma_buf {
  	struct s3c2410_dma_buf	*next;
  	struct s3c2410_dma_buf	*next;
  	int			 magic;		/* magic */
  	int			 magic;		/* magic */
-@@ -161,20 +133,6 @@
+@@ -161,20 +133,6 @@ struct s3c2410_dma_buf {
  
  
  /* [1] is this updated for both recv/send modes? */
  /* [1] is this updated for both recv/send modes? */
  
  
@@ -119,7 +117,7 @@ Index: linux-2.6.30-rc6/arch/arm/mach-s3c2410/include/mach/dma.h
  struct s3c2410_dma_stats {
  struct s3c2410_dma_stats {
  	unsigned long		loads;
  	unsigned long		loads;
  	unsigned long		timeout_longest;
  	unsigned long		timeout_longest;
-@@ -206,10 +164,10 @@
+@@ -206,10 +164,10 @@ struct s3c2410_dma_chan {
  
  
  	/* channel configuration */
  	/* channel configuration */
  	enum s3c2410_dmasrc	 source;
  	enum s3c2410_dmasrc	 source;
@@ -131,7 +129,7 @@ Index: linux-2.6.30-rc6/arch/arm/mach-s3c2410/include/mach/dma.h
  
  
  	struct s3c24xx_dma_map	*map;		/* channel hw maps */
  	struct s3c24xx_dma_map	*map;		/* channel hw maps */
  
  
-@@ -236,213 +194,12 @@
+@@ -236,213 +194,12 @@ struct s3c2410_dma_chan {
  	struct sys_device	dev;
  	struct sys_device	dev;
  };
  };
  
  
@@ -349,11 +347,9 @@ Index: linux-2.6.30-rc6/arch/arm/mach-s3c2410/include/mach/dma.h
 +}
 +}
  
  
  #endif /* __ASM_ARCH_DMA_H */
  #endif /* __ASM_ARCH_DMA_H */
-Index: linux-2.6.30-rc6/arch/arm/mach-s3c2442/Kconfig
-===================================================================
---- linux-2.6.30-rc6.orig/arch/arm/mach-s3c2442/Kconfig	2009-05-16 06:12:57.000000000 +0200
-+++ linux-2.6.30-rc6/arch/arm/mach-s3c2442/Kconfig	2009-05-18 19:08:29.000000000 +0200
-@@ -11,6 +11,7 @@
+--- a/arch/arm/mach-s3c2442/Kconfig
++++ b/arch/arm/mach-s3c2442/Kconfig
+@@ -11,6 +11,7 @@ config CPU_S3C2442
  	select S3C2410_CLOCK
  	select S3C2410_CLOCK
  	select S3C2410_GPIO
  	select S3C2410_GPIO
  	select S3C2410_PM if PM
  	select S3C2410_PM if PM
@@ -361,10 +357,8 @@ Index: linux-2.6.30-rc6/arch/arm/mach-s3c2442/Kconfig
  	select CPU_S3C244X
  	select CPU_S3C244X
  	select CPU_LLSERIAL_S3C2440
  	select CPU_LLSERIAL_S3C2440
  	help
  	help
-Index: linux-2.6.30-rc6/arch/arm/plat-s3c/dma.c
-===================================================================
---- /dev/null	1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.30-rc6/arch/arm/plat-s3c/dma.c	2009-05-18 19:08:29.000000000 +0200
+--- /dev/null
++++ b/arch/arm/plat-s3c/dma.c
 @@ -0,0 +1,86 @@
 @@ -0,0 +1,86 @@
 +/* linux/arch/arm/plat-s3c/dma.c
 +/* linux/arch/arm/plat-s3c/dma.c
 + *
 + *
@@ -452,10 +446,8 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c/dma.c
 +	return 0;
 +	return 0;
 +}
 +}
 +EXPORT_SYMBOL(s3c2410_dma_setflags);
 +EXPORT_SYMBOL(s3c2410_dma_setflags);
-Index: linux-2.6.30-rc6/arch/arm/plat-s3c/include/plat/dma-core.h
-===================================================================
---- /dev/null	1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.30-rc6/arch/arm/plat-s3c/include/plat/dma-core.h	2009-05-18 19:08:29.000000000 +0200
+--- /dev/null
++++ b/arch/arm/plat-s3c/include/plat/dma-core.h
 @@ -0,0 +1,22 @@
 @@ -0,0 +1,22 @@
 +/* arch/arm/plat-s3c/include/plat/dma.h
 +/* arch/arm/plat-s3c/include/plat/dma.h
 + *
 + *
@@ -479,10 +471,8 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c/include/plat/dma-core.h
 +extern struct s3c2410_dma_chan s3c2410_chans[];
 +extern struct s3c2410_dma_chan s3c2410_chans[];
 +
 +
 +
 +
-Index: linux-2.6.30-rc6/arch/arm/plat-s3c/include/plat/dma.h
-===================================================================
---- /dev/null	1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.30-rc6/arch/arm/plat-s3c/include/plat/dma.h	2009-05-18 19:08:29.000000000 +0200
+--- /dev/null
++++ b/arch/arm/plat-s3c/include/plat/dma.h
 @@ -0,0 +1,128 @@
 @@ -0,0 +1,128 @@
 +/* arch/arm/plat-s3c/include/plat/dma.h
 +/* arch/arm/plat-s3c/include/plat/dma.h
 + *
 + *
@@ -612,11 +602,9 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c/include/plat/dma.h
 +extern int s3c2410_dma_set_buffdone_fn(unsigned int, s3c2410_dma_cbfn_t rtn);
 +extern int s3c2410_dma_set_buffdone_fn(unsigned int, s3c2410_dma_cbfn_t rtn);
 +
 +
 +
 +
-Index: linux-2.6.30-rc6/arch/arm/plat-s3c/Kconfig
-===================================================================
---- linux-2.6.30-rc6.orig/arch/arm/plat-s3c/Kconfig	2009-05-16 06:12:57.000000000 +0200
-+++ linux-2.6.30-rc6/arch/arm/plat-s3c/Kconfig	2009-05-18 19:08:29.000000000 +0200
-@@ -150,6 +150,13 @@
+--- a/arch/arm/plat-s3c/Kconfig
++++ b/arch/arm/plat-s3c/Kconfig
+@@ -150,6 +150,13 @@ config S3C_GPIO_CFG_S3C64XX
  	  Internal configuration to enable S3C64XX style GPIO configuration
  	  Internal configuration to enable S3C64XX style GPIO configuration
  	  functions.
  	  functions.
  
  
@@ -630,11 +618,9 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c/Kconfig
  # device definitions to compile in
  # device definitions to compile in
  
  
  config S3C_DEV_HSMMC
  config S3C_DEV_HSMMC
-Index: linux-2.6.30-rc6/arch/arm/plat-s3c/Makefile
-===================================================================
---- linux-2.6.30-rc6.orig/arch/arm/plat-s3c/Makefile	2009-05-18 19:07:48.000000000 +0200
-+++ linux-2.6.30-rc6/arch/arm/plat-s3c/Makefile	2009-05-18 19:08:29.000000000 +0200
-@@ -18,6 +18,10 @@
+--- a/arch/arm/plat-s3c/Makefile
++++ b/arch/arm/plat-s3c/Makefile
+@@ -18,6 +18,10 @@ obj-y				+= pwm-clock.o
  obj-y				+= gpio.o
  obj-y				+= gpio.o
  obj-y				+= gpio-config.o
  obj-y				+= gpio-config.o
  
  
@@ -645,16 +631,14 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c/Makefile
  # PM support
  # PM support
  
  
  obj-$(CONFIG_PM)		+= pm.o
  obj-$(CONFIG_PM)		+= pm.o
-@@ -31,3 +35,5 @@
+@@ -31,3 +35,5 @@ obj-$(CONFIG_S3C_DEV_HSMMC1)	+= dev-hsmm
  obj-y				+= dev-i2c0.o
  obj-y				+= dev-i2c0.o
  obj-$(CONFIG_S3C_DEV_I2C1)	+= dev-i2c1.o
  obj-$(CONFIG_S3C_DEV_I2C1)	+= dev-i2c1.o
  obj-$(CONFIG_S3C_DEV_FB)	+= dev-fb.o
  obj-$(CONFIG_S3C_DEV_FB)	+= dev-fb.o
 +obj-$(CONFIG_S3C_DMA)		+= dma.o
 +obj-$(CONFIG_S3C_DMA)		+= dma.o
 +
 +
-Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/dma.c
-===================================================================
---- linux-2.6.30-rc6.orig/arch/arm/plat-s3c24xx/dma.c	2009-05-16 06:12:57.000000000 +0200
-+++ linux-2.6.30-rc6/arch/arm/plat-s3c24xx/dma.c	2009-05-18 19:08:29.000000000 +0200
+--- a/arch/arm/plat-s3c24xx/dma.c
++++ b/arch/arm/plat-s3c24xx/dma.c
 @@ -31,10 +31,11 @@
 @@ -31,10 +31,11 @@
  #include <asm/irq.h>
  #include <asm/irq.h>
  #include <mach/hardware.h>
  #include <mach/hardware.h>
@@ -669,7 +653,7 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/dma.c
  
  
  /* io map for dma */
  /* io map for dma */
  static void __iomem *dma_base;
  static void __iomem *dma_base;
-@@ -44,8 +45,6 @@
+@@ -44,8 +45,6 @@ static int dma_channels;
  
  
  static struct s3c24xx_dma_selection dma_sel;
  static struct s3c24xx_dma_selection dma_sel;
  
  
@@ -678,7 +662,7 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/dma.c
  
  
  /* debugging functions */
  /* debugging functions */
  
  
-@@ -135,21 +134,6 @@
+@@ -135,21 +134,6 @@ dmadbg_showregs(const char *fname, int l
  #define dbg_showchan(chan) do { } while(0)
  #define dbg_showchan(chan) do { } while(0)
  #endif /* CONFIG_S3C2410_DMA_DEBUG */
  #endif /* CONFIG_S3C2410_DMA_DEBUG */
  
  
@@ -700,7 +684,7 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/dma.c
  /* s3c2410_dma_stats_timeout
  /* s3c2410_dma_stats_timeout
   *
   *
   * Update DMA stats from timeout info
   * Update DMA stats from timeout info
-@@ -214,8 +198,6 @@
+@@ -214,8 +198,6 @@ s3c2410_dma_waitforload(struct s3c2410_d
  	return 0;
  	return 0;
  }
  }
  
  
@@ -709,7 +693,7 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/dma.c
  /* s3c2410_dma_loadbuffer
  /* s3c2410_dma_loadbuffer
   *
   *
   * load a buffer, and update the channel state
   * load a buffer, and update the channel state
-@@ -453,7 +435,7 @@
+@@ -453,7 +435,7 @@ s3c2410_dma_canload(struct s3c2410_dma_c
  int s3c2410_dma_enqueue(unsigned int channel, void *id,
  int s3c2410_dma_enqueue(unsigned int channel, void *id,
  			dma_addr_t data, int size)
  			dma_addr_t data, int size)
  {
  {
@@ -718,7 +702,7 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/dma.c
  	struct s3c2410_dma_buf *buf;
  	struct s3c2410_dma_buf *buf;
  	unsigned long flags;
  	unsigned long flags;
  
  
-@@ -804,7 +786,7 @@
+@@ -804,7 +786,7 @@ EXPORT_SYMBOL(s3c2410_dma_request);
  
  
  int s3c2410_dma_free(unsigned int channel, struct s3c2410_dma_client *client)
  int s3c2410_dma_free(unsigned int channel, struct s3c2410_dma_client *client)
  {
  {
@@ -727,7 +711,7 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/dma.c
  	unsigned long flags;
  	unsigned long flags;
  
  
  	if (chan == NULL)
  	if (chan == NULL)
-@@ -836,7 +818,7 @@
+@@ -836,7 +818,7 @@ int s3c2410_dma_free(unsigned int channe
  	chan->irq_claimed = 0;
  	chan->irq_claimed = 0;
  
  
  	if (!(channel & DMACH_LOW_LEVEL))
  	if (!(channel & DMACH_LOW_LEVEL))
@@ -736,7 +720,7 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/dma.c
  
  
  	local_irq_restore(flags);
  	local_irq_restore(flags);
  
  
-@@ -995,7 +977,7 @@
+@@ -995,7 +977,7 @@ static int s3c2410_dma_started(struct s3
  int
  int
  s3c2410_dma_ctrl(unsigned int channel, enum s3c2410_chan_op op)
  s3c2410_dma_ctrl(unsigned int channel, enum s3c2410_chan_op op)
  {
  {
@@ -745,7 +729,7 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/dma.c
  
  
  	if (chan == NULL)
  	if (chan == NULL)
  		return -EINVAL;
  		return -EINVAL;
-@@ -1038,14 +1020,13 @@
+@@ -1038,14 +1020,13 @@ EXPORT_SYMBOL(s3c2410_dma_ctrl);
  /* s3c2410_dma_config
  /* s3c2410_dma_config
   *
   *
   * xfersize:     size of unit in bytes (1,2,4)
   * xfersize:     size of unit in bytes (1,2,4)
@@ -763,7 +747,7 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/dma.c
  
  
  	pr_debug("%s: chan=%d, xfer_unit=%d, dcon=%08x\n",
  	pr_debug("%s: chan=%d, xfer_unit=%d, dcon=%08x\n",
  		 __func__, channel, xferunit, dcon);
  		 __func__, channel, xferunit, dcon);
-@@ -1055,10 +1036,33 @@
+@@ -1055,10 +1036,33 @@ int s3c2410_dma_config(unsigned int chan
  
  
  	pr_debug("%s: Initial dcon is %08x\n", __func__, dcon);
  	pr_debug("%s: Initial dcon is %08x\n", __func__, dcon);
  
  
@@ -798,7 +782,7 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/dma.c
  	switch (xferunit) {
  	switch (xferunit) {
  	case 1:
  	case 1:
  		dcon |= S3C2410_DCON_BYTE;
  		dcon |= S3C2410_DCON_BYTE;
-@@ -1089,10 +1093,10 @@
+@@ -1089,10 +1093,10 @@ int s3c2410_dma_config(unsigned int chan
  }
  }
  
  
  EXPORT_SYMBOL(s3c2410_dma_config);
  EXPORT_SYMBOL(s3c2410_dma_config);
@@ -811,7 +795,7 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/dma.c
  
  
  	if (chan == NULL)
  	if (chan == NULL)
  		return -EINVAL;
  		return -EINVAL;
-@@ -1105,43 +1109,7 @@
+@@ -1105,43 +1109,7 @@ int s3c2410_dma_setflags(unsigned int ch
  }
  }
  
  
  EXPORT_SYMBOL(s3c2410_dma_setflags);
  EXPORT_SYMBOL(s3c2410_dma_setflags);
@@ -856,7 +840,7 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/dma.c
  
  
  /* s3c2410_dma_devconfig
  /* s3c2410_dma_devconfig
   *
   *
-@@ -1150,29 +1118,38 @@
+@@ -1150,29 +1118,38 @@ EXPORT_SYMBOL(s3c2410_dma_set_buffdone_f
   * source:    S3C2410_DMASRC_HW: source is hardware
   * source:    S3C2410_DMASRC_HW: source is hardware
   *            S3C2410_DMASRC_MEM: source is memory
   *            S3C2410_DMASRC_MEM: source is memory
   *
   *
@@ -904,7 +888,7 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/dma.c
  
  
  	switch (source) {
  	switch (source) {
  	case S3C2410_DMASRC_HW:
  	case S3C2410_DMASRC_HW:
-@@ -1219,7 +1196,7 @@
+@@ -1219,7 +1196,7 @@ EXPORT_SYMBOL(s3c2410_dma_devconfig);
  
  
  int s3c2410_dma_getposition(unsigned int channel, dma_addr_t *src, dma_addr_t *dst)
  int s3c2410_dma_getposition(unsigned int channel, dma_addr_t *src, dma_addr_t *dst)
  {
  {
@@ -913,7 +897,7 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/dma.c
  
  
  	if (chan == NULL)
  	if (chan == NULL)
  		return -EINVAL;
  		return -EINVAL;
-@@ -1278,8 +1255,8 @@
+@@ -1278,8 +1255,8 @@ static int s3c2410_dma_resume(struct sys
  
  
  	printk(KERN_INFO "dma%d: restoring configuration\n", cp->number);
  	printk(KERN_INFO "dma%d: restoring configuration\n", cp->number);
  
  
@@ -924,7 +908,7 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/dma.c
  
  
  	/* re-select the dma source for this channel */
  	/* re-select the dma source for this channel */
  
  
-@@ -1476,7 +1453,8 @@
+@@ -1476,7 +1453,8 @@ static struct s3c2410_dma_chan *s3c2410_
   found:
   found:
  	dmach = &s3c2410_chans[ch];
  	dmach = &s3c2410_chans[ch];
  	dmach->map = ch_map;
  	dmach->map = ch_map;
@@ -934,10 +918,8 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/dma.c
  
  
  	/* select the channel */
  	/* select the channel */
  
  
-Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/include/plat/dma.h
-===================================================================
---- linux-2.6.30-rc6.orig/arch/arm/plat-s3c24xx/include/plat/dma.h	2009-05-16 06:12:57.000000000 +0200
-+++ /dev/null	1970-01-01 00:00:00.000000000 +0000
+--- a/arch/arm/plat-s3c24xx/include/plat/dma.h
++++ /dev/null
 @@ -1,82 +0,0 @@
 @@ -1,82 +0,0 @@
 -/* linux/include/asm-arm/plat-s3c24xx/dma.h
 -/* linux/include/asm-arm/plat-s3c24xx/dma.h
 - *
 - *
@@ -1021,10 +1003,8 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/include/plat/dma.h
 -
 -
 -extern int s3c24xx_dma_init(unsigned int channels, unsigned int irq,
 -extern int s3c24xx_dma_init(unsigned int channels, unsigned int irq,
 -			    unsigned int stride);
 -			    unsigned int stride);
-Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/include/plat/dma-plat.h
-===================================================================
---- /dev/null	1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.30-rc6/arch/arm/plat-s3c24xx/include/plat/dma-plat.h	2009-05-18 19:08:29.000000000 +0200
+--- /dev/null
++++ b/arch/arm/plat-s3c24xx/include/plat/dma-plat.h
 @@ -0,0 +1,84 @@
 @@ -0,0 +1,84 @@
 +/* linux/arch/arm/plat-s3c24xx/include/plat/dma-plat.h
 +/* linux/arch/arm/plat-s3c24xx/include/plat/dma-plat.h
 + *
 + *
@@ -1110,10 +1090,8 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/include/plat/dma-plat.h
 +
 +
 +extern int s3c24xx_dma_init(unsigned int channels, unsigned int irq,
 +extern int s3c24xx_dma_init(unsigned int channels, unsigned int irq,
 +			    unsigned int stride);
 +			    unsigned int stride);
-Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/include/plat/regs-dma.h
-===================================================================
---- /dev/null	1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.30-rc6/arch/arm/plat-s3c24xx/include/plat/regs-dma.h	2009-05-18 19:08:29.000000000 +0200
+--- /dev/null
++++ b/arch/arm/plat-s3c24xx/include/plat/regs-dma.h
 @@ -0,0 +1,145 @@
 @@ -0,0 +1,145 @@
 +/* arch/arm/mach-s3c2410/include/mach/dma.h
 +/* arch/arm/mach-s3c2410/include/mach/dma.h
 + *
 + *
@@ -1260,11 +1238,9 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/include/plat/regs-dma.h
 +#define S3C2443_DMAREQSEL_PCMOUT	S3C2443_DMAREQSEL_SRC(27)
 +#define S3C2443_DMAREQSEL_PCMOUT	S3C2443_DMAREQSEL_SRC(27)
 +#define S3C2443_DMAREQSEL_PCMIN 	S3C2443_DMAREQSEL_SRC(28)
 +#define S3C2443_DMAREQSEL_PCMIN 	S3C2443_DMAREQSEL_SRC(28)
 +#define S3C2443_DMAREQSEL_MICIN		S3C2443_DMAREQSEL_SRC(29)
 +#define S3C2443_DMAREQSEL_MICIN		S3C2443_DMAREQSEL_SRC(29)
-Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/Kconfig
-===================================================================
---- linux-2.6.30-rc6.orig/arch/arm/plat-s3c24xx/Kconfig	2009-05-16 06:12:57.000000000 +0200
-+++ linux-2.6.30-rc6/arch/arm/plat-s3c24xx/Kconfig	2009-05-18 19:08:29.000000000 +0200
-@@ -71,6 +71,7 @@
+--- a/arch/arm/plat-s3c24xx/Kconfig
++++ b/arch/arm/plat-s3c24xx/Kconfig
+@@ -71,6 +71,7 @@ config PM_SIMTEC
  config S3C2410_DMA
  config S3C2410_DMA
  	bool "S3C2410 DMA support"
  	bool "S3C2410 DMA support"
  	depends on ARCH_S3C2410
  	depends on ARCH_S3C2410
@@ -1272,10 +1248,8 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/Kconfig
  	help
  	help
  	  S3C2410 DMA support. This is needed for drivers like sound which
  	  S3C2410 DMA support. This is needed for drivers like sound which
  	  use the S3C2410's DMA system to move data to and from the
  	  use the S3C2410's DMA system to move data to and from the
-Index: linux-2.6.30-rc6/arch/arm/mach-s3c2410/dma.c
-===================================================================
---- linux-2.6.30-rc6.orig/arch/arm/mach-s3c2410/dma.c	2009-05-16 06:12:57.000000000 +0200
-+++ linux-2.6.30-rc6/arch/arm/mach-s3c2410/dma.c	2009-05-18 19:08:29.000000000 +0200
+--- a/arch/arm/mach-s3c2410/dma.c
++++ b/arch/arm/mach-s3c2410/dma.c
 @@ -17,14 +17,16 @@
 @@ -17,14 +17,16 @@
  #include <linux/sysdev.h>
  #include <linux/sysdev.h>
  #include <linux/serial_core.h>
  #include <linux/serial_core.h>
@@ -1294,10 +1268,8 @@ Index: linux-2.6.30-rc6/arch/arm/mach-s3c2410/dma.c
  #include <mach/regs-mem.h>
  #include <mach/regs-mem.h>
  #include <mach/regs-lcd.h>
  #include <mach/regs-lcd.h>
  #include <mach/regs-sdi.h>
  #include <mach/regs-sdi.h>
-Index: linux-2.6.30-rc6/arch/arm/mach-s3c2440/dma.c
-===================================================================
---- linux-2.6.30-rc6.orig/arch/arm/mach-s3c2440/dma.c	2009-05-16 06:12:57.000000000 +0200
-+++ linux-2.6.30-rc6/arch/arm/mach-s3c2440/dma.c	2009-05-18 19:08:29.000000000 +0200
+--- a/arch/arm/mach-s3c2440/dma.c
++++ b/arch/arm/mach-s3c2440/dma.c
 @@ -17,14 +17,16 @@
 @@ -17,14 +17,16 @@
  #include <linux/sysdev.h>
  #include <linux/sysdev.h>
  #include <linux/serial_core.h>
  #include <linux/serial_core.h>

+ 12 - 22
target/linux/s3c24xx/patches-2.6.30/011-s3c-pwm.patch

@@ -1,7 +1,5 @@
-Index: linux-2.6.30-rc6/arch/arm/plat-s3c/include/plat/pwm.h
-===================================================================
---- /dev/null	1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.30-rc6/arch/arm/plat-s3c/include/plat/pwm.h	2009-05-18 19:08:30.000000000 +0200
+--- /dev/null
++++ b/arch/arm/plat-s3c/include/plat/pwm.h
 @@ -0,0 +1,45 @@
 @@ -0,0 +1,45 @@
 +#ifndef __S3C2410_PWM_H
 +#ifndef __S3C2410_PWM_H
 +#define __S3C2410_PWM_H
 +#define __S3C2410_PWM_H
@@ -48,11 +46,9 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c/include/plat/pwm.h
 +int s3c2410_pwm_dumpregs(void);
 +int s3c2410_pwm_dumpregs(void);
 +
 +
 +#endif /* __S3C2410_PWM_H */
 +#endif /* __S3C2410_PWM_H */
-Index: linux-2.6.30-rc6/arch/arm/plat-s3c/Kconfig
-===================================================================
---- linux-2.6.30-rc6.orig/arch/arm/plat-s3c/Kconfig	2009-05-18 19:08:29.000000000 +0200
-+++ linux-2.6.30-rc6/arch/arm/plat-s3c/Kconfig	2009-05-18 19:08:30.000000000 +0200
-@@ -157,6 +157,11 @@
+--- a/arch/arm/plat-s3c/Kconfig
++++ b/arch/arm/plat-s3c/Kconfig
+@@ -157,6 +157,11 @@ config S3C_DMA
  	help
  	help
  	  Internal configuration for S3C DMA core
  	  Internal configuration for S3C DMA core
  
  
@@ -64,21 +60,17 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c/Kconfig
  # device definitions to compile in
  # device definitions to compile in
  
  
  config S3C_DEV_HSMMC
  config S3C_DEV_HSMMC
-Index: linux-2.6.30-rc6/arch/arm/plat-s3c/Makefile
-===================================================================
---- linux-2.6.30-rc6.orig/arch/arm/plat-s3c/Makefile	2009-05-18 19:08:29.000000000 +0200
-+++ linux-2.6.30-rc6/arch/arm/plat-s3c/Makefile	2009-05-18 19:08:30.000000000 +0200
-@@ -35,5 +35,6 @@
+--- a/arch/arm/plat-s3c/Makefile
++++ b/arch/arm/plat-s3c/Makefile
+@@ -35,5 +35,6 @@ obj-$(CONFIG_S3C_DEV_HSMMC1)	+= dev-hsmm
  obj-y				+= dev-i2c0.o
  obj-y				+= dev-i2c0.o
  obj-$(CONFIG_S3C_DEV_I2C1)	+= dev-i2c1.o
  obj-$(CONFIG_S3C_DEV_I2C1)	+= dev-i2c1.o
  obj-$(CONFIG_S3C_DEV_FB)	+= dev-fb.o
  obj-$(CONFIG_S3C_DEV_FB)	+= dev-fb.o
 +obj-$(CONFIG_S3C_PWM)		+= pwm.o
 +obj-$(CONFIG_S3C_PWM)		+= pwm.o
  obj-$(CONFIG_S3C_DMA)		+= dma.o
  obj-$(CONFIG_S3C_DMA)		+= dma.o
  
  
-Index: linux-2.6.30-rc6/arch/arm/plat-s3c/pwm.c
-===================================================================
---- /dev/null	1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.30-rc6/arch/arm/plat-s3c/pwm.c	2009-05-18 19:08:30.000000000 +0200
+--- /dev/null
++++ b/arch/arm/plat-s3c/pwm.c
 @@ -0,0 +1,288 @@
 @@ -0,0 +1,288 @@
 +/*
 +/*
 + * arch/arm/plat-s3c/pwm.c
 + * arch/arm/plat-s3c/pwm.c
@@ -368,10 +360,8 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c/pwm.c
 +
 +
 +module_init(s3c24xx_pwm_init);
 +module_init(s3c24xx_pwm_init);
 +module_exit(s3c24xx_pwm_exit);
 +module_exit(s3c24xx_pwm_exit);
-Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/pwm-clock.c
-===================================================================
---- /dev/null	1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.30-rc6/arch/arm/plat-s3c24xx/pwm-clock.c	2009-05-18 19:08:30.000000000 +0200
+--- /dev/null
++++ b/arch/arm/plat-s3c24xx/pwm-clock.c
 @@ -0,0 +1,437 @@
 @@ -0,0 +1,437 @@
 +/* linux/arch/arm/plat-s3c24xx/pwm-clock.c
 +/* linux/arch/arm/plat-s3c24xx/pwm-clock.c
 + *
 + *

+ 13 - 23
target/linux/s3c24xx/patches-2.6.30/012-s3c-usb.patch

@@ -1,7 +1,5 @@
-Index: linux-2.6.30-rc6/arch/arm/plat-s3c/dev-usb.c
-===================================================================
---- /dev/null	1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.30-rc6/arch/arm/plat-s3c/dev-usb.c	2009-05-18 19:08:30.000000000 +0200
+--- /dev/null
++++ b/arch/arm/plat-s3c/dev-usb.c
 @@ -0,0 +1,50 @@
 @@ -0,0 +1,50 @@
 +/* linux/arch/arm/plat-s3c/dev-usb.c
 +/* linux/arch/arm/plat-s3c/dev-usb.c
 + *
 + *
@@ -53,10 +51,8 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c/dev-usb.c
 +};
 +};
 +
 +
 +EXPORT_SYMBOL(s3c_device_usb);
 +EXPORT_SYMBOL(s3c_device_usb);
-Index: linux-2.6.30-rc6/arch/arm/plat-s3c/include/plat/regs-usb-hs-otg.h
-===================================================================
---- /dev/null	1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.30-rc6/arch/arm/plat-s3c/include/plat/regs-usb-hs-otg.h	2009-05-18 19:08:30.000000000 +0200
+--- /dev/null
++++ b/arch/arm/plat-s3c/include/plat/regs-usb-hs-otg.h
 @@ -0,0 +1,360 @@
 @@ -0,0 +1,360 @@
 +/* linux/include/asm-arm/arch-s3c2410/regs-udc.h
 +/* linux/include/asm-arm/arch-s3c2410/regs-udc.h
 + *
 + *
@@ -418,11 +414,9 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c/include/plat/regs-usb-hs-otg.h
 +#define XFERSIZE(x)			(x<<0)
 +#define XFERSIZE(x)			(x<<0)
 +
 +
 +#endif
 +#endif
-Index: linux-2.6.30-rc6/arch/arm/plat-s3c/Kconfig
-===================================================================
---- linux-2.6.30-rc6.orig/arch/arm/plat-s3c/Kconfig	2009-05-18 19:08:30.000000000 +0200
-+++ linux-2.6.30-rc6/arch/arm/plat-s3c/Kconfig	2009-05-18 19:08:30.000000000 +0200
-@@ -184,4 +184,9 @@
+--- a/arch/arm/plat-s3c/Kconfig
++++ b/arch/arm/plat-s3c/Kconfig
+@@ -184,4 +184,9 @@ config S3C_DEV_FB
  	help
  	help
  	  Compile in platform device definition for framebuffer
  	  Compile in platform device definition for framebuffer
  
  
@@ -432,11 +426,9 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c/Kconfig
 +	  Compile in platform device definition for USB host.
 +	  Compile in platform device definition for USB host.
 +
 +
  endif
  endif
-Index: linux-2.6.30-rc6/arch/arm/plat-s3c/Makefile
-===================================================================
---- linux-2.6.30-rc6.orig/arch/arm/plat-s3c/Makefile	2009-05-18 19:08:30.000000000 +0200
-+++ linux-2.6.30-rc6/arch/arm/plat-s3c/Makefile	2009-05-18 19:08:30.000000000 +0200
-@@ -35,6 +35,8 @@
+--- a/arch/arm/plat-s3c/Makefile
++++ b/arch/arm/plat-s3c/Makefile
+@@ -35,6 +35,8 @@ obj-$(CONFIG_S3C_DEV_HSMMC1)	+= dev-hsmm
  obj-y				+= dev-i2c0.o
  obj-y				+= dev-i2c0.o
  obj-$(CONFIG_S3C_DEV_I2C1)	+= dev-i2c1.o
  obj-$(CONFIG_S3C_DEV_I2C1)	+= dev-i2c1.o
  obj-$(CONFIG_S3C_DEV_FB)	+= dev-fb.o
  obj-$(CONFIG_S3C_DEV_FB)	+= dev-fb.o
@@ -445,11 +437,9 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c/Makefile
  obj-$(CONFIG_S3C_PWM)		+= pwm.o
  obj-$(CONFIG_S3C_PWM)		+= pwm.o
  obj-$(CONFIG_S3C_DMA)		+= dma.o
  obj-$(CONFIG_S3C_DMA)		+= dma.o
  
  
-Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/devs.c
-===================================================================
---- linux-2.6.30-rc6.orig/arch/arm/plat-s3c24xx/devs.c	2009-05-16 06:12:57.000000000 +0200
-+++ linux-2.6.30-rc6/arch/arm/plat-s3c24xx/devs.c	2009-05-18 19:08:30.000000000 +0200
-@@ -136,36 +136,6 @@
+--- a/arch/arm/plat-s3c24xx/devs.c
++++ b/arch/arm/plat-s3c24xx/devs.c
+@@ -136,36 +136,6 @@ struct platform_device *s3c24xx_uart_src
  struct platform_device *s3c24xx_uart_devs[4] = {
  struct platform_device *s3c24xx_uart_devs[4] = {
  };
  };
  
  

+ 18 - 26
target/linux/s3c24xx/patches-2.6.30/013-fiq_c_handler.patch

@@ -1,7 +1,5 @@
-Index: linux-2.6.30-rc6/arch/arm/kernel/fiq.c
-===================================================================
---- linux-2.6.30-rc6.orig/arch/arm/kernel/fiq.c	2009-05-16 06:12:57.000000000 +0200
-+++ linux-2.6.30-rc6/arch/arm/kernel/fiq.c	2009-05-18 19:08:30.000000000 +0200
+--- a/arch/arm/kernel/fiq.c
++++ b/arch/arm/kernel/fiq.c
 @@ -8,6 +8,8 @@
 @@ -8,6 +8,8 @@
   *
   *
   *  FIQ support re-written by Russell King to be more generic
   *  FIQ support re-written by Russell King to be more generic
@@ -11,7 +9,7 @@ Index: linux-2.6.30-rc6/arch/arm/kernel/fiq.c
   * We now properly support a method by which the FIQ handlers can
   * We now properly support a method by which the FIQ handlers can
   * be stacked onto the vector.  We still do not support sharing
   * be stacked onto the vector.  We still do not support sharing
   * the FIQ vector itself.
   * the FIQ vector itself.
-@@ -124,6 +126,83 @@
+@@ -124,6 +126,83 @@ void __naked get_fiq_regs(struct pt_regs
  	: "r" (&regs->ARM_r8), "I" (PSR_I_BIT | PSR_F_BIT | FIQ_MODE));
  	: "r" (&regs->ARM_r8), "I" (PSR_I_BIT | PSR_F_BIT | FIQ_MODE));
  }
  }
  
  
@@ -95,11 +93,9 @@ Index: linux-2.6.30-rc6/arch/arm/kernel/fiq.c
  int claim_fiq(struct fiq_handler *f)
  int claim_fiq(struct fiq_handler *f)
  {
  {
  	int ret = 0;
  	int ret = 0;
-Index: linux-2.6.30-rc6/arch/arm/include/asm/fiq.h
-===================================================================
---- linux-2.6.30-rc6.orig/arch/arm/include/asm/fiq.h	2009-05-16 06:12:57.000000000 +0200
-+++ linux-2.6.30-rc6/arch/arm/include/asm/fiq.h	2009-05-18 19:08:30.000000000 +0200
-@@ -29,8 +29,9 @@
+--- a/arch/arm/include/asm/fiq.h
++++ b/arch/arm/include/asm/fiq.h
+@@ -29,8 +29,9 @@ struct fiq_handler {
  extern int claim_fiq(struct fiq_handler *f);
  extern int claim_fiq(struct fiq_handler *f);
  extern void release_fiq(struct fiq_handler *f);
  extern void release_fiq(struct fiq_handler *f);
  extern void set_fiq_handler(void *start, unsigned int length);
  extern void set_fiq_handler(void *start, unsigned int length);
@@ -111,10 +107,8 @@ Index: linux-2.6.30-rc6/arch/arm/include/asm/fiq.h
  extern void enable_fiq(int fiq);
  extern void enable_fiq(int fiq);
  extern void disable_fiq(int fiq);
  extern void disable_fiq(int fiq);
  
  
-Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/include/plat/irq.h
-===================================================================
---- linux-2.6.30-rc6.orig/arch/arm/plat-s3c24xx/include/plat/irq.h	2009-05-16 06:12:57.000000000 +0200
-+++ linux-2.6.30-rc6/arch/arm/plat-s3c24xx/include/plat/irq.h	2009-05-18 19:08:30.000000000 +0200
+--- a/arch/arm/plat-s3c24xx/include/plat/irq.h
++++ b/arch/arm/plat-s3c24xx/include/plat/irq.h
 @@ -12,6 +12,7 @@
 @@ -12,6 +12,7 @@
  
  
  #include <linux/io.h>
  #include <linux/io.h>
@@ -123,7 +117,7 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/include/plat/irq.h
  #include <mach/hardware.h>
  #include <mach/hardware.h>
  #include <mach/regs-irq.h>
  #include <mach/regs-irq.h>
  #include <mach/regs-gpio.h>
  #include <mach/regs-gpio.h>
-@@ -31,8 +32,15 @@
+@@ -31,8 +32,15 @@ s3c_irqsub_mask(unsigned int irqno, unsi
  {
  {
  	unsigned long mask;
  	unsigned long mask;
  	unsigned long submask;
  	unsigned long submask;
@@ -139,7 +133,7 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/include/plat/irq.h
  	mask = __raw_readl(S3C2410_INTMSK);
  	mask = __raw_readl(S3C2410_INTMSK);
  
  
  	submask |= (1UL << (irqno - IRQ_S3CUART_RX0));
  	submask |= (1UL << (irqno - IRQ_S3CUART_RX0));
-@@ -45,6 +53,9 @@
+@@ -45,6 +53,9 @@ s3c_irqsub_mask(unsigned int irqno, unsi
  
  
  	/* write back masks */
  	/* write back masks */
  	__raw_writel(submask, S3C2410_INTSUBMSK);
  	__raw_writel(submask, S3C2410_INTSUBMSK);
@@ -149,7 +143,7 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/include/plat/irq.h
  
  
  }
  }
  
  
-@@ -53,8 +64,15 @@
+@@ -53,8 +64,15 @@ s3c_irqsub_unmask(unsigned int irqno, un
  {
  {
  	unsigned long mask;
  	unsigned long mask;
  	unsigned long submask;
  	unsigned long submask;
@@ -165,7 +159,7 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/include/plat/irq.h
  	mask = __raw_readl(S3C2410_INTMSK);
  	mask = __raw_readl(S3C2410_INTMSK);
  
  
  	submask &= ~(1UL << (irqno - IRQ_S3CUART_RX0));
  	submask &= ~(1UL << (irqno - IRQ_S3CUART_RX0));
-@@ -63,6 +81,9 @@
+@@ -63,6 +81,9 @@ s3c_irqsub_unmask(unsigned int irqno, un
  	/* write back masks */
  	/* write back masks */
  	__raw_writel(submask, S3C2410_INTSUBMSK);
  	__raw_writel(submask, S3C2410_INTSUBMSK);
  	__raw_writel(mask, S3C2410_INTMSK);
  	__raw_writel(mask, S3C2410_INTMSK);
@@ -175,10 +169,8 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/include/plat/irq.h
  }
  }
  
  
  
  
-Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/irq.c
-===================================================================
---- linux-2.6.30-rc6.orig/arch/arm/plat-s3c24xx/irq.c	2009-05-16 06:12:57.000000000 +0200
-+++ linux-2.6.30-rc6/arch/arm/plat-s3c24xx/irq.c	2009-05-18 19:08:30.000000000 +0200
+--- a/arch/arm/plat-s3c24xx/irq.c
++++ b/arch/arm/plat-s3c24xx/irq.c
 @@ -28,6 +28,8 @@
 @@ -28,6 +28,8 @@
  #include <asm/mach/irq.h>
  #include <asm/mach/irq.h>
  
  
@@ -188,7 +180,7 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/irq.c
  
  
  #include <plat/cpu.h>
  #include <plat/cpu.h>
  #include <plat/pm.h>
  #include <plat/pm.h>
-@@ -37,12 +39,20 @@
+@@ -37,12 +39,20 @@ static void
  s3c_irq_mask(unsigned int irqno)
  s3c_irq_mask(unsigned int irqno)
  {
  {
  	unsigned long mask;
  	unsigned long mask;
@@ -211,7 +203,7 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/irq.c
  }
  }
  
  
  static inline void
  static inline void
-@@ -59,9 +69,19 @@
+@@ -59,9 +69,19 @@ s3c_irq_maskack(unsigned int irqno)
  {
  {
  	unsigned long bitval = 1UL << (irqno - IRQ_EINT0);
  	unsigned long bitval = 1UL << (irqno - IRQ_EINT0);
  	unsigned long mask;
  	unsigned long mask;
@@ -232,7 +224,7 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/irq.c
  
  
  	__raw_writel(bitval, S3C2410_SRCPND);
  	__raw_writel(bitval, S3C2410_SRCPND);
  	__raw_writel(bitval, S3C2410_INTPND);
  	__raw_writel(bitval, S3C2410_INTPND);
-@@ -72,15 +92,25 @@
+@@ -72,15 +92,25 @@ static void
  s3c_irq_unmask(unsigned int irqno)
  s3c_irq_unmask(unsigned int irqno)
  {
  {
  	unsigned long mask;
  	unsigned long mask;
@@ -258,7 +250,7 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/irq.c
  }
  }
  
  
  struct irq_chip s3c_irq_level_chip = {
  struct irq_chip s3c_irq_level_chip = {
-@@ -523,26 +553,26 @@
+@@ -523,26 +553,26 @@ void __init s3c24xx_init_irq(void)
  
  
  	last = 0;
  	last = 0;
  	for (i = 0; i < 4; i++) {
  	for (i = 0; i < 4; i++) {

+ 9 - 15
target/linux/s3c24xx/patches-2.6.30/014-neo1973_mach.patch

@@ -1,8 +1,6 @@
-Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/Kconfig
-===================================================================
---- linux-2.6.30-rc6.orig/arch/arm/plat-s3c24xx/Kconfig	2009-05-18 19:08:29.000000000 +0200
-+++ linux-2.6.30-rc6/arch/arm/plat-s3c24xx/Kconfig	2009-05-18 19:08:31.000000000 +0200
-@@ -112,4 +112,20 @@
+--- a/arch/arm/plat-s3c24xx/Kconfig
++++ b/arch/arm/plat-s3c24xx/Kconfig
+@@ -112,4 +112,20 @@ config MACH_SMDK
  	help
  	help
  	  Common machine code for SMDK2410 and SMDK2440
  	  Common machine code for SMDK2410 and SMDK2440
  
  
@@ -23,11 +21,9 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/Kconfig
 +	  Common machine code for Neo1973 hardware
 +	  Common machine code for Neo1973 hardware
 +
 +
  endif
  endif
-Index: linux-2.6.30-rc6/arch/arm/mach-s3c2442/Makefile
-===================================================================
---- linux-2.6.30-rc6.orig/arch/arm/mach-s3c2442/Makefile	2009-05-16 06:12:57.000000000 +0200
-+++ linux-2.6.30-rc6/arch/arm/mach-s3c2442/Makefile	2009-05-18 19:08:31.000000000 +0200
-@@ -14,3 +14,9 @@
+--- a/arch/arm/mach-s3c2442/Makefile
++++ b/arch/arm/mach-s3c2442/Makefile
+@@ -14,3 +14,9 @@ obj-$(CONFIG_CPU_S3C2442)	+= clock.o
  
  
  # Machine support
  # Machine support
  
  
@@ -37,11 +33,9 @@ Index: linux-2.6.30-rc6/arch/arm/mach-s3c2442/Makefile
 +                                   gta02-pm-bt.o  \
 +                                   gta02-pm-bt.o  \
 +                                   gta02-pm-wlan.o  \
 +                                   gta02-pm-wlan.o  \
 +                                   gta02-shadow.o
 +                                   gta02-shadow.o
-Index: linux-2.6.30-rc6/drivers/misc/Makefile
-===================================================================
---- linux-2.6.30-rc6.orig/drivers/misc/Makefile	2009-05-16 06:12:57.000000000 +0200
-+++ linux-2.6.30-rc6/drivers/misc/Makefile	2009-05-18 19:08:31.000000000 +0200
-@@ -21,3 +21,6 @@
+--- a/drivers/misc/Makefile
++++ b/drivers/misc/Makefile
+@@ -21,3 +21,6 @@ obj-$(CONFIG_HP_ILO)		+= hpilo.o
  obj-$(CONFIG_ISL29003)		+= isl29003.o
  obj-$(CONFIG_ISL29003)		+= isl29003.o
  obj-$(CONFIG_C2PORT)		+= c2port/
  obj-$(CONFIG_C2PORT)		+= c2port/
  obj-y				+= eeprom/
  obj-y				+= eeprom/

+ 8 - 14
target/linux/s3c24xx/patches-2.6.30/015-mach-gta02.patch

@@ -1,8 +1,6 @@
-Index: linux-2.6.30-rc6/arch/arm/mach-s3c2442/Kconfig
-===================================================================
---- linux-2.6.30-rc6.orig/arch/arm/mach-s3c2442/Kconfig	2009-05-18 19:08:29.000000000 +0200
-+++ linux-2.6.30-rc6/arch/arm/mach-s3c2442/Kconfig	2009-05-18 19:08:31.000000000 +0200
-@@ -25,6 +25,20 @@
+--- a/arch/arm/mach-s3c2442/Kconfig
++++ b/arch/arm/mach-s3c2442/Kconfig
+@@ -25,6 +25,20 @@ config SMDK2440_CPU2442
  	depends on ARCH_S3C2440
  	depends on ARCH_S3C2440
  	select CPU_S3C2442
  	select CPU_S3C2442
  
  
@@ -23,11 +21,9 @@ Index: linux-2.6.30-rc6/arch/arm/mach-s3c2442/Kconfig
  
  
  endmenu
  endmenu
  
  
-Index: linux-2.6.30-rc6/arch/arm/mach-s3c2442/Makefile
-===================================================================
---- linux-2.6.30-rc6.orig/arch/arm/mach-s3c2442/Makefile	2009-05-18 19:08:31.000000000 +0200
-+++ linux-2.6.30-rc6/arch/arm/mach-s3c2442/Makefile	2009-05-18 19:08:31.000000000 +0200
-@@ -9,8 +9,11 @@
+--- a/arch/arm/mach-s3c2442/Makefile
++++ b/arch/arm/mach-s3c2442/Makefile
+@@ -9,8 +9,11 @@ obj-m				:=
  obj-n				:=
  obj-n				:=
  obj-				:=
  obj-				:=
  
  
@@ -39,10 +35,8 @@ Index: linux-2.6.30-rc6/arch/arm/mach-s3c2442/Makefile
  
  
  # Machine support
  # Machine support
  
  
-Index: linux-2.6.30-rc6/arch/arm/mach-s3c2410/include/mach/irqs.h
-===================================================================
---- linux-2.6.30-rc6.orig/arch/arm/mach-s3c2410/include/mach/irqs.h	2009-05-16 06:12:57.000000000 +0200
-+++ linux-2.6.30-rc6/arch/arm/mach-s3c2410/include/mach/irqs.h	2009-05-18 19:08:31.000000000 +0200
+--- a/arch/arm/mach-s3c2410/include/mach/irqs.h
++++ b/arch/arm/mach-s3c2410/include/mach/irqs.h
 @@ -153,9 +153,9 @@
 @@ -153,9 +153,9 @@
  #define IRQ_S3C2443_AC97	S3C2410_IRQSUB(28)
  #define IRQ_S3C2443_AC97	S3C2410_IRQSUB(28)
  
  

+ 18 - 30
target/linux/s3c24xx/patches-2.6.30/050-s3c2442-touchscreen.patch

@@ -1,7 +1,5 @@
-Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/devs.c
-===================================================================
---- linux-2.6.30-rc6.orig/arch/arm/plat-s3c24xx/devs.c	2009-05-18 19:08:30.000000000 +0200
-+++ linux-2.6.30-rc6/arch/arm/plat-s3c24xx/devs.c	2009-05-18 19:08:31.000000000 +0200
+--- a/arch/arm/plat-s3c24xx/devs.c
++++ b/arch/arm/plat-s3c24xx/devs.c
 @@ -26,6 +26,8 @@
 @@ -26,6 +26,8 @@
  #include <asm/mach/irq.h>
  #include <asm/mach/irq.h>
  #include <mach/fb.h>
  #include <mach/fb.h>
@@ -11,7 +9,7 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/devs.c
  #include <asm/irq.h>
  #include <asm/irq.h>
  
  
  #include <plat/regs-serial.h>
  #include <plat/regs-serial.h>
-@@ -199,6 +201,24 @@
+@@ -199,6 +201,24 @@ struct platform_device s3c_device_nand =
  
  
  EXPORT_SYMBOL(s3c_device_nand);
  EXPORT_SYMBOL(s3c_device_nand);
  
  
@@ -36,11 +34,9 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/devs.c
  /* USB Device (Gadget)*/
  /* USB Device (Gadget)*/
  
  
  static struct resource s3c_usbgadget_resource[] = {
  static struct resource s3c_usbgadget_resource[] = {
-Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/s3c244x.c
-===================================================================
---- linux-2.6.30-rc6.orig/arch/arm/plat-s3c24xx/s3c244x.c	2009-05-16 06:12:57.000000000 +0200
-+++ linux-2.6.30-rc6/arch/arm/plat-s3c24xx/s3c244x.c	2009-05-18 19:08:31.000000000 +0200
-@@ -59,6 +59,8 @@
+--- a/arch/arm/plat-s3c24xx/s3c244x.c
++++ b/arch/arm/plat-s3c24xx/s3c244x.c
+@@ -59,6 +59,8 @@ void __init s3c244x_init_uarts(struct s3
  	s3c24xx_init_uartdevs("s3c2440-uart", s3c2410_uart_resources, cfg, no);
  	s3c24xx_init_uartdevs("s3c2440-uart", s3c2410_uart_resources, cfg, no);
  }
  }
  
  
@@ -49,7 +45,7 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/s3c244x.c
  void __init s3c244x_map_io(void)
  void __init s3c244x_map_io(void)
  {
  {
  	/* register our io-tables */
  	/* register our io-tables */
-@@ -70,6 +72,7 @@
+@@ -70,6 +72,7 @@ void __init s3c244x_map_io(void)
  	s3c_device_sdi.name  = "s3c2440-sdi";
  	s3c_device_sdi.name  = "s3c2440-sdi";
  	s3c_device_i2c0.name  = "s3c2440-i2c";
  	s3c_device_i2c0.name  = "s3c2440-i2c";
  	s3c_device_nand.name = "s3c2440-nand";
  	s3c_device_nand.name = "s3c2440-nand";
@@ -57,11 +53,9 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/s3c244x.c
  	s3c_device_usbgadget.name = "s3c2440-usbgadget";
  	s3c_device_usbgadget.name = "s3c2440-usbgadget";
  }
  }
  
  
-Index: linux-2.6.30-rc6/drivers/input/touchscreen/Kconfig
-===================================================================
---- linux-2.6.30-rc6.orig/drivers/input/touchscreen/Kconfig	2009-05-16 06:12:57.000000000 +0200
-+++ linux-2.6.30-rc6/drivers/input/touchscreen/Kconfig	2009-05-18 19:08:31.000000000 +0200
-@@ -124,6 +124,24 @@
+--- a/drivers/input/touchscreen/Kconfig
++++ b/drivers/input/touchscreen/Kconfig
+@@ -124,6 +124,24 @@ config TOUCHSCREEN_FUJITSU
  	  To compile this driver as a module, choose M here: the
  	  To compile this driver as a module, choose M here: the
  	  module will be called fujitsu-ts.
  	  module will be called fujitsu-ts.
  
  
@@ -86,19 +80,15 @@ Index: linux-2.6.30-rc6/drivers/input/touchscreen/Kconfig
  config TOUCHSCREEN_GUNZE
  config TOUCHSCREEN_GUNZE
  	tristate "Gunze AHL-51S touchscreen"
  	tristate "Gunze AHL-51S touchscreen"
  	select SERIO
  	select SERIO
-Index: linux-2.6.30-rc6/drivers/input/touchscreen/Makefile
-===================================================================
---- linux-2.6.30-rc6.orig/drivers/input/touchscreen/Makefile	2009-05-16 06:12:57.000000000 +0200
-+++ linux-2.6.30-rc6/drivers/input/touchscreen/Makefile	2009-05-18 19:08:31.000000000 +0200
-@@ -37,3 +37,4 @@
+--- a/drivers/input/touchscreen/Makefile
++++ b/drivers/input/touchscreen/Makefile
+@@ -37,3 +37,4 @@ wm97xx-ts-$(CONFIG_TOUCHSCREEN_WM9712)	+
  wm97xx-ts-$(CONFIG_TOUCHSCREEN_WM9713)	+= wm9713.o
  wm97xx-ts-$(CONFIG_TOUCHSCREEN_WM9713)	+= wm9713.o
  obj-$(CONFIG_TOUCHSCREEN_WM97XX_MAINSTONE)	+= mainstone-wm97xx.o
  obj-$(CONFIG_TOUCHSCREEN_WM97XX_MAINSTONE)	+= mainstone-wm97xx.o
  obj-$(CONFIG_TOUCHSCREEN_WM97XX_ZYLONITE)	+= zylonite-wm97xx.o
  obj-$(CONFIG_TOUCHSCREEN_WM97XX_ZYLONITE)	+= zylonite-wm97xx.o
 +obj-$(CONFIG_TOUCHSCREEN_S3C2410)	+= s3c2410_ts.o
 +obj-$(CONFIG_TOUCHSCREEN_S3C2410)	+= s3c2410_ts.o
-Index: linux-2.6.30-rc6/arch/arm/mach-s3c2410/include/mach/ts.h
-===================================================================
---- /dev/null	1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.30-rc6/arch/arm/mach-s3c2410/include/mach/ts.h	2009-05-18 19:08:31.000000000 +0200
+--- /dev/null
++++ b/arch/arm/mach-s3c2410/include/mach/ts.h
 @@ -0,0 +1,35 @@
 @@ -0,0 +1,35 @@
 +/* arch/arm/mach-s3c2410/include/mach/ts.h
 +/* arch/arm/mach-s3c2410/include/mach/ts.h
 + *
 + *
@@ -135,11 +125,9 @@ Index: linux-2.6.30-rc6/arch/arm/mach-s3c2410/include/mach/ts.h
 +void set_s3c2410ts_info(const struct s3c2410_ts_mach_info *hard_s3c2410ts_info);
 +void set_s3c2410ts_info(const struct s3c2410_ts_mach_info *hard_s3c2410ts_info);
 +
 +
 +#endif /* __ASM_ARM_TS_H */
 +#endif /* __ASM_ARM_TS_H */
-Index: linux-2.6.30-rc6/arch/arm/plat-s3c/include/plat/devs.h
-===================================================================
---- linux-2.6.30-rc6.orig/arch/arm/plat-s3c/include/plat/devs.h	2009-05-18 19:07:48.000000000 +0200
-+++ linux-2.6.30-rc6/arch/arm/plat-s3c/include/plat/devs.h	2009-05-18 19:08:31.000000000 +0200
-@@ -50,10 +50,11 @@
+--- a/arch/arm/plat-s3c/include/plat/devs.h
++++ b/arch/arm/plat-s3c/include/plat/devs.h
+@@ -50,10 +50,11 @@ extern struct platform_device s3c_device
  
  
  extern struct platform_device s3c_device_usbgadget;
  extern struct platform_device s3c_device_usbgadget;
  
  

+ 6 - 10
target/linux/s3c24xx/patches-2.6.30/051-gta02kbd.patch

@@ -1,8 +1,6 @@
-Index: linux-2.6.30-rc6/drivers/input/keyboard/Kconfig
-===================================================================
---- linux-2.6.30-rc6.orig/drivers/input/keyboard/Kconfig	2009-05-16 06:12:57.000000000 +0200
-+++ linux-2.6.30-rc6/drivers/input/keyboard/Kconfig	2009-05-18 19:08:32.000000000 +0200
-@@ -332,4 +332,15 @@
+--- a/drivers/input/keyboard/Kconfig
++++ b/drivers/input/keyboard/Kconfig
+@@ -332,4 +332,15 @@ config KEYBOARD_SH_KEYSC
  
  
  	  To compile this driver as a module, choose M here: the
  	  To compile this driver as a module, choose M here: the
  	  module will be called sh_keysc.
  	  module will be called sh_keysc.
@@ -18,11 +16,9 @@ Index: linux-2.6.30-rc6/drivers/input/keyboard/Kconfig
 +	  module will be called gta02kbd.
 +	  module will be called gta02kbd.
 +
 +
  endif
  endif
-Index: linux-2.6.30-rc6/drivers/input/keyboard/Makefile
-===================================================================
---- linux-2.6.30-rc6.orig/drivers/input/keyboard/Makefile	2009-05-16 06:12:57.000000000 +0200
-+++ linux-2.6.30-rc6/drivers/input/keyboard/Makefile	2009-05-18 19:08:32.000000000 +0200
-@@ -14,6 +14,7 @@
+--- a/drivers/input/keyboard/Makefile
++++ b/drivers/input/keyboard/Makefile
+@@ -14,6 +14,7 @@ obj-$(CONFIG_KEYBOARD_LOCOMO)		+= locomo
  obj-$(CONFIG_KEYBOARD_NEWTON)		+= newtonkbd.o
  obj-$(CONFIG_KEYBOARD_NEWTON)		+= newtonkbd.o
  obj-$(CONFIG_KEYBOARD_STOWAWAY)		+= stowaway.o
  obj-$(CONFIG_KEYBOARD_STOWAWAY)		+= stowaway.o
  obj-$(CONFIG_KEYBOARD_CORGI)		+= corgikbd.o
  obj-$(CONFIG_KEYBOARD_CORGI)		+= corgikbd.o

+ 6 - 10
target/linux/s3c24xx/patches-2.6.30/052-touchscreen_filter.patch

@@ -1,8 +1,6 @@
-Index: linux-2.6.30-rc6/drivers/input/touchscreen/Kconfig
-===================================================================
---- linux-2.6.30-rc6.orig/drivers/input/touchscreen/Kconfig	2009-05-18 19:08:31.000000000 +0200
-+++ linux-2.6.30-rc6/drivers/input/touchscreen/Kconfig	2009-05-18 19:08:32.000000000 +0200
-@@ -11,6 +11,54 @@
+--- a/drivers/input/touchscreen/Kconfig
++++ b/drivers/input/touchscreen/Kconfig
+@@ -11,6 +11,54 @@ menuconfig INPUT_TOUCHSCREEN
  
  
  if INPUT_TOUCHSCREEN
  if INPUT_TOUCHSCREEN
  
  
@@ -57,11 +55,9 @@ Index: linux-2.6.30-rc6/drivers/input/touchscreen/Kconfig
  config TOUCHSCREEN_ADS7846
  config TOUCHSCREEN_ADS7846
  	tristate "ADS7846/TSC2046 and ADS7843 based touchscreens"
  	tristate "ADS7846/TSC2046 and ADS7843 based touchscreens"
  	depends on SPI_MASTER
  	depends on SPI_MASTER
-Index: linux-2.6.30-rc6/drivers/input/touchscreen/Makefile
-===================================================================
---- linux-2.6.30-rc6.orig/drivers/input/touchscreen/Makefile	2009-05-18 19:08:31.000000000 +0200
-+++ linux-2.6.30-rc6/drivers/input/touchscreen/Makefile	2009-05-18 19:08:32.000000000 +0200
-@@ -38,3 +38,8 @@
+--- a/drivers/input/touchscreen/Makefile
++++ b/drivers/input/touchscreen/Makefile
+@@ -38,3 +38,8 @@ wm97xx-ts-$(CONFIG_TOUCHSCREEN_WM9713)	+
  obj-$(CONFIG_TOUCHSCREEN_WM97XX_MAINSTONE)	+= mainstone-wm97xx.o
  obj-$(CONFIG_TOUCHSCREEN_WM97XX_MAINSTONE)	+= mainstone-wm97xx.o
  obj-$(CONFIG_TOUCHSCREEN_WM97XX_ZYLONITE)	+= zylonite-wm97xx.o
  obj-$(CONFIG_TOUCHSCREEN_WM97XX_ZYLONITE)	+= zylonite-wm97xx.o
  obj-$(CONFIG_TOUCHSCREEN_S3C2410)	+= s3c2410_ts.o
  obj-$(CONFIG_TOUCHSCREEN_S3C2410)	+= s3c2410_ts.o

+ 8 - 14
target/linux/s3c24xx/patches-2.6.30/053-glamo.patch

@@ -1,8 +1,6 @@
-Index: linux-2.6.30-rc6/drivers/mfd/Kconfig
-===================================================================
---- linux-2.6.30-rc6.orig/drivers/mfd/Kconfig	2009-05-16 06:12:57.000000000 +0200
-+++ linux-2.6.30-rc6/drivers/mfd/Kconfig	2009-05-18 19:08:32.000000000 +0200
-@@ -241,6 +241,8 @@
+--- a/drivers/mfd/Kconfig
++++ b/drivers/mfd/Kconfig
+@@ -241,6 +241,8 @@ config PCF50633_GPIO
  	 Say yes here if you want to include support GPIO for pins on
  	 Say yes here if you want to include support GPIO for pins on
  	 the PCF50633 chip.
  	 the PCF50633 chip.
  
  
@@ -11,10 +9,8 @@ Index: linux-2.6.30-rc6/drivers/mfd/Kconfig
  endmenu
  endmenu
  
  
  menu "Multimedia Capabilities Port drivers"
  menu "Multimedia Capabilities Port drivers"
-Index: linux-2.6.30-rc6/drivers/mfd/Makefile
-===================================================================
---- linux-2.6.30-rc6.orig/drivers/mfd/Makefile	2009-05-16 06:12:57.000000000 +0200
-+++ linux-2.6.30-rc6/drivers/mfd/Makefile	2009-05-18 19:08:32.000000000 +0200
+--- a/drivers/mfd/Makefile
++++ b/drivers/mfd/Makefile
 @@ -4,6 +4,7 @@
 @@ -4,6 +4,7 @@
  
  
  obj-$(CONFIG_MFD_SM501)		+= sm501.o
  obj-$(CONFIG_MFD_SM501)		+= sm501.o
@@ -23,11 +19,9 @@ Index: linux-2.6.30-rc6/drivers/mfd/Makefile
  
  
  obj-$(CONFIG_HTC_EGPIO)		+= htc-egpio.o
  obj-$(CONFIG_HTC_EGPIO)		+= htc-egpio.o
  obj-$(CONFIG_HTC_PASIC3)	+= htc-pasic3.o
  obj-$(CONFIG_HTC_PASIC3)	+= htc-pasic3.o
-Index: linux-2.6.30-rc6/include/linux/fb.h
-===================================================================
---- linux-2.6.30-rc6.orig/include/linux/fb.h	2009-05-16 06:12:57.000000000 +0200
-+++ linux-2.6.30-rc6/include/linux/fb.h	2009-05-18 19:08:32.000000000 +0200
-@@ -124,6 +124,7 @@
+--- a/include/linux/fb.h
++++ b/include/linux/fb.h
+@@ -124,6 +124,7 @@ struct dentry;
  #define FB_ACCEL_TRIDENT_BLADE3D 52	/* Trident Blade3D		*/
  #define FB_ACCEL_TRIDENT_BLADE3D 52	/* Trident Blade3D		*/
  #define FB_ACCEL_TRIDENT_BLADEXP 53	/* Trident BladeXP		*/
  #define FB_ACCEL_TRIDENT_BLADEXP 53	/* Trident BladeXP		*/
  #define FB_ACCEL_CIRRUS_ALPINE   53	/* Cirrus Logic 543x/544x/5480	*/
  #define FB_ACCEL_CIRRUS_ALPINE   53	/* Cirrus Logic 543x/544x/5480	*/

+ 6 - 10
target/linux/s3c24xx/patches-2.6.30/054-bq27000.patch

@@ -1,8 +1,6 @@
-Index: linux-2.6.30-rc6/drivers/power/Kconfig
-===================================================================
---- linux-2.6.30-rc6.orig/drivers/power/Kconfig	2009-05-16 06:12:57.000000000 +0200
-+++ linux-2.6.30-rc6/drivers/power/Kconfig	2009-05-18 19:08:32.000000000 +0200
-@@ -88,4 +88,16 @@
+--- a/drivers/power/Kconfig
++++ b/drivers/power/Kconfig
+@@ -88,4 +88,16 @@ config CHARGER_PCF50633
  	help
  	help
  	 Say Y to include support for NXP PCF50633 Main Battery Charger.
  	 Say Y to include support for NXP PCF50633 Main Battery Charger.
  
  
@@ -19,11 +17,9 @@ Index: linux-2.6.30-rc6/drivers/power/Kconfig
 +
 +
  endif # POWER_SUPPLY
  endif # POWER_SUPPLY
 +
 +
-Index: linux-2.6.30-rc6/drivers/power/Makefile
-===================================================================
---- linux-2.6.30-rc6.orig/drivers/power/Makefile	2009-05-16 06:12:57.000000000 +0200
-+++ linux-2.6.30-rc6/drivers/power/Makefile	2009-05-18 19:08:32.000000000 +0200
-@@ -25,4 +25,7 @@
+--- a/drivers/power/Makefile
++++ b/drivers/power/Makefile
+@@ -25,4 +25,7 @@ obj-$(CONFIG_BATTERY_TOSA)	+= tosa_batte
  obj-$(CONFIG_BATTERY_WM97XX)	+= wm97xx_battery.o
  obj-$(CONFIG_BATTERY_WM97XX)	+= wm97xx_battery.o
  obj-$(CONFIG_BATTERY_BQ27x00)	+= bq27x00_battery.o
  obj-$(CONFIG_BATTERY_BQ27x00)	+= bq27x00_battery.o
  obj-$(CONFIG_BATTERY_DA9030)	+= da9030_battery.o
  obj-$(CONFIG_BATTERY_DA9030)	+= da9030_battery.o

+ 6 - 10
target/linux/s3c24xx/patches-2.6.30/055-gta02-leds.patch

@@ -1,8 +1,6 @@
-Index: linux-2.6.30-rc6/drivers/leds/Kconfig
-===================================================================
---- linux-2.6.30-rc6.orig/drivers/leds/Kconfig	2009-05-18 19:07:07.000000000 +0200
-+++ linux-2.6.30-rc6/drivers/leds/Kconfig	2009-05-18 19:08:33.000000000 +0200
-@@ -227,6 +227,19 @@
+--- a/drivers/leds/Kconfig
++++ b/drivers/leds/Kconfig
+@@ -227,6 +227,19 @@ config LEDS_BD2802
  	  This option enables support for BD2802GU RGB LED driver chips
  	  This option enables support for BD2802GU RGB LED driver chips
  	  accessed via the I2C bus.
  	  accessed via the I2C bus.
  
  
@@ -22,11 +20,9 @@ Index: linux-2.6.30-rc6/drivers/leds/Kconfig
  comment "LED Triggers"
  comment "LED Triggers"
  
  
  config LEDS_TRIGGERS
  config LEDS_TRIGGERS
-Index: linux-2.6.30-rc6/drivers/leds/Makefile
-===================================================================
---- linux-2.6.30-rc6.orig/drivers/leds/Makefile	2009-05-18 19:07:07.000000000 +0200
-+++ linux-2.6.30-rc6/drivers/leds/Makefile	2009-05-18 19:08:33.000000000 +0200
-@@ -30,6 +30,8 @@
+--- a/drivers/leds/Makefile
++++ b/drivers/leds/Makefile
+@@ -30,6 +30,8 @@ obj-$(CONFIG_LEDS_PWM)			+= leds-pwm.o
  
  
  # LED SPI Drivers
  # LED SPI Drivers
  obj-$(CONFIG_LEDS_DAC124S085)		+= leds-dac124s085.o
  obj-$(CONFIG_LEDS_DAC124S085)		+= leds-dac124s085.o

+ 5 - 9
target/linux/s3c24xx/patches-2.6.30/055-jbt6k74.patch

@@ -1,8 +1,6 @@
-Index: linux-2.6.30-rc6/drivers/video/display/Kconfig
-===================================================================
---- linux-2.6.30-rc6.orig/drivers/video/display/Kconfig	2009-05-16 06:12:57.000000000 +0200
-+++ linux-2.6.30-rc6/drivers/video/display/Kconfig	2009-05-18 19:08:33.000000000 +0200
-@@ -21,4 +21,15 @@
+--- a/drivers/video/display/Kconfig
++++ b/drivers/video/display/Kconfig
+@@ -21,4 +21,15 @@ config DISPLAY_SUPPORT
  comment "Display hardware drivers"
  comment "Display hardware drivers"
  	depends on DISPLAY_SUPPORT
  	depends on DISPLAY_SUPPORT
  
  
@@ -18,10 +16,8 @@ Index: linux-2.6.30-rc6/drivers/video/display/Kconfig
 +	  controls power management, display timing and gamma calibration.
 +	  controls power management, display timing and gamma calibration.
 +
 +
  endmenu
  endmenu
-Index: linux-2.6.30-rc6/drivers/video/display/Makefile
-===================================================================
---- linux-2.6.30-rc6.orig/drivers/video/display/Makefile	2009-05-16 06:12:57.000000000 +0200
-+++ linux-2.6.30-rc6/drivers/video/display/Makefile	2009-05-18 19:08:33.000000000 +0200
+--- a/drivers/video/display/Makefile
++++ b/drivers/video/display/Makefile
 @@ -3,4 +3,5 @@
 @@ -3,4 +3,5 @@
  display-objs				:= display-sysfs.o
  display-objs				:= display-sysfs.o
  
  

+ 31 - 49
target/linux/s3c24xx/patches-2.6.30/056-pcf50633.patch

@@ -1,7 +1,5 @@
-Index: linux-2.6.30-rc6/drivers/mfd/pcf50633-core.c
-===================================================================
---- linux-2.6.30-rc6.orig/drivers/mfd/pcf50633-core.c	2009-05-16 06:12:57.000000000 +0200
-+++ linux-2.6.30-rc6/drivers/mfd/pcf50633-core.c	2009-05-18 19:08:33.000000000 +0200
+--- a/drivers/mfd/pcf50633-core.c
++++ b/drivers/mfd/pcf50633-core.c
 @@ -15,6 +15,7 @@
 @@ -15,6 +15,7 @@
  #include <linux/kernel.h>
  #include <linux/kernel.h>
  #include <linux/device.h>
  #include <linux/device.h>
@@ -10,7 +8,7 @@ Index: linux-2.6.30-rc6/drivers/mfd/pcf50633-core.c
  #include <linux/module.h>
  #include <linux/module.h>
  #include <linux/types.h>
  #include <linux/types.h>
  #include <linux/interrupt.h>
  #include <linux/interrupt.h>
-@@ -345,6 +346,8 @@
+@@ -345,6 +346,8 @@ static void pcf50633_irq_worker(struct w
  		goto out;
  		goto out;
  	}
  	}
  
  
@@ -19,17 +17,7 @@ Index: linux-2.6.30-rc6/drivers/mfd/pcf50633-core.c
  	/* We immediately read the usb and adapter status. We thus make sure
  	/* We immediately read the usb and adapter status. We thus make sure
  	 * only of USBINS/USBREM IRQ handlers are called */
  	 * only of USBINS/USBREM IRQ handlers are called */
  	if (pcf_int[0] & (PCF50633_INT1_USBINS | PCF50633_INT1_USBREM)) {
  	if (pcf_int[0] & (PCF50633_INT1_USBINS | PCF50633_INT1_USBREM)) {
-@@ -443,7 +446,8 @@
- 	dev_dbg(pcf->dev, "pcf50633_irq\n");
- 
- 	get_device(pcf->dev);
--	disable_irq(pcf->irq);
-+	disable_irq_nosync(pcf->irq);
-+
- 	schedule_work(&pcf->irq_work);
- 
- 	return IRQ_HANDLED;
-@@ -482,13 +486,13 @@
+@@ -482,13 +485,13 @@ pcf50633_client_dev_register(struct pcf5
  }
  }
  
  
  #ifdef CONFIG_PM
  #ifdef CONFIG_PM
@@ -45,7 +33,7 @@ Index: linux-2.6.30-rc6/drivers/mfd/pcf50633-core.c
  
  
  	/* Make sure our interrupt handlers are not called
  	/* Make sure our interrupt handlers are not called
  	 * henceforth */
  	 * henceforth */
-@@ -523,12 +527,12 @@
+@@ -523,12 +526,12 @@ out:
  	return ret;
  	return ret;
  }
  }
  
  
@@ -60,7 +48,7 @@ Index: linux-2.6.30-rc6/drivers/mfd/pcf50633-core.c
  
  
  	/* Write the saved mask registers */
  	/* Write the saved mask registers */
  	ret = pcf50633_write_block(pcf, PCF50633_REG_INT1M,
  	ret = pcf50633_write_block(pcf, PCF50633_REG_INT1M,
-@@ -625,6 +629,7 @@
+@@ -625,6 +628,7 @@ static int __devinit pcf50633_probe(stru
  	}
  	}
  
  
  	if (client->irq) {
  	if (client->irq) {
@@ -68,7 +56,7 @@ Index: linux-2.6.30-rc6/drivers/mfd/pcf50633-core.c
  		ret = request_irq(client->irq, pcf50633_irq,
  		ret = request_irq(client->irq, pcf50633_irq,
  				IRQF_TRIGGER_LOW, "pcf50633", pcf);
  				IRQF_TRIGGER_LOW, "pcf50633", pcf);
  
  
-@@ -683,12 +688,12 @@
+@@ -683,12 +687,12 @@ static struct i2c_device_id pcf50633_id_
  static struct i2c_driver pcf50633_driver = {
  static struct i2c_driver pcf50633_driver = {
  	.driver = {
  	.driver = {
  		.name	= "pcf50633",
  		.name	= "pcf50633",
@@ -83,11 +71,9 @@ Index: linux-2.6.30-rc6/drivers/mfd/pcf50633-core.c
  };
  };
  
  
  static int __init pcf50633_init(void)
  static int __init pcf50633_init(void)
-Index: linux-2.6.30-rc6/drivers/power/pcf50633-charger.c
-===================================================================
---- linux-2.6.30-rc6.orig/drivers/power/pcf50633-charger.c	2009-05-16 06:12:57.000000000 +0200
-+++ linux-2.6.30-rc6/drivers/power/pcf50633-charger.c	2009-05-18 19:08:33.000000000 +0200
-@@ -36,6 +36,7 @@
+--- a/drivers/power/pcf50633-charger.c
++++ b/drivers/power/pcf50633-charger.c
+@@ -36,6 +36,7 @@ struct pcf50633_mbc {
  
  
  	struct power_supply usb;
  	struct power_supply usb;
  	struct power_supply adapter;
  	struct power_supply adapter;
@@ -95,7 +81,7 @@ Index: linux-2.6.30-rc6/drivers/power/pcf50633-charger.c
  
  
  	struct delayed_work charging_restart_work;
  	struct delayed_work charging_restart_work;
  };
  };
-@@ -47,16 +48,21 @@
+@@ -47,16 +48,21 @@ int pcf50633_mbc_usb_curlim_set(struct p
  	u8 bits;
  	u8 bits;
  	int charging_start = 1;
  	int charging_start = 1;
  	u8 mbcs2, chgmod;
  	u8 mbcs2, chgmod;
@@ -121,7 +107,7 @@ Index: linux-2.6.30-rc6/drivers/power/pcf50633-charger.c
  	}
  	}
  
  
  	ret = pcf50633_reg_set_bit_mask(pcf, PCF50633_REG_MBCC7,
  	ret = pcf50633_reg_set_bit_mask(pcf, PCF50633_REG_MBCC7,
-@@ -66,7 +72,22 @@
+@@ -66,7 +72,22 @@ int pcf50633_mbc_usb_curlim_set(struct p
  	else
  	else
  		dev_info(pcf->dev, "usb curlim to %d mA\n", ma);
  		dev_info(pcf->dev, "usb curlim to %d mA\n", ma);
  
  
@@ -145,7 +131,7 @@ Index: linux-2.6.30-rc6/drivers/power/pcf50633-charger.c
  	mbcs2 = pcf50633_reg_read(pcf, PCF50633_REG_MBCS2);
  	mbcs2 = pcf50633_reg_read(pcf, PCF50633_REG_MBCS2);
  	chgmod = (mbcs2 & PCF50633_MBCS2_MBC_MASK);
  	chgmod = (mbcs2 & PCF50633_MBCS2_MBC_MASK);
  
  
-@@ -81,7 +102,7 @@
+@@ -81,7 +102,7 @@ int pcf50633_mbc_usb_curlim_set(struct p
  				PCF50633_MBCC1_RESUME, PCF50633_MBCC1_RESUME);
  				PCF50633_MBCC1_RESUME, PCF50633_MBCC1_RESUME);
  
  
  	mbc->usb_active = charging_start;
  	mbc->usb_active = charging_start;
@@ -154,7 +140,7 @@ Index: linux-2.6.30-rc6/drivers/power/pcf50633-charger.c
  	power_supply_changed(&mbc->usb);
  	power_supply_changed(&mbc->usb);
  
  
  	return ret;
  	return ret;
-@@ -156,9 +177,44 @@
+@@ -156,9 +177,44 @@ static ssize_t set_usblim(struct device 
  
  
  static DEVICE_ATTR(usb_curlim, S_IRUGO | S_IWUSR, show_usblim, set_usblim);
  static DEVICE_ATTR(usb_curlim, S_IRUGO | S_IWUSR, show_usblim, set_usblim);
  
  
@@ -199,7 +185,7 @@ Index: linux-2.6.30-rc6/drivers/power/pcf50633-charger.c
  	NULL,
  	NULL,
  };
  };
  
  
-@@ -239,6 +295,7 @@
+@@ -239,6 +295,7 @@ pcf50633_mbc_irq_handler(int irq, void *
  
  
  	power_supply_changed(&mbc->usb);
  	power_supply_changed(&mbc->usb);
  	power_supply_changed(&mbc->adapter);
  	power_supply_changed(&mbc->adapter);
@@ -207,7 +193,7 @@ Index: linux-2.6.30-rc6/drivers/power/pcf50633-charger.c
  
  
  	if (mbc->pcf->pdata->mbc_event_callback)
  	if (mbc->pcf->pdata->mbc_event_callback)
  		mbc->pcf->pdata->mbc_event_callback(mbc->pcf, irq);
  		mbc->pcf->pdata->mbc_event_callback(mbc->pcf, irq);
-@@ -248,8 +305,7 @@
+@@ -248,8 +305,7 @@ static int adapter_get_property(struct p
  			enum power_supply_property psp,
  			enum power_supply_property psp,
  			union power_supply_propval *val)
  			union power_supply_propval *val)
  {
  {
@@ -217,7 +203,7 @@ Index: linux-2.6.30-rc6/drivers/power/pcf50633-charger.c
  	int ret = 0;
  	int ret = 0;
  
  
  	switch (psp) {
  	switch (psp) {
-@@ -269,10 +325,34 @@
+@@ -269,10 +325,34 @@ static int usb_get_property(struct power
  {
  {
  	struct pcf50633_mbc *mbc = container_of(psy, struct pcf50633_mbc, usb);
  	struct pcf50633_mbc *mbc = container_of(psy, struct pcf50633_mbc, usb);
  	int ret = 0;
  	int ret = 0;
@@ -253,7 +239,7 @@ Index: linux-2.6.30-rc6/drivers/power/pcf50633-charger.c
  		break;
  		break;
  	default:
  	default:
  		ret = -EINVAL;
  		ret = -EINVAL;
-@@ -337,6 +417,17 @@
+@@ -337,6 +417,17 @@ static int __devinit pcf50633_mbc_probe(
  	mbc->usb.supplied_to		= mbc->pcf->pdata->batteries;
  	mbc->usb.supplied_to		= mbc->pcf->pdata->batteries;
  	mbc->usb.num_supplicants	= mbc->pcf->pdata->num_batteries;
  	mbc->usb.num_supplicants	= mbc->pcf->pdata->num_batteries;
  
  
@@ -271,7 +257,7 @@ Index: linux-2.6.30-rc6/drivers/power/pcf50633-charger.c
  	ret = power_supply_register(&pdev->dev, &mbc->adapter);
  	ret = power_supply_register(&pdev->dev, &mbc->adapter);
  	if (ret) {
  	if (ret) {
  		dev_err(mbc->pcf->dev, "failed to register adapter\n");
  		dev_err(mbc->pcf->dev, "failed to register adapter\n");
-@@ -352,9 +443,15 @@
+@@ -352,9 +443,15 @@ static int __devinit pcf50633_mbc_probe(
  		return ret;
  		return ret;
  	}
  	}
  
  
@@ -290,11 +276,9 @@ Index: linux-2.6.30-rc6/drivers/power/pcf50633-charger.c
  	ret = sysfs_create_group(&pdev->dev.kobj, &mbc_attr_group);
  	ret = sysfs_create_group(&pdev->dev.kobj, &mbc_attr_group);
  	if (ret)
  	if (ret)
  		dev_err(mbc->pcf->dev, "failed to create sysfs entries\n");
  		dev_err(mbc->pcf->dev, "failed to create sysfs entries\n");
-Index: linux-2.6.30-rc6/drivers/rtc/rtc-pcf50633.c
-===================================================================
---- linux-2.6.30-rc6.orig/drivers/rtc/rtc-pcf50633.c	2009-05-16 06:12:57.000000000 +0200
-+++ linux-2.6.30-rc6/drivers/rtc/rtc-pcf50633.c	2009-05-18 19:08:33.000000000 +0200
-@@ -58,6 +58,7 @@
+--- a/drivers/rtc/rtc-pcf50633.c
++++ b/drivers/rtc/rtc-pcf50633.c
+@@ -58,6 +58,7 @@ struct pcf50633_time {
  struct pcf50633_rtc {
  struct pcf50633_rtc {
  	int alarm_enabled;
  	int alarm_enabled;
  	int second_enabled;
  	int second_enabled;
@@ -302,7 +286,7 @@ Index: linux-2.6.30-rc6/drivers/rtc/rtc-pcf50633.c
  
  
  	struct pcf50633 *pcf;
  	struct pcf50633 *pcf;
  	struct rtc_device *rtc_dev;
  	struct rtc_device *rtc_dev;
-@@ -70,7 +71,7 @@
+@@ -70,7 +71,7 @@ static void pcf2rtc_time(struct rtc_time
  	rtc->tm_hour = bcd2bin(pcf->time[PCF50633_TI_HOUR]);
  	rtc->tm_hour = bcd2bin(pcf->time[PCF50633_TI_HOUR]);
  	rtc->tm_wday = bcd2bin(pcf->time[PCF50633_TI_WKDAY]);
  	rtc->tm_wday = bcd2bin(pcf->time[PCF50633_TI_WKDAY]);
  	rtc->tm_mday = bcd2bin(pcf->time[PCF50633_TI_DAY]);
  	rtc->tm_mday = bcd2bin(pcf->time[PCF50633_TI_DAY]);
@@ -311,7 +295,7 @@ Index: linux-2.6.30-rc6/drivers/rtc/rtc-pcf50633.c
  	rtc->tm_year = bcd2bin(pcf->time[PCF50633_TI_YEAR]) + 100;
  	rtc->tm_year = bcd2bin(pcf->time[PCF50633_TI_YEAR]) + 100;
  }
  }
  
  
-@@ -81,7 +82,7 @@
+@@ -81,7 +82,7 @@ static void rtc2pcf_time(struct pcf50633
  	pcf->time[PCF50633_TI_HOUR] = bin2bcd(rtc->tm_hour);
  	pcf->time[PCF50633_TI_HOUR] = bin2bcd(rtc->tm_hour);
  	pcf->time[PCF50633_TI_WKDAY] = bin2bcd(rtc->tm_wday);
  	pcf->time[PCF50633_TI_WKDAY] = bin2bcd(rtc->tm_wday);
  	pcf->time[PCF50633_TI_DAY] = bin2bcd(rtc->tm_mday);
  	pcf->time[PCF50633_TI_DAY] = bin2bcd(rtc->tm_mday);
@@ -320,7 +304,7 @@ Index: linux-2.6.30-rc6/drivers/rtc/rtc-pcf50633.c
  	pcf->time[PCF50633_TI_YEAR] = bin2bcd(rtc->tm_year % 100);
  	pcf->time[PCF50633_TI_YEAR] = bin2bcd(rtc->tm_year % 100);
  }
  }
  
  
-@@ -209,6 +210,7 @@
+@@ -209,6 +210,7 @@ static int pcf50633_rtc_read_alarm(struc
  	rtc = dev_get_drvdata(dev);
  	rtc = dev_get_drvdata(dev);
  
  
  	alrm->enabled = rtc->alarm_enabled;
  	alrm->enabled = rtc->alarm_enabled;
@@ -328,7 +312,7 @@ Index: linux-2.6.30-rc6/drivers/rtc/rtc-pcf50633.c
  
  
  	ret = pcf50633_read_block(rtc->pcf, PCF50633_REG_RTCSCA,
  	ret = pcf50633_read_block(rtc->pcf, PCF50633_REG_RTCSCA,
  				PCF50633_TI_EXTENT, &pcf_tm.time[0]);
  				PCF50633_TI_EXTENT, &pcf_tm.time[0]);
-@@ -244,9 +246,12 @@
+@@ -244,9 +246,12 @@ static int pcf50633_rtc_set_alarm(struct
  	/* Returns 0 on success */
  	/* Returns 0 on success */
  	ret = pcf50633_write_block(rtc->pcf, PCF50633_REG_RTCSCA,
  	ret = pcf50633_write_block(rtc->pcf, PCF50633_REG_RTCSCA,
  				PCF50633_TI_EXTENT, &pcf_tm.time[0]);
  				PCF50633_TI_EXTENT, &pcf_tm.time[0]);
@@ -342,7 +326,7 @@ Index: linux-2.6.30-rc6/drivers/rtc/rtc-pcf50633.c
  
  
  	return ret;
  	return ret;
  }
  }
-@@ -267,6 +272,7 @@
+@@ -267,6 +272,7 @@ static void pcf50633_rtc_irq(int irq, vo
  	switch (irq) {
  	switch (irq) {
  	case PCF50633_IRQ_ALARM:
  	case PCF50633_IRQ_ALARM:
  		rtc_update_irq(rtc->rtc_dev, 1, RTC_AF | RTC_IRQF);
  		rtc_update_irq(rtc->rtc_dev, 1, RTC_AF | RTC_IRQF);
@@ -350,11 +334,9 @@ Index: linux-2.6.30-rc6/drivers/rtc/rtc-pcf50633.c
  		break;
  		break;
  	case PCF50633_IRQ_SECOND:
  	case PCF50633_IRQ_SECOND:
  		rtc_update_irq(rtc->rtc_dev, 1, RTC_UF | RTC_IRQF);
  		rtc_update_irq(rtc->rtc_dev, 1, RTC_UF | RTC_IRQF);
-Index: linux-2.6.30-rc6/include/linux/mfd/pcf50633/core.h
-===================================================================
---- linux-2.6.30-rc6.orig/include/linux/mfd/pcf50633/core.h	2009-05-16 06:12:57.000000000 +0200
-+++ linux-2.6.30-rc6/include/linux/mfd/pcf50633/core.h	2009-05-18 19:08:33.000000000 +0200
-@@ -31,6 +31,8 @@
+--- a/include/linux/mfd/pcf50633/core.h
++++ b/include/linux/mfd/pcf50633/core.h
+@@ -31,6 +31,8 @@ struct pcf50633_platform_data {
  
  
  	int charging_restart_interval;
  	int charging_restart_interval;
  
  
@@ -363,7 +345,7 @@ Index: linux-2.6.30-rc6/include/linux/mfd/pcf50633/core.h
  	/* Callbacks */
  	/* Callbacks */
  	void (*probe_done)(struct pcf50633 *);
  	void (*probe_done)(struct pcf50633 *);
  	void (*mbc_event_callback)(struct pcf50633 *, int);
  	void (*mbc_event_callback)(struct pcf50633 *, int);
-@@ -208,7 +210,8 @@
+@@ -208,7 +210,8 @@ enum pcf50633_reg_int5 {
  };
  };
  
  
  /* misc. registers */
  /* misc. registers */

+ 6 - 10
target/linux/s3c24xx/patches-2.6.30/057-lis302dl.patch

@@ -1,8 +1,6 @@
-Index: linux-2.6.30-rc6/drivers/input/misc/Kconfig
-===================================================================
---- linux-2.6.30-rc6.orig/drivers/input/misc/Kconfig	2009-05-18 19:07:07.000000000 +0200
-+++ linux-2.6.30-rc6/drivers/input/misc/Kconfig	2009-05-18 19:08:33.000000000 +0200
-@@ -220,6 +220,15 @@
+--- a/drivers/input/misc/Kconfig
++++ b/drivers/input/misc/Kconfig
+@@ -220,6 +220,15 @@ config HP_SDC_RTC
  	  Say Y here if you want to support the built-in real time clock
  	  Say Y here if you want to support the built-in real time clock
  	  of the HP SDC controller.
  	  of the HP SDC controller.
  
  
@@ -18,11 +16,9 @@ Index: linux-2.6.30-rc6/drivers/input/misc/Kconfig
  config INPUT_PCF50633_PMU
  config INPUT_PCF50633_PMU
  	tristate "PCF50633 PMU events"
  	tristate "PCF50633 PMU events"
  	depends on MFD_PCF50633
  	depends on MFD_PCF50633
-Index: linux-2.6.30-rc6/drivers/input/misc/Makefile
-===================================================================
---- linux-2.6.30-rc6.orig/drivers/input/misc/Makefile	2009-05-18 19:07:07.000000000 +0200
-+++ linux-2.6.30-rc6/drivers/input/misc/Makefile	2009-05-18 19:08:33.000000000 +0200
-@@ -25,3 +25,4 @@
+--- a/drivers/input/misc/Makefile
++++ b/drivers/input/misc/Makefile
+@@ -25,3 +25,4 @@ obj-$(CONFIG_INPUT_UINPUT)		+= uinput.o
  obj-$(CONFIG_INPUT_WISTRON_BTNS)	+= wistron_btns.o
  obj-$(CONFIG_INPUT_WISTRON_BTNS)	+= wistron_btns.o
  obj-$(CONFIG_INPUT_YEALINK)		+= yealink.o
  obj-$(CONFIG_INPUT_YEALINK)		+= yealink.o
  obj-$(CONFIG_INPUT_GPIO_BUTTONS)	+= gpio_buttons.o
  obj-$(CONFIG_INPUT_GPIO_BUTTONS)	+= gpio_buttons.o

+ 27 - 41
target/linux/s3c24xx/patches-2.6.30/060-spi-gpio-non-blocking.patch

@@ -1,8 +1,6 @@
-Index: linux-2.6.30-rc6/arch/arm/mach-s3c2410/include/mach/spi-gpio.h
-===================================================================
---- linux-2.6.30-rc6.orig/arch/arm/mach-s3c2410/include/mach/spi-gpio.h	2009-05-16 06:12:57.000000000 +0200
-+++ linux-2.6.30-rc6/arch/arm/mach-s3c2410/include/mach/spi-gpio.h	2009-05-18 19:08:34.000000000 +0200
-@@ -21,7 +21,8 @@
+--- a/arch/arm/mach-s3c2410/include/mach/spi-gpio.h
++++ b/arch/arm/mach-s3c2410/include/mach/spi-gpio.h
+@@ -21,7 +21,8 @@ struct s3c2410_spigpio_info {
  	int			 num_chipselect;
  	int			 num_chipselect;
  	int			 bus_num;
  	int			 bus_num;
  
  
@@ -12,11 +10,9 @@ Index: linux-2.6.30-rc6/arch/arm/mach-s3c2410/include/mach/spi-gpio.h
  };
  };
  
  
  
  
-Index: linux-2.6.30-rc6/drivers/spi/spi_bitbang.c
-===================================================================
---- linux-2.6.30-rc6.orig/drivers/spi/spi_bitbang.c	2009-05-16 06:12:57.000000000 +0200
-+++ linux-2.6.30-rc6/drivers/spi/spi_bitbang.c	2009-05-18 19:08:34.000000000 +0200
-@@ -264,6 +264,123 @@
+--- a/drivers/spi/spi_bitbang.c
++++ b/drivers/spi/spi_bitbang.c
+@@ -264,6 +264,123 @@ static int spi_bitbang_bufs(struct spi_d
   * Drivers can provide word-at-a-time i/o primitives, or provide
   * Drivers can provide word-at-a-time i/o primitives, or provide
   * transfer-at-a-time ones to leverage dma or fifo hardware.
   * transfer-at-a-time ones to leverage dma or fifo hardware.
   */
   */
@@ -140,7 +136,7 @@ Index: linux-2.6.30-rc6/drivers/spi/spi_bitbang.c
  static void bitbang_work(struct work_struct *work)
  static void bitbang_work(struct work_struct *work)
  {
  {
  	struct spi_bitbang	*bitbang =
  	struct spi_bitbang	*bitbang =
-@@ -274,120 +391,13 @@
+@@ -274,120 +391,13 @@ static void bitbang_work(struct work_str
  	bitbang->busy = 1;
  	bitbang->busy = 1;
  	while (!list_empty(&bitbang->queue)) {
  	while (!list_empty(&bitbang->queue)) {
  		struct spi_message	*m;
  		struct spi_message	*m;
@@ -263,7 +259,7 @@ Index: linux-2.6.30-rc6/drivers/spi/spi_bitbang.c
  		spin_lock_irqsave(&bitbang->lock, flags);
  		spin_lock_irqsave(&bitbang->lock, flags);
  	}
  	}
  	bitbang->busy = 0;
  	bitbang->busy = 0;
-@@ -459,6 +469,9 @@
+@@ -459,6 +469,9 @@ int spi_bitbang_start(struct spi_bitbang
  
  
  	if (!bitbang->master->transfer)
  	if (!bitbang->master->transfer)
  		bitbang->master->transfer = spi_bitbang_transfer;
  		bitbang->master->transfer = spi_bitbang_transfer;
@@ -273,11 +269,9 @@ Index: linux-2.6.30-rc6/drivers/spi/spi_bitbang.c
  	if (!bitbang->txrx_bufs) {
  	if (!bitbang->txrx_bufs) {
  		bitbang->use_dma = 0;
  		bitbang->use_dma = 0;
  		bitbang->txrx_bufs = spi_bitbang_bufs;
  		bitbang->txrx_bufs = spi_bitbang_bufs;
-Index: linux-2.6.30-rc6/drivers/spi/spi_s3c24xx_gpio.c
-===================================================================
---- linux-2.6.30-rc6.orig/drivers/spi/spi_s3c24xx_gpio.c	2009-05-16 06:12:57.000000000 +0200
-+++ linux-2.6.30-rc6/drivers/spi/spi_s3c24xx_gpio.c	2009-05-18 19:08:34.000000000 +0200
-@@ -91,7 +91,7 @@
+--- a/drivers/spi/spi_s3c24xx_gpio.c
++++ b/drivers/spi/spi_s3c24xx_gpio.c
+@@ -91,7 +91,7 @@ static void s3c2410_spigpio_chipselect(s
  	struct s3c2410_spigpio *sg = spidev_to_sg(dev);
  	struct s3c2410_spigpio *sg = spidev_to_sg(dev);
  
  
  	if (sg->info && sg->info->chip_select)
  	if (sg->info && sg->info->chip_select)
@@ -286,7 +280,7 @@ Index: linux-2.6.30-rc6/drivers/spi/spi_s3c24xx_gpio.c
  }
  }
  
  
  static int s3c2410_spigpio_probe(struct platform_device *dev)
  static int s3c2410_spigpio_probe(struct platform_device *dev)
-@@ -112,14 +112,17 @@
+@@ -112,14 +112,17 @@ static int s3c2410_spigpio_probe(struct 
  
  
  	platform_set_drvdata(dev, sp);
  	platform_set_drvdata(dev, sp);
  
  
@@ -305,11 +299,9 @@ Index: linux-2.6.30-rc6/drivers/spi/spi_s3c24xx_gpio.c
  
  
  	sp->bitbang.txrx_word[SPI_MODE_0] = s3c2410_spigpio_txrx_mode0;
  	sp->bitbang.txrx_word[SPI_MODE_0] = s3c2410_spigpio_txrx_mode0;
  	sp->bitbang.txrx_word[SPI_MODE_1] = s3c2410_spigpio_txrx_mode1;
  	sp->bitbang.txrx_word[SPI_MODE_1] = s3c2410_spigpio_txrx_mode1;
-Index: linux-2.6.30-rc6/include/linux/mmc/core.h
-===================================================================
---- linux-2.6.30-rc6.orig/include/linux/mmc/core.h	2009-05-16 06:12:57.000000000 +0200
-+++ linux-2.6.30-rc6/include/linux/mmc/core.h	2009-05-18 19:08:34.000000000 +0200
-@@ -129,6 +129,8 @@
+--- a/include/linux/mmc/core.h
++++ b/include/linux/mmc/core.h
+@@ -129,6 +129,8 @@ struct mmc_request {
  struct mmc_host;
  struct mmc_host;
  struct mmc_card;
  struct mmc_card;
  
  
@@ -318,10 +310,8 @@ Index: linux-2.6.30-rc6/include/linux/mmc/core.h
  extern void mmc_wait_for_req(struct mmc_host *, struct mmc_request *);
  extern void mmc_wait_for_req(struct mmc_host *, struct mmc_request *);
  extern int mmc_wait_for_cmd(struct mmc_host *, struct mmc_command *, int);
  extern int mmc_wait_for_cmd(struct mmc_host *, struct mmc_command *, int);
  extern int mmc_wait_for_app_cmd(struct mmc_host *, struct mmc_card *,
  extern int mmc_wait_for_app_cmd(struct mmc_host *, struct mmc_card *,
-Index: linux-2.6.30-rc6/include/linux/mmc/sdio_ids.h
-===================================================================
---- linux-2.6.30-rc6.orig/include/linux/mmc/sdio_ids.h	2009-05-16 06:12:57.000000000 +0200
-+++ linux-2.6.30-rc6/include/linux/mmc/sdio_ids.h	2009-05-18 19:08:34.000000000 +0200
+--- a/include/linux/mmc/sdio_ids.h
++++ b/include/linux/mmc/sdio_ids.h
 @@ -25,5 +25,9 @@
 @@ -25,5 +25,9 @@
  
  
  #define SDIO_VENDOR_ID_MARVELL			0x02df
  #define SDIO_VENDOR_ID_MARVELL			0x02df
@@ -332,11 +322,9 @@ Index: linux-2.6.30-rc6/include/linux/mmc/sdio_ids.h
 +#define SDIO_DEVICE_ID_ATHEROS_AR6002		0x0200
 +#define SDIO_DEVICE_ID_ATHEROS_AR6002		0x0200
  
  
  #endif
  #endif
-Index: linux-2.6.30-rc6/include/linux/spi/spi_bitbang.h
-===================================================================
---- linux-2.6.30-rc6.orig/include/linux/spi/spi_bitbang.h	2009-05-16 06:12:57.000000000 +0200
-+++ linux-2.6.30-rc6/include/linux/spi/spi_bitbang.h	2009-05-18 19:08:34.000000000 +0200
-@@ -31,6 +31,9 @@
+--- a/include/linux/spi/spi_bitbang.h
++++ b/include/linux/spi/spi_bitbang.h
+@@ -31,6 +31,9 @@ struct spi_bitbang {
  	u8			use_dma;
  	u8			use_dma;
  	u8			flags;		/* extra spi->mode support */
  	u8			flags;		/* extra spi->mode support */
  
  
@@ -346,7 +334,7 @@ Index: linux-2.6.30-rc6/include/linux/spi/spi_bitbang.h
  	struct spi_master	*master;
  	struct spi_master	*master;
  
  
  	/* setup_transfer() changes clock and/or wordsize to match settings
  	/* setup_transfer() changes clock and/or wordsize to match settings
-@@ -62,6 +65,8 @@
+@@ -62,6 +65,8 @@ extern void spi_bitbang_cleanup(struct s
  extern int spi_bitbang_transfer(struct spi_device *spi, struct spi_message *m);
  extern int spi_bitbang_transfer(struct spi_device *spi, struct spi_message *m);
  extern int spi_bitbang_setup_transfer(struct spi_device *spi,
  extern int spi_bitbang_setup_transfer(struct spi_device *spi,
  				      struct spi_transfer *t);
  				      struct spi_transfer *t);
@@ -355,11 +343,9 @@ Index: linux-2.6.30-rc6/include/linux/spi/spi_bitbang.h
  
  
  /* start or stop queue processing */
  /* start or stop queue processing */
  extern int spi_bitbang_start(struct spi_bitbang *spi);
  extern int spi_bitbang_start(struct spi_bitbang *spi);
-Index: linux-2.6.30-rc6/include/linux/spi/spi.h
-===================================================================
---- linux-2.6.30-rc6.orig/include/linux/spi/spi.h	2009-05-16 06:12:57.000000000 +0200
-+++ linux-2.6.30-rc6/include/linux/spi/spi.h	2009-05-18 19:08:34.000000000 +0200
-@@ -204,7 +204,6 @@
+--- a/include/linux/spi/spi.h
++++ b/include/linux/spi/spi.h
+@@ -204,7 +204,6 @@ static inline void spi_unregister_driver
   *	SPI slaves, and are numbered from zero to num_chipselects.
   *	SPI slaves, and are numbered from zero to num_chipselects.
   *	each slave has a chipselect signal, but it's common that not
   *	each slave has a chipselect signal, but it's common that not
   *	every chipselect is connected to a slave.
   *	every chipselect is connected to a slave.
@@ -367,7 +353,7 @@ Index: linux-2.6.30-rc6/include/linux/spi/spi.h
   * @setup: updates the device mode and clocking records used by a
   * @setup: updates the device mode and clocking records used by a
   *	device's SPI controller; protocol code may call this.  This
   *	device's SPI controller; protocol code may call this.  This
   *	must fail if an unrecognized or unsupported mode is requested.
   *	must fail if an unrecognized or unsupported mode is requested.
-@@ -240,17 +239,7 @@
+@@ -240,17 +239,7 @@ struct spi_master {
  	 */
  	 */
  	u16			num_chipselect;
  	u16			num_chipselect;
  
  
@@ -386,7 +372,7 @@ Index: linux-2.6.30-rc6/include/linux/spi/spi.h
  	int			(*setup)(struct spi_device *spi);
  	int			(*setup)(struct spi_device *spi);
  
  
  	/* bidirectional bulk transfers
  	/* bidirectional bulk transfers
-@@ -275,6 +264,13 @@
+@@ -275,6 +264,13 @@ struct spi_master {
  	int			(*transfer)(struct spi_device *spi,
  	int			(*transfer)(struct spi_device *spi,
  						struct spi_message *mesg);
  						struct spi_message *mesg);
  
  
@@ -400,7 +386,7 @@ Index: linux-2.6.30-rc6/include/linux/spi/spi.h
  	/* called on release() to free memory provided by spi_master */
  	/* called on release() to free memory provided by spi_master */
  	void			(*cleanup)(struct spi_device *spi);
  	void			(*cleanup)(struct spi_device *spi);
  };
  };
-@@ -584,6 +580,29 @@
+@@ -584,6 +580,29 @@ spi_async(struct spi_device *spi, struct
  	return spi->master->transfer(spi, message);
  	return spi->master->transfer(spi, message);
  }
  }
  
  

+ 6 - 10
target/linux/s3c24xx/patches-2.6.30/068-ar6000.patch

@@ -1,8 +1,6 @@
-Index: linux-2.6.30-rc6/arch/arm/Kconfig
-===================================================================
---- linux-2.6.30-rc6.orig/arch/arm/Kconfig	2009-05-16 06:12:57.000000000 +0200
-+++ linux-2.6.30-rc6/arch/arm/Kconfig	2009-05-18 19:08:34.000000000 +0200
-@@ -1401,6 +1401,8 @@
+--- a/arch/arm/Kconfig
++++ b/arch/arm/Kconfig
+@@ -1401,6 +1401,8 @@ source "drivers/usb/Kconfig"
  
  
  source "drivers/uwb/Kconfig"
  source "drivers/uwb/Kconfig"
  
  
@@ -11,11 +9,9 @@ Index: linux-2.6.30-rc6/arch/arm/Kconfig
  source "drivers/mmc/Kconfig"
  source "drivers/mmc/Kconfig"
  
  
  source "drivers/memstick/Kconfig"
  source "drivers/memstick/Kconfig"
-Index: linux-2.6.30-rc6/drivers/Makefile
-===================================================================
---- linux-2.6.30-rc6.orig/drivers/Makefile	2009-05-16 06:12:57.000000000 +0200
-+++ linux-2.6.30-rc6/drivers/Makefile	2009-05-18 19:08:34.000000000 +0200
-@@ -91,6 +91,7 @@
+--- a/drivers/Makefile
++++ b/drivers/Makefile
+@@ -91,6 +91,7 @@ obj-$(CONFIG_CPU_IDLE)		+= cpuidle/
  obj-y				+= idle/
  obj-y				+= idle/
  obj-$(CONFIG_MMC)		+= mmc/
  obj-$(CONFIG_MMC)		+= mmc/
  obj-$(CONFIG_MEMSTICK)		+= memstick/
  obj-$(CONFIG_MEMSTICK)		+= memstick/

+ 2 - 4
target/linux/s3c24xx/patches-2.6.30/070-s3c24xx-time.patch

@@ -1,7 +1,5 @@
-Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/time.c
-===================================================================
---- /dev/null	1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.30-rc6/arch/arm/plat-s3c24xx/time.c	2009-05-18 19:08:34.000000000 +0200
+--- /dev/null
++++ b/arch/arm/plat-s3c24xx/time.c
 @@ -0,0 +1,480 @@
 @@ -0,0 +1,480 @@
 +/* linux/arch/arm/plat-s3c24xx/time.c
 +/* linux/arch/arm/plat-s3c24xx/time.c
 + *
 + *

+ 6 - 10
target/linux/s3c24xx/patches-2.6.30/080-nr-tty-devices.patch

@@ -1,8 +1,6 @@
-Index: linux-2.6.30-rc6/include/linux/vt.h
-===================================================================
---- linux-2.6.30-rc6.orig/include/linux/vt.h	2009-05-16 06:12:57.000000000 +0200
-+++ linux-2.6.30-rc6/include/linux/vt.h	2009-05-18 19:08:35.000000000 +0200
-@@ -18,8 +18,19 @@
+--- a/include/linux/vt.h
++++ b/include/linux/vt.h
+@@ -18,8 +18,19 @@ extern int unregister_vt_notifier(struct
   * resizing).
   * resizing).
   */
   */
  #define MIN_NR_CONSOLES 1       /* must be at least 1 */
  #define MIN_NR_CONSOLES 1       /* must be at least 1 */
@@ -22,11 +20,9 @@ Index: linux-2.6.30-rc6/include/linux/vt.h
  		/* Note: the ioctl VT_GETSTATE does not work for
  		/* Note: the ioctl VT_GETSTATE does not work for
  		   consoles 16 and higher (since it returns a short) */
  		   consoles 16 and higher (since it returns a short) */
  
  
-Index: linux-2.6.30-rc6/drivers/char/Kconfig
-===================================================================
---- linux-2.6.30-rc6.orig/drivers/char/Kconfig	2009-05-18 19:07:07.000000000 +0200
-+++ linux-2.6.30-rc6/drivers/char/Kconfig	2009-05-18 19:08:35.000000000 +0200
-@@ -66,6 +66,18 @@
+--- a/drivers/char/Kconfig
++++ b/drivers/char/Kconfig
+@@ -66,6 +66,18 @@ config VT_CONSOLE
  
  
  	  If unsure, say Y.
  	  If unsure, say Y.
  
  

+ 16 - 24
target/linux/s3c24xx/patches-2.6.30/090-sound.patch

@@ -1,8 +1,6 @@
-Index: linux-2.6.30-rc6/sound/soc/s3c24xx/Kconfig
-===================================================================
---- linux-2.6.30-rc6.orig/sound/soc/s3c24xx/Kconfig	2009-05-16 06:12:57.000000000 +0200
-+++ linux-2.6.30-rc6/sound/soc/s3c24xx/Kconfig	2009-05-18 19:08:35.000000000 +0200
-@@ -42,10 +42,20 @@
+--- a/sound/soc/s3c24xx/Kconfig
++++ b/sound/soc/s3c24xx/Kconfig
+@@ -42,10 +42,20 @@ config SND_S3C24XX_SOC_JIVE_WM8750
  	tristate "SoC I2S Audio support for Jive"
  	tristate "SoC I2S Audio support for Jive"
  	depends on SND_S3C24XX_SOC && MACH_JIVE
  	depends on SND_S3C24XX_SOC && MACH_JIVE
  	select SND_SOC_WM8750
  	select SND_SOC_WM8750
@@ -23,11 +21,9 @@ Index: linux-2.6.30-rc6/sound/soc/s3c24xx/Kconfig
  config SND_S3C24XX_SOC_SMDK2443_WM9710
  config SND_S3C24XX_SOC_SMDK2443_WM9710
  	tristate "SoC AC97 Audio support for SMDK2443 - WM9710"
  	tristate "SoC AC97 Audio support for SMDK2443 - WM9710"
  	depends on SND_S3C24XX_SOC && MACH_SMDK2443
  	depends on SND_S3C24XX_SOC && MACH_SMDK2443
-Index: linux-2.6.30-rc6/sound/soc/s3c24xx/Makefile
-===================================================================
---- linux-2.6.30-rc6.orig/sound/soc/s3c24xx/Makefile	2009-05-16 06:12:57.000000000 +0200
-+++ linux-2.6.30-rc6/sound/soc/s3c24xx/Makefile	2009-05-18 19:08:35.000000000 +0200
-@@ -19,9 +19,11 @@
+--- a/sound/soc/s3c24xx/Makefile
++++ b/sound/soc/s3c24xx/Makefile
+@@ -19,9 +19,11 @@ snd-soc-neo1973-wm8753-objs := neo1973_w
  snd-soc-smdk2443-wm9710-objs := smdk2443_wm9710.o
  snd-soc-smdk2443-wm9710-objs := smdk2443_wm9710.o
  snd-soc-ln2440sbc-alc650-objs := ln2440sbc_alc650.o
  snd-soc-ln2440sbc-alc650-objs := ln2440sbc_alc650.o
  snd-soc-s3c24xx-uda134x-objs := s3c24xx_uda134x.o
  snd-soc-s3c24xx-uda134x-objs := s3c24xx_uda134x.o
@@ -39,11 +35,9 @@ Index: linux-2.6.30-rc6/sound/soc/s3c24xx/Makefile
  obj-$(CONFIG_SND_S3C24XX_SOC_LN2440SBC_ALC650) += snd-soc-ln2440sbc-alc650.o
  obj-$(CONFIG_SND_S3C24XX_SOC_LN2440SBC_ALC650) += snd-soc-ln2440sbc-alc650.o
  obj-$(CONFIG_SND_S3C24XX_SOC_S3C24XX_UDA134X) += snd-soc-s3c24xx-uda134x.o
  obj-$(CONFIG_SND_S3C24XX_SOC_S3C24XX_UDA134X) += snd-soc-s3c24xx-uda134x.o
 +obj-$(CONFIG_SND_S3C24XX_SOC_NEO1973_GTA02_WM8753) += snd-soc-neo1973-gta02-wm8753.o
 +obj-$(CONFIG_SND_S3C24XX_SOC_NEO1973_GTA02_WM8753) += snd-soc-neo1973-gta02-wm8753.o
-Index: linux-2.6.30-rc6/sound/soc/s3c24xx/s3c24xx-i2s.c
-===================================================================
---- linux-2.6.30-rc6.orig/sound/soc/s3c24xx/s3c24xx-i2s.c	2009-05-16 06:12:57.000000000 +0200
-+++ linux-2.6.30-rc6/sound/soc/s3c24xx/s3c24xx-i2s.c	2009-05-18 19:08:35.000000000 +0200
-@@ -284,11 +284,14 @@
+--- a/sound/soc/s3c24xx/s3c24xx-i2s.c
++++ b/sound/soc/s3c24xx/s3c24xx-i2s.c
+@@ -284,11 +284,14 @@ static int s3c24xx_i2s_trigger(struct sn
  	case SNDRV_PCM_TRIGGER_START:
  	case SNDRV_PCM_TRIGGER_START:
  	case SNDRV_PCM_TRIGGER_RESUME:
  	case SNDRV_PCM_TRIGGER_RESUME:
  	case SNDRV_PCM_TRIGGER_PAUSE_RELEASE:
  	case SNDRV_PCM_TRIGGER_PAUSE_RELEASE:
@@ -63,7 +57,7 @@ Index: linux-2.6.30-rc6/sound/soc/s3c24xx/s3c24xx-i2s.c
  
  
  		if (substream->stream == SNDRV_PCM_STREAM_CAPTURE)
  		if (substream->stream == SNDRV_PCM_STREAM_CAPTURE)
  			s3c24xx_snd_rxctrl(1);
  			s3c24xx_snd_rxctrl(1);
-@@ -308,7 +311,6 @@
+@@ -308,7 +311,6 @@ static int s3c24xx_i2s_trigger(struct sn
  		break;
  		break;
  	}
  	}
  
  
@@ -71,11 +65,9 @@ Index: linux-2.6.30-rc6/sound/soc/s3c24xx/s3c24xx-i2s.c
  	return ret;
  	return ret;
  }
  }
  
  
-Index: linux-2.6.30-rc6/sound/soc/s3c24xx/s3c24xx-pcm.c
-===================================================================
---- linux-2.6.30-rc6.orig/sound/soc/s3c24xx/s3c24xx-pcm.c	2009-05-16 06:12:57.000000000 +0200
-+++ linux-2.6.30-rc6/sound/soc/s3c24xx/s3c24xx-pcm.c	2009-05-18 19:08:35.000000000 +0200
-@@ -75,11 +75,18 @@
+--- a/sound/soc/s3c24xx/s3c24xx-pcm.c
++++ b/sound/soc/s3c24xx/s3c24xx-pcm.c
+@@ -75,11 +75,18 @@ static void s3c24xx_pcm_enqueue(struct s
  {
  {
  	struct s3c24xx_runtime_data *prtd = substream->runtime->private_data;
  	struct s3c24xx_runtime_data *prtd = substream->runtime->private_data;
  	dma_addr_t pos = prtd->dma_pos;
  	dma_addr_t pos = prtd->dma_pos;
@@ -95,7 +87,7 @@ Index: linux-2.6.30-rc6/sound/soc/s3c24xx/s3c24xx-pcm.c
  		unsigned long len = prtd->dma_period;
  		unsigned long len = prtd->dma_period;
  
  
  		pr_debug("dma_loaded: %d\n", prtd->dma_loaded);
  		pr_debug("dma_loaded: %d\n", prtd->dma_loaded);
-@@ -123,7 +130,7 @@
+@@ -123,7 +130,7 @@ static void s3c24xx_audio_buffdone(struc
  		snd_pcm_period_elapsed(substream);
  		snd_pcm_period_elapsed(substream);
  
  
  	spin_lock(&prtd->lock);
  	spin_lock(&prtd->lock);
@@ -104,7 +96,7 @@ Index: linux-2.6.30-rc6/sound/soc/s3c24xx/s3c24xx-pcm.c
  		prtd->dma_loaded--;
  		prtd->dma_loaded--;
  		s3c24xx_pcm_enqueue(substream);
  		s3c24xx_pcm_enqueue(substream);
  	}
  	}
-@@ -164,6 +171,11 @@
+@@ -164,6 +171,11 @@ static int s3c24xx_pcm_hw_params(struct 
  			printk(KERN_ERR "failed to get dma channel\n");
  			printk(KERN_ERR "failed to get dma channel\n");
  			return ret;
  			return ret;
  		}
  		}
@@ -116,7 +108,7 @@ Index: linux-2.6.30-rc6/sound/soc/s3c24xx/s3c24xx-pcm.c
  	}
  	}
  
  
  	s3c2410_dma_set_buffdone_fn(prtd->params->channel,
  	s3c2410_dma_set_buffdone_fn(prtd->params->channel,
-@@ -218,24 +230,17 @@
+@@ -218,24 +230,17 @@ static int s3c24xx_pcm_prepare(struct sn
  	 * sync to pclk, half-word transfers to the IIS-FIFO. */
  	 * sync to pclk, half-word transfers to the IIS-FIFO. */
  	if (substream->stream == SNDRV_PCM_STREAM_PLAYBACK) {
  	if (substream->stream == SNDRV_PCM_STREAM_PLAYBACK) {
  		s3c2410_dma_devconfig(prtd->params->channel,
  		s3c2410_dma_devconfig(prtd->params->channel,

+ 21 - 27
target/linux/s3c24xx/patches-2.6.30/100-udc-poll-vbus.patch

@@ -1,8 +1,6 @@
-Index: linux-2.6.30-rc6/drivers/usb/gadget/s3c2410_udc.c
-===================================================================
---- linux-2.6.30-rc6.orig/drivers/usb/gadget/s3c2410_udc.c	2009-05-16 06:12:57.000000000 +0200
-+++ linux-2.6.30-rc6/drivers/usb/gadget/s3c2410_udc.c	2009-05-18 19:08:35.000000000 +0200
-@@ -74,6 +74,7 @@
+--- a/drivers/usb/gadget/s3c2410_udc.c
++++ b/drivers/usb/gadget/s3c2410_udc.c
+@@ -74,6 +74,7 @@ static void __iomem		*base_addr;
  static u64			rsrc_start;
  static u64			rsrc_start;
  static u64			rsrc_len;
  static u64			rsrc_len;
  static struct dentry		*s3c2410_udc_debugfs_root;
  static struct dentry		*s3c2410_udc_debugfs_root;
@@ -10,7 +8,7 @@ Index: linux-2.6.30-rc6/drivers/usb/gadget/s3c2410_udc.c
  
  
  static inline u32 udc_read(u32 reg)
  static inline u32 udc_read(u32 reg)
  {
  {
-@@ -134,6 +135,8 @@
+@@ -134,6 +135,8 @@ static int dprintk(int level, const char
  	return 0;
  	return 0;
  }
  }
  #endif
  #endif
@@ -19,7 +17,7 @@ Index: linux-2.6.30-rc6/drivers/usb/gadget/s3c2410_udc.c
  static int s3c2410_udc_debugfs_seq_show(struct seq_file *m, void *p)
  static int s3c2410_udc_debugfs_seq_show(struct seq_file *m, void *p)
  {
  {
  	u32 addr_reg,pwr_reg,ep_int_reg,usb_int_reg;
  	u32 addr_reg,pwr_reg,ep_int_reg,usb_int_reg;
-@@ -197,6 +200,7 @@
+@@ -197,6 +200,7 @@ static const struct file_operations s3c2
  	.release	= single_release,
  	.release	= single_release,
  	.owner		= THIS_MODULE,
  	.owner		= THIS_MODULE,
  };
  };
@@ -27,7 +25,7 @@ Index: linux-2.6.30-rc6/drivers/usb/gadget/s3c2410_udc.c
  
  
  /* io macros */
  /* io macros */
  
  
-@@ -843,6 +847,7 @@
+@@ -843,6 +847,7 @@ static void s3c2410_udc_handle_ep(struct
  	u32			ep_csr1;
  	u32			ep_csr1;
  	u32			idx;
  	u32			idx;
  
  
@@ -35,7 +33,7 @@ Index: linux-2.6.30-rc6/drivers/usb/gadget/s3c2410_udc.c
  	if (likely (!list_empty(&ep->queue)))
  	if (likely (!list_empty(&ep->queue)))
  		req = list_entry(ep->queue.next,
  		req = list_entry(ep->queue.next,
  				struct s3c2410_request, queue);
  				struct s3c2410_request, queue);
-@@ -882,6 +887,8 @@
+@@ -882,6 +887,8 @@ static void s3c2410_udc_handle_ep(struct
  
  
  		if ((ep_csr1 & S3C2410_UDC_OCSR1_PKTRDY) && req) {
  		if ((ep_csr1 & S3C2410_UDC_OCSR1_PKTRDY) && req) {
  			s3c2410_udc_read_fifo(ep,req);
  			s3c2410_udc_read_fifo(ep,req);
@@ -44,7 +42,7 @@ Index: linux-2.6.30-rc6/drivers/usb/gadget/s3c2410_udc.c
  		}
  		}
  	}
  	}
  }
  }
-@@ -1520,6 +1527,20 @@
+@@ -1520,6 +1527,20 @@ static irqreturn_t s3c2410_udc_vbus_irq(
  	return IRQ_HANDLED;
  	return IRQ_HANDLED;
  }
  }
  
  
@@ -65,7 +63,7 @@ Index: linux-2.6.30-rc6/drivers/usb/gadget/s3c2410_udc.c
  static int s3c2410_vbus_draw(struct usb_gadget *_gadget, unsigned ma)
  static int s3c2410_vbus_draw(struct usb_gadget *_gadget, unsigned ma)
  {
  {
  	dprintk(DEBUG_NORMAL, "%s()\n", __func__);
  	dprintk(DEBUG_NORMAL, "%s()\n", __func__);
-@@ -1677,6 +1698,11 @@
+@@ -1677,6 +1698,11 @@ int usb_gadget_register_driver(struct us
  		goto register_error;
  		goto register_error;
  	}
  	}
  
  
@@ -77,7 +75,7 @@ Index: linux-2.6.30-rc6/drivers/usb/gadget/s3c2410_udc.c
  	/* Enable udc */
  	/* Enable udc */
  	s3c2410_udc_enable(udc);
  	s3c2410_udc_enable(udc);
  
  
-@@ -1707,6 +1733,7 @@
+@@ -1707,6 +1733,7 @@ int usb_gadget_unregister_driver(struct 
  	if (driver->disconnect)
  	if (driver->disconnect)
  		driver->disconnect(&udc->gadget);
  		driver->disconnect(&udc->gadget);
  
  
@@ -85,7 +83,7 @@ Index: linux-2.6.30-rc6/drivers/usb/gadget/s3c2410_udc.c
  	device_del(&udc->gadget.dev);
  	device_del(&udc->gadget.dev);
  	udc->driver = NULL;
  	udc->driver = NULL;
  
  
-@@ -1893,10 +1920,16 @@
+@@ -1893,10 +1920,16 @@ static int s3c2410_udc_probe(struct plat
  		}
  		}
  
  
  		dev_dbg(dev, "got irq %i\n", irq);
  		dev_dbg(dev, "got irq %i\n", irq);
@@ -102,7 +100,7 @@ Index: linux-2.6.30-rc6/drivers/usb/gadget/s3c2410_udc.c
  	if (s3c2410_udc_debugfs_root) {
  	if (s3c2410_udc_debugfs_root) {
  		udc->regs_info = debugfs_create_file("registers", S_IRUGO,
  		udc->regs_info = debugfs_create_file("registers", S_IRUGO,
  				s3c2410_udc_debugfs_root,
  				s3c2410_udc_debugfs_root,
-@@ -1904,6 +1937,7 @@
+@@ -1904,6 +1937,7 @@ static int s3c2410_udc_probe(struct plat
  		if (!udc->regs_info)
  		if (!udc->regs_info)
  			dev_warn(dev, "debugfs file creation failed\n");
  			dev_warn(dev, "debugfs file creation failed\n");
  	}
  	}
@@ -110,7 +108,7 @@ Index: linux-2.6.30-rc6/drivers/usb/gadget/s3c2410_udc.c
  
  
  	dev_dbg(dev, "probe ok\n");
  	dev_dbg(dev, "probe ok\n");
  
  
-@@ -1939,6 +1973,8 @@
+@@ -1939,6 +1973,8 @@ static int s3c2410_udc_remove(struct pla
  	if (udc_info && udc_info->vbus_pin > 0) {
  	if (udc_info && udc_info->vbus_pin > 0) {
  		irq = gpio_to_irq(udc_info->vbus_pin);
  		irq = gpio_to_irq(udc_info->vbus_pin);
  		free_irq(irq, udc);
  		free_irq(irq, udc);
@@ -119,7 +117,7 @@ Index: linux-2.6.30-rc6/drivers/usb/gadget/s3c2410_udc.c
  	}
  	}
  
  
  	free_irq(IRQ_USBD, udc);
  	free_irq(IRQ_USBD, udc);
-@@ -2013,12 +2049,14 @@
+@@ -2013,12 +2049,14 @@ static int __init udc_init(void)
  
  
  	dprintk(DEBUG_NORMAL, "%s: version %s\n", gadget_name, DRIVER_VERSION);
  	dprintk(DEBUG_NORMAL, "%s: version %s\n", gadget_name, DRIVER_VERSION);
  
  
@@ -134,10 +132,8 @@ Index: linux-2.6.30-rc6/drivers/usb/gadget/s3c2410_udc.c
  
  
  	retval = platform_driver_register(&udc_driver_2410);
  	retval = platform_driver_register(&udc_driver_2410);
  	if (retval)
  	if (retval)
-Index: linux-2.6.30-rc6/drivers/usb/host/ohci-s3c2410.c
-===================================================================
---- linux-2.6.30-rc6.orig/drivers/usb/host/ohci-s3c2410.c	2009-05-16 06:12:57.000000000 +0200
-+++ linux-2.6.30-rc6/drivers/usb/host/ohci-s3c2410.c	2009-05-18 19:08:35.000000000 +0200
+--- a/drivers/usb/host/ohci-s3c2410.c
++++ b/drivers/usb/host/ohci-s3c2410.c
 @@ -21,6 +21,8 @@
 @@ -21,6 +21,8 @@
  
  
  #include <linux/platform_device.h>
  #include <linux/platform_device.h>
@@ -147,7 +143,7 @@ Index: linux-2.6.30-rc6/drivers/usb/host/ohci-s3c2410.c
  #include <plat/usb-control.h>
  #include <plat/usb-control.h>
  
  
  #define valid_port(idx) ((idx) == 1 || (idx) == 2)
  #define valid_port(idx) ((idx) == 1 || (idx) == 2)
-@@ -306,6 +308,42 @@
+@@ -306,6 +308,42 @@ static void s3c2410_hcd_oc(struct s3c241
  	local_irq_restore(flags);
  	local_irq_restore(flags);
  }
  }
  
  
@@ -190,7 +186,7 @@ Index: linux-2.6.30-rc6/drivers/usb/host/ohci-s3c2410.c
  /* may be called without controller electrically present */
  /* may be called without controller electrically present */
  /* may be called with controller, bus, and devices active */
  /* may be called with controller, bus, and devices active */
  
  
-@@ -486,15 +524,23 @@
+@@ -486,15 +524,23 @@ static int ohci_hcd_s3c2410_drv_remove(s
  	return 0;
  	return 0;
  }
  }
  
  
@@ -216,11 +212,9 @@ Index: linux-2.6.30-rc6/drivers/usb/host/ohci-s3c2410.c
  	},
  	},
  };
  };
  
  
-Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/include/plat/udc.h
-===================================================================
---- linux-2.6.30-rc6.orig/arch/arm/plat-s3c24xx/include/plat/udc.h	2009-05-16 06:12:57.000000000 +0200
-+++ linux-2.6.30-rc6/arch/arm/plat-s3c24xx/include/plat/udc.h	2009-05-18 19:08:35.000000000 +0200
-@@ -27,6 +27,7 @@
+--- a/arch/arm/plat-s3c24xx/include/plat/udc.h
++++ b/arch/arm/plat-s3c24xx/include/plat/udc.h
+@@ -27,6 +27,7 @@ enum s3c2410_udc_cmd_e {
  struct s3c2410_udc_mach_info {
  struct s3c2410_udc_mach_info {
  	void	(*udc_command)(enum s3c2410_udc_cmd_e);
  	void	(*udc_command)(enum s3c2410_udc_cmd_e);
   	void	(*vbus_draw)(unsigned int ma);
   	void	(*vbus_draw)(unsigned int ma);

+ 3 - 2
target/linux/sibyte/Makefile

@@ -9,9 +9,10 @@ include $(TOPDIR)/rules.mk
 ARCH:=mips
 ARCH:=mips
 BOARD:=sibyte
 BOARD:=sibyte
 BOARDNAME:=Broadcom/SiByte SB-1
 BOARDNAME:=Broadcom/SiByte SB-1
-FEATURES:=broken
+FEATURES:=fpu
+CFLAGS:=-Os -pipe -march=sb1 -funit-at-a-time
 
 
-LINUX_VERSION:=2.6.30-rc6
+LINUX_VERSION:=2.6.30-rc7
 
 
 include $(INCLUDE_DIR)/target.mk
 include $(INCLUDE_DIR)/target.mk