summaryrefslogtreecommitdiffstats
path: root/target/linux/s3c24xx
diff options
context:
space:
mode:
authorkaloz <kaloz@3c298f89-4303-0410-b956-a3cf2f4a3e73>2009-05-25 12:27:13 +0000
committerkaloz <kaloz@3c298f89-4303-0410-b956-a3cf2f4a3e73>2009-05-25 12:27:13 +0000
commita210854b74cfa94a76a8c967439d795052346d48 (patch)
treeab37f2e4bb41ca942b63ff3d5527e63b1e7f44e6 /target/linux/s3c24xx
parent6f4ddaf713d45de064d78ed483fa00cf0a2d3c2b (diff)
update to 2.6.30-rc7
git-svn-id: svn://svn.openwrt.org/openwrt/trunk@16048 3c298f89-4303-0410-b956-a3cf2f4a3e73
Diffstat (limited to 'target/linux/s3c24xx')
-rw-r--r--target/linux/s3c24xx/Makefile2
-rw-r--r--target/linux/s3c24xx/patches-2.6.30/001-merge-openmoko.patch288
-rw-r--r--target/linux/s3c24xx/patches-2.6.30/010-s3c-dma.patch138
-rw-r--r--target/linux/s3c24xx/patches-2.6.30/011-s3c-pwm.patch34
-rw-r--r--target/linux/s3c24xx/patches-2.6.30/012-s3c-usb.patch36
-rw-r--r--target/linux/s3c24xx/patches-2.6.30/013-fiq_c_handler.patch44
-rw-r--r--target/linux/s3c24xx/patches-2.6.30/014-neo1973_mach.patch24
-rw-r--r--target/linux/s3c24xx/patches-2.6.30/015-mach-gta02.patch22
-rw-r--r--target/linux/s3c24xx/patches-2.6.30/050-s3c2442-touchscreen.patch48
-rw-r--r--target/linux/s3c24xx/patches-2.6.30/051-gta02kbd.patch16
-rw-r--r--target/linux/s3c24xx/patches-2.6.30/052-touchscreen_filter.patch16
-rw-r--r--target/linux/s3c24xx/patches-2.6.30/053-glamo.patch22
-rw-r--r--target/linux/s3c24xx/patches-2.6.30/054-bq27000.patch16
-rw-r--r--target/linux/s3c24xx/patches-2.6.30/055-gta02-leds.patch16
-rw-r--r--target/linux/s3c24xx/patches-2.6.30/055-jbt6k74.patch14
-rw-r--r--target/linux/s3c24xx/patches-2.6.30/056-pcf50633.patch80
-rw-r--r--target/linux/s3c24xx/patches-2.6.30/057-lis302dl.patch16
-rw-r--r--target/linux/s3c24xx/patches-2.6.30/060-spi-gpio-non-blocking.patch68
-rw-r--r--target/linux/s3c24xx/patches-2.6.30/068-ar6000.patch16
-rw-r--r--target/linux/s3c24xx/patches-2.6.30/070-s3c24xx-time.patch6
-rw-r--r--target/linux/s3c24xx/patches-2.6.30/080-nr-tty-devices.patch16
-rw-r--r--target/linux/s3c24xx/patches-2.6.30/090-sound.patch40
-rw-r--r--target/linux/s3c24xx/patches-2.6.30/100-udc-poll-vbus.patch48
23 files changed, 401 insertions, 625 deletions
diff --git a/target/linux/s3c24xx/Makefile b/target/linux/s3c24xx/Makefile
index b7b8d21da..b2a29e79e 100644
--- a/target/linux/s3c24xx/Makefile
+++ b/target/linux/s3c24xx/Makefile
@@ -12,7 +12,7 @@ BOARDNAME:=Samsung S3C24xx
FEATURES:=jffs2
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
diff --git a/target/linux/s3c24xx/patches-2.6.30/001-merge-openmoko.patch b/target/linux/s3c24xx/patches-2.6.30/001-merge-openmoko.patch
index 0738a38ea..1a515a489 100644
--- a/target/linux/s3c24xx/patches-2.6.30/001-merge-openmoko.patch
+++ b/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 @@
+#ifndef _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 */
-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 @@
#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_SDIOIRQ (1<<3)
#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].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 */
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 @@
#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 = {
.cls = &s3c2442_sysclass,
-@@ -30,5 +31,8 @@
+@@ -30,5 +31,8 @@ int __init s3c2442_init(void)
{
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);
}
-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)
endif
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_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 @@
+/*
+ * 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
-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;
};
@@ -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 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 @@
* 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;
/**
-@@ -27,6 +40,7 @@
+@@ -27,6 +40,7 @@ struct s3c_gpio_cfg;
* @chip: The chip structure to be exported via gpiolib.
* @base: The base pointer to the gpio configuration registers.
* @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
* specific gpios being registered with gpiolib.
-@@ -34,7 +48,11 @@
+@@ -34,7 +48,11 @@ struct s3c_gpio_cfg;
struct s3c_gpio_chip {
struct gpio_chip chip;
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)
-@@ -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) { }
#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
+
+#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 @@
#define S3C_VA_TIMER S3C_ADDR(0x00300000) /* timer block */
#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 */
#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 @@
* partitions = mtd partition list
*/
@@ -370,7 +350,7 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c/include/plat/nand.h
char *name;
int *nr_map;
struct mtd_partition *partitions;
-@@ -44,6 +47,9 @@
+@@ -44,6 +47,9 @@ struct s3c2410_platform_nand {
int nr_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 *,
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 @@
* 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
*
* 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;
@@ -402,7 +380,7 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c/include/plat/pm.h
/* from sleep.S */
extern int s3c_cpu_save(unsigned long *saveblk);
-@@ -88,6 +92,7 @@
+@@ -88,6 +92,7 @@ struct pm_uart_save {
u32 ufcon;
u32 umcon;
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. */
-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
* changing of driver-strength and other controls dependant on
* 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
* 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,
struct mmc_ios *ios,
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.
* @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 @@
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,
struct cpu_table *tab,
unsigned int count)
-@@ -53,6 +81,8 @@
+@@ -53,6 +81,8 @@ void __init s3c_init_cpu(unsigned long i
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);
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
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
# 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 @@
#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 <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. */
@@ -520,7 +490,7 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c/pm.c
#ifdef CONFIG_S3C2410_PM_DEBUG
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->umcon = __raw_readl(regs + S3C2410_UMCON);
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)
-@@ -98,11 +105,16 @@
+@@ -98,11 +105,16 @@ static void s3c_pm_restore_uart(unsigned
{
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)
-@@ -289,11 +301,14 @@
+@@ -289,11 +301,14 @@ static int s3c_pm_enter(suspend_state_t
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. */
-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 @@
+/* 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;
+ }
+}
-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 @@
#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/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_s3c2440[] = "S3C2440";
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_s3c2410a[] = "S3C2410A";
static const char name_s3c2440a[] = "S3C2440A";
-@@ -112,6 +113,15 @@
+@@ -112,6 +113,15 @@ static struct cpu_table cpu_ids[] __init
.name = name_s3c2442
},
{
@@ -993,10 +957,8 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/cpu.c
.idcode = 0x32412001,
.idmask = 0xffffffff,
.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 @@
#include <linux/io.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>
-@@ -78,6 +79,7 @@
+@@ -78,6 +79,7 @@ static int s3c24xx_gpiolib_bankg_toirq(s
struct s3c_gpio_chip s3c24xx_gpios[] = {
[0] = {
.base = S3C24XX_GPIO_BASE(S3C2410_GPA0),
@@ -1017,7 +979,7 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/gpiolib.c
.chip = {
.base = S3C2410_GPA0,
.owner = THIS_MODULE,
-@@ -89,6 +91,7 @@
+@@ -89,6 +91,7 @@ struct s3c_gpio_chip s3c24xx_gpios[] = {
},
[1] = {
.base = S3C24XX_GPIO_BASE(S3C2410_GPB0),
@@ -1025,7 +987,7 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/gpiolib.c
.chip = {
.base = S3C2410_GPB0,
.owner = THIS_MODULE,
-@@ -98,6 +101,7 @@
+@@ -98,6 +101,7 @@ struct s3c_gpio_chip s3c24xx_gpios[] = {
},
[2] = {
.base = S3C24XX_GPIO_BASE(S3C2410_GPC0),
@@ -1033,7 +995,7 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/gpiolib.c
.chip = {
.base = S3C2410_GPC0,
.owner = THIS_MODULE,
-@@ -107,6 +111,7 @@
+@@ -107,6 +111,7 @@ struct s3c_gpio_chip s3c24xx_gpios[] = {
},
[3] = {
.base = S3C24XX_GPIO_BASE(S3C2410_GPD0),
@@ -1041,7 +1003,7 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/gpiolib.c
.chip = {
.base = S3C2410_GPD0,
.owner = THIS_MODULE,
-@@ -116,6 +121,7 @@
+@@ -116,6 +121,7 @@ struct s3c_gpio_chip s3c24xx_gpios[] = {
},
[4] = {
.base = S3C24XX_GPIO_BASE(S3C2410_GPE0),
@@ -1049,7 +1011,7 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/gpiolib.c
.chip = {
.base = S3C2410_GPE0,
.label = "GPIOE",
-@@ -125,6 +131,7 @@
+@@ -125,6 +131,7 @@ struct s3c_gpio_chip s3c24xx_gpios[] = {
},
[5] = {
.base = S3C24XX_GPIO_BASE(S3C2410_GPF0),
@@ -1057,7 +1019,7 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/gpiolib.c
.chip = {
.base = S3C2410_GPF0,
.owner = THIS_MODULE,
-@@ -135,12 +142,23 @@
+@@ -135,12 +142,23 @@ struct s3c_gpio_chip s3c24xx_gpios[] = {
},
[6] = {
.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_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)
+{
+}
-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 @@
#include <linux/module.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/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)
{
@@ -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++)
__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));
__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;
}
-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 @@
#include <mach/regs-gpio.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>
-@@ -75,43 +76,10 @@
+@@ -75,43 +76,10 @@ static struct sleep_save core_save[] = {
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
*
* 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)
{
-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.
@@ -1405,7 +1359,7 @@ Index: linux-2.6.30-rc6/drivers/mmc/host/Kconfig
config MMC_SDHCI_PCI
tristate "SDHCI support on PCI bus"
depends on MMC_SDHCI && PCI
-@@ -55,6 +48,18 @@
+@@ -55,6 +48,18 @@ config MMC_SDHCI_PCI
If unsure, say N.
@@ -1424,7 +1378,7 @@ Index: linux-2.6.30-rc6/drivers/mmc/host/Kconfig
config MMC_RICOH_MMC
tristate "Ricoh MMC Controller Disabler (EXPERIMENTAL)"
depends on MMC_SDHCI_PCI
-@@ -72,17 +77,6 @@
+@@ -72,17 +77,6 @@ config MMC_RICOH_MMC
If unsure, say Y.
@@ -1442,7 +1396,7 @@ Index: linux-2.6.30-rc6/drivers/mmc/host/Kconfig
config MMC_OMAP
tristate "TI OMAP Multimedia Card Interface support"
depends on ARCH_OMAP
-@@ -163,16 +157,6 @@
+@@ -163,16 +157,6 @@ config MMC_IMX
If unsure, say N.
@@ -1459,11 +1413,9 @@ Index: linux-2.6.30-rc6/drivers/mmc/host/Kconfig
config MMC_TIFM_SD
tristate "TI Flash Media MMC/SD Interface support (EXPERIMENTAL)"
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_PXA) += pxamci.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_AU1X) += au1xmmc.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_ATMELMCI) += atmel-mci.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
ifeq ($(CONFIG_OF),y)
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 @@
* 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"
#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_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...) \
do { \
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. */
if (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_count += fifo;
-@@ -329,7 +345,7 @@
+@@ -329,7 +345,7 @@ static void do_pio_write(struct s3cmci_h
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) {
res = get_data_buffer(host, &host->pio_bytes,
&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. */
if (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_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;
@@ -1568,7 +1518,7 @@ Index: linux-2.6.30-rc6/drivers/mmc/host/s3cmci.c
disable_irq(host->irq);
if (host->pio_active == XFER_WRITE)
-@@ -614,7 +632,6 @@
+@@ -614,7 +632,6 @@ irq_out:
spin_unlock_irqrestore(&host->complete_lock, iflags);
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;
@@ -1590,7 +1540,7 @@ Index: linux-2.6.30-rc6/drivers/mmc/host/s3cmci.c
s3c2410_dma_set_buffdone_fn(host->dma,
s3cmci_dma_done_callback);
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);
cmd->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);
return;
-@@ -1263,10 +1281,8 @@
+@@ -1263,10 +1281,8 @@ static int __devinit s3cmci_probe(struct
host->is2440 = is2440;
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);
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_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)
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
@@ -1692,7 +1642,7 @@ Index: linux-2.6.30-rc6/drivers/mmc/host/s3cmci.c
}
#else /* CONFIG_PM */
-@@ -1560,9 +1630,13 @@
+@@ -1560,9 +1630,13 @@ static void __exit s3cmci_exit(void)
module_init(s3cmci_init);
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: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 @@
* 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 ?! */
#define S3CMCI_DMA 0
-@@ -68,7 +72,16 @@
+@@ -68,7 +72,16 @@ struct s3cmci_host {
unsigned int ccnt, dcnt;
struct tasklet_struct pio_tasklet;
@@ -1738,10 +1686,8 @@ Index: linux-2.6.30-rc6/drivers/mmc/host/s3cmci.h
+
+ 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 @@
+/* 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, <ben@simtec.co.uk>");
+MODULE_LICENSE("GPL v2");
+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)
return 1;
@@ -2175,7 +2119,7 @@ Index: linux-2.6.30-rc6/drivers/mtd/nand/s3c2410.c
}
/* ECC functions
-@@ -530,7 +530,12 @@
+@@ -530,7 +530,12 @@ static void s3c2410_nand_read_buf(struct
static void s3c2440_nand_read_buf(struct mtd_info *mtd, u_char *buf, int len)
{
struct s3c2410_nand_info *info = s3c2410_nand_mtd_toinfo(mtd);
@@ -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)
-@@ -645,17 +650,31 @@
+@@ -645,17 +650,31 @@ static int s3c2410_nand_remove(struct pl
}
#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);
}
#else
-@@ -684,9 +703,13 @@
+@@ -684,9 +703,13 @@ static void s3c2410_nand_init_chip(struc
chip->select_chip = s3c2410_nand_select_chip;
chip->chip_delay = 50;
chip->priv = nmtd;
@@ -2237,7 +2181,7 @@ Index: linux-2.6.30-rc6/drivers/mtd/nand/s3c2410.c
switch (info->cpu_type) {
case TYPE_S3C2410:
chip->IO_ADDR_W = regs + S3C2410_NFDATA;
-@@ -726,7 +749,7 @@
+@@ -726,7 +749,7 @@ static void s3c2410_nand_init_chip(struc
nmtd->mtd.owner = THIS_MODULE;
nmtd->set = set;
@@ -2246,11 +2190,9 @@ Index: linux-2.6.30-rc6/drivers/mtd/nand/s3c2410.c
chip->ecc.calculate = s3c2410_nand_calculate_ecc;
chip->ecc.correct = s3c2410_nand_correct_data;
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.
*/
diff --git a/target/linux/s3c24xx/patches-2.6.30/010-s3c-dma.patch b/target/linux/s3c24xx/patches-2.6.30/010-s3c-dma.patch
index 6ed16f598..3d31f2711 100644
--- a/target/linux/s3c24xx/patches-2.6.30/010-s3c-dma.patch
+++ b/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 @@
* Copyright (C) 2003,2004,2006 Simtec Electronics
* Ben Dooks <ben@simtec.co.uk>
@@ -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 */
-@@ -55,9 +55,9 @@
+@@ -55,9 +55,9 @@ enum dma_ch {
/* we have 4 dma channels */
#ifndef CONFIG_CPU_S3C2443
@@ -33,7 +31,7 @@ Index: linux-2.6.30-rc6/arch/arm/mach-s3c2410/include/mach/dma.h
#endif
/* types */
-@@ -68,7 +68,6 @@
+@@ -68,7 +68,6 @@ enum s3c2410_dma_state {
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
*
* 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,
};
@@ -74,7 +72,7 @@ Index: linux-2.6.30-rc6/arch/arm/mach-s3c2410/include/mach/dma.h
/* flags */
-@@ -137,19 +110,18 @@
+@@ -137,19 +110,18 @@ enum s3c2410_chan_op {
* waiting for reloads */
#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 *next;
int magic; /* magic */
-@@ -161,20 +133,6 @@
+@@ -161,20 +133,6 @@ struct s3c2410_dma_buf {
/* [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 {
unsigned long loads;
unsigned long timeout_longest;
-@@ -206,10 +164,10 @@
+@@ -206,10 +164,10 @@ struct s3c2410_dma_chan {
/* channel configuration */
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 */
-@@ -236,213 +194,12 @@
+@@ -236,213 +194,12 @@ struct s3c2410_dma_chan {
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 */
-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_GPIO
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_LLSERIAL_S3C2440
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 @@
+/* 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;
+}
+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 @@
+/* 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[];
+
+
-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 @@
+/* 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);
+
+
-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
functions.
@@ -630,11 +618,9 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c/Kconfig
# device definitions to compile in
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-config.o
@@ -645,16 +631,14 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c/Makefile
# PM support
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-$(CONFIG_S3C_DEV_I2C1) += dev-i2c1.o
obj-$(CONFIG_S3C_DEV_FB) += dev-fb.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 @@
#include <asm/irq.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 */
static void __iomem *dma_base;
-@@ -44,8 +45,6 @@
+@@ -44,8 +45,6 @@ static int dma_channels;
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 */
-@@ -135,21 +134,6 @@
+@@ -135,21 +134,6 @@ dmadbg_showregs(const char *fname, int l
#define dbg_showchan(chan) do { } while(0)
#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
*
* Update DMA stats from timeout info
-@@ -214,8 +198,6 @@
+@@ -214,8 +198,6 @@ s3c2410_dma_waitforload(struct s3c2410_d
return 0;
}
@@ -709,7 +693,7 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/dma.c
/* s3c2410_dma_loadbuffer
*
* 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,
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;
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)
{
@@ -727,7 +711,7 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/dma.c
unsigned long flags;
if (chan == NULL)
-@@ -836,7 +818,7 @@
+@@ -836,7 +818,7 @@ int s3c2410_dma_free(unsigned int channe
chan->irq_claimed = 0;
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);
-@@ -995,7 +977,7 @@
+@@ -995,7 +977,7 @@ static int s3c2410_dma_started(struct s3
int
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)
return -EINVAL;
-@@ -1038,14 +1020,13 @@
+@@ -1038,14 +1020,13 @@ EXPORT_SYMBOL(s3c2410_dma_ctrl);
/* s3c2410_dma_config
*
* 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",
__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);
@@ -798,7 +782,7 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/dma.c
switch (xferunit) {
case 1:
dcon |= S3C2410_DCON_BYTE;
-@@ -1089,10 +1093,10 @@
+@@ -1089,10 +1093,10 @@ int s3c2410_dma_config(unsigned int chan
}
EXPORT_SYMBOL(s3c2410_dma_config);
@@ -811,7 +795,7 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/dma.c
if (chan == NULL)
return -EINVAL;
-@@ -1105,43 +1109,7 @@
+@@ -1105,43 +1109,7 @@ int s3c2410_dma_setflags(unsigned int ch
}
EXPORT_SYMBOL(s3c2410_dma_setflags);
@@ -856,7 +840,7 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/dma.c
/* 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
* S3C2410_DMASRC_MEM: source is memory
*
@@ -904,7 +888,7 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/dma.c
switch (source) {
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)
{
@@ -913,7 +897,7 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/dma.c
if (chan == NULL)
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);
@@ -924,7 +908,7 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/dma.c
/* re-select the dma source for this channel */
-@@ -1476,7 +1453,8 @@
+@@ -1476,7 +1453,8 @@ static struct s3c2410_dma_chan *s3c2410_
found:
dmach = &s3c2410_chans[ch];
dmach->map = ch_map;
@@ -934,10 +918,8 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/dma.c
/* 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 @@
-/* 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,
- 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 @@
+/* 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,
+ 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 @@
+/* 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_PCMIN S3C2443_DMAREQSEL_SRC(28)
+#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
bool "S3C2410 DMA support"
depends on ARCH_S3C2410
@@ -1272,10 +1248,8 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/Kconfig
help
S3C2410 DMA support. This is needed for drivers like sound which
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 @@
#include <linux/sysdev.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-lcd.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 @@
#include <linux/sysdev.h>
#include <linux/serial_core.h>
diff --git a/target/linux/s3c24xx/patches-2.6.30/011-s3c-pwm.patch b/target/linux/s3c24xx/patches-2.6.30/011-s3c-pwm.patch
index fe9a7c815..5e097d8bb 100644
--- a/target/linux/s3c24xx/patches-2.6.30/011-s3c-pwm.patch
+++ b/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 @@
+#ifndef __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);
+
+#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
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
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-$(CONFIG_S3C_DEV_I2C1) += dev-i2c1.o
obj-$(CONFIG_S3C_DEV_FB) += dev-fb.o
+obj-$(CONFIG_S3C_PWM) += pwm.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 @@
+/*
+ * 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_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 @@
+/* linux/arch/arm/plat-s3c24xx/pwm-clock.c
+ *
diff --git a/target/linux/s3c24xx/patches-2.6.30/012-s3c-usb.patch b/target/linux/s3c24xx/patches-2.6.30/012-s3c-usb.patch
index 4d89bcd4e..0e8a5e9da 100644
--- a/target/linux/s3c24xx/patches-2.6.30/012-s3c-usb.patch
+++ b/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 @@
+/* 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);
-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 @@
+/* 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)
+
+#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
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.
+
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-$(CONFIG_S3C_DEV_I2C1) += dev-i2c1.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_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] = {
};
diff --git a/target/linux/s3c24xx/patches-2.6.30/013-fiq_c_handler.patch b/target/linux/s3c24xx/patches-2.6.30/013-fiq_c_handler.patch
index 1631ff423..de12e10cd 100644
--- a/target/linux/s3c24xx/patches-2.6.30/013-fiq_c_handler.patch
+++ b/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 @@
*
* 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
* be stacked onto the vector. We still do not support sharing
* 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));
}
@@ -95,11 +93,9 @@ Index: linux-2.6.30-rc6/arch/arm/kernel/fiq.c
int claim_fiq(struct fiq_handler *f)
{
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 void release_fiq(struct fiq_handler *f);
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 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 @@
#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/regs-irq.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 submask;
@@ -139,7 +133,7 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/include/plat/irq.h
mask = __raw_readl(S3C2410_INTMSK);
submask |= (1UL << (irqno - IRQ_S3CUART_RX0));
-@@ -45,6 +53,9 @@
+@@ -45,6 +53,9 @@ s3c_irqsub_mask(unsigned int irqno, unsi
/* write back masks */
__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 submask;
@@ -165,7 +159,7 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/include/plat/irq.h
mask = __raw_readl(S3C2410_INTMSK);
submask &= ~(1UL << (irqno - IRQ_S3CUART_RX0));
-@@ -63,6 +81,9 @@
+@@ -63,6 +81,9 @@ s3c_irqsub_unmask(unsigned int irqno, un
/* write back masks */
__raw_writel(submask, S3C2410_INTSUBMSK);
__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 @@
#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/pm.h>
-@@ -37,12 +39,20 @@
+@@ -37,12 +39,20 @@ static void
s3c_irq_mask(unsigned int irqno)
{
unsigned long mask;
@@ -211,7 +203,7 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/irq.c
}
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 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_INTPND);
-@@ -72,15 +92,25 @@
+@@ -72,15 +92,25 @@ static void
s3c_irq_unmask(unsigned int irqno)
{
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 = {
-@@ -523,26 +553,26 @@
+@@ -523,26 +553,26 @@ void __init s3c24xx_init_irq(void)
last = 0;
for (i = 0; i < 4; i++) {
diff --git a/target/linux/s3c24xx/patches-2.6.30/014-neo1973_mach.patch b/target/linux/s3c24xx/patches-2.6.30/014-neo1973_mach.patch
index af93ee2ab..5513f980c 100644
--- a/target/linux/s3c24xx/patches-2.6.30/014-neo1973_mach.patch
+++ b/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
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
+
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
@@ -37,11 +33,9 @@ Index: linux-2.6.30-rc6/arch/arm/mach-s3c2442/Makefile
+ gta02-pm-bt.o \
+ gta02-pm-wlan.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_C2PORT) += c2port/
obj-y += eeprom/
diff --git a/target/linux/s3c24xx/patches-2.6.30/015-mach-gta02.patch b/target/linux/s3c24xx/patches-2.6.30/015-mach-gta02.patch
index dc1410fe2..7d621545d 100644
--- a/target/linux/s3c24xx/patches-2.6.30/015-mach-gta02.patch
+++ b/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
select CPU_S3C2442
@@ -23,11 +21,9 @@ Index: linux-2.6.30-rc6/arch/arm/mach-s3c2442/Kconfig
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- :=
@@ -39,10 +35,8 @@ Index: linux-2.6.30-rc6/arch/arm/mach-s3c2442/Makefile
# 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 @@
#define IRQ_S3C2443_AC97 S3C2410_IRQSUB(28)
diff --git a/target/linux/s3c24xx/patches-2.6.30/050-s3c2442-touchscreen.patch b/target/linux/s3c24xx/patches-2.6.30/050-s3c2442-touchscreen.patch
index 4015f9349..c0de0e6af 100644
--- a/target/linux/s3c24xx/patches-2.6.30/050-s3c2442-touchscreen.patch
+++ b/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 @@
#include <asm/mach/irq.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 <plat/regs-serial.h>
-@@ -199,6 +201,24 @@
+@@ -199,6 +201,24 @@ struct platform_device 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)*/
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);
}
@@ -49,7 +45,7 @@ Index: linux-2.6.30-rc6/arch/arm/plat-s3c24xx/s3c244x.c
void __init s3c244x_map_io(void)
{
/* 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_i2c0.name = "s3c2440-i2c";
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";
}
-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
module will be called fujitsu-ts.
@@ -86,19 +80,15 @@ Index: linux-2.6.30-rc6/drivers/input/touchscreen/Kconfig
config TOUCHSCREEN_GUNZE
tristate "Gunze AHL-51S touchscreen"
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
obj-$(CONFIG_TOUCHSCREEN_WM97XX_MAINSTONE) += mainstone-wm97xx.o
obj-$(CONFIG_TOUCHSCREEN_WM97XX_ZYLONITE) += zylonite-wm97xx.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 @@
+/* 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);
+
+#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;
diff --git a/target/linux/s3c24xx/patches-2.6.30/051-gta02kbd.patch b/target/linux/s3c24xx/patches-2.6.30/051-gta02kbd.patch
index 35a39f6f4..cb3c57bcc 100644
--- a/target/linux/s3c24xx/patches-2.6.30/051-gta02kbd.patch
+++ b/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
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.
+
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_STOWAWAY) += stowaway.o
obj-$(CONFIG_KEYBOARD_CORGI) += corgikbd.o
diff --git a/target/linux/s3c24xx/patches-2.6.30/052-touchscreen_filter.patch b/target/linux/s3c24xx/patches-2.6.30/052-touchscreen_filter.patch
index 9125da12c..1a04bce68 100644
--- a/target/linux/s3c24xx/patches-2.6.30/052-touchscreen_filter.patch
+++ b/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
@@ -57,11 +55,9 @@ Index: linux-2.6.30-rc6/drivers/input/touchscreen/Kconfig
config TOUCHSCREEN_ADS7846
tristate "ADS7846/TSC2046 and ADS7843 based touchscreens"
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_ZYLONITE) += zylonite-wm97xx.o
obj-$(CONFIG_TOUCHSCREEN_S3C2410) += s3c2410_ts.o
diff --git a/target/linux/s3c24xx/patches-2.6.30/053-glamo.patch b/target/linux/s3c24xx/patches-2.6.30/053-glamo.patch
index d0a78d547..eb6800cbc 100644
--- a/target/linux/s3c24xx/patches-2.6.30/053-glamo.patch
+++ b/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
the PCF50633 chip.
@@ -11,10 +9,8 @@ Index: linux-2.6.30-rc6/drivers/mfd/Kconfig
endmenu
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 @@
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_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_BLADEXP 53 /* Trident BladeXP */
#define FB_ACCEL_CIRRUS_ALPINE 53 /* Cirrus Logic 543x/544x/5480 */
diff --git a/target/linux/s3c24xx/patches-2.6.30/054-bq27000.patch b/target/linux/s3c24xx/patches-2.6.30/054-bq27000.patch
index e23a38373..36de12f8c 100644
--- a/target/linux/s3c24xx/patches-2.6.30/054-bq27000.patch
+++ b/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
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
+
-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_BQ27x00) += bq27x00_battery.o
obj-$(CONFIG_BATTERY_DA9030) += da9030_battery.o
diff --git a/target/linux/s3c24xx/patches-2.6.30/055-gta02-leds.patch b/target/linux/s3c24xx/patches-2.6.30/055-gta02-leds.patch
index f85a1e75b..cf0b4fa25 100644
--- a/target/linux/s3c24xx/patches-2.6.30/055-gta02-leds.patch
+++ b/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
accessed via the I2C bus.
@@ -22,11 +20,9 @@ Index: linux-2.6.30-rc6/drivers/leds/Kconfig
comment "LED 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
obj-$(CONFIG_LEDS_DAC124S085) += leds-dac124s085.o
diff --git a/target/linux/s3c24xx/patches-2.6.30/055-jbt6k74.patch b/target/linux/s3c24xx/patches-2.6.30/055-jbt6k74.patch
index 5a5b742c9..359fd40e2 100644
--- a/target/linux/s3c24xx/patches-2.6.30/055-jbt6k74.patch
+++ b/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"
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.
+
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 @@
display-objs := display-sysfs.o
diff --git a/target/linux/s3c24xx/patches-2.6.30/056-pcf50633.patch b/target/linux/s3c24xx/patches-2.6.30/056-pcf50633.patch
index e05e05183..b1274f993 100644
--- a/target/linux/s3c24xx/patches-2.6.30/056-pcf50633.patch
+++ b/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 @@
#include <linux/kernel.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/types.h>
#include <linux/interrupt.h>
-@@ -345,6 +346,8 @@
+@@ -345,6 +346,8 @@ static void pcf50633_irq_worker(struct w
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
* only of USBINS/USBREM IRQ handlers are called */
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
@@ -45,7 +33,7 @@ Index: linux-2.6.30-rc6/drivers/mfd/pcf50633-core.c
/* Make sure our interrupt handlers are not called
* henceforth */
-@@ -523,12 +527,12 @@
+@@ -523,12 +526,12 @@ out:
return ret;
}
@@ -60,7 +48,7 @@ Index: linux-2.6.30-rc6/drivers/mfd/pcf50633-core.c
/* Write the saved mask registers */
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) {
@@ -68,7 +56,7 @@ Index: linux-2.6.30-rc6/drivers/mfd/pcf50633-core.c
ret = request_irq(client->irq, pcf50633_irq,
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 = {
.driver = {
.name = "pcf50633",
@@ -83,11 +71,9 @@ Index: linux-2.6.30-rc6/drivers/mfd/pcf50633-core.c
};
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 adapter;
@@ -95,7 +81,7 @@ Index: linux-2.6.30-rc6/drivers/power/pcf50633-charger.c
struct delayed_work charging_restart_work;
};
-@@ -47,16 +48,21 @@
+@@ -47,16 +48,21 @@ int pcf50633_mbc_usb_curlim_set(struct p
u8 bits;
int charging_start = 1;
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,
-@@ -66,7 +72,22 @@
+@@ -66,7 +72,22 @@ int pcf50633_mbc_usb_curlim_set(struct p
else
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);
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);
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);
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);
@@ -199,7 +185,7 @@ Index: linux-2.6.30-rc6/drivers/power/pcf50633-charger.c
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->adapter);
@@ -207,7 +193,7 @@ Index: linux-2.6.30-rc6/drivers/power/pcf50633-charger.c
if (mbc->pcf->pdata->mbc_event_callback)
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,
union power_supply_propval *val)
{
@@ -217,7 +203,7 @@ Index: linux-2.6.30-rc6/drivers/power/pcf50633-charger.c
int ret = 0;
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);
int ret = 0;
@@ -253,7 +239,7 @@ Index: linux-2.6.30-rc6/drivers/power/pcf50633-charger.c
break;
default:
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.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);
if (ret) {
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;
}
@@ -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);
if (ret)
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 {
int alarm_enabled;
int second_enabled;
@@ -302,7 +286,7 @@ Index: linux-2.6.30-rc6/drivers/rtc/rtc-pcf50633.c
struct pcf50633 *pcf;
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_wday = bcd2bin(pcf->time[PCF50633_TI_WKDAY]);
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;
}
-@@ -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_WKDAY] = bin2bcd(rtc->tm_wday);
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);
}
-@@ -209,6 +210,7 @@
+@@ -209,6 +210,7 @@ static int pcf50633_rtc_read_alarm(struc
rtc = dev_get_drvdata(dev);
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,
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 */
ret = pcf50633_write_block(rtc->pcf, PCF50633_REG_RTCSCA,
PCF50633_TI_EXTENT, &pcf_tm.time[0]);
@@ -342,7 +326,7 @@ Index: linux-2.6.30-rc6/drivers/rtc/rtc-pcf50633.c
return ret;
}
-@@ -267,6 +272,7 @@
+@@ -267,6 +272,7 @@ static void pcf50633_rtc_irq(int irq, vo
switch (irq) {
case PCF50633_IRQ_ALARM:
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;
case PCF50633_IRQ_SECOND:
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;
@@ -363,7 +345,7 @@ Index: linux-2.6.30-rc6/include/linux/mfd/pcf50633/core.h
/* Callbacks */
void (*probe_done)(struct pcf50633 *);
void (*mbc_event_callback)(struct pcf50633 *, int);
-@@ -208,7 +210,8 @@
+@@ -208,7 +210,8 @@ enum pcf50633_reg_int5 {
};
/* misc. registers */
diff --git a/target/linux/s3c24xx/patches-2.6.30/057-lis302dl.patch b/target/linux/s3c24xx/patches-2.6.30/057-lis302dl.patch
index df90f5f19..ebb194bf3 100644
--- a/target/linux/s3c24xx/patches-2.6.30/057-lis302dl.patch
+++ b/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
of the HP SDC controller.
@@ -18,11 +16,9 @@ Index: linux-2.6.30-rc6/drivers/input/misc/Kconfig
config INPUT_PCF50633_PMU
tristate "PCF50633 PMU events"
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_YEALINK) += yealink.o
obj-$(CONFIG_INPUT_GPIO_BUTTONS) += gpio_buttons.o
diff --git a/target/linux/s3c24xx/patches-2.6.30/060-spi-gpio-non-blocking.patch b/target/linux/s3c24xx/patches-2.6.30/060-spi-gpio-non-blocking.patch
index ec61f03e0..3dcf9c048 100644
--- a/target/linux/s3c24xx/patches-2.6.30/060-spi-gpio-non-blocking.patch
+++ b/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 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
* 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)
{
struct spi_bitbang *bitbang =
-@@ -274,120 +391,13 @@
+@@ -274,120 +391,13 @@ static void bitbang_work(struct work_str
bitbang->busy = 1;
while (!list_empty(&bitbang->queue)) {
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);
}
bitbang->busy = 0;
-@@ -459,6 +469,9 @@
+@@ -459,6 +469,9 @@ int spi_bitbang_start(struct spi_bitbang
if (!bitbang->master->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) {
bitbang->use_dma = 0;
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);
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)
-@@ -112,14 +112,17 @@
+@@ -112,14 +112,17 @@ static int s3c2410_spigpio_probe(struct
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_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_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 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 *,
-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 @@
#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
#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 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;
/* 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_setup_transfer(struct spi_device *spi,
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 */
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.
* each slave has a chipselect signal, but it's common that not
* 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
* device's SPI controller; protocol code may call this. This
* must fail if an unrecognized or unsupported mode is requested.
-@@ -240,17 +239,7 @@
+@@ -240,17 +239,7 @@ struct spi_master {
*/
u16 num_chipselect;
@@ -386,7 +372,7 @@ Index: linux-2.6.30-rc6/include/linux/spi/spi.h
int (*setup)(struct spi_device *spi);
/* bidirectional bulk transfers
-@@ -275,6 +264,13 @@
+@@ -275,6 +264,13 @@ struct spi_master {
int (*transfer)(struct spi_device *spi,
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 */
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);
}
diff --git a/target/linux/s3c24xx/patches-2.6.30/068-ar6000.patch b/target/linux/s3c24xx/patches-2.6.30/068-ar6000.patch
index 71357cfbf..d5565efab 100644
--- a/target/linux/s3c24xx/patches-2.6.30/068-ar6000.patch
+++ b/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"
@@ -11,11 +9,9 @@ Index: linux-2.6.30-rc6/arch/arm/Kconfig
source "drivers/mmc/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-$(CONFIG_MMC) += mmc/
obj-$(CONFIG_MEMSTICK) += memstick/
diff --git a/target/linux/s3c24xx/patches-2.6.30/070-s3c24xx-time.patch b/target/linux/s3c24xx/patches-2.6.30/070-s3c24xx-time.patch
index 30e0909ad..8b850452e 100644
--- a/target/linux/s3c24xx/patches-2.6.30/070-s3c24xx-time.patch
+++ b/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 @@
+/* linux/arch/arm/plat-s3c24xx/time.c
+ *
diff --git a/target/linux/s3c24xx/patches-2.6.30/080-nr-tty-devices.patch b/target/linux/s3c24xx/patches-2.6.30/080-nr-tty-devices.patch
index 3c3bc7991..e58152d0c 100644
--- a/target/linux/s3c24xx/patches-2.6.30/080-nr-tty-devices.patch
+++ b/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).
*/
#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
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.
diff --git a/target/linux/s3c24xx/patches-2.6.30/090-sound.patch b/target/linux/s3c24xx/patches-2.6.30/090-sound.patch
index ff86a29f7..2bfef447b 100644
--- a/target/linux/s3c24xx/patches-2.6.30/090-sound.patch
+++ b/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"
depends on SND_S3C24XX_SOC && MACH_JIVE
select SND_SOC_WM8750
@@ -23,11 +21,9 @@ Index: linux-2.6.30-rc6/sound/soc/s3c24xx/Kconfig
config SND_S3C24XX_SOC_SMDK2443_WM9710
tristate "SoC AC97 Audio support for SMDK2443 - WM9710"
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-ln2440sbc-alc650-objs := ln2440sbc_alc650.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_S3C24XX_UDA134X) += snd-soc-s3c24xx-uda134x.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_RESUME:
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)
s3c24xx_snd_rxctrl(1);
-@@ -308,7 +311,6 @@
+@@ -308,7 +311,6 @@ static int s3c24xx_i2s_trigger(struct sn
break;
}
@@ -71,11 +65,9 @@ Index: linux-2.6.30-rc6/sound/soc/s3c24xx/s3c24xx-i2s.c
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;
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;
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);
spin_lock(&prtd->lock);
@@ -104,7 +96,7 @@ Index: linux-2.6.30-rc6/sound/soc/s3c24xx/s3c24xx-pcm.c
prtd->dma_loaded--;
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");
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,
-@@ -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. */
if (substream->stream == SNDRV_PCM_STREAM_PLAYBACK) {
s3c2410_dma_devconfig(prtd->params->channel,
diff --git a/target/linux/s3c24xx/patches-2.6.30/100-udc-poll-vbus.patch b/target/linux/s3c24xx/patches-2.6.30/100-udc-poll-vbus.patch
index 5fe1c2ec8..5658e8d37 100644
--- a/target/linux/s3c24xx/patches-2.6.30/100-udc-poll-vbus.patch
+++ b/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_len;
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)
{
-@@ -134,6 +135,8 @@
+@@ -134,6 +135,8 @@ static int dprintk(int level, const char
return 0;
}
#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)
{
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,
.owner = THIS_MODULE,
};
@@ -27,7 +25,7 @@ Index: linux-2.6.30-rc6/drivers/usb/gadget/s3c2410_udc.c
/* io macros */
-@@ -843,6 +847,7 @@
+@@ -843,6 +847,7 @@ static void s3c2410_udc_handle_ep(struct
u32 ep_csr1;
u32 idx;
@@ -35,7 +33,7 @@ Index: linux-2.6.30-rc6/drivers/usb/gadget/s3c2410_udc.c
if (likely (!list_empty(&ep->queue)))
req = list_entry(ep->queue.next,
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) {
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;
}
@@ -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)
{
dprintk(DEBUG_NORMAL, "%s()\n", __func__);
-@@ -1677,6 +1698,11 @@
+@@ -1677,6 +1698,11 @@ int usb_gadget_register_driver(struct us
goto register_error;
}
@@ -77,7 +75,7 @@ Index: linux-2.6.30-rc6/drivers/usb/gadget/s3c2410_udc.c
/* Enable udc */
s3c2410_udc_enable(udc);
-@@ -1707,6 +1733,7 @@
+@@ -1707,6 +1733,7 @@ int usb_gadget_unregister_driver(struct
if (driver->disconnect)
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);
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);
@@ -102,7 +100,7 @@ Index: linux-2.6.30-rc6/drivers/usb/gadget/s3c2410_udc.c
if (s3c2410_udc_debugfs_root) {
udc->regs_info = debugfs_create_file("registers", S_IRUGO,
s3c2410_udc_debugfs_root,
-@@ -1904,6 +1937,7 @@
+@@ -1904,6 +1937,7 @@ static int s3c2410_udc_probe(struct plat
if (!udc->regs_info)
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");
-@@ -1939,6 +1973,8 @@
+@@ -1939,6 +1973,8 @@ static int s3c2410_udc_remove(struct pla
if (udc_info && udc_info->vbus_pin > 0) {
irq = gpio_to_irq(udc_info->vbus_pin);
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);
-@@ -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);
@@ -134,10 +132,8 @@ Index: linux-2.6.30-rc6/drivers/usb/gadget/s3c2410_udc.c
retval = platform_driver_register(&udc_driver_2410);
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 @@
#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>
#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);
}
@@ -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 with controller, bus, and devices active */
-@@ -486,15 +524,23 @@
+@@ -486,15 +524,23 @@ static int ohci_hcd_s3c2410_drv_remove(s
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 {
void (*udc_command)(enum s3c2410_udc_cmd_e);
void (*vbus_draw)(unsigned int ma);