b43: Remove unnecessary MMIO accesses in the interrupt hotpath.
[openwrt.git] / target / linux / s3c24xx / patches-2.6.28 / 001-merge-openmoko.patch
index 77be550..d328602 100644 (file)
@@ -5,11 +5,9 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
 
 ---
 
-Index: linux-2.6.28/arch/arm/common/vic.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/common/vic.c    2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/common/vic.c 2009-01-02 00:01:56.000000000 +0100
-@@ -69,12 +69,12 @@ void __init vic_init(void __iomem *base,
+--- a/arch/arm/common/vic.c
++++ b/arch/arm/common/vic.c
+@@ -69,12 +69,12 @@
        /*
         * Make sure we clear all existing interrupts
         */
@@ -25,7 +23,7 @@ Index: linux-2.6.28/arch/arm/common/vic.c
        }
  
        for (i = 0; i < 16; i++) {
-@@ -82,7 +82,7 @@ void __init vic_init(void __iomem *base,
+@@ -82,7 +82,7 @@
                writel(VIC_VECT_CNTL_ENABLE | i, reg);
        }
  
@@ -34,10 +32,8 @@ Index: linux-2.6.28/arch/arm/common/vic.c
  
        for (i = 0; i < 32; i++) {
                unsigned int irq = irq_start + i;
-Index: linux-2.6.28/arch/arm/configs/gta02-moredrivers-defconfig
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/configs/gta02-moredrivers-defconfig  2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/configs/gta02-moredrivers-defconfig
 @@ -0,0 +1,2107 @@
 +#
 +# Automatically generated make config: don't edit
@@ -2146,10 +2142,8 @@ Index: linux-2.6.28/arch/arm/configs/gta02-moredrivers-defconfig
 +CONFIG_PLIST=y
 +CONFIG_HAS_IOMEM=y
 +CONFIG_HAS_DMA=y
-Index: linux-2.6.28/arch/arm/configs/gta02-packaging-defconfig
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/configs/gta02-packaging-defconfig    2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/configs/gta02-packaging-defconfig
 @@ -0,0 +1,2111 @@
 +#
 +# Automatically generated make config: don't edit
@@ -4262,10 +4256,8 @@ Index: linux-2.6.28/arch/arm/configs/gta02-packaging-defconfig
 +CONFIG_PLIST=y
 +CONFIG_HAS_IOMEM=y
 +CONFIG_HAS_DMA=y
-Index: linux-2.6.28/arch/arm/configs/gta03_defconfig
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/configs/gta03_defconfig      2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/configs/gta03_defconfig
 @@ -0,0 +1,1548 @@
 +#
 +# Automatically generated make config: don't edit
@@ -5815,10 +5807,8 @@ Index: linux-2.6.28/arch/arm/configs/gta03_defconfig
 +CONFIG_PLIST=y
 +CONFIG_HAS_IOMEM=y
 +CONFIG_HAS_DMA=y
-Index: linux-2.6.28/arch/arm/configs/s3c6400_defconfig
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/configs/s3c6400_defconfig    2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/configs/s3c6400_defconfig
 @@ -0,0 +1,845 @@
 +#
 +# Automatically generated make config: don't edit
@@ -6665,11 +6655,9 @@ Index: linux-2.6.28/arch/arm/configs/s3c6400_defconfig
 +CONFIG_PLIST=y
 +CONFIG_HAS_IOMEM=y
 +CONFIG_HAS_DMA=y
-Index: linux-2.6.28/arch/arm/Kconfig
-===================================================================
---- linux-2.6.28.orig/arch/arm/Kconfig 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/Kconfig      2009-01-02 00:01:56.000000000 +0100
-@@ -498,6 +498,13 @@ config ARCH_S3C2410
+--- a/arch/arm/Kconfig
++++ b/arch/arm/Kconfig
+@@ -498,6 +498,13 @@
          BAST (<http://www.simtec.co.uk/products/EB110ITX/>), the IPAQ 1940 or
          the Samsung SMDK2410 development board (and derivatives).
  
@@ -6683,7 +6671,7 @@ Index: linux-2.6.28/arch/arm/Kconfig
  config ARCH_SHARK
        bool "Shark"
        select ISA
-@@ -590,6 +597,7 @@ source "arch/arm/mach-orion5x/Kconfig"
+@@ -590,6 +597,7 @@
  source "arch/arm/mach-kirkwood/Kconfig"
  
  source "arch/arm/plat-s3c24xx/Kconfig"
@@ -6691,7 +6679,7 @@ Index: linux-2.6.28/arch/arm/Kconfig
  source "arch/arm/plat-s3c/Kconfig"
  
  if ARCH_S3C2410
-@@ -601,6 +609,11 @@ source "arch/arm/mach-s3c2442/Kconfig"
+@@ -601,6 +609,11 @@
  source "arch/arm/mach-s3c2443/Kconfig"
  endif
  
@@ -6703,7 +6691,7 @@ Index: linux-2.6.28/arch/arm/Kconfig
  source "arch/arm/mach-lh7a40x/Kconfig"
  
  source "arch/arm/mach-imx/Kconfig"
-@@ -1256,6 +1269,8 @@ source "drivers/usb/Kconfig"
+@@ -1256,6 +1269,8 @@
  
  source "drivers/uwb/Kconfig"
  
@@ -6712,7 +6700,7 @@ Index: linux-2.6.28/arch/arm/Kconfig
  source "drivers/mmc/Kconfig"
  
  source "drivers/memstick/Kconfig"
-@@ -1268,6 +1283,8 @@ source "drivers/rtc/Kconfig"
+@@ -1268,6 +1283,8 @@
  
  source "drivers/dma/Kconfig"
  
@@ -6721,11 +6709,9 @@ Index: linux-2.6.28/arch/arm/Kconfig
  source "drivers/dca/Kconfig"
  
  source "drivers/auxdisplay/Kconfig"
-Index: linux-2.6.28/arch/arm/kernel/vmlinux.lds.S
-===================================================================
---- linux-2.6.28.orig/arch/arm/kernel/vmlinux.lds.S    2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/kernel/vmlinux.lds.S 2009-01-02 00:01:56.000000000 +0100
-@@ -106,6 +106,8 @@ SECTIONS
+--- a/arch/arm/kernel/vmlinux.lds.S
++++ b/arch/arm/kernel/vmlinux.lds.S
+@@ -106,6 +106,8 @@
                *(.got)                 /* Global offset table          */
        }
  
@@ -6734,10 +6720,8 @@ Index: linux-2.6.28/arch/arm/kernel/vmlinux.lds.S
        RODATA
  
        _etext = .;                     /* End of text and rodata section */
-Index: linux-2.6.28/arch/arm/mach-s3c2410/clock.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2410/clock.c    2008-12-25 00:26:37.000000000 +0100
-+++ /dev/null  1970-01-01 00:00:00.000000000 +0000
+--- a/arch/arm/mach-s3c2410/clock.c
++++ /dev/null
 @@ -1,276 +0,0 @@
 -/* linux/arch/arm/mach-s3c2410/clock.c
 - *
@@ -7015,10 +6999,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c2410/clock.c
 -
 -      return 0;
 -}
-Index: linux-2.6.28/arch/arm/mach-s3c2410/dma.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2410/dma.c      2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2410/dma.c   2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/mach-s3c2410/dma.c
++++ b/arch/arm/mach-s3c2410/dma.c
 @@ -25,12 +25,12 @@
  
  #include <plat/regs-serial.h>
@@ -7034,10 +7016,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c2410/dma.c
  
  static struct s3c24xx_dma_map __initdata s3c2410_dma_mappings[] = {
        [DMACH_XD0] = {
-Index: linux-2.6.28/arch/arm/mach-s3c2410/include/mach/fiq_ipc_gta02.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c2410/include/mach/fiq_ipc_gta02.h    2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c2410/include/mach/fiq_ipc_gta02.h
 @@ -0,0 +1,60 @@
 +#ifndef _LINUX_FIQ_IPC_H
 +#define _LINUX_FIQ_IPC_H
@@ -7099,10 +7079,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c2410/include/mach/fiq_ipc_gta02.h
 +extern void fiq_kick(void);  /* provoke a FIQ "immediately" */
 +
 +#endif /* _LINUX_FIQ_IPC_H */
-Index: linux-2.6.28/arch/arm/mach-s3c2410/include/mach/gpio-core.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c2410/include/mach/gpio-core.h        2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c2410/include/mach/gpio-core.h
 @@ -0,0 +1,21 @@
 +/* arch/arm/mach-s3c24100/include/mach/gpio-core.h
 + *
@@ -7125,10 +7103,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c2410/include/mach/gpio-core.h
 +#include <plat/gpio-core.h>
 +
 +#endif /* __ASM_ARCH_GPIO_CORE_H */
-Index: linux-2.6.28/arch/arm/mach-s3c2410/include/mach/gpio.h
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2410/include/mach/gpio.h        2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2410/include/mach/gpio.h     2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/mach-s3c2410/include/mach/gpio.h
++++ b/arch/arm/mach-s3c2410/include/mach/gpio.h
 @@ -15,4 +15,14 @@
  #define gpio_set_value        __gpio_set_value
  #define gpio_cansleep __gpio_cansleep
@@ -7144,10 +7120,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c2410/include/mach/gpio.h
 +#include <mach/gpio-nrs.h>
 +
 +#define S3C_GPIO_END  (S3C2410_GPIO_BANKH + 32)
-Index: linux-2.6.28/arch/arm/mach-s3c2410/include/mach/gpio-nrs.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c2410/include/mach/gpio-nrs.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c2410/include/mach/gpio-nrs.h
 @@ -0,0 +1,23 @@
 +/* arch/arm/mach-s3c2410/include/mach/gpio-nrs.h
 + *
@@ -7172,10 +7146,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c2410/include/mach/gpio-nrs.h
 +#define S3C2410_GPIO_BANKF   (32*5)
 +#define S3C2410_GPIO_BANKG   (32*6)
 +#define S3C2410_GPIO_BANKH   (32*7)
-Index: linux-2.6.28/arch/arm/mach-s3c2410/include/mach/gta01.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c2410/include/mach/gta01.h    2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c2410/include/mach/gta01.h
 @@ -0,0 +1,74 @@
 +#ifndef _GTA01_H
 +#define _GTA01_H
@@ -7251,10 +7223,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c2410/include/mach/gta01.h
 +#define GTA01Bv4_IRQ_PCF50606 IRQ_EINT9
 +
 +#endif /* _GTA01_H */
-Index: linux-2.6.28/arch/arm/mach-s3c2410/include/mach/gta02.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c2410/include/mach/gta02.h    2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c2410/include/mach/gta02.h
 @@ -0,0 +1,113 @@
 +#ifndef _GTA02_H
 +#define _GTA02_H
@@ -7369,16 +7339,12 @@ Index: linux-2.6.28/arch/arm/mach-s3c2410/include/mach/gta02.h
 +extern struct pcf50633_platform_data gta02_pcf_pdata;
 +
 +#endif /* _GTA02_H */
-Index: linux-2.6.28/arch/arm/mach-s3c2410/include/mach/gta02-pm-wlan.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c2410/include/mach/gta02-pm-wlan.h    2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c2410/include/mach/gta02-pm-wlan.h
 @@ -0,0 +1 @@
 +void gta02_wlan_power(int on);
-Index: linux-2.6.28/arch/arm/mach-s3c2410/include/mach/irqs.h
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2410/include/mach/irqs.h        2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2410/include/mach/irqs.h     2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/mach-s3c2410/include/mach/irqs.h
++++ b/arch/arm/mach-s3c2410/include/mach/irqs.h
 @@ -12,9 +12,9 @@
  #ifndef __ASM_ARCH_IRQS_H
  #define __ASM_ARCH_IRQS_H __FILE__
@@ -7460,10 +7426,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c2410/include/mach/irqs.h
 +#define IRQ_GLAMO_RISC          IRQ_GLAMO(8)
 +
  #endif /* __ASM_ARCH_IRQ_H */
-Index: linux-2.6.28/arch/arm/mach-s3c2410/include/mach/map.h
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2410/include/mach/map.h 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2410/include/mach/map.h      2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/mach-s3c2410/include/mach/map.h
++++ b/arch/arm/mach-s3c2410/include/mach/map.h
 @@ -13,34 +13,20 @@
  #ifndef __ASM_ARCH_MAP_H
  #define __ASM_ARCH_MAP_H
@@ -7612,10 +7576,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c2410/include/mach/map.h
 +#define S3C_PA_HSMMC0     S3C2443_PA_HSMMC
  
  #endif /* __ASM_ARCH_MAP_H */
-Index: linux-2.6.28/arch/arm/mach-s3c2410/include/mach/mci.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c2410/include/mach/mci.h      2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c2410/include/mach/mci.h
 @@ -0,0 +1,13 @@
 +#ifndef _ARCH_MCI_H
 +#define _ARCH_MCI_H
@@ -7630,16 +7592,12 @@ Index: linux-2.6.28/arch/arm/mach-s3c2410/include/mach/mci.h
 +};
 +
 +#endif /* _ARCH_NCI_H */
-Index: linux-2.6.28/arch/arm/mach-s3c2410/include/mach/neo1973-pm-gsm.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c2410/include/mach/neo1973-pm-gsm.h   2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c2410/include/mach/neo1973-pm-gsm.h
 @@ -0,0 +1 @@
 +extern int gta_gsm_interrupts;
-Index: linux-2.6.28/arch/arm/mach-s3c2410/include/mach/pwm.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c2410/include/mach/pwm.h      2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c2410/include/mach/pwm.h
 @@ -0,0 +1,46 @@
 +#ifndef __S3C2410_PWM_H
 +#define __S3C2410_PWM_H
@@ -7687,10 +7645,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c2410/include/mach/pwm.h
 +int s3c2410_pwm_dumpregs(void);
 +
 +#endif /* __S3C2410_PWM_H */
-Index: linux-2.6.28/arch/arm/mach-s3c2410/include/mach/regs-clock.h
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2410/include/mach/regs-clock.h  2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2410/include/mach/regs-clock.h       2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/mach-s3c2410/include/mach/regs-clock.h
++++ b/arch/arm/mach-s3c2410/include/mach/regs-clock.h
 @@ -42,13 +42,6 @@
  #define S3C2410_CLKCON_IIS         (1<<17)
  #define S3C2410_CLKCON_SPI         (1<<18)
@@ -7738,10 +7694,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c2410/include/mach/regs-clock.h
  #if defined(CONFIG_CPU_S3C2440) || defined(CONFIG_CPU_S3C2442)
  
  /* extra registers */
-Index: linux-2.6.28/arch/arm/mach-s3c2410/include/mach/regs-gpio.h
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2410/include/mach/regs-gpio.h   2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2410/include/mach/regs-gpio.h        2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/mach-s3c2410/include/mach/regs-gpio.h
++++ b/arch/arm/mach-s3c2410/include/mach/regs-gpio.h
 @@ -14,16 +14,7 @@
  #ifndef __ASM_ARCH_REGS_GPIO_H
  #define __ASM_ARCH_REGS_GPIO_H
@@ -7774,10 +7728,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c2410/include/mach/regs-gpio.h
  /* interrupt filtering conrrol for EINT16..EINT23 */
  #define S3C2410_EINFLT0          S3C2410_GPIOREG(0x94)
  #define S3C2410_EINFLT1          S3C2410_GPIOREG(0x98)
-Index: linux-2.6.28/arch/arm/mach-s3c2410/include/mach/regs-sdi.h
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2410/include/mach/regs-sdi.h    2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2410/include/mach/regs-sdi.h 2009-01-02 00:01:56.000000000 +0100
+--- 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)
  
@@ -7795,21 +7747,17 @@ Index: linux-2.6.28/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.28/arch/arm/mach-s3c2410/include/mach/s3c24xx-serial.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c2410/include/mach/s3c24xx-serial.h   2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c2410/include/mach/s3c24xx-serial.h
 @@ -0,0 +1,5 @@
 +#include <linux/resume-dependency.h>
 +
 +extern void s3c24xx_serial_console_set_silence(int silence);
 +extern void s3c24xx_serial_register_resume_dependency(struct resume_dependency *
 +                                           resume_dependency, int uart_index);
-Index: linux-2.6.28/arch/arm/mach-s3c2410/include/mach/spi-gpio.h
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2410/include/mach/spi-gpio.h    2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2410/include/mach/spi-gpio.h 2009-01-02 00:43:03.000000000 +0100
-@@ -21,7 +21,15 @@ struct s3c2410_spigpio_info {
+--- a/arch/arm/mach-s3c2410/include/mach/spi-gpio.h
++++ b/arch/arm/mach-s3c2410/include/mach/spi-gpio.h
+@@ -21,7 +21,15 @@
        int                      num_chipselect;
        int                      bus_num;
  
@@ -7826,11 +7774,9 @@ Index: linux-2.6.28/arch/arm/mach-s3c2410/include/mach/spi-gpio.h
  };
  
  
-Index: linux-2.6.28/arch/arm/mach-s3c2410/include/mach/spi.h
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2410/include/mach/spi.h 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2410/include/mach/spi.h      2009-01-02 00:01:56.000000000 +0100
-@@ -22,5 +22,12 @@ struct s3c2410_spi_info {
+--- a/arch/arm/mach-s3c2410/include/mach/spi.h
++++ b/arch/arm/mach-s3c2410/include/mach/spi.h
+@@ -22,5 +22,12 @@
        void (*set_cs)(struct s3c2410_spi_info *spi, int cs, int pol);
  };
  
@@ -7843,10 +7789,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c2410/include/mach/spi.h
 +                                            int enable);
  
  #endif /* __ASM_ARCH_SPI_H */
-Index: linux-2.6.28/arch/arm/mach-s3c2410/include/mach/system-reset.h
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2410/include/mach/system-reset.h        2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2410/include/mach/system-reset.h     2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/mach-s3c2410/include/mach/system-reset.h
++++ b/arch/arm/mach-s3c2410/include/mach/system-reset.h
 @@ -13,7 +13,7 @@
  #include <mach/hardware.h>
  #include <linux/io.h>
@@ -7856,10 +7800,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c2410/include/mach/system-reset.h
  #include <mach/regs-clock.h>
  
  #include <linux/clk.h>
-Index: linux-2.6.28/arch/arm/mach-s3c2410/include/mach/tick.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c2410/include/mach/tick.h     2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c2410/include/mach/tick.h
 @@ -0,0 +1,15 @@
 +/* linux/arch/arm/mach-s3c2410/include/mach/tick.h
 + *
@@ -7876,10 +7818,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c2410/include/mach/tick.h
 +{
 +      return __raw_readl(S3C2410_SRCPND) & SRCPND_TIMER4;
 +}
-Index: linux-2.6.28/arch/arm/mach-s3c2410/include/mach/timex.h
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2410/include/mach/timex.h       2008-12-25 00:26:37.000000000 +0100
-+++ /dev/null  1970-01-01 00:00:00.000000000 +0000
+--- a/arch/arm/mach-s3c2410/include/mach/timex.h
++++ /dev/null
 @@ -1,26 +0,0 @@
 -/* arch/arm/mach-s3c2410/include/mach/timex.h
 - *
@@ -7907,10 +7847,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c2410/include/mach/timex.h
 -
 -
 -#endif /* __ASM_ARCH_TIMEX_H */
-Index: linux-2.6.28/arch/arm/mach-s3c2410/include/mach/ts.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c2410/include/mach/ts.h       2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c2410/include/mach/ts.h
 @@ -0,0 +1,35 @@
 +/* arch/arm/mach-s3c2410/include/mach/ts.h
 + *
@@ -7947,19 +7885,15 @@ Index: linux-2.6.28/arch/arm/mach-s3c2410/include/mach/ts.h
 +
 +#endif /* __ASM_ARM_TS_H */
 +
-Index: linux-2.6.28/arch/arm/mach-s3c2410/include/mach/uncompress.h
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2410/include/mach/uncompress.h  2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2410/include/mach/uncompress.h       2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/mach-s3c2410/include/mach/uncompress.h
++++ b/arch/arm/mach-s3c2410/include/mach/uncompress.h
 @@ -1,3 +1,4 @@
 +
  /* arch/arm/mach-s3c2410/include/mach/uncompress.h
   *
   * Copyright (c) 2003, 2007 Simtec Electronics
-Index: linux-2.6.28/arch/arm/mach-s3c2410/include/mach/vmalloc.h
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2410/include/mach/vmalloc.h     2008-12-25 00:26:37.000000000 +0100
-+++ /dev/null  1970-01-01 00:00:00.000000000 +0000
+--- a/arch/arm/mach-s3c2410/include/mach/vmalloc.h
++++ /dev/null
 @@ -1,20 +0,0 @@
 -/* arch/arm/mach-s3c2410/include/mach/vmalloc.h
 - *
@@ -7981,11 +7915,9 @@ Index: linux-2.6.28/arch/arm/mach-s3c2410/include/mach/vmalloc.h
 -#define VMALLOC_END     (0xE0000000)
 -
 -#endif /* __ASM_ARCH_VMALLOC_H */
-Index: linux-2.6.28/arch/arm/mach-s3c2410/Kconfig
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2410/Kconfig    2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2410/Kconfig 2009-01-02 00:01:56.000000000 +0100
-@@ -9,6 +9,7 @@ config CPU_S3C2410
+--- a/arch/arm/mach-s3c2410/Kconfig
++++ b/arch/arm/mach-s3c2410/Kconfig
+@@ -9,6 +9,7 @@
        depends on ARCH_S3C2410
        select S3C2410_CLOCK
        select S3C2410_GPIO
@@ -7993,7 +7925,7 @@ Index: linux-2.6.28/arch/arm/mach-s3c2410/Kconfig
        select CPU_LLSERIAL_S3C2410
        select S3C2410_PM if PM
        help
-@@ -32,11 +33,6 @@ config S3C2410_GPIO
+@@ -32,11 +33,6 @@
        help
          GPIO code for S3C2410 and similar processors
  
@@ -8005,7 +7937,7 @@ Index: linux-2.6.28/arch/arm/mach-s3c2410/Kconfig
  config SIMTEC_NOR
        bool
        help
-@@ -49,6 +45,12 @@ config MACH_BAST_IDE
+@@ -49,6 +45,12 @@
          Internal node for machines with an BAST style IDE
          interface
  
@@ -8018,7 +7950,7 @@ Index: linux-2.6.28/arch/arm/mach-s3c2410/Kconfig
  menu "S3C2410 Machines"
  
  config ARCH_SMDK2410
-@@ -84,6 +86,7 @@ config ARCH_BAST
+@@ -84,6 +86,7 @@
        select PM_SIMTEC if PM
        select SIMTEC_NOR
        select MACH_BAST_IDE
@@ -8026,7 +7958,7 @@ Index: linux-2.6.28/arch/arm/mach-s3c2410/Kconfig
        select ISA
        help
          Say Y here if you are using the Simtec Electronics EB2410ITX
-@@ -121,6 +124,7 @@ config MACH_TCT_HAMMER
+@@ -121,6 +124,7 @@
  config MACH_VR1000
        bool "Thorcom VR1000"
        select PM_SIMTEC if PM
@@ -8034,7 +7966,7 @@ Index: linux-2.6.28/arch/arm/mach-s3c2410/Kconfig
        select SIMTEC_NOR
        select MACH_BAST_IDE
        select CPU_S3C2410
-@@ -130,7 +134,16 @@ config MACH_VR1000
+@@ -130,7 +134,16 @@
  config MACH_QT2410
        bool "QT2410"
        select CPU_S3C2410
@@ -8051,10 +7983,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c2410/Kconfig
 +         Say Y here if you are using the FIC Neo1973 GSM Phone
 +
  endmenu
-Index: linux-2.6.28/arch/arm/mach-s3c2410/mach-amlm5900.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2410/mach-amlm5900.c    2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2410/mach-amlm5900.c 2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/mach-s3c2410/mach-amlm5900.c
++++ b/arch/arm/mach-s3c2410/mach-amlm5900.c
 @@ -52,6 +52,7 @@
  #include <mach/regs-lcd.h>
  #include <mach/regs-gpio.h>
@@ -8063,7 +7993,7 @@ Index: linux-2.6.28/arch/arm/mach-s3c2410/mach-amlm5900.c
  #include <plat/devs.h>
  #include <plat/cpu.h>
  
-@@ -150,7 +151,7 @@ static struct platform_device *amlm5900_
+@@ -150,7 +151,7 @@
  #endif
        &s3c_device_adc,
        &s3c_device_wdt,
@@ -8072,7 +8002,7 @@ Index: linux-2.6.28/arch/arm/mach-s3c2410/mach-amlm5900.c
        &s3c_device_usb,
        &s3c_device_rtc,
        &s3c_device_usbgadget,
-@@ -233,6 +234,7 @@ static void __init amlm5900_init(void)
+@@ -233,6 +234,7 @@
  #ifdef CONFIG_FB_S3C2410
        s3c24xx_fb_set_platdata(&amlm5900_fb_info);
  #endif
@@ -8080,10 +8010,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c2410/mach-amlm5900.c
        platform_add_devices(amlm5900_devices, ARRAY_SIZE(amlm5900_devices));
  }
  
-Index: linux-2.6.28/arch/arm/mach-s3c2410/mach-bast.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2410/mach-bast.c        2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2410/mach-bast.c     2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/mach-s3c2410/mach-bast.c
++++ b/arch/arm/mach-s3c2410/mach-bast.c
 @@ -44,8 +44,8 @@
  #include <mach/regs-mem.h>
  #include <mach/regs-lcd.h>
@@ -8095,7 +8023,7 @@ Index: linux-2.6.28/arch/arm/mach-s3c2410/mach-bast.c
  #include <mach/fb.h>
  
  #include <linux/mtd/mtd.h>
-@@ -406,7 +406,7 @@ static struct platform_device bast_sio =
+@@ -406,7 +406,7 @@
   * standard 100KHz i2c bus frequency
  */
  
@@ -8104,7 +8032,7 @@ Index: linux-2.6.28/arch/arm/mach-s3c2410/mach-bast.c
        .flags          = 0,
        .slave_addr     = 0x10,
        .bus_freq       = 100*1000,
-@@ -553,7 +553,7 @@ static struct platform_device *bast_devi
+@@ -553,7 +553,7 @@
        &s3c_device_usb,
        &s3c_device_lcd,
        &s3c_device_wdt,
@@ -8113,7 +8041,7 @@ Index: linux-2.6.28/arch/arm/mach-s3c2410/mach-bast.c
        &s3c_device_rtc,
        &s3c_device_nand,
        &bast_device_dm9k,
-@@ -588,7 +588,8 @@ static void __init bast_map_io(void)
+@@ -588,7 +588,8 @@
        s3c24xx_register_clocks(bast_clocks, ARRAY_SIZE(bast_clocks));
  
        s3c_device_nand.dev.platform_data = &bast_nand_info;
@@ -8123,10 +8051,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c2410/mach-bast.c
  
        s3c24xx_init_io(bast_iodesc, ARRAY_SIZE(bast_iodesc));
        s3c24xx_init_clocks(0);
-Index: linux-2.6.28/arch/arm/mach-s3c2410/mach-gta01.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c2410/mach-gta01.c    2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c2410/mach-gta01.c
 @@ -0,0 +1,786 @@
 +/*
 + * linux/arch/arm/mach-s3c2410/mach-gta01.c
@@ -8914,10 +8840,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c2410/mach-gta01.c
 +      .init_machine   = gta01_machine_init,
 +      .timer          = &s3c24xx_timer,
 +MACHINE_END
-Index: linux-2.6.28/arch/arm/mach-s3c2410/mach-h1940.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2410/mach-h1940.c       2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2410/mach-h1940.c    2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/mach-s3c2410/mach-h1940.c
++++ b/arch/arm/mach-s3c2410/mach-h1940.c
 @@ -38,11 +38,13 @@
  #include <mach/h1940.h>
  #include <mach/h1940-latch.h>
@@ -8933,7 +8857,7 @@ Index: linux-2.6.28/arch/arm/mach-s3c2410/mach-h1940.c
  #include <plat/pm.h>
  
  static struct map_desc h1940_iodesc[] __initdata = {
-@@ -129,6 +131,11 @@ static struct s3c2410_udc_mach_info h194
+@@ -129,6 +131,11 @@
        .vbus_pin_inverted      = 1,
  };
  
@@ -8945,7 +8869,7 @@ Index: linux-2.6.28/arch/arm/mach-s3c2410/mach-h1940.c
  
  /**
   * Set lcd on or off
-@@ -183,9 +190,10 @@ static struct platform_device *h1940_dev
+@@ -183,9 +190,10 @@
        &s3c_device_usb,
        &s3c_device_lcd,
        &s3c_device_wdt,
@@ -8957,7 +8881,7 @@ Index: linux-2.6.28/arch/arm/mach-s3c2410/mach-h1940.c
        &s3c_device_leds,
        &s3c_device_bluetooth,
  };
-@@ -201,7 +209,7 @@ static void __init h1940_map_io(void)
+@@ -201,7 +209,7 @@
  #ifdef CONFIG_PM_H1940
        memcpy(phys_to_virt(H1940_SUSPEND_RESUMEAT), h1940_pm_return, 1024);
  #endif
@@ -8966,7 +8890,7 @@ Index: linux-2.6.28/arch/arm/mach-s3c2410/mach-h1940.c
  }
  
  static void __init h1940_init_irq(void)
-@@ -214,7 +222,9 @@ static void __init h1940_init(void)
+@@ -214,7 +222,9 @@
        u32 tmp;
  
        s3c24xx_fb_set_platdata(&h1940_fb_info);
@@ -8976,7 +8900,7 @@ Index: linux-2.6.28/arch/arm/mach-s3c2410/mach-h1940.c
  
        /* Turn off suspend on both USB ports, and switch the
         * selectable USB port to USB device mode. */
-@@ -223,10 +233,9 @@ static void __init h1940_init(void)
+@@ -223,10 +233,9 @@
                              S3C2410_MISCCR_USBSUSPND0 |
                              S3C2410_MISCCR_USBSUSPND1, 0x0);
  
@@ -8990,10 +8914,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c2410/mach-h1940.c
        writel(tmp, S3C2410_UPLLCON);
  
        platform_add_devices(h1940_devices, ARRAY_SIZE(h1940_devices));
-Index: linux-2.6.28/arch/arm/mach-s3c2410/mach-n30.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2410/mach-n30.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2410/mach-n30.c      2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/mach-s3c2410/mach-n30.c
++++ b/arch/arm/mach-s3c2410/mach-n30.c
 @@ -40,14 +40,14 @@
  #include <asm/mach/irq.h>
  #include <asm/mach/map.h>
@@ -9011,7 +8933,7 @@ Index: linux-2.6.28/arch/arm/mach-s3c2410/mach-n30.c
  
  static struct map_desc n30_iodesc[] __initdata = {
        /* nothing here yet */
-@@ -320,7 +320,7 @@ static struct s3c2410fb_mach_info n30_fb
+@@ -320,7 +320,7 @@
  static struct platform_device *n30_devices[] __initdata = {
        &s3c_device_lcd,
        &s3c_device_wdt,
@@ -9020,7 +8942,7 @@ Index: linux-2.6.28/arch/arm/mach-s3c2410/mach-n30.c
        &s3c_device_iis,
        &s3c_device_usb,
        &s3c_device_usbgadget,
-@@ -332,7 +332,7 @@ static struct platform_device *n30_devic
+@@ -332,7 +332,7 @@
  static struct platform_device *n35_devices[] __initdata = {
        &s3c_device_lcd,
        &s3c_device_wdt,
@@ -9029,7 +8951,7 @@ Index: linux-2.6.28/arch/arm/mach-s3c2410/mach-n30.c
        &s3c_device_iis,
        &s3c_device_usbgadget,
        &n35_button_device,
-@@ -501,7 +501,7 @@ static void __init n30_init_irq(void)
+@@ -501,7 +501,7 @@
  static void __init n30_init(void)
  {
        s3c24xx_fb_set_platdata(&n30_fb_info);
@@ -9038,10 +8960,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c2410/mach-n30.c
        s3c24xx_udc_set_platdata(&n30_udc_cfg);
  
        /* Turn off suspend on both USB ports, and switch the
-Index: linux-2.6.28/arch/arm/mach-s3c2410/mach-otom.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2410/mach-otom.c        2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2410/mach-otom.c     2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/mach-s3c2410/mach-otom.c
++++ b/arch/arm/mach-s3c2410/mach-otom.c
 @@ -35,6 +35,7 @@
  #include <plat/s3c2410.h>
  #include <plat/clock.h>
@@ -9050,7 +8970,7 @@ Index: linux-2.6.28/arch/arm/mach-s3c2410/mach-otom.c
  #include <plat/cpu.h>
  
  static struct map_desc otom11_iodesc[] __initdata = {
-@@ -94,7 +95,7 @@ static struct platform_device *otom11_de
+@@ -94,7 +95,7 @@
        &s3c_device_usb,
        &s3c_device_lcd,
        &s3c_device_wdt,
@@ -9059,7 +8979,7 @@ Index: linux-2.6.28/arch/arm/mach-s3c2410/mach-otom.c
        &s3c_device_iis,
        &s3c_device_rtc,
        &otom_device_nor,
-@@ -109,6 +110,7 @@ static void __init otom11_map_io(void)
+@@ -109,6 +110,7 @@
  
  static void __init otom11_init(void)
  {
@@ -9067,10 +8987,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c2410/mach-otom.c
        platform_add_devices(otom11_devices, ARRAY_SIZE(otom11_devices));
  }
  
-Index: linux-2.6.28/arch/arm/mach-s3c2410/mach-qt2410.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2410/mach-qt2410.c      2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2410/mach-qt2410.c   2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/mach-s3c2410/mach-qt2410.c
++++ b/arch/arm/mach-s3c2410/mach-qt2410.c
 @@ -1,6 +1,6 @@
  /* linux/arch/arm/mach-s3c2410/mach-qt2410.c
   *
@@ -9093,7 +9011,7 @@ Index: linux-2.6.28/arch/arm/mach-s3c2410/mach-qt2410.c
  
  #include <plat/common-smdk.h>
  #include <plat/devs.h>
-@@ -213,7 +214,7 @@ static struct platform_device qt2410_led
+@@ -213,7 +214,7 @@
  
  /* SPI */
  
@@ -9102,7 +9020,7 @@ Index: linux-2.6.28/arch/arm/mach-s3c2410/mach-qt2410.c
  {
        switch (cs) {
        case BITBANG_CS_ACTIVE:
-@@ -247,7 +248,7 @@ static struct platform_device *qt2410_de
+@@ -247,7 +248,7 @@
        &s3c_device_usb,
        &s3c_device_lcd,
        &s3c_device_wdt,
@@ -9111,7 +9029,7 @@ Index: linux-2.6.28/arch/arm/mach-s3c2410/mach-qt2410.c
        &s3c_device_iis,
        &s3c_device_sdi,
        &s3c_device_usbgadget,
-@@ -320,6 +321,24 @@ static int __init qt2410_tft_setup(char 
+@@ -320,6 +321,24 @@
  
  __setup("tft=", qt2410_tft_setup);
  
@@ -9136,7 +9054,7 @@ Index: linux-2.6.28/arch/arm/mach-s3c2410/mach-qt2410.c
  static void __init qt2410_map_io(void)
  {
        s3c24xx_init_io(qt2410_iodesc, ARRAY_SIZE(qt2410_iodesc));
-@@ -349,11 +368,12 @@ static void __init qt2410_machine_init(v
+@@ -349,11 +368,12 @@
        s3c2410_gpio_setpin(S3C2410_GPB0, 1);
  
        s3c24xx_udc_set_platdata(&qt2410_udc_cfg);
@@ -9150,10 +9068,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c2410/mach-qt2410.c
  }
  
  MACHINE_START(QT2410, "QT2410")
-Index: linux-2.6.28/arch/arm/mach-s3c2410/mach-smdk2410.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2410/mach-smdk2410.c    2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2410/mach-smdk2410.c 2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/mach-s3c2410/mach-smdk2410.c
++++ b/arch/arm/mach-s3c2410/mach-smdk2410.c
 @@ -47,6 +47,7 @@
  #include <asm/mach-types.h>
  
@@ -9162,7 +9078,7 @@ Index: linux-2.6.28/arch/arm/mach-s3c2410/mach-smdk2410.c
  
  #include <plat/devs.h>
  #include <plat/cpu.h>
-@@ -89,7 +90,7 @@ static struct platform_device *smdk2410_
+@@ -89,7 +90,7 @@
        &s3c_device_usb,
        &s3c_device_lcd,
        &s3c_device_wdt,
@@ -9171,7 +9087,7 @@ Index: linux-2.6.28/arch/arm/mach-s3c2410/mach-smdk2410.c
        &s3c_device_iis,
  };
  
-@@ -102,6 +103,7 @@ static void __init smdk2410_map_io(void)
+@@ -102,6 +103,7 @@
  
  static void __init smdk2410_init(void)
  {
@@ -9179,10 +9095,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c2410/mach-smdk2410.c
        platform_add_devices(smdk2410_devices, ARRAY_SIZE(smdk2410_devices));
        smdk_machine_init();
  }
-Index: linux-2.6.28/arch/arm/mach-s3c2410/mach-tct_hammer.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2410/mach-tct_hammer.c  2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2410/mach-tct_hammer.c       2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/mach-s3c2410/mach-tct_hammer.c
++++ b/arch/arm/mach-s3c2410/mach-tct_hammer.c
 @@ -45,6 +45,7 @@
  #include <asm/mach-types.h>
  
@@ -9191,7 +9105,7 @@ Index: linux-2.6.28/arch/arm/mach-s3c2410/mach-tct_hammer.c
  #include <plat/devs.h>
  #include <plat/cpu.h>
  
-@@ -127,7 +128,7 @@ static struct s3c2410_uartcfg tct_hammer
+@@ -127,7 +128,7 @@
  static struct platform_device *tct_hammer_devices[] __initdata = {
        &s3c_device_adc,
        &s3c_device_wdt,
@@ -9200,7 +9114,7 @@ Index: linux-2.6.28/arch/arm/mach-s3c2410/mach-tct_hammer.c
        &s3c_device_usb,
        &s3c_device_rtc,
        &s3c_device_usbgadget,
-@@ -146,6 +147,7 @@ static void __init tct_hammer_map_io(voi
+@@ -146,6 +147,7 @@
  
  static void __init tct_hammer_init(void)
  {
@@ -9208,10 +9122,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c2410/mach-tct_hammer.c
        platform_add_devices(tct_hammer_devices, ARRAY_SIZE(tct_hammer_devices));
  }
  
-Index: linux-2.6.28/arch/arm/mach-s3c2410/mach-vr1000.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2410/mach-vr1000.c      2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2410/mach-vr1000.c   2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/mach-s3c2410/mach-vr1000.c
++++ b/arch/arm/mach-s3c2410/mach-vr1000.c
 @@ -47,6 +47,7 @@
  #include <plat/clock.h>
  #include <plat/devs.h>
@@ -9220,7 +9132,7 @@ Index: linux-2.6.28/arch/arm/mach-s3c2410/mach-vr1000.c
  
  #include "usb-simtec.h"
  #include "nor-simtec.h"
-@@ -334,7 +335,7 @@ static struct platform_device *vr1000_de
+@@ -334,7 +335,7 @@
        &s3c_device_usb,
        &s3c_device_lcd,
        &s3c_device_wdt,
@@ -9229,7 +9141,7 @@ Index: linux-2.6.28/arch/arm/mach-s3c2410/mach-vr1000.c
        &s3c_device_adc,
        &serial_device,
        &vr1000_dm9k0,
-@@ -384,6 +385,7 @@ static void __init vr1000_map_io(void)
+@@ -384,6 +385,7 @@
  
  static void __init vr1000_init(void)
  {
@@ -9237,11 +9149,9 @@ Index: linux-2.6.28/arch/arm/mach-s3c2410/mach-vr1000.c
        platform_add_devices(vr1000_devices, ARRAY_SIZE(vr1000_devices));
  
        i2c_register_board_info(0, vr1000_i2c_devs,
-Index: linux-2.6.28/arch/arm/mach-s3c2410/Makefile
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2410/Makefile   2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2410/Makefile        2009-01-02 00:01:56.000000000 +0100
-@@ -15,7 +15,8 @@ obj-$(CONFIG_CPU_S3C2410_DMA)        += dma.o
+--- a/arch/arm/mach-s3c2410/Makefile
++++ b/arch/arm/mach-s3c2410/Makefile
+@@ -15,7 +15,8 @@
  obj-$(CONFIG_CPU_S3C2410_DMA) += dma.o
  obj-$(CONFIG_S3C2410_PM)      += pm.o sleep.o
  obj-$(CONFIG_S3C2410_GPIO)    += gpio.o
@@ -9251,16 +9161,14 @@ Index: linux-2.6.28/arch/arm/mach-s3c2410/Makefile
  
  # Machine support
  
-@@ -38,3 +39,5 @@ obj-$(CONFIG_SIMTEC_NOR)     += nor-simtec.o
+@@ -38,3 +39,5 @@
  # machine additions
  
  obj-$(CONFIG_MACH_BAST_IDE)   += bast-ide.o
 +obj-$(CONFIG_MACH_NEO1973_GTA01)+= mach-gta01.o
 +
-Index: linux-2.6.28/arch/arm/mach-s3c2410/pm.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2410/pm.c       2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2410/pm.c    2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/mach-s3c2410/pm.c
++++ b/arch/arm/mach-s3c2410/pm.c
 @@ -37,21 +37,14 @@
  #include <plat/cpu.h>
  #include <plat/pm.h>
@@ -9286,10 +9194,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c2410/pm.c
  
        if (machine_is_h1940()) {
                void *base = phys_to_virt(H1940_SUSPEND_CHECK);
-Index: linux-2.6.28/arch/arm/mach-s3c2410/pwm.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c2410/pwm.c   2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c2410/pwm.c
 @@ -0,0 +1,288 @@
 +/*
 + * arch/arm/mach-s3c2410/3c2410-pwm.c
@@ -9579,10 +9485,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c2410/pwm.c
 +
 +module_init(s3c24xx_pwm_init);
 +module_exit(s3c24xx_pwm_exit);
-Index: linux-2.6.28/arch/arm/mach-s3c2410/s3c2410.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2410/s3c2410.c  2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2410/s3c2410.c       2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/mach-s3c2410/s3c2410.c
++++ b/arch/arm/mach-s3c2410/s3c2410.c
 @@ -16,6 +16,7 @@
  #include <linux/list.h>
  #include <linux/timer.h>
@@ -9608,7 +9512,7 @@ Index: linux-2.6.28/arch/arm/mach-s3c2410/s3c2410.c
  
  /* Initial IO mappings */
  
-@@ -59,25 +63,28 @@ void __init s3c2410_init_uarts(struct s3
+@@ -59,25 +63,28 @@
   * machine specific initialisation.
  */
  
@@ -9643,7 +9547,7 @@ Index: linux-2.6.28/arch/arm/mach-s3c2410/s3c2410.c
  
        tmp = __raw_readl(S3C2410_CLKDIVN);
  
-@@ -95,7 +102,13 @@ void __init s3c2410_init_clocks(int xtal
+@@ -95,7 +102,13 @@
         * console to use them
         */
  
@@ -9658,11 +9562,9 @@ Index: linux-2.6.28/arch/arm/mach-s3c2410/s3c2410.c
        s3c2410_baseclk_add();
  }
  
-Index: linux-2.6.28/arch/arm/mach-s3c2412/clock.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2412/clock.c    2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2412/clock.c 2009-01-02 00:01:56.000000000 +0100
-@@ -93,12 +93,6 @@ static int s3c2412_upll_enable(struct cl
+--- a/arch/arm/mach-s3c2412/clock.c
++++ b/arch/arm/mach-s3c2412/clock.c
+@@ -93,12 +93,6 @@
  
  /* clock selections */
  
@@ -9675,17 +9577,15 @@ Index: linux-2.6.28/arch/arm/mach-s3c2412/clock.c
  static struct clk clk_erefclk = {
        .name           = "erefclk",
        .id             = -1,
-@@ -773,5 +767,6 @@ int __init s3c2412_baseclk_add(void)
+@@ -773,5 +767,6 @@
                s3c2412_clkcon_enable(clkp, 0);
        }
  
 +      s3c_pwmclk_init();
        return 0;
  }
-Index: linux-2.6.28/arch/arm/mach-s3c2412/dma.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2412/dma.c      2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2412/dma.c   2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/mach-s3c2412/dma.c
++++ b/arch/arm/mach-s3c2412/dma.c
 @@ -26,13 +26,13 @@
  
  #include <plat/regs-serial.h>
@@ -9702,10 +9602,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c2412/dma.c
  
  #define MAP(x) { (x)| DMA_CH_VALID, (x)| DMA_CH_VALID, (x)| DMA_CH_VALID, (x)| DMA_CH_VALID }
  
-Index: linux-2.6.28/arch/arm/mach-s3c2412/mach-jive.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2412/mach-jive.c        2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2412/mach-jive.c     2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/mach-s3c2412/mach-jive.c
++++ b/arch/arm/mach-s3c2412/mach-jive.c
 @@ -31,8 +31,8 @@
  #include <asm/mach/irq.h>
  
@@ -9727,7 +9625,7 @@ Index: linux-2.6.28/arch/arm/mach-s3c2412/mach-jive.c
  
  static struct map_desc jive_iodesc[] __initdata = {
  };
-@@ -450,14 +451,14 @@ static struct spi_board_info __initdata 
+@@ -450,14 +451,14 @@
  
  /* I2C bus and device configuration. */
  
@@ -9744,7 +9642,7 @@ Index: linux-2.6.28/arch/arm/mach-s3c2412/mach-jive.c
        [0] = {
                I2C_BOARD_INFO("lis302dl", 0x1c),
                .irq    = IRQ_EINT14,
-@@ -470,7 +471,7 @@ static struct platform_device *jive_devi
+@@ -470,7 +471,7 @@
        &s3c_device_usb,
        &s3c_device_rtc,
        &s3c_device_wdt,
@@ -9753,7 +9651,7 @@ Index: linux-2.6.28/arch/arm/mach-s3c2412/mach-jive.c
        &s3c_device_lcd,
        &jive_device_lcdspi,
        &jive_device_wm8750,
-@@ -492,7 +493,7 @@ static int jive_pm_suspend(struct sys_de
+@@ -492,7 +493,7 @@
         * correct address to resume from. */
  
        __raw_writel(0x2BED, S3C2412_INFORM0);
@@ -9762,7 +9660,7 @@ Index: linux-2.6.28/arch/arm/mach-s3c2412/mach-jive.c
  
        return 0;
  }
-@@ -628,7 +629,7 @@ static void __init jive_machine_init(voi
+@@ -628,7 +629,7 @@
  
        /* initialise the power management now we've setup everything. */
  
@@ -9771,7 +9669,7 @@ Index: linux-2.6.28/arch/arm/mach-s3c2412/mach-jive.c
  
        s3c_device_nand.dev.platform_data = &jive_nand_info;
  
-@@ -663,7 +664,7 @@ static void __init jive_machine_init(voi
+@@ -663,7 +664,7 @@
  
        spi_register_board_info(jive_spi_devs, ARRAY_SIZE(jive_spi_devs));
  
@@ -9780,10 +9678,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c2412/mach-jive.c
        i2c_register_board_info(0, jive_i2c_devs, ARRAY_SIZE(jive_i2c_devs));
  
        pm_power_off = jive_power_off;
-Index: linux-2.6.28/arch/arm/mach-s3c2412/mach-smdk2413.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2412/mach-smdk2413.c    2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2412/mach-smdk2413.c 2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/mach-s3c2412/mach-smdk2413.c
++++ b/arch/arm/mach-s3c2412/mach-smdk2413.c
 @@ -37,7 +37,8 @@
  #include <mach/regs-lcd.h>
  
@@ -9794,7 +9690,7 @@ Index: linux-2.6.28/arch/arm/mach-s3c2412/mach-smdk2413.c
  #include <mach/fb.h>
  
  #include <plat/s3c2410.h>
-@@ -105,7 +106,7 @@ static struct platform_device *smdk2413_
+@@ -105,7 +106,7 @@
        &s3c_device_usb,
        //&s3c_device_lcd,
        &s3c_device_wdt,
@@ -9803,7 +9699,7 @@ Index: linux-2.6.28/arch/arm/mach-s3c2412/mach-smdk2413.c
        &s3c_device_iis,
        &s3c_device_usbgadget,
  };
-@@ -142,6 +143,7 @@ static void __init smdk2413_machine_init
+@@ -142,6 +143,7 @@
  
  
        s3c24xx_udc_set_platdata(&smdk2413_udc_cfg);
@@ -9811,10 +9707,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c2412/mach-smdk2413.c
  
        platform_add_devices(smdk2413_devices, ARRAY_SIZE(smdk2413_devices));
        smdk_machine_init();
-Index: linux-2.6.28/arch/arm/mach-s3c2412/mach-vstms.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2412/mach-vstms.c       2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2412/mach-vstms.c    2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/mach-s3c2412/mach-vstms.c
++++ b/arch/arm/mach-s3c2412/mach-vstms.c
 @@ -39,7 +39,8 @@
  #include <mach/idle.h>
  #include <mach/fb.h>
@@ -9825,7 +9719,7 @@ Index: linux-2.6.28/arch/arm/mach-s3c2412/mach-vstms.c
  
  #include <plat/s3c2410.h>
  #include <plat/s3c2412.h>
-@@ -122,7 +123,7 @@ static struct s3c2410_platform_nand vstm
+@@ -122,7 +123,7 @@
  static struct platform_device *vstms_devices[] __initdata = {
        &s3c_device_usb,
        &s3c_device_wdt,
@@ -9834,7 +9728,7 @@ Index: linux-2.6.28/arch/arm/mach-s3c2412/mach-vstms.c
        &s3c_device_iis,
        &s3c_device_rtc,
        &s3c_device_nand,
-@@ -151,6 +152,7 @@ static void __init vstms_map_io(void)
+@@ -151,6 +152,7 @@
  
  static void __init vstms_init(void)
  {
@@ -9842,11 +9736,9 @@ Index: linux-2.6.28/arch/arm/mach-s3c2412/mach-vstms.c
        platform_add_devices(vstms_devices, ARRAY_SIZE(vstms_devices));
  }
  
-Index: linux-2.6.28/arch/arm/mach-s3c2412/pm.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2412/pm.c       2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2412/pm.c    2009-01-02 00:01:56.000000000 +0100
-@@ -85,7 +85,7 @@ static struct sleep_save s3c2412_sleep[]
+--- a/arch/arm/mach-s3c2412/pm.c
++++ b/arch/arm/mach-s3c2412/pm.c
+@@ -85,7 +85,7 @@
  
  static int s3c2412_pm_suspend(struct sys_device *dev, pm_message_t state)
  {
@@ -9855,7 +9747,7 @@ Index: linux-2.6.28/arch/arm/mach-s3c2412/pm.c
        return 0;
  }
  
-@@ -98,7 +98,7 @@ static int s3c2412_pm_resume(struct sys_
+@@ -98,7 +98,7 @@
        tmp |=  S3C2412_PWRCFG_STANDBYWFI_IDLE;
        __raw_writel(tmp, S3C2412_PWRCFG);
  
@@ -9864,10 +9756,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c2412/pm.c
        return 0;
  }
  
-Index: linux-2.6.28/arch/arm/mach-s3c2412/s3c2412.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2412/s3c2412.c  2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2412/s3c2412.c       2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/mach-s3c2412/s3c2412.c
++++ b/arch/arm/mach-s3c2412/s3c2412.c
 @@ -16,6 +16,7 @@
  #include <linux/list.h>
  #include <linux/timer.h>
@@ -9901,7 +9791,7 @@ Index: linux-2.6.28/arch/arm/mach-s3c2412/s3c2412.c
  
  #ifndef CONFIG_CPU_S3C2412_ONLY
  void __iomem *s3c24xx_va_gpio2 = S3C24XX_VA_GPIO;
-@@ -136,7 +140,7 @@ static void s3c2412_hard_reset(void)
+@@ -136,7 +140,7 @@
   * machine specific initialisation.
  */
  
@@ -9910,7 +9800,7 @@ Index: linux-2.6.28/arch/arm/mach-s3c2412/s3c2412.c
  {
        /* move base of IO */
  
-@@ -153,20 +157,25 @@ void __init s3c2412_map_io(struct map_de
+@@ -153,20 +157,25 @@
        /* register our io-tables */
  
        iotable_init(s3c2412_iodesc, ARRAY_SIZE(s3c2412_iodesc));
@@ -9939,7 +9829,7 @@ Index: linux-2.6.28/arch/arm/mach-s3c2412/s3c2412.c
  
        clk_mpll.rate = fclk;
  
-@@ -183,11 +192,17 @@ void __init s3c2412_init_clocks(int xtal
+@@ -183,11 +192,17 @@
        printk("S3C2412: core %ld.%03ld MHz, memory %ld.%03ld MHz, peripheral %ld.%03ld MHz\n",
               print_mhz(fclk), print_mhz(hclk), print_mhz(pclk));
  
@@ -9958,7 +9848,7 @@ Index: linux-2.6.28/arch/arm/mach-s3c2412/s3c2412.c
        s3c2412_baseclk_add();
  }
  
-@@ -216,5 +231,8 @@ int __init s3c2412_init(void)
+@@ -216,5 +231,8 @@
  {
        printk("S3C2412: Initialising architecture\n");
  
@@ -9967,10 +9857,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c2412/s3c2412.c
 +
        return sysdev_register(&s3c2412_sysdev);
  }
-Index: linux-2.6.28/arch/arm/mach-s3c2440/camera/bits.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c2440/camera/bits.h   2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c2440/camera/bits.h
 @@ -0,0 +1,48 @@
 +/*
 + *  Copyright (C) Samsung Electroincs  2003
@@ -10020,10 +9908,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c2440/camera/bits.h
 +#define BIT31                           0x80000000
 +
 +#endif
-Index: linux-2.6.28/arch/arm/mach-s3c2440/camera/camif.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c2440/camera/camif.c  2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c2440/camera/camif.c
 @@ -0,0 +1,1047 @@
 +/*
 + *   Copyright (C) 2004 Samsung Electronics 
@@ -11072,10 +10958,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c2440/camera/camif.c
 + *  c-set-style: "K&R"
 + * End:
 + */
-Index: linux-2.6.28/arch/arm/mach-s3c2440/camera/camif_fsm.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c2440/camera/camif_fsm.c      2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c2440/camera/camif_fsm.c
 @@ -0,0 +1,432 @@
 +/*  
 +    Copyright (C) 2004 Samsung Electronics 
@@ -11509,10 +11393,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c2440/camera/camif_fsm.c
 + * c-basic-offset: 8
 + * End:
 + */
-Index: linux-2.6.28/arch/arm/mach-s3c2440/camera/camif.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c2440/camera/camif.h  2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c2440/camera/camif.h
 @@ -0,0 +1,304 @@
 +/*
 +    FIMC2.0  Camera Header File
@@ -11818,10 +11700,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c2440/camera/camif.h
 + *  c-set-style: "K&R"
 + * End:
 + */
-Index: linux-2.6.28/arch/arm/mach-s3c2440/camera/cam_reg.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c2440/camera/cam_reg.h        2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c2440/camera/cam_reg.h
 @@ -0,0 +1,234 @@
 + /*----------------------------------------------------------
 +  *   (C) 2004 Samsung Electronics
@@ -12057,10 +11937,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c2440/camera/cam_reg.h
 +
 +
 +#endif /* S3C2440_CAMER_H */
-Index: linux-2.6.28/arch/arm/mach-s3c2440/camera/imgsensor.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c2440/camera/imgsensor.c      2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c2440/camera/imgsensor.c
 @@ -0,0 +1,250 @@
 +/*
 + *  Copyright (C) 2004 Samsung Electronics 
@@ -12312,10 +12190,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c2440/camera/imgsensor.c
 + * c-basic-offset: 8
 + * End:
 + */
-Index: linux-2.6.28/arch/arm/mach-s3c2440/camera/Kconfig
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c2440/camera/Kconfig  2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c2440/camera/Kconfig
 @@ -0,0 +1,7 @@
 +
 +config S3C2440_CAMERA
@@ -12324,10 +12200,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c2440/camera/Kconfig
 +      help
 +        Camera driver for S3C2440 camera unit
 +
-Index: linux-2.6.28/arch/arm/mach-s3c2440/camera/Makefile
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c2440/camera/Makefile 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c2440/camera/Makefile
 @@ -0,0 +1,8 @@
 +obj-$(CONFIG_S3C2440_CAMERA) += \
 +      videodev.o \
@@ -12337,10 +12211,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c2440/camera/Makefile
 +      camif_fsm.o \
 +      qt-driver.o
 +
-Index: linux-2.6.28/arch/arm/mach-s3c2440/camera/miscdevice.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c2440/camera/miscdevice.h     2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c2440/camera/miscdevice.h
 @@ -0,0 +1,18 @@
 +
 + /*----------------------------------------------------------
@@ -12360,10 +12232,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c2440/camera/miscdevice.h
 +
 +
 +#endif
-Index: linux-2.6.28/arch/arm/mach-s3c2440/camera/qt-driver.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c2440/camera/qt-driver.c      2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c2440/camera/qt-driver.c
 @@ -0,0 +1,172 @@
 +/*
 + * SW.LEE <hitchcar@samsung.com>
@@ -12537,10 +12407,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c2440/camera/qt-driver.c
 +      return c;
 +}
 +
-Index: linux-2.6.28/arch/arm/mach-s3c2440/camera/qt.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c2440/camera/qt.h     2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c2440/camera/qt.h
 @@ -0,0 +1,18 @@
 +/*
 + * SW.LEE <hitchcar@samsung.com>
@@ -12560,10 +12428,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c2440/camera/qt.h
 +
 +#endif
 +
-Index: linux-2.6.28/arch/arm/mach-s3c2440/camera/s5x532.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c2440/camera/s5x532.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c2440/camera/s5x532.h
 @@ -0,0 +1,143 @@
 +/*
 + * 2004 (C) Samsung Electronics 
@@ -12708,10 +12574,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c2440/camera/s5x532.h
 +#endif
 +
 +
-Index: linux-2.6.28/arch/arm/mach-s3c2440/camera/s5x532_rev36.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c2440/camera/s5x532_rev36.h   2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c2440/camera/s5x532_rev36.h
 @@ -0,0 +1,208 @@
 +/*
 + * 2004 (C) Samsung Electronics 
@@ -12921,10 +12785,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c2440/camera/s5x532_rev36.h
 +#endif
 +
 +
-Index: linux-2.6.28/arch/arm/mach-s3c2440/camera/sensor.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c2440/camera/sensor.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c2440/camera/sensor.h
 @@ -0,0 +1,20 @@
 +/*
 + *
@@ -12946,10 +12808,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c2440/camera/sensor.h
 +#define USER_EXIT       BIT2
 +
 +#endif
-Index: linux-2.6.28/arch/arm/mach-s3c2440/camera/sxga.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c2440/camera/sxga.h   2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c2440/camera/sxga.h
 @@ -0,0 +1,504 @@
 +/*
 + * 2004 (C) Samsung Electronics 
@@ -13455,10 +13315,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c2440/camera/sxga.h
 +#endif
 +
 +
-Index: linux-2.6.28/arch/arm/mach-s3c2440/camera/userapp.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c2440/camera/userapp.h        2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c2440/camera/userapp.h
 @@ -0,0 +1,44 @@
 +/*
 +    Character Driver API Interface
@@ -13504,10 +13362,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c2440/camera/userapp.h
 + *  c-set-style: "K&R"
 + * End:
 + */
-Index: linux-2.6.28/arch/arm/mach-s3c2440/camera/v4l2_api.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c2440/camera/v4l2_api.c       2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c2440/camera/v4l2_api.c
 @@ -0,0 +1,311 @@
 +/*
 + * . 2004-01-03: SW.LEE <hitchcar@sec.samsung.com>
@@ -13820,10 +13676,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c2440/camera/v4l2_api.c
 + *  c-set-style: "K&R"
 + * End:
 + */
-Index: linux-2.6.28/arch/arm/mach-s3c2440/camera/videodev2.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c2440/camera/videodev2.h      2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c2440/camera/videodev2.h
 @@ -0,0 +1,938 @@
 +#ifndef __LINUX_VIDEODEV2_H
 +#define __LINUX_VIDEODEV2_H
@@ -14763,10 +14617,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c2440/camera/videodev2.h
 + * c-basic-offset: 8
 + * End:
 + */
-Index: linux-2.6.28/arch/arm/mach-s3c2440/camera/videodev.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c2440/camera/videodev.c       2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c2440/camera/videodev.c
 @@ -0,0 +1,332 @@
 +/*
 + * Video capture interface for Linux Character Device Driver.
@@ -15100,10 +14952,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c2440/camera/videodev.c
 + * c-basic-offset: 8
 + * End:
 + */
-Index: linux-2.6.28/arch/arm/mach-s3c2440/camera/videodev.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c2440/camera/videodev.h       2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c2440/camera/videodev.h
 @@ -0,0 +1,108 @@
 +//#ifndef __LINUX_S3C_VIDEODEV_H
 +//#define __LINUX_S3C_VIDEODEV_H
@@ -15213,10 +15063,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c2440/camera/videodev.h
 + * c-basic-offset: 8
 + * End:
 + */
-Index: linux-2.6.28/arch/arm/mach-s3c2440/camera/video-driver.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c2440/camera/video-driver.c   2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c2440/camera/video-driver.c
 @@ -0,0 +1,624 @@
 +/*  
 +    Copyright (C) 2004 Samsung Electronics 
@@ -15842,10 +15690,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c2440/camera/video-driver.c
 + * c-basic-offset: 8
 + * End:
 + */
-Index: linux-2.6.28/arch/arm/mach-s3c2440/dma.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2440/dma.c      2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2440/dma.c   2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/mach-s3c2440/dma.c
++++ b/arch/arm/mach-s3c2440/dma.c
 @@ -25,12 +25,12 @@
  
  #include <plat/regs-serial.h>
@@ -15861,10 +15707,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c2440/dma.c
  
  static struct s3c24xx_dma_map __initdata s3c2440_dma_mappings[] = {
        [DMACH_XD0] = {
-Index: linux-2.6.28/arch/arm/mach-s3c2440/fiq_c_isr.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c2440/fiq_c_isr.c     2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c2440/fiq_c_isr.c
 @@ -0,0 +1,321 @@
 +/*
 + * Copyright 2007  Andy Green <andy@warmcat.com>
@@ -16187,10 +16031,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c2440/fiq_c_isr.c
 +
 +module_init(sc32440_fiq_init);
 +module_exit(sc32440_fiq_exit);
-Index: linux-2.6.28/arch/arm/mach-s3c2440/fiq_c_isr.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c2440/fiq_c_isr.h     2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c2440/fiq_c_isr.h
 @@ -0,0 +1,76 @@
 +#ifndef _LINUX_FIQ_C_ISR_H
 +#define _LINUX_FIQ_C_ISR_H
@@ -16268,11 +16110,9 @@ Index: linux-2.6.28/arch/arm/mach-s3c2440/fiq_c_isr.h
 +}
 +
 +#endif /* _LINUX_FIQ_C_ISR_H */
-Index: linux-2.6.28/arch/arm/mach-s3c2440/Kconfig
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2440/Kconfig    2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2440/Kconfig 2009-01-02 00:01:56.000000000 +0100
-@@ -22,12 +22,20 @@ config S3C2440_DMA
+--- a/arch/arm/mach-s3c2440/Kconfig
++++ b/arch/arm/mach-s3c2440/Kconfig
+@@ -22,12 +22,20 @@
        help
          Support for S3C2440 specific DMA code5A
  
@@ -16293,7 +16133,7 @@ Index: linux-2.6.28/arch/arm/mach-s3c2440/Kconfig
        select PM_SIMTEC if PM
        select HAVE_PATA_PLATFORM
        help
-@@ -37,6 +45,7 @@ config MACH_ANUBIS
+@@ -37,6 +45,7 @@
  config MACH_OSIRIS
        bool "Simtec IM2440D20 (OSIRIS) module"
        select CPU_S3C2440
@@ -16301,7 +16141,7 @@ Index: linux-2.6.28/arch/arm/mach-s3c2440/Kconfig
        select PM_SIMTEC if PM
        help
          Say Y here if you are using the Simtec IM2440D20 module, also
-@@ -74,5 +83,30 @@ config MACH_AT2440EVB
+@@ -74,5 +83,30 @@
        help
          Say Y here if you are using the AT2440EVB development board
  
@@ -16332,10 +16172,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c2440/Kconfig
  endmenu
  
 +#source "arch/arm/mach-s3c2440/camera/Kconfig"
-Index: linux-2.6.28/arch/arm/mach-s3c2440/mach-anubis.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2440/mach-anubis.c      2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2440/mach-anubis.c   2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/mach-s3c2440/mach-anubis.c
++++ b/arch/arm/mach-s3c2440/mach-anubis.c
 @@ -39,7 +39,8 @@
  #include <mach/regs-gpio.h>
  #include <mach/regs-mem.h>
@@ -16346,7 +16184,7 @@ Index: linux-2.6.28/arch/arm/mach-s3c2440/mach-anubis.c
  
  #include <linux/mtd/mtd.h>
  #include <linux/mtd/nand.h>
-@@ -404,7 +405,7 @@ static struct platform_device *anubis_de
+@@ -404,7 +405,7 @@
        &s3c_device_usb,
        &s3c_device_wdt,
        &s3c_device_adc,
@@ -16355,7 +16193,7 @@ Index: linux-2.6.28/arch/arm/mach-s3c2440/mach-anubis.c
        &s3c_device_rtc,
        &s3c_device_nand,
        &anubis_device_ide0,
-@@ -468,6 +469,7 @@ static void __init anubis_map_io(void)
+@@ -468,6 +469,7 @@
  
  static void __init anubis_init(void)
  {
@@ -16363,10 +16201,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c2440/mach-anubis.c
        platform_add_devices(anubis_devices, ARRAY_SIZE(anubis_devices));
  
        i2c_register_board_info(0, anubis_i2c_devs,
-Index: linux-2.6.28/arch/arm/mach-s3c2440/mach-at2440evb.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2440/mach-at2440evb.c   2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2440/mach-at2440evb.c        2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/mach-s3c2440/mach-at2440evb.c
++++ b/arch/arm/mach-s3c2440/mach-at2440evb.c
 @@ -35,7 +35,8 @@
  #include <mach/regs-gpio.h>
  #include <mach/regs-mem.h>
@@ -16377,7 +16213,7 @@ Index: linux-2.6.28/arch/arm/mach-s3c2440/mach-at2440evb.c
  
  #include <linux/mtd/mtd.h>
  #include <linux/mtd/nand.h>
-@@ -166,7 +167,7 @@ static struct platform_device *at2440evb
+@@ -166,7 +167,7 @@
        &s3c_device_usb,
        &s3c_device_wdt,
        &s3c_device_adc,
@@ -16386,7 +16222,7 @@ Index: linux-2.6.28/arch/arm/mach-s3c2440/mach-at2440evb.c
        &s3c_device_rtc,
        &s3c_device_nand,
        &at2440evb_device_eth,
-@@ -183,6 +184,7 @@ static void __init at2440evb_map_io(void
+@@ -183,6 +184,7 @@
  
  static void __init at2440evb_init(void)
  {
@@ -16394,10 +16230,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c2440/mach-at2440evb.c
        platform_add_devices(at2440evb_devices, ARRAY_SIZE(at2440evb_devices));
  }
  
-Index: linux-2.6.28/arch/arm/mach-s3c2440/mach-gta02.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c2440/mach-gta02.c    2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c2440/mach-gta02.c
 @@ -0,0 +1,1778 @@
 +/*
 + * linux/arch/arm/mach-s3c2440/mach-gta02.c
@@ -18177,10 +18011,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c2440/mach-gta02.c
 +      .init_machine   = gta02_machine_init,
 +      .timer          = &s3c24xx_timer,
 +MACHINE_END
-Index: linux-2.6.28/arch/arm/mach-s3c2440/mach-nexcoder.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2440/mach-nexcoder.c    2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2440/mach-nexcoder.c 2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/mach-s3c2440/mach-nexcoder.c
++++ b/arch/arm/mach-s3c2440/mach-nexcoder.c
 @@ -37,6 +37,7 @@
  //#include <asm/debug-ll.h>
  #include <mach/regs-gpio.h>
@@ -18189,7 +18021,7 @@ Index: linux-2.6.28/arch/arm/mach-s3c2440/mach-nexcoder.c
  
  #include <plat/s3c2410.h>
  #include <plat/s3c2440.h>
-@@ -107,7 +108,7 @@ static struct platform_device *nexcoder_
+@@ -107,7 +108,7 @@
        &s3c_device_usb,
        &s3c_device_lcd,
        &s3c_device_wdt,
@@ -18198,7 +18030,7 @@ Index: linux-2.6.28/arch/arm/mach-s3c2440/mach-nexcoder.c
        &s3c_device_iis,
        &s3c_device_rtc,
        &s3c_device_camif,
-@@ -142,6 +143,7 @@ static void __init nexcoder_map_io(void)
+@@ -142,6 +143,7 @@
  
  static void __init nexcoder_init(void)
  {
@@ -18206,10 +18038,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c2440/mach-nexcoder.c
        platform_add_devices(nexcoder_devices, ARRAY_SIZE(nexcoder_devices));
  };
  
-Index: linux-2.6.28/arch/arm/mach-s3c2440/mach-osiris.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2440/mach-osiris.c      2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2440/mach-osiris.c   2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/mach-s3c2440/mach-osiris.c
++++ b/arch/arm/mach-s3c2440/mach-osiris.c
 @@ -37,7 +37,8 @@
  #include <mach/regs-gpio.h>
  #include <mach/regs-mem.h>
@@ -18220,7 +18050,7 @@ Index: linux-2.6.28/arch/arm/mach-s3c2440/mach-osiris.c
  
  #include <linux/mtd/mtd.h>
  #include <linux/mtd/nand.h>
-@@ -335,7 +336,7 @@ static struct i2c_board_info osiris_i2c_
+@@ -335,7 +336,7 @@
  /* Standard Osiris devices */
  
  static struct platform_device *osiris_devices[] __initdata = {
@@ -18229,7 +18059,7 @@ Index: linux-2.6.28/arch/arm/mach-s3c2440/mach-osiris.c
        &s3c_device_wdt,
        &s3c_device_nand,
        &osiris_pcmcia,
-@@ -398,6 +399,8 @@ static void __init osiris_init(void)
+@@ -398,6 +399,8 @@
        sysdev_class_register(&osiris_pm_sysclass);
        sysdev_register(&osiris_pm_sysdev);
  
@@ -18238,10 +18068,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c2440/mach-osiris.c
        i2c_register_board_info(0, osiris_i2c_devs,
                                ARRAY_SIZE(osiris_i2c_devs));
  
-Index: linux-2.6.28/arch/arm/mach-s3c2440/mach-rx3715.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2440/mach-rx3715.c      2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2440/mach-rx3715.c   2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/mach-s3c2440/mach-rx3715.c
++++ b/arch/arm/mach-s3c2440/mach-rx3715.c
 @@ -42,7 +42,7 @@
  #include <mach/regs-lcd.h>
  
@@ -18251,7 +18079,7 @@ Index: linux-2.6.28/arch/arm/mach-s3c2440/mach-rx3715.c
  #include <mach/fb.h>
  
  #include <plat/clock.h>
-@@ -179,7 +179,7 @@ static struct platform_device *rx3715_de
+@@ -179,7 +179,7 @@
        &s3c_device_usb,
        &s3c_device_lcd,
        &s3c_device_wdt,
@@ -18260,7 +18088,7 @@ Index: linux-2.6.28/arch/arm/mach-s3c2440/mach-rx3715.c
        &s3c_device_iis,
        &s3c_device_nand,
  };
-@@ -203,7 +203,7 @@ static void __init rx3715_init_machine(v
+@@ -203,7 +203,7 @@
  #ifdef CONFIG_PM_H1940
        memcpy(phys_to_virt(H1940_SUSPEND_RESUMEAT), h1940_pm_return, 1024);
  #endif
@@ -18269,10 +18097,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c2440/mach-rx3715.c
  
        s3c24xx_fb_set_platdata(&rx3715_fb_info);
        platform_add_devices(rx3715_devices, ARRAY_SIZE(rx3715_devices));
-Index: linux-2.6.28/arch/arm/mach-s3c2440/mach-smdk2440.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2440/mach-smdk2440.c    2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2440/mach-smdk2440.c 2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/mach-s3c2440/mach-smdk2440.c
++++ b/arch/arm/mach-s3c2440/mach-smdk2440.c
 @@ -37,6 +37,7 @@
  
  #include <mach/idle.h>
@@ -18281,7 +18107,7 @@ Index: linux-2.6.28/arch/arm/mach-s3c2440/mach-smdk2440.c
  
  #include <plat/s3c2410.h>
  #include <plat/s3c2440.h>
-@@ -152,7 +153,7 @@ static struct platform_device *smdk2440_
+@@ -152,7 +153,7 @@
        &s3c_device_usb,
        &s3c_device_lcd,
        &s3c_device_wdt,
@@ -18290,7 +18116,7 @@ Index: linux-2.6.28/arch/arm/mach-s3c2440/mach-smdk2440.c
        &s3c_device_iis,
  };
  
-@@ -166,6 +167,7 @@ static void __init smdk2440_map_io(void)
+@@ -166,6 +167,7 @@
  static void __init smdk2440_machine_init(void)
  {
        s3c24xx_fb_set_platdata(&smdk2440_fb_info);
@@ -18298,11 +18124,9 @@ Index: linux-2.6.28/arch/arm/mach-s3c2440/mach-smdk2440.c
  
        platform_add_devices(smdk2440_devices, ARRAY_SIZE(smdk2440_devices));
        smdk_machine_init();
-Index: linux-2.6.28/arch/arm/mach-s3c2440/Makefile
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2440/Makefile   2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2440/Makefile        2009-01-02 00:01:56.000000000 +0100
-@@ -13,6 +13,7 @@ obj-$(CONFIG_CPU_S3C2440)    += s3c2440.o d
+--- a/arch/arm/mach-s3c2440/Makefile
++++ b/arch/arm/mach-s3c2440/Makefile
+@@ -13,6 +13,7 @@
  obj-$(CONFIG_CPU_S3C2440)     += irq.o
  obj-$(CONFIG_CPU_S3C2440)     += clock.o
  obj-$(CONFIG_S3C2440_DMA)     += dma.o
@@ -18310,18 +18134,16 @@ Index: linux-2.6.28/arch/arm/mach-s3c2440/Makefile
  
  # Machine support
  
-@@ -22,3 +23,6 @@ obj-$(CONFIG_MACH_RX3715)    += mach-rx3715
+@@ -22,3 +23,6 @@
  obj-$(CONFIG_ARCH_S3C2440)    += mach-smdk2440.o
  obj-$(CONFIG_MACH_NEXCODER_2440) += mach-nexcoder.o
  obj-$(CONFIG_MACH_AT2440EVB) += mach-at2440evb.o
 +obj-$(CONFIG_MACH_HXD8)               += mach-hxd8.o
 +obj-$(CONFIG_MACH_NEO1973_GTA02) += mach-gta02.o
 +
-Index: linux-2.6.28/arch/arm/mach-s3c2440/s3c2440.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2440/s3c2440.c  2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2440/s3c2440.c       2009-01-02 00:01:56.000000000 +0100
-@@ -46,6 +46,9 @@ int __init s3c2440_init(void)
+--- a/arch/arm/mach-s3c2440/s3c2440.c
++++ b/arch/arm/mach-s3c2440/s3c2440.c
+@@ -46,6 +46,9 @@
        s3c_device_wdt.resource[1].start = IRQ_S3C2440_WDT;
        s3c_device_wdt.resource[1].end   = IRQ_S3C2440_WDT;
  
@@ -18331,10 +18153,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c2440/s3c2440.c
        /* register our system device for everything else */
  
        return sysdev_register(&s3c2440_sysdev);
-Index: linux-2.6.28/arch/arm/mach-s3c2442/Kconfig
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2442/Kconfig    2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2442/Kconfig 2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/mach-s3c2442/Kconfig
++++ b/arch/arm/mach-s3c2442/Kconfig
 @@ -6,10 +6,11 @@
  
  config CPU_S3C2442
@@ -18348,10 +18168,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c2442/Kconfig
        select CPU_S3C244X
        select CPU_LLSERIAL_S3C2440
        help
-Index: linux-2.6.28/arch/arm/mach-s3c2442/s3c2442.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2442/s3c2442.c  2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2442/s3c2442.c       2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/mach-s3c2442/s3c2442.c
++++ b/arch/arm/mach-s3c2442/s3c2442.c
 @@ -21,6 +21,7 @@
  
  #include <plat/s3c2442.h>
@@ -18360,7 +18178,7 @@ Index: linux-2.6.28/arch/arm/mach-s3c2442/s3c2442.c
  
  static struct sys_device s3c2442_sysdev = {
        .cls            = &s3c2442_sysclass,
-@@ -30,5 +31,8 @@ int __init s3c2442_init(void)
+@@ -30,5 +31,8 @@
  {
        printk("S3C2442: Initialising architecture\n");
  
@@ -18369,10 +18187,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c2442/s3c2442.c
 +
        return sysdev_register(&s3c2442_sysdev);
  }
-Index: linux-2.6.28/arch/arm/mach-s3c2443/clock.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2443/clock.c    2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2443/clock.c 2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/mach-s3c2443/clock.c
++++ b/arch/arm/mach-s3c2443/clock.c
 @@ -39,6 +39,8 @@
  
  #include <mach/regs-s3c2443-clock.h>
@@ -18382,7 +18198,7 @@ Index: linux-2.6.28/arch/arm/mach-s3c2443/clock.c
  #include <plat/s3c2443.h>
  #include <plat/clock.h>
  #include <plat/cpu.h>
-@@ -145,12 +147,6 @@ static unsigned long s3c2443_roundrate_c
+@@ -145,12 +147,6 @@
  
  /* clock selections */
  
@@ -18395,7 +18211,7 @@ Index: linux-2.6.28/arch/arm/mach-s3c2443/clock.c
  static struct clk clk_mpllref = {
        .name           = "mpllref",
        .parent         = &clk_xtal,
-@@ -165,14 +161,6 @@ static struct clk clk_mpll = {
+@@ -165,14 +161,6 @@
  };
  #endif
  
@@ -18410,7 +18226,7 @@ Index: linux-2.6.28/arch/arm/mach-s3c2443/clock.c
  static struct clk clk_i2s_ext = {
        .name           = "i2s-ext",
        .id             = -1,
-@@ -1011,22 +999,20 @@ static struct clk *clks[] __initdata = {
+@@ -1011,22 +999,20 @@
        &clk_prediv,
  };
  
@@ -18439,7 +18255,7 @@ Index: linux-2.6.28/arch/arm/mach-s3c2443/clock.c
  
        pll = s3c2443_get_mpll(mpllcon, xtal);
        clk_msysclk.rate = pll;
-@@ -1036,13 +1022,29 @@ void __init s3c2443_init_clocks(int xtal
+@@ -1036,13 +1022,29 @@
        hclk /= s3c2443_get_hdiv(clkdiv0);
        pclk = hclk / ((clkdiv0 & S3C2443_CLKDIV0_HALF_PCLK) ? 2 : 1);
  
@@ -18470,7 +18286,7 @@ Index: linux-2.6.28/arch/arm/mach-s3c2443/clock.c
        s3c2443_clk_initparents();
  
        for (ptr = 0; ptr < ARRAY_SIZE(clks); ptr++) {
-@@ -1056,7 +1058,7 @@ void __init s3c2443_init_clocks(int xtal
+@@ -1056,7 +1058,7 @@
        }
  
        clk_epll.rate = s3c2443_get_epll(epllcon, xtal);
@@ -18479,17 +18295,15 @@ Index: linux-2.6.28/arch/arm/mach-s3c2443/clock.c
        clk_usb_bus.parent = &clk_usb_bus_host;
  
        /* ensure usb bus clock is within correct rate of 48MHz */
-@@ -1105,4 +1107,6 @@ void __init s3c2443_init_clocks(int xtal
+@@ -1105,4 +1107,6 @@
  
                (clkp->enable)(clkp, 0);
        }
 +
 +      s3c_pwmclk_init();
  }
-Index: linux-2.6.28/arch/arm/mach-s3c2443/dma.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2443/dma.c      2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2443/dma.c   2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/mach-s3c2443/dma.c
++++ b/arch/arm/mach-s3c2443/dma.c
 @@ -26,12 +26,12 @@
  
  #include <plat/regs-serial.h>
@@ -18505,11 +18319,9 @@ Index: linux-2.6.28/arch/arm/mach-s3c2443/dma.c
  
  #define MAP(x) { \
                [0]     = (x) | DMA_CH_VALID,   \
-Index: linux-2.6.28/arch/arm/mach-s3c2443/Kconfig
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2443/Kconfig    2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2443/Kconfig 2009-01-02 00:01:56.000000000 +0100
-@@ -24,6 +24,7 @@ config MACH_SMDK2443
+--- a/arch/arm/mach-s3c2443/Kconfig
++++ b/arch/arm/mach-s3c2443/Kconfig
+@@ -24,6 +24,7 @@
        bool "SMDK2443"
        select CPU_S3C2443
        select MACH_SMDK
@@ -18517,10 +18329,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c2443/Kconfig
        help
          Say Y here if you are using an SMDK2443
  
-Index: linux-2.6.28/arch/arm/mach-s3c2443/mach-smdk2443.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2443/mach-smdk2443.c    2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2443/mach-smdk2443.c 2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/mach-s3c2443/mach-smdk2443.c
++++ b/arch/arm/mach-s3c2443/mach-smdk2443.c
 @@ -37,6 +37,7 @@
  
  #include <mach/idle.h>
@@ -18529,7 +18339,7 @@ Index: linux-2.6.28/arch/arm/mach-s3c2443/mach-smdk2443.c
  
  #include <plat/s3c2410.h>
  #include <plat/s3c2440.h>
-@@ -103,8 +104,8 @@ static struct s3c2410_uartcfg smdk2443_u
+@@ -103,8 +104,8 @@
  
  static struct platform_device *smdk2443_devices[] __initdata = {
        &s3c_device_wdt,
@@ -18540,7 +18350,7 @@ Index: linux-2.6.28/arch/arm/mach-s3c2443/mach-smdk2443.c
  };
  
  static void __init smdk2443_map_io(void)
-@@ -116,6 +117,7 @@ static void __init smdk2443_map_io(void)
+@@ -116,6 +117,7 @@
  
  static void __init smdk2443_machine_init(void)
  {
@@ -18548,11 +18358,9 @@ Index: linux-2.6.28/arch/arm/mach-s3c2443/mach-smdk2443.c
        platform_add_devices(smdk2443_devices, ARRAY_SIZE(smdk2443_devices));
        smdk_machine_init();
  }
-Index: linux-2.6.28/arch/arm/mach-s3c2443/s3c2443.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2443/s3c2443.c  2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2443/s3c2443.c       2009-01-02 00:01:56.000000000 +0100
-@@ -81,10 +81,9 @@ void __init s3c2443_init_uarts(struct s3
+--- a/arch/arm/mach-s3c2443/s3c2443.c
++++ b/arch/arm/mach-s3c2443/s3c2443.c
+@@ -81,10 +81,9 @@
   * machine specific initialisation.
   */
  
@@ -18564,10 +18372,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c2443/s3c2443.c
  }
  
  /* need to register class before we actually register the device, and
-Index: linux-2.6.28/arch/arm/mach-s3c24a0/include/mach/debug-macro.S
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c24a0/include/mach/debug-macro.S      2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c24a0/include/mach/debug-macro.S
 @@ -0,0 +1,28 @@
 +/* arch/arm/mach-s3c2410/include/mach/debug-macro.S
 + *
@@ -18597,10 +18403,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c24a0/include/mach/debug-macro.S
 + */
 +
 +#include <plat/debug-macro.S>
-Index: linux-2.6.28/arch/arm/mach-s3c24a0/include/mach/io.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c24a0/include/mach/io.h       2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c24a0/include/mach/io.h
 @@ -0,0 +1,16 @@
 +/* arch/arm/mach-s3c24a0/include/mach/io.h
 + *
@@ -18618,10 +18422,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c24a0/include/mach/io.h
 +#define __mem_pci(a)  (a)
 +
 +#endif
-Index: linux-2.6.28/arch/arm/mach-s3c24a0/include/mach/irqs.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c24a0/include/mach/irqs.h     2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c24a0/include/mach/irqs.h
 @@ -0,0 +1,117 @@
 +/* linux/arch/arm/mach-s3c24a0/include/mach/irqs.h
 + *
@@ -18740,10 +18542,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c24a0/include/mach/irqs.h
 +#define NR_IRQS               (IRQ_DMA3+1)
 +
 +#endif /* __ASM_ARCH_24A0_IRQS_H */
-Index: linux-2.6.28/arch/arm/mach-s3c24a0/include/mach/map.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c24a0/include/mach/map.h      2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c24a0/include/mach/map.h
 @@ -0,0 +1,85 @@
 +/* linux/arch/arm/mach-s3c24a0/include/mach/map.h
 + *
@@ -18830,10 +18630,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c24a0/include/mach/map.h
 +#define S3C_PA_IIC            S3C24A0_PA_IIC
 +
 +#endif /* __ASM_ARCH_24A0_MAP_H */
-Index: linux-2.6.28/arch/arm/mach-s3c24a0/include/mach/memory.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c24a0/include/mach/memory.h   2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c24a0/include/mach/memory.h
 @@ -0,0 +1,19 @@
 +/* linux/arch/arm/mach-s3c24a0/include/mach/memory.h
 + *  from linux/include/asm-arm/arch-rpc/memory.h
@@ -18854,10 +18652,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c24a0/include/mach/memory.h
 +#define __bus_to_virt(x) __phys_to_virt(x)
 +
 +#endif
-Index: linux-2.6.28/arch/arm/mach-s3c24a0/include/mach/regs-clock.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c24a0/include/mach/regs-clock.h       2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c24a0/include/mach/regs-clock.h
 @@ -0,0 +1,88 @@
 +/* linux/arch/arm/mach-s3c24a0/include/mach/regs-clock.h
 + *
@@ -18947,10 +18743,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c24a0/include/mach/regs-clock.h
 +#define S3C2410_CLKSLOW_GET_SLOWVAL(x)        (0x1)
 +
 +#endif /* __ASM_ARCH_24A0_REGS_CLOCK_H */
-Index: linux-2.6.28/arch/arm/mach-s3c24a0/include/mach/regs-irq.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c24a0/include/mach/regs-irq.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c24a0/include/mach/regs-irq.h
 @@ -0,0 +1,25 @@
 +/* linux/arch/arm/mach-s3c24a0/include/mach/regs-irq.h
 + *
@@ -18977,10 +18771,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c24a0/include/mach/regs-irq.h
 +
 +
 +
-Index: linux-2.6.28/arch/arm/mach-s3c24a0/include/mach/system.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c24a0/include/mach/system.h   2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c24a0/include/mach/system.h
 @@ -0,0 +1,25 @@
 +/* linux/arch/arm/mach-s3c24a0/include/mach/system.h
 + *
@@ -19007,10 +18799,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c24a0/include/mach/system.h
 +void (*s3c24xx_reset_hook)(void);
 +
 +#include <asm/plat-s3c24xx/system-reset.h>
-Index: linux-2.6.28/arch/arm/mach-s3c24a0/include/mach/tick.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c24a0/include/mach/tick.h     2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c24a0/include/mach/tick.h
 @@ -0,0 +1,15 @@
 +/* linux/arch/arm/mach-s3c24a0/include/mach/tick.h
 + *
@@ -19027,10 +18817,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c24a0/include/mach/tick.h
 +{
 +      return __raw_readl(S3C2410_SUBSRCPND) & SUBSRC_TIMER4;
 +}
-Index: linux-2.6.28/arch/arm/mach-s3c24a0/include/mach/timex.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c24a0/include/mach/timex.h    2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c24a0/include/mach/timex.h
 @@ -0,0 +1,18 @@
 +/* linux/arch/arm/mach-s3c24a0/include/mach/timex.h
 + *
@@ -19050,10 +18838,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c24a0/include/mach/timex.h
 +#define CLOCK_TICK_RATE 12000000
 +
 +#endif /* __ASM_ARCH_TIMEX_H */
-Index: linux-2.6.28/arch/arm/mach-s3c24a0/include/mach/vmalloc.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c24a0/include/mach/vmalloc.h  2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c24a0/include/mach/vmalloc.h
 @@ -0,0 +1,17 @@
 +/* linux/include/asm-arm/arch-s3c24ao/vmalloc.h
 + *
@@ -19072,10 +18858,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c24a0/include/mach/vmalloc.h
 +#define VMALLOC_END     (0xE0000000)
 +
 +#endif /* __ASM_ARCH_VMALLOC_H */
-Index: linux-2.6.28/arch/arm/mach-s3c6400/include/mach/debug-macro.S
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c6400/include/mach/debug-macro.S      2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c6400/include/mach/debug-macro.S
 @@ -0,0 +1,39 @@
 +/* arch/arm/mach-s3c6400/include/mach/debug-macro.S
 + *
@@ -19116,10 +18900,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c6400/include/mach/debug-macro.S
 + */
 +
 +#include <plat/debug-macro.S>
-Index: linux-2.6.28/arch/arm/mach-s3c6400/include/mach/dma.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c6400/include/mach/dma.h      2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c6400/include/mach/dma.h
 @@ -0,0 +1,16 @@
 +/* linux/arch/arm/mach-s3c6400/include/mach/dma.h
 + *
@@ -19137,10 +18919,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c6400/include/mach/dma.h
 +/* currently nothing here, placeholder */
 +
 +#endif /* __ASM_ARCH_IRQ_H */
-Index: linux-2.6.28/arch/arm/mach-s3c6400/include/mach/entry-macro.S
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c6400/include/mach/entry-macro.S      2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c6400/include/mach/entry-macro.S
 @@ -0,0 +1,44 @@
 +/* arch/arm/mach-s3c6400/include/mach/entry-macro.S
 + *
@@ -19186,10 +18966,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c6400/include/mach/entry-macro.S
 +      clzne   \irqstat, \irqstat
 +      subne   \irqnr, \irqnr, \irqstat
 +      .endm
-Index: linux-2.6.28/arch/arm/mach-s3c6400/include/mach/gpio-core.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c6400/include/mach/gpio-core.h        2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c6400/include/mach/gpio-core.h
 @@ -0,0 +1,21 @@
 +/* arch/arm/mach-s3c6400/include/mach/gpio-core.h
 + *
@@ -19212,10 +18990,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c6400/include/mach/gpio-core.h
 +#include <plat/gpio-core.h>
 +
 +#endif /* __ASM_ARCH_GPIO_CORE_H */
-Index: linux-2.6.28/arch/arm/mach-s3c6400/include/mach/gpio.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c6400/include/mach/gpio.h     2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c6400/include/mach/gpio.h
 @@ -0,0 +1,96 @@
 +/* arch/arm/mach-s3c6400/include/mach/gpio.h
 + *
@@ -19313,10 +19089,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c6400/include/mach/gpio.h
 +#define ARCH_NR_GPIOS (S3C64XX_GPQ(S3C64XX_GPIO_Q_NR) + 1)
 +
 +#include <asm-generic/gpio.h>
-Index: linux-2.6.28/arch/arm/mach-s3c6400/include/mach/hardware.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c6400/include/mach/hardware.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c6400/include/mach/hardware.h
 @@ -0,0 +1,16 @@
 +/* linux/arch/arm/mach-s3c6400/include/mach/hardware.h
 + *
@@ -19334,10 +19108,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c6400/include/mach/hardware.h
 +/* currently nothing here, placeholder */
 +
 +#endif /* __ASM_ARCH_IRQ_H */
-Index: linux-2.6.28/arch/arm/mach-s3c6400/include/mach/irqs.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c6400/include/mach/irqs.h     2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c6400/include/mach/irqs.h
 @@ -0,0 +1,20 @@
 +/* linux/arch/arm/mach-s3c6400/include/mach/irqs.h
 + *
@@ -19359,10 +19131,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c6400/include/mach/irqs.h
 +#include <plat/irqs.h>
 +
 +#endif /* __ASM_ARCH_IRQ_H */
-Index: linux-2.6.28/arch/arm/mach-s3c6400/include/mach/map.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c6400/include/mach/map.h      2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c6400/include/mach/map.h
 @@ -0,0 +1,71 @@
 +/* linux/arch/arm/mach-s3c6400/include/mach/map.h
 + *
@@ -19435,10 +19205,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c6400/include/mach/map.h
 +#define S3C_PA_FB             S3C64XX_PA_FB
 +
 +#endif /* __ASM_ARCH_6400_MAP_H */
-Index: linux-2.6.28/arch/arm/mach-s3c6400/include/mach/memory.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c6400/include/mach/memory.h   2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c6400/include/mach/memory.h
 @@ -0,0 +1,21 @@
 +/* arch/arm/mach-s3c6400/include/mach/memory.h
 + *
@@ -19461,10 +19229,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c6400/include/mach/memory.h
 +#define __bus_to_virt(x) __phys_to_virt(x)
 +
 +#endif
-Index: linux-2.6.28/arch/arm/mach-s3c6400/include/mach/pwm-clock.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c6400/include/mach/pwm-clock.h        2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c6400/include/mach/pwm-clock.h
 @@ -0,0 +1,56 @@
 +/* linux/arch/arm/mach-s3c6400/include/mach/pwm-clock.h
 + *
@@ -19522,10 +19288,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c6400/include/mach/pwm-clock.h
 +}
 +
 +#define S3C_TCFG1_MUX_TCLK S3C64XX_TCFG1_MUX_TCLK
-Index: linux-2.6.28/arch/arm/mach-s3c6400/include/mach/regs-clock.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c6400/include/mach/regs-clock.h       2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c6400/include/mach/regs-clock.h
 @@ -0,0 +1,16 @@
 +/* linux/arch/arm/mach-s3c6400/include/mach/regs-clock.h
 + *
@@ -19543,10 +19307,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c6400/include/mach/regs-clock.h
 +
 +#include <plat/regs-clock.h>
 +
-Index: linux-2.6.28/arch/arm/mach-s3c6400/include/mach/regs-fb.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c6400/include/mach/regs-fb.h  2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c6400/include/mach/regs-fb.h
 @@ -0,0 +1,259 @@
 +/* arch/arm/mach-s3c6400/include/mach/regs-fb.h
 + *
@@ -19807,10 +19569,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c6400/include/mach/regs-fb.h
 + * 1110               -none-   -none-   -none-   -none-    -none-
 + * 1111               -none-   -none-   -none-   -none-    -none-
 +*/
-Index: linux-2.6.28/arch/arm/mach-s3c6400/include/mach/regs-irq.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c6400/include/mach/regs-irq.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c6400/include/mach/regs-irq.h
 @@ -0,0 +1,20 @@
 +/* linux/arch/arm/mach-s3c6400/include/mach/regs-irq.h
 + *
@@ -19832,10 +19592,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c6400/include/mach/regs-irq.h
 +#include <asm/hardware/vic.h>
 +
 +#endif /* __ASM_ARCH_6400_REGS_IRQ_H */
-Index: linux-2.6.28/arch/arm/mach-s3c6400/include/mach/system.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c6400/include/mach/system.h   2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c6400/include/mach/system.h
 @@ -0,0 +1,44 @@
 +/* linux/arch/arm/mach-s3c6400/include/mach/system.h
 + *
@@ -19881,10 +19639,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c6400/include/mach/system.h
 +}
 +
 +#endif /* __ASM_ARCH_IRQ_H */
-Index: linux-2.6.28/arch/arm/mach-s3c6400/include/mach/tick.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c6400/include/mach/tick.h     2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c6400/include/mach/tick.h
 @@ -0,0 +1,29 @@
 +/* linux/arch/arm/mach-s3c6400/include/mach/tick.h
 + *
@@ -19915,10 +19671,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c6400/include/mach/tick.h
 +#define TICK_MAX      (0xffffffff)
 +
 +#endif /* __ASM_ARCH_6400_TICK_H */
-Index: linux-2.6.28/arch/arm/mach-s3c6400/include/mach/uncompress.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c6400/include/mach/uncompress.h       2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c6400/include/mach/uncompress.h
 @@ -0,0 +1,28 @@
 +/* arch/arm/mach-s3c6400/include/mach/uncompress.h
 + *
@@ -19948,10 +19702,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c6400/include/mach/uncompress.h
 +}
 +
 +#endif /* __ASM_ARCH_UNCOMPRESS_H */
-Index: linux-2.6.28/arch/arm/mach-s3c6400/Kconfig
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c6400/Kconfig 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c6400/Kconfig
 @@ -0,0 +1,8 @@
 +# arch/arm/mach-s3c6400/Kconfig
 +#
@@ -19961,10 +19713,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c6400/Kconfig
 +# Licensed under GPLv2
 +
 +# Currently nothing here, this will be added later
-Index: linux-2.6.28/arch/arm/mach-s3c6400/Makefile
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c6400/Makefile        2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c6400/Makefile
 @@ -0,0 +1,15 @@
 +# arch/arm/mach-s3c6400/Makefile
 +#
@@ -19981,17 +19731,13 @@ Index: linux-2.6.28/arch/arm/mach-s3c6400/Makefile
 +# Core support for S3C6400 system
 +
 +obj-n                         += blank.o
-Index: linux-2.6.28/arch/arm/mach-s3c6400/Makefile.boot
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c6400/Makefile.boot   2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c6400/Makefile.boot
 @@ -0,0 +1,2 @@
 +   zreladdr-y := 0x50008000
 +params_phys-y := 0x50000100
-Index: linux-2.6.28/arch/arm/mach-s3c6410/cpu.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c6410/cpu.c   2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c6410/cpu.c
 @@ -0,0 +1,101 @@
 +/* linux/arch/arm/mach-s3c6410/cpu.c
 + *
@@ -20094,10 +19840,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c6410/cpu.c
 +
 +      return sysdev_register(&s3c6410_sysdev);
 +}
-Index: linux-2.6.28/arch/arm/mach-s3c6410/include/mach/om-gta03.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c6410/include/mach/om-gta03.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c6410/include/mach/om-gta03.h
 @@ -0,0 +1,91 @@
 +/*
 + * GTA03 GPIO Mappings
@@ -20190,10 +19934,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c6410/include/mach/om-gta03.h
 +#define GTA03_IRQ_NONKEYWAKE  S3C_EINT(12)
 +
 +#endif /* _OM_GTA03_H */
-Index: linux-2.6.28/arch/arm/mach-s3c6410/Kconfig
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c6410/Kconfig 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c6410/Kconfig
 @@ -0,0 +1,80 @@
 +# arch/arm/mach-s3c6410/Kconfig
 +#
@@ -20275,10 +20017,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c6410/Kconfig
 +      help
 +          Machine support for the Openmoko GTA03 Phone
 +
-Index: linux-2.6.28/arch/arm/mach-s3c6410/mach-om-gta03.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c6410/mach-om-gta03.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c6410/mach-om-gta03.c
 @@ -0,0 +1,654 @@
 +/* linux/arch/arm/mach-s3c6410/mach-om_gta03.c
 + *
@@ -20934,10 +20674,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c6410/mach-om-gta03.c
 +      .timer          = &s3c24xx_timer,
 +MACHINE_END
 +
-Index: linux-2.6.28/arch/arm/mach-s3c6410/mach-smdk6410.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c6410/mach-smdk6410.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c6410/mach-smdk6410.c
 @@ -0,0 +1,205 @@
 +/* linux/arch/arm/mach-s3c6410/mach-smdk6410.c
 + *
@@ -21144,10 +20882,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c6410/mach-smdk6410.c
 +      .init_machine   = smdk6410_machine_init,
 +      .timer          = &s3c24xx_timer,
 +MACHINE_END
-Index: linux-2.6.28/arch/arm/mach-s3c6410/Makefile
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c6410/Makefile        2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c6410/Makefile
 @@ -0,0 +1,26 @@
 +# arch/arm/plat-s3c6410/Makefile
 +#
@@ -21175,10 +20911,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c6410/Makefile
 +obj-$(CONFIG_MACH_OPENMOKO_GTA03)     += mach-om-gta03.o \
 +                                         om-gta03-features.o
 +
-Index: linux-2.6.28/arch/arm/mach-s3c6410/om-gta03-features.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c6410/om-gta03-features.c     2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c6410/om-gta03-features.c
 @@ -0,0 +1,344 @@
 +/*
 + * Support for features of Openmoko GTA03
@@ -21524,10 +21258,8 @@ Index: linux-2.6.28/arch/arm/mach-s3c6410/om-gta03-features.c
 +MODULE_LICENSE("GPL");
 +MODULE_AUTHOR("Andy Green <andy@openmoko.com>");
 +MODULE_DESCRIPTION("Openmoko GTA03 Feature Driver");
-Index: linux-2.6.28/arch/arm/mach-s3c6410/setup-sdhci.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c6410/setup-sdhci.c   2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c6410/setup-sdhci.c
 @@ -0,0 +1,103 @@
 +/* linux/arch/arm/mach-s3c6410/setup-sdhci.c
 + *
@@ -21632,11 +21364,9 @@ Index: linux-2.6.28/arch/arm/mach-s3c6410/setup-sdhci.c
 +//    s3c_gpio_setpull(S3C64XX_GPG(6), S3C_GPIO_PULL_UP);
 +//    s3c_gpio_cfgpin(S3C64XX_GPG(6), S3C_GPIO_SFN(3));
 +}
-Index: linux-2.6.28/arch/arm/Makefile
-===================================================================
---- linux-2.6.28.orig/arch/arm/Makefile        2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/Makefile     2009-01-02 00:01:56.000000000 +0100
-@@ -121,7 +121,10 @@ endif
+--- a/arch/arm/Makefile
++++ b/arch/arm/Makefile
+@@ -121,7 +121,10 @@
   machine-$(CONFIG_ARCH_OMAP3)    := omap2
      plat-$(CONFIG_ARCH_OMAP)     := omap
   machine-$(CONFIG_ARCH_S3C2410)          := s3c2410 s3c2400 s3c2412 s3c2440 s3c2442 s3c2443
@@ -21647,11 +21377,9 @@ Index: linux-2.6.28/arch/arm/Makefile
   machine-$(CONFIG_ARCH_LH7A40X)          := lh7a40x
   machine-$(CONFIG_ARCH_VERSATILE)  := versatile
   machine-$(CONFIG_ARCH_IMX)      := imx
-Index: linux-2.6.28/arch/arm/mm/Kconfig
-===================================================================
---- linux-2.6.28.orig/arch/arm/mm/Kconfig      2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mm/Kconfig   2009-01-02 00:01:56.000000000 +0100
-@@ -183,14 +183,14 @@ config CPU_ARM926T
+--- a/arch/arm/mm/Kconfig
++++ b/arch/arm/mm/Kconfig
+@@ -183,14 +183,14 @@
        depends on ARCH_INTEGRATOR || ARCH_VERSATILE_PB || \
                MACH_VERSATILE_AB || ARCH_OMAP730 || \
                ARCH_OMAP16XX || MACH_REALVIEW_EB || \
@@ -21668,7 +21396,7 @@ Index: linux-2.6.28/arch/arm/mm/Kconfig
                ARCH_AT91SAM9260 || ARCH_AT91SAM9261 || \
                ARCH_AT91SAM9263 || ARCH_AT91SAM9RL || \
                ARCH_AT91SAM9G20 || ARCH_AT91CAP9 || \
-@@ -400,9 +400,10 @@ config CPU_FEROCEON_OLD_ID
+@@ -400,9 +400,10 @@
  # ARMv6
  config CPU_V6
        bool "Support ARM V6 processor"
@@ -21680,10 +21408,8 @@ Index: linux-2.6.28/arch/arm/mm/Kconfig
        select CPU_32v6
        select CPU_ABRT_EV6
        select CPU_PABRT_NOIFAR
-Index: linux-2.6.28/arch/arm/plat-s3c/clock.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c/clock.c     2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c/clock.c
 @@ -0,0 +1,369 @@
 +/* linux/arch/arm/plat-s3c24xx/clock.c
 + *
@@ -22054,10 +21780,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c/clock.c
 +      return 0;
 +}
 +
-Index: linux-2.6.28/arch/arm/plat-s3c/dev-fb.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c/dev-fb.c    2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c/dev-fb.c
 @@ -0,0 +1,72 @@
 +/* linux/arch/arm/plat-s3c/dev-fb.c
 + *
@@ -22131,10 +21855,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c/dev-fb.c
 +
 +      s3c_device_fb.dev.platform_data = npd;
 +}
-Index: linux-2.6.28/arch/arm/plat-s3c/dev-hsmmc1.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c/dev-hsmmc1.c        2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c/dev-hsmmc1.c
 @@ -0,0 +1,68 @@
 +/* linux/arch/arm/plat-s3c/dev-hsmmc1.c
 + *
@@ -22204,10 +21926,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c/dev-hsmmc1.c
 +      if (pd->cfg_card)
 +              set->cfg_card = pd->cfg_card;
 +}
-Index: linux-2.6.28/arch/arm/plat-s3c/dev-hsmmc.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c/dev-hsmmc.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c/dev-hsmmc.c
 @@ -0,0 +1,68 @@
 +/* linux/arch/arm/plat-s3c/dev-hsmmc.c
 + *
@@ -22277,10 +21997,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c/dev-hsmmc.c
 +      if (pd->cfg_card)
 +              set->cfg_card = pd->cfg_card;
 +}
-Index: linux-2.6.28/arch/arm/plat-s3c/dev-i2c0.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c/dev-i2c0.c  2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c/dev-i2c0.c
 @@ -0,0 +1,71 @@
 +/* linux/arch/arm/plat-s3c/dev-i2c0.c
 + *
@@ -22353,10 +22071,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c/dev-i2c0.c
 +
 +      s3c_device_i2c0.dev.platform_data = npd;
 +}
-Index: linux-2.6.28/arch/arm/plat-s3c/dev-i2c1.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c/dev-i2c1.c  2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c/dev-i2c1.c
 @@ -0,0 +1,68 @@
 +/* linux/arch/arm/plat-s3c/dev-i2c1.c
 + *
@@ -22426,10 +22142,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c/dev-i2c1.c
 +
 +      s3c_device_i2c1.dev.platform_data = npd;
 +}
-Index: linux-2.6.28/arch/arm/plat-s3c/gpio.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c/gpio.c      2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c/gpio.c
 @@ -0,0 +1,156 @@
 +/* linux/arch/arm/plat-s3c/gpio.c
 + *
@@ -22587,10 +22301,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c/gpio.c
 +      if (ret >= 0)
 +              s3c_gpiolib_track(chip);
 +}
-Index: linux-2.6.28/arch/arm/plat-s3c/gpio-config.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c/gpio-config.c       2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c/gpio-config.c
 @@ -0,0 +1,163 @@
 +/* linux/arch/arm/plat-s3c/gpio-config.c
 + *
@@ -22755,10 +22467,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c/gpio-config.c
 +      return (__force s3c_gpio_pull_t)pup;
 +}
 +#endif
-Index: linux-2.6.28/arch/arm/plat-s3c/include/mach/io.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c/include/mach/io.h   2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c/include/mach/io.h
 @@ -0,0 +1,18 @@
 +/* arch/arm/plat-s3c/include/mach/io.h
 + *
@@ -22778,10 +22488,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c/include/mach/io.h
 +#define IO_SPACE_LIMIT (0xFFFFFFFF)
 +
 +#endif
-Index: linux-2.6.28/arch/arm/plat-s3c/include/mach/timex.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c/include/mach/timex.h        2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c/include/mach/timex.h
 @@ -0,0 +1,26 @@
 +/* arch/arm/mach-s3c2410/include/mach/timex.h
 + *
@@ -22809,10 +22517,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c/include/mach/timex.h
 +
 +
 +#endif /* __ASM_ARCH_TIMEX_H */
-Index: linux-2.6.28/arch/arm/plat-s3c/include/mach/vmalloc.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c/include/mach/vmalloc.h      2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c/include/mach/vmalloc.h
 @@ -0,0 +1,20 @@
 +/* arch/arm/plat-s3c/include/mach/vmalloc.h
 + *
@@ -22834,10 +22540,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c/include/mach/vmalloc.h
 +#define VMALLOC_END     (0xE0000000)
 +
 +#endif /* __ASM_ARCH_VMALLOC_H */
-Index: linux-2.6.28/arch/arm/plat-s3c/include/plat/clock.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c/include/plat/clock.h        2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c/include/plat/clock.h
 @@ -0,0 +1,88 @@
 +/* linux/arch/arm/plat-s3c/include/plat/clock.h
 + *
@@ -22927,10 +22631,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c/include/plat/clock.h
 +
 +extern void s3c_pwmclk_init(void);
 +
-Index: linux-2.6.28/arch/arm/plat-s3c/include/plat/cpu-freq.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c/include/plat/cpu-freq.h     2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c/include/plat/cpu-freq.h
 @@ -0,0 +1,94 @@
 +/* arch/arm/plat-s3c/include/plat/cpu-freq.h
 + *
@@ -23026,10 +22728,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c/include/plat/cpu-freq.h
 +      return 0;
 +}
 +#endif  /* CONFIG_CPU_FREQ_S3C */
-Index: linux-2.6.28/arch/arm/plat-s3c/include/plat/cpu.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c/include/plat/cpu.h  2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c/include/plat/cpu.h
 @@ -0,0 +1,74 @@
 +/* linux/arch/arm/plat-s3c/include/plat/cpu.h
 + *
@@ -23105,10 +22805,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c/include/plat/cpu.h
 +extern struct sysdev_class s3c6410_sysclass;
 +extern struct sysdev_class s3c64xx_sysclass;
 +
-Index: linux-2.6.28/arch/arm/plat-s3c/include/plat/debug-macro.S
-===================================================================
---- linux-2.6.28.orig/arch/arm/plat-s3c/include/plat/debug-macro.S     2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/plat-s3c/include/plat/debug-macro.S  2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/plat-s3c/include/plat/debug-macro.S
++++ b/arch/arm/plat-s3c/include/plat/debug-macro.S
 @@ -20,7 +20,7 @@
        .endm
  
@@ -23118,10 +22816,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c/include/plat/debug-macro.S
  #endif
  
        .macro  fifo_full_s3c2440 rd, rx
-Index: linux-2.6.28/arch/arm/plat-s3c/include/plat/devs.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c/include/plat/devs.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c/include/plat/devs.h
 @@ -0,0 +1,55 @@
 +/* linux/include/asm-arm/plat-s3c24xx/devs.h
 + *
@@ -23178,10 +22874,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c/include/plat/devs.h
 +
 +extern struct platform_device s3c_device_camif;
 +#endif
-Index: linux-2.6.28/arch/arm/plat-s3c/include/plat/fb.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c/include/plat/fb.h   2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c/include/plat/fb.h
 @@ -0,0 +1,73 @@
 +/* linux/arch/arm/plat-s3c/include/plat/fb.h
 + *
@@ -23256,10 +22950,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c/include/plat/fb.h
 +extern void s3c64xx_fb_gpio_setup_24bpp(void);
 +
 +#endif /* __PLAT_S3C_FB_H */
-Index: linux-2.6.28/arch/arm/plat-s3c/include/plat/gpio-cfg.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c/include/plat/gpio-cfg.h     2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c/include/plat/gpio-cfg.h
 @@ -0,0 +1,110 @@
 +/* linux/arch/arm/plat-s3c/include/plat/gpio-cfg.h
 + *
@@ -23371,10 +23063,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c/include/plat/gpio-cfg.h
 +extern s3c_gpio_pull_t s3c_gpio_getpull(unsigned int pin);
 +
 +#endif /* __PLAT_GPIO_CFG_H */
-Index: linux-2.6.28/arch/arm/plat-s3c/include/plat/gpio-cfg-helpers.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c/include/plat/gpio-cfg-helpers.h     2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c/include/plat/gpio-cfg-helpers.h
 @@ -0,0 +1,176 @@
 +/* linux/arch/arm/plat-s3c/include/plat/gpio-cfg-helper.h
 + *
@@ -23552,10 +23242,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c/include/plat/gpio-cfg-helpers.h
 +
 +#endif /* __PLAT_GPIO_CFG_HELPERS_H */
 +
-Index: linux-2.6.28/arch/arm/plat-s3c/include/plat/gpio-core.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c/include/plat/gpio-core.h    2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c/include/plat/gpio-core.h
 @@ -0,0 +1,107 @@
 +/* linux/arch/arm/plat-s3c/include/plat/gpio-core.h
 + *
@@ -23664,10 +23352,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c/include/plat/gpio-core.h
 +#define __gpio_pm(x) NULL
 +
 +#endif /* CONFIG_PM */
-Index: linux-2.6.28/arch/arm/plat-s3c/include/plat/iic-core.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c/include/plat/iic-core.h     2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c/include/plat/iic-core.h
 @@ -0,0 +1,35 @@
 +/* arch/arm/mach-s3c2410/include/mach/iic-core.h
 + *
@@ -23704,10 +23390,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c/include/plat/iic-core.h
 +}
 +
 +#endif /* __ASM_ARCH_IIC_H */
-Index: linux-2.6.28/arch/arm/plat-s3c/include/plat/iic.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c/include/plat/iic.h  2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c/include/plat/iic.h
 @@ -0,0 +1,57 @@
 +/* arch/arm/mach-s3c2410/include/mach/iic.h
 + *
@@ -23766,10 +23450,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c/include/plat/iic.h
 +extern void s3c_i2c1_cfg_gpio(struct platform_device *dev);
 +
 +#endif /* __ASM_ARCH_IIC_H */
-Index: linux-2.6.28/arch/arm/plat-s3c/include/plat/map-base.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c/include/plat/map-base.h     2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c/include/plat/map-base.h
 @@ -0,0 +1,40 @@
 +/* linux/include/asm-arm/plat-s3c/map.h
 + *
@@ -23811,10 +23493,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c/include/plat/map-base.h
 +#define S3C_VA_UART   S3C_ADDR(0x01000000)    /* UART */
 +
 +#endif /* __ASM_PLAT_MAP_H */
-Index: linux-2.6.28/arch/arm/plat-s3c/include/plat/map.h
-===================================================================
---- linux-2.6.28.orig/arch/arm/plat-s3c/include/plat/map.h     2008-12-25 00:26:37.000000000 +0100
-+++ /dev/null  1970-01-01 00:00:00.000000000 +0000
+--- a/arch/arm/plat-s3c/include/plat/map.h
++++ /dev/null
 @@ -1,40 +0,0 @@
 -/* linux/include/asm-arm/plat-s3c/map.h
 - *
@@ -23856,10 +23536,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c/include/plat/map.h
 -#define S3C_VA_UART   S3C_ADDR(0x01000000)    /* UART */
 -
 -#endif /* __ASM_PLAT_MAP_H */
-Index: linux-2.6.28/arch/arm/plat-s3c/include/plat/nand.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c/include/plat/nand.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c/include/plat/nand.h
 @@ -0,0 +1,56 @@
 +/* arch/arm/mach-s3c2410/include/mach/nand.h
 + *
@@ -23917,10 +23595,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c/include/plat/nand.h
 +                                             int chip);
 +};
 +
-Index: linux-2.6.28/arch/arm/plat-s3c/include/plat/pm.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c/include/plat/pm.h   2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c/include/plat/pm.h
 @@ -0,0 +1,184 @@
 +/* linux/include/asm-arm/plat-s3c24xx/pm.h
 + *
@@ -24106,10 +23782,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c/include/plat/pm.h
 +extern void s3c_pm_save_core(void);
 +extern void s3c_pm_restore_core(void);
 +
-Index: linux-2.6.28/arch/arm/plat-s3c/include/plat/regs-ac97.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c/include/plat/regs-ac97.h    2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c/include/plat/regs-ac97.h
 @@ -0,0 +1,67 @@
 +/* arch/arm/mach-s3c2410/include/mach/regs-ac97.h
 + *
@@ -24178,10 +23852,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c/include/plat/regs-ac97.h
 +#define S3C_AC97_MIC_DATA                             (0x1C)
 +
 +#endif /* __ASM_ARCH_REGS_AC97_H */
-Index: linux-2.6.28/arch/arm/plat-s3c/include/plat/regs-fb.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c/include/plat/regs-fb.h      2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c/include/plat/regs-fb.h
 @@ -0,0 +1,366 @@
 +/* arch/arm/plat-s3c/include/plat/regs-fb.h
 + *
@@ -24549,10 +24221,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c/include/plat/regs-fb.h
 +#define WPALCON_W0PAL_16BPP_A555              (0x5 << 0)
 +#define WPALCON_W0PAL_16BPP_565                       (0x6 << 0)
 +
-Index: linux-2.6.28/arch/arm/plat-s3c/include/plat/regs-iic.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c/include/plat/regs-iic.h     2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c/include/plat/regs-iic.h
 @@ -0,0 +1,56 @@
 +/* arch/arm/mach-s3c2410/include/mach/regs-iic.h
 + *
@@ -24610,10 +24280,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c/include/plat/regs-iic.h
 +#define S3C2410_IICLC_FILTER_ON               (1<<2)
 +
 +#endif /* __ASM_ARCH_REGS_IIC_H */
-Index: linux-2.6.28/arch/arm/plat-s3c/include/plat/regs-irqtype.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c/include/plat/regs-irqtype.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c/include/plat/regs-irqtype.h
 @@ -0,0 +1,21 @@
 +/* arch/arm/plat-s3c/include/plat/regs-irqtype.h
 + *
@@ -24636,10 +24304,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c/include/plat/regs-irqtype.h
 +#define S3C2410_EXTINT_FALLEDGE        (0x02)
 +#define S3C2410_EXTINT_RISEEDGE        (0x04)
 +#define S3C2410_EXTINT_BOTHEDGE        (0x06)
-Index: linux-2.6.28/arch/arm/plat-s3c/include/plat/regs-nand.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c/include/plat/regs-nand.h    2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c/include/plat/regs-nand.h
 @@ -0,0 +1,123 @@
 +/* arch/arm/mach-s3c2410/include/mach/regs-nand.h
 + *
@@ -24764,10 +24430,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c/include/plat/regs-nand.h
 +
 +#endif /* __ASM_ARM_REGS_NAND */
 +
-Index: linux-2.6.28/arch/arm/plat-s3c/include/plat/regs-rtc.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c/include/plat/regs-rtc.h     2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c/include/plat/regs-rtc.h
 @@ -0,0 +1,61 @@
 +/* arch/arm/mach-s3c2410/include/mach/regs-rtc.h
 + *
@@ -24830,10 +24494,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c/include/plat/regs-rtc.h
 +
 +
 +#endif /* __ASM_ARCH_REGS_RTC_H */
-Index: linux-2.6.28/arch/arm/plat-s3c/include/plat/regs-sdhci.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c/include/plat/regs-sdhci.h   2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c/include/plat/regs-sdhci.h
 @@ -0,0 +1,87 @@
 +/* linux/arch/arm/plat-s3c/include/plat/regs-sdhci.h
 + *
@@ -24922,10 +24584,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c/include/plat/regs-sdhci.h
 +#define S3C64XX_SDHCI_CONTROL4_BUSY           (1)
 +
 +#endif /* __PLAT_S3C_SDHCI_REGS_H */
-Index: linux-2.6.28/arch/arm/plat-s3c/include/plat/regs-serial.h
-===================================================================
---- linux-2.6.28.orig/arch/arm/plat-s3c/include/plat/regs-serial.h     2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/plat-s3c/include/plat/regs-serial.h  2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/plat-s3c/include/plat/regs-serial.h
++++ b/arch/arm/plat-s3c/include/plat/regs-serial.h
 @@ -77,6 +77,12 @@
  #define S3C2440_UCON_FCLK       (3<<10)
  #define S3C2443_UCON_EPLL       (3<<10)
@@ -24966,7 +24626,7 @@ Index: linux-2.6.28/arch/arm/plat-s3c/include/plat/regs-serial.h
  #ifndef __ASSEMBLY__
  
  /* struct s3c24xx_uart_clksrc
-@@ -224,7 +243,7 @@ struct s3c2410_uartcfg {
+@@ -224,7 +243,7 @@
   * or platform_add_device() before the console_initcall()
  */
  
@@ -24975,10 +24635,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c/include/plat/regs-serial.h
  
  #endif /* __ASSEMBLY__ */
  
-Index: linux-2.6.28/arch/arm/plat-s3c/include/plat/regs-timer.h
-===================================================================
---- linux-2.6.28.orig/arch/arm/plat-s3c/include/plat/regs-timer.h      2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/plat-s3c/include/plat/regs-timer.h   2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/plat-s3c/include/plat/regs-timer.h
++++ b/arch/arm/plat-s3c/include/plat/regs-timer.h
 @@ -10,7 +10,6 @@
   * S3C2410 Timer configuration
  */
@@ -25011,10 +24669,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c/include/plat/regs-timer.h
  #define S3C2410_TCFG1_SHIFT(x)          ((x) * 4)
  
  /* for each timer, we have an count buffer, an compare buffer and
-Index: linux-2.6.28/arch/arm/plat-s3c/include/plat/regs-watchdog.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c/include/plat/regs-watchdog.h        2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c/include/plat/regs-watchdog.h
 @@ -0,0 +1,41 @@
 +/* arch/arm/mach-s3c2410/include/mach/regs-watchdog.h
 + *
@@ -25057,10 +24713,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c/include/plat/regs-watchdog.h
 +#endif /* __ASM_ARCH_REGS_WATCHDOG_H */
 +
 +
-Index: linux-2.6.28/arch/arm/plat-s3c/include/plat/sdhci.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c/include/plat/sdhci.h        2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c/include/plat/sdhci.h
 @@ -0,0 +1,112 @@
 +/* linux/arch/arm/plat-s3c/include/plat/sdhci.h
 + *
@@ -25174,11 +24828,9 @@ Index: linux-2.6.28/arch/arm/plat-s3c/include/plat/sdhci.h
 +#endif /* CONFIG_S3C6410_SETUP_SDHCI */
 +
 +#endif /* __PLAT_S3C_SDHCI_H */
-Index: linux-2.6.28/arch/arm/plat-s3c/include/plat/uncompress.h
-===================================================================
---- linux-2.6.28.orig/arch/arm/plat-s3c/include/plat/uncompress.h      2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/plat-s3c/include/plat/uncompress.h   2009-01-02 00:01:56.000000000 +0100
-@@ -28,7 +28,7 @@ static void arch_detect_cpu(void);
+--- a/arch/arm/plat-s3c/include/plat/uncompress.h
++++ b/arch/arm/plat-s3c/include/plat/uncompress.h
+@@ -28,7 +28,7 @@
  /* defines for UART registers */
  
  #include <plat/regs-serial.h>
@@ -25187,7 +24839,7 @@ Index: linux-2.6.28/arch/arm/plat-s3c/include/plat/uncompress.h
  
  /* working in physical space... */
  #undef S3C2410_WDOGREG
-@@ -37,7 +37,7 @@ static void arch_detect_cpu(void);
+@@ -37,7 +37,7 @@
  /* how many bytes we allow into the FIFO at a time in FIFO mode */
  #define FIFO_MAX       (14)
  
@@ -25196,7 +24848,7 @@ Index: linux-2.6.28/arch/arm/plat-s3c/include/plat/uncompress.h
  
  static __inline__ void
  uart_wr(unsigned int reg, unsigned int val)
-@@ -139,6 +139,28 @@ static void arch_decomp_error(const char
+@@ -139,6 +139,28 @@
  
  static void error(char *err);
  
@@ -25225,7 +24877,7 @@ Index: linux-2.6.28/arch/arm/plat-s3c/include/plat/uncompress.h
  static void
  arch_decomp_setup(void)
  {
-@@ -149,6 +171,12 @@ arch_decomp_setup(void)
+@@ -149,6 +171,12 @@
  
        arch_detect_cpu();
        arch_decomp_wdog_start();
@@ -25238,10 +24890,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c/include/plat/uncompress.h
  }
  
  
-Index: linux-2.6.28/arch/arm/plat-s3c/init.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c/init.c      2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c/init.c
 @@ -0,0 +1,161 @@
 +/* linux/arch/arm/plat-s3c/init.c
 + *
@@ -25404,10 +25054,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c/init.c
 +}
 +
 +arch_initcall(s3c_arch_init);
-Index: linux-2.6.28/arch/arm/plat-s3c/Kconfig
-===================================================================
---- linux-2.6.28.orig/arch/arm/plat-s3c/Kconfig        2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/plat-s3c/Kconfig     2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/plat-s3c/Kconfig
++++ b/arch/arm/plat-s3c/Kconfig
 @@ -6,8 +6,8 @@
  
  config PLAT_S3C
@@ -25419,7 +25067,7 @@ Index: linux-2.6.28/arch/arm/plat-s3c/Kconfig
        select NO_IOPORT
        help
          Base platform code for any Samsung S3C device
-@@ -16,24 +16,24 @@ config PLAT_S3C
+@@ -16,24 +16,24 @@
  
  config CPU_LLSERIAL_S3C2410_ONLY
        bool
@@ -25448,7 +25096,7 @@ Index: linux-2.6.28/arch/arm/plat-s3c/Kconfig
        help
          Selected if there is an S3C2440 (or register compatible) serial
          low-level implementation needed
-@@ -57,6 +57,14 @@ config S3C_BOOT_ERROR_RESET
+@@ -57,6 +57,14 @@
          Say y here to use the watchdog to reset the system if the
          kernel decompressor detects an error during decompression.
  
@@ -25463,7 +25111,7 @@ Index: linux-2.6.28/arch/arm/plat-s3c/Kconfig
  comment "Power management"
  
  config S3C2410_PM_DEBUG
-@@ -67,6 +75,15 @@ config S3C2410_PM_DEBUG
+@@ -67,6 +75,15 @@
          Resume code. See <file:Documentation/arm/Samsung-S3C24XX/Suspend.txt>
          for more information.
  
@@ -25479,7 +25127,7 @@ Index: linux-2.6.28/arch/arm/plat-s3c/Kconfig
  config S3C2410_PM_CHECK
        bool "S3C2410 PM Suspend Memory CRC"
        depends on PLAT_S3C && PM && CRC32
-@@ -102,3 +119,73 @@ config S3C_LOWLEVEL_UART_PORT
+@@ -102,3 +119,73 @@
          such as the `Uncompressing...` at start time. The value of
          this configuration should be between zero and two. The port
          must have been initialised by the boot-loader before use.
@@ -25553,10 +25201,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c/Kconfig
 +      depends on PLAT_S3C
 +      help
 +        Compile in platform device definition for framebuffer
-Index: linux-2.6.28/arch/arm/plat-s3c/Makefile
-===================================================================
---- linux-2.6.28.orig/arch/arm/plat-s3c/Makefile       2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/plat-s3c/Makefile    2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/plat-s3c/Makefile
++++ b/arch/arm/plat-s3c/Makefile
 @@ -1,3 +1,33 @@
 -# dummy makefile, currently just including asm/arm/plat-s3c/include/plat
 +# arch/arm/plat-s3c/Makefile
@@ -25593,10 +25239,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c/Makefile
 +obj-y                         += dev-i2c0.o
 +obj-$(CONFIG_S3C_DEV_I2C1)    += dev-i2c1.o
 +obj-$(CONFIG_S3C_DEV_FB)      += dev-fb.o
-Index: linux-2.6.28/arch/arm/plat-s3c/pm.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c/pm.c        2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c/pm.c
 @@ -0,0 +1,387 @@
 +/* linux/arch/arm/plat-s3c/pm.c
 + *
@@ -25985,10 +25629,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c/pm.c
 +      suspend_set_ops(&s3c_pm_ops);
 +      return 0;
 +}
-Index: linux-2.6.28/arch/arm/plat-s3c/pm-check.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c/pm-check.c  2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c/pm-check.c
 @@ -0,0 +1,242 @@
 +/* linux/arch/arm/plat-s3c/pm-check.c
 + *  originally in linux/arch/arm/plat-s3c24xx/pm.c
@@ -26232,10 +25874,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c/pm-check.c
 +      crcs = NULL;
 +}
 +
-Index: linux-2.6.28/arch/arm/plat-s3c/pm-gpio.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c/pm-gpio.c   2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c/pm-gpio.c
 @@ -0,0 +1,378 @@
 +/* linux/arch/arm/plat-s3c/pm-gpio.c
 + *
@@ -26615,10 +26255,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c/pm-gpio.c
 +              gpio_nr += CONFIG_S3C_GPIO_SPACE;
 +      }
 +}
-Index: linux-2.6.28/arch/arm/plat-s3c/pwm-clock.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c/pwm-clock.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c/pwm-clock.c
 @@ -0,0 +1,463 @@
 +/* linux/arch/arm/plat-s3c24xx/pwm-clock.c
 + *
@@ -27083,10 +26721,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c/pwm-clock.c
 +              }
 +      }
 +}
-Index: linux-2.6.28/arch/arm/plat-s3c/time.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c/time.c      2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c/time.c
 @@ -0,0 +1,285 @@
 +/* linux/arch/arm/plat-s3c24xx/time.c
 + *
@@ -27373,10 +27009,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c/time.c
 +      .offset         = s3c2410_gettimeoffset,
 +      .resume         = s3c2410_timer_setup
 +};
-Index: linux-2.6.28/arch/arm/plat-s3c24xx/clock.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/plat-s3c24xx/clock.c    2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/plat-s3c24xx/clock.c 2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/plat-s3c24xx/clock.c
++++ b/arch/arm/plat-s3c24xx/clock.c
 @@ -27,18 +27,8 @@
  */
  
@@ -27895,10 +27529,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c24xx/clock.c
 -
 -      return 0;
  }
-Index: linux-2.6.28/arch/arm/plat-s3c24xx/clock-dclk.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c24xx/clock-dclk.c    2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c24xx/clock-dclk.c
 @@ -0,0 +1,194 @@
 +/* linux/arch/arm/plat-s3c24xx/clock-dclk.c
 + *
@@ -28094,10 +27726,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c24xx/clock-dclk.c
 +      .id             = -1,
 +      .set_parent     = s3c24xx_clkout_setparent,
 +};
-Index: linux-2.6.28/arch/arm/plat-s3c24xx/common-smdk.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/plat-s3c24xx/common-smdk.c      2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/plat-s3c24xx/common-smdk.c   2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/plat-s3c24xx/common-smdk.c
++++ b/arch/arm/plat-s3c24xx/common-smdk.c
 @@ -38,7 +38,7 @@
  #include <mach/regs-gpio.h>
  #include <mach/leds-gpio.h>
@@ -28107,17 +27737,15 @@ Index: linux-2.6.28/arch/arm/plat-s3c24xx/common-smdk.c
  
  #include <plat/common-smdk.h>
  #include <plat/devs.h>
-@@ -201,5 +201,5 @@ void __init smdk_machine_init(void)
+@@ -201,5 +201,5 @@
  
        platform_add_devices(smdk_devs, ARRAY_SIZE(smdk_devs));
  
 -      s3c2410_pm_init();
 +      s3c_pm_init();
  }
-Index: linux-2.6.28/arch/arm/plat-s3c24xx/cpu.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/plat-s3c24xx/cpu.c      2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/plat-s3c24xx/cpu.c   2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/plat-s3c24xx/cpu.c
++++ b/arch/arm/plat-s3c24xx/cpu.c
 @@ -55,16 +55,6 @@
  #include <plat/s3c2442.h>
  #include <plat/s3c2443.h>
@@ -28135,7 +27763,7 @@ Index: linux-2.6.28/arch/arm/plat-s3c24xx/cpu.c
  /* table of supported CPUs */
  
  static const char name_s3c2400[]  = "S3C2400";
-@@ -72,6 +62,7 @@ static const char name_s3c2410[]  = "S3C
+@@ -72,6 +62,7 @@
  static const char name_s3c2412[]  = "S3C2412";
  static const char name_s3c2440[]  = "S3C2440";
  static const char name_s3c2442[]  = "S3C2442";
@@ -28143,7 +27771,7 @@ Index: linux-2.6.28/arch/arm/plat-s3c24xx/cpu.c
  static const char name_s3c2443[]  = "S3C2443";
  static const char name_s3c2410a[] = "S3C2410A";
  static const char name_s3c2440a[] = "S3C2440A";
-@@ -123,6 +114,15 @@ static struct cpu_table cpu_ids[] __init
+@@ -123,6 +114,15 @@
                .name           = name_s3c2442
        },
        {
@@ -28159,7 +27787,7 @@ Index: linux-2.6.28/arch/arm/plat-s3c24xx/cpu.c
                .idcode         = 0x32412001,
                .idmask         = 0xffffffff,
                .map_io         = s3c2412_map_io,
-@@ -169,23 +169,7 @@ static struct map_desc s3c_iodesc[] __in
+@@ -169,23 +169,7 @@
        IODESC_ENT(UART)
  };
  
@@ -28184,7 +27812,7 @@ Index: linux-2.6.28/arch/arm/plat-s3c24xx/cpu.c
  
  static unsigned long s3c24xx_read_idcode_v5(void)
  {
-@@ -231,6 +215,7 @@ void __init s3c24xx_init_io(struct map_d
+@@ -231,6 +215,7 @@
        unsigned long idcode = 0x0;
  
        /* initialise the io descriptors we need for initialisation */
@@ -28192,7 +27820,7 @@ Index: linux-2.6.28/arch/arm/plat-s3c24xx/cpu.c
        iotable_init(s3c_iodesc, ARRAY_SIZE(s3c_iodesc));
  
        if (cpu_architecture() >= CPU_ARCH_ARMv5) {
-@@ -239,117 +224,7 @@ void __init s3c24xx_init_io(struct map_d
+@@ -239,117 +224,7 @@
                idcode = s3c24xx_read_idcode_v4();
        }
  
@@ -28311,10 +27939,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c24xx/cpu.c
 -}
 -
 -arch_initcall(s3c_arch_init);
-Index: linux-2.6.28/arch/arm/plat-s3c24xx/devs.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/plat-s3c24xx/devs.c     2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/plat-s3c24xx/devs.c  2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/plat-s3c24xx/devs.c
++++ b/arch/arm/plat-s3c24xx/devs.c
 @@ -26,14 +26,16 @@
  #include <asm/mach/irq.h>
  #include <mach/fb.h>
@@ -28334,7 +27960,7 @@ Index: linux-2.6.28/arch/arm/plat-s3c24xx/devs.c
  
  /* Serial port registrations */
  
-@@ -76,6 +78,19 @@ static struct resource s3c2410_uart2_res
+@@ -76,6 +78,19 @@
        }
  };
  
@@ -28354,7 +27980,7 @@ Index: linux-2.6.28/arch/arm/plat-s3c24xx/devs.c
  struct s3c24xx_uart_resources s3c2410_uart_resources[] __initdata = {
        [0] = {
                .resources      = s3c2410_uart0_resource,
-@@ -89,6 +104,10 @@ struct s3c24xx_uart_resources s3c2410_ua
+@@ -89,6 +104,10 @@
                .resources      = s3c2410_uart2_resource,
                .nr_resources   = ARRAY_SIZE(s3c2410_uart2_resource),
        },
@@ -28365,7 +27991,7 @@ Index: linux-2.6.28/arch/arm/plat-s3c24xx/devs.c
  };
  
  /* yart devices */
-@@ -105,13 +124,18 @@ static struct platform_device s3c24xx_ua
+@@ -105,13 +124,18 @@
        .id             = 2,
  };
  
@@ -28386,7 +28012,7 @@ Index: linux-2.6.28/arch/arm/plat-s3c24xx/devs.c
  };
  
  /* USB Host Controller */
-@@ -192,8 +216,8 @@ void __init s3c24xx_fb_set_platdata(stru
+@@ -192,8 +216,8 @@
  
  static struct resource s3c_nand_resource[] = {
        [0] = {
@@ -28397,7 +28023,7 @@ Index: linux-2.6.28/arch/arm/plat-s3c24xx/devs.c
                .flags = IORESOURCE_MEM,
        }
  };
-@@ -207,6 +231,23 @@ struct platform_device s3c_device_nand =
+@@ -207,6 +231,23 @@
  
  EXPORT_SYMBOL(s3c_device_nand);
  
@@ -28421,7 +28047,7 @@ Index: linux-2.6.28/arch/arm/plat-s3c24xx/devs.c
  /* USB Device (Gadget)*/
  
  static struct resource s3c_usbgadget_resource[] = {
-@@ -271,31 +312,6 @@ struct platform_device s3c_device_wdt = 
+@@ -271,31 +312,6 @@
  
  EXPORT_SYMBOL(s3c_device_wdt);
  
@@ -28453,7 +28079,7 @@ Index: linux-2.6.28/arch/arm/plat-s3c24xx/devs.c
  /* IIS */
  
  static struct resource s3c_iis_resource[] = {
-@@ -382,8 +398,8 @@ struct platform_device s3c_device_adc = 
+@@ -382,8 +398,8 @@
  
  static struct resource s3c_sdi_resource[] = {
        [0] = {
@@ -28464,7 +28090,7 @@ Index: linux-2.6.28/arch/arm/plat-s3c24xx/devs.c
                .flags = IORESOURCE_MEM,
        },
        [1] = {
-@@ -403,36 +419,6 @@ struct platform_device s3c_device_sdi = 
+@@ -403,36 +419,6 @@
  
  EXPORT_SYMBOL(s3c_device_sdi);
  
@@ -28501,10 +28127,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c24xx/devs.c
  /* SPI (0) */
  
  static struct resource s3c_spi0_resource[] = {
-Index: linux-2.6.28/arch/arm/plat-s3c24xx/gpio.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/plat-s3c24xx/gpio.c     2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/plat-s3c24xx/gpio.c  2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/plat-s3c24xx/gpio.c
++++ b/arch/arm/plat-s3c24xx/gpio.c
 @@ -32,6 +32,7 @@
  #include <asm/irq.h>
  
@@ -28513,7 +28137,7 @@ Index: linux-2.6.28/arch/arm/plat-s3c24xx/gpio.c
  
  void s3c2410_gpio_cfgpin(unsigned int pin, unsigned int function)
  {
-@@ -215,3 +216,423 @@ int s3c2410_gpio_irq2pin(unsigned int ir
+@@ -215,3 +216,423 @@
  }
  
  EXPORT_SYMBOL(s3c2410_gpio_irq2pin);
@@ -28937,10 +28561,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c24xx/gpio.c
 +}
 +EXPORT_SYMBOL(s3c24xx_dump_gpio_states);
 +
-Index: linux-2.6.28/arch/arm/plat-s3c24xx/gpiolib.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/plat-s3c24xx/gpiolib.c  2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/plat-s3c24xx/gpiolib.c       2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/plat-s3c24xx/gpiolib.c
++++ b/arch/arm/plat-s3c24xx/gpiolib.c
 @@ -19,104 +19,13 @@
  #include <linux/io.h>
  #include <linux/gpio.h>
@@ -29048,7 +28670,7 @@ Index: linux-2.6.28/arch/arm/plat-s3c24xx/gpiolib.c
  static int s3c24xx_gpiolib_banka_input(struct gpio_chip *chip, unsigned offset)
  {
        return -EINVAL;
-@@ -125,7 +34,7 @@ static int s3c24xx_gpiolib_banka_input(s
+@@ -125,7 +34,7 @@
  static int s3c24xx_gpiolib_banka_output(struct gpio_chip *chip,
                                        unsigned offset, int value)
  {
@@ -29057,7 +28679,7 @@ Index: linux-2.6.28/arch/arm/plat-s3c24xx/gpiolib.c
        void __iomem *base = ourchip->base;
        unsigned long flags;
        unsigned long dat;
-@@ -151,9 +60,10 @@ static int s3c24xx_gpiolib_banka_output(
+@@ -151,9 +60,10 @@
        return 0;
  }
  
@@ -29069,7 +28691,7 @@ Index: linux-2.6.28/arch/arm/plat-s3c24xx/gpiolib.c
                .chip   = {
                        .base                   = S3C2410_GPA0,
                        .owner                  = THIS_MODULE,
-@@ -161,97 +71,87 @@ static struct s3c24xx_gpio_chip gpios[] 
+@@ -161,97 +71,87 @@
                        .ngpio                  = 24,
                        .direction_input        = s3c24xx_gpiolib_banka_input,
                        .direction_output       = s3c24xx_gpiolib_banka_output,
@@ -29187,10 +28809,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c24xx/gpiolib.c
  
        return 0;
  }
-Index: linux-2.6.28/arch/arm/plat-s3c24xx/gta02_pm_wlan.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c24xx/gta02_pm_wlan.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c24xx/gta02_pm_wlan.c
 @@ -0,0 +1,161 @@
 +/*
 + * GTA02 WLAN power management
@@ -29353,10 +28973,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c24xx/gta02_pm_wlan.c
 +MODULE_LICENSE("GPL");
 +MODULE_AUTHOR("Andy Green <andy@openmoko.com>");
 +MODULE_DESCRIPTION("Openmoko GTA02 WLAN power management");
-Index: linux-2.6.28/arch/arm/plat-s3c24xx/include/mach/pwm-clock.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c24xx/include/mach/pwm-clock.h        2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c24xx/include/mach/pwm-clock.h
 @@ -0,0 +1,55 @@
 +/* linux/arch/arm/plat-s3c24xx/include/mach/pwm-clock.h
 + *
@@ -29413,10 +29031,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c24xx/include/mach/pwm-clock.h
 +}
 +
 +#define S3C_TCFG1_MUX_TCLK S3C2410_TCFG1_MUX_TCLK
-Index: linux-2.6.28/arch/arm/plat-s3c24xx/include/plat/clock.h
-===================================================================
---- linux-2.6.28.orig/arch/arm/plat-s3c24xx/include/plat/clock.h       2008-12-25 00:26:37.000000000 +0100
-+++ /dev/null  1970-01-01 00:00:00.000000000 +0000
+--- a/arch/arm/plat-s3c24xx/include/plat/clock.h
++++ /dev/null
 @@ -1,64 +0,0 @@
 -/* linux/include/asm-arm/plat-s3c24xx/clock.h
 - * linux/arch/arm/mach-s3c2410/clock.h
@@ -29482,10 +29098,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c24xx/include/plat/clock.h
 -                              unsigned long fclk,
 -                              unsigned long hclk,
 -                              unsigned long pclk);
-Index: linux-2.6.28/arch/arm/plat-s3c24xx/include/plat/cpu.h
-===================================================================
---- linux-2.6.28.orig/arch/arm/plat-s3c24xx/include/plat/cpu.h 2008-12-25 00:26:37.000000000 +0100
-+++ /dev/null  1970-01-01 00:00:00.000000000 +0000
+--- a/arch/arm/plat-s3c24xx/include/plat/cpu.h
++++ /dev/null
 @@ -1,54 +0,0 @@
 -/* linux/include/asm-arm/plat-s3c24xx/cpu.h
 - *
@@ -29541,10 +29155,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c24xx/include/plat/cpu.h
 -extern struct sysdev_class s3c2440_sysclass;
 -extern struct sysdev_class s3c2442_sysclass;
 -extern struct sysdev_class s3c2443_sysclass;
-Index: linux-2.6.28/arch/arm/plat-s3c24xx/include/plat/devs.h
-===================================================================
---- linux-2.6.28.orig/arch/arm/plat-s3c24xx/include/plat/devs.h        2008-12-25 00:26:37.000000000 +0100
-+++ /dev/null  1970-01-01 00:00:00.000000000 +0000
+--- a/arch/arm/plat-s3c24xx/include/plat/devs.h
++++ /dev/null
 @@ -1,49 +0,0 @@
 -/* linux/include/asm-arm/plat-s3c24xx/devs.h
 - *
@@ -29595,10 +29207,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c24xx/include/plat/devs.h
 -extern struct platform_device s3c_device_camif;
 -
 -#endif
-Index: linux-2.6.28/arch/arm/plat-s3c24xx/include/plat/irq.h
-===================================================================
---- linux-2.6.28.orig/arch/arm/plat-s3c24xx/include/plat/irq.h 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/plat-s3c24xx/include/plat/irq.h      2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/plat-s3c24xx/include/plat/irq.h
++++ b/arch/arm/plat-s3c24xx/include/plat/irq.h
 @@ -10,6 +10,12 @@
   * published by the Free Software Foundation.
  */
@@ -29612,7 +29222,7 @@ Index: linux-2.6.28/arch/arm/plat-s3c24xx/include/plat/irq.h
  #define irqdbf(x...)
  #define irqdbf2(x...)
  
-@@ -25,8 +31,15 @@ s3c_irqsub_mask(unsigned int irqno, unsi
+@@ -25,8 +31,15 @@
  {
        unsigned long mask;
        unsigned long submask;
@@ -29628,7 +29238,7 @@ Index: linux-2.6.28/arch/arm/plat-s3c24xx/include/plat/irq.h
        mask = __raw_readl(S3C2410_INTMSK);
  
        submask |= (1UL << (irqno - IRQ_S3CUART_RX0));
-@@ -39,6 +52,9 @@ s3c_irqsub_mask(unsigned int irqno, unsi
+@@ -39,6 +52,9 @@
  
        /* write back masks */
        __raw_writel(submask, S3C2410_INTSUBMSK);
@@ -29638,7 +29248,7 @@ Index: linux-2.6.28/arch/arm/plat-s3c24xx/include/plat/irq.h
  
  }
  
-@@ -47,8 +63,15 @@ s3c_irqsub_unmask(unsigned int irqno, un
+@@ -47,8 +63,15 @@
  {
        unsigned long mask;
        unsigned long submask;
@@ -29654,7 +29264,7 @@ Index: linux-2.6.28/arch/arm/plat-s3c24xx/include/plat/irq.h
        mask = __raw_readl(S3C2410_INTMSK);
  
        submask &= ~(1UL << (irqno - IRQ_S3CUART_RX0));
-@@ -57,6 +80,9 @@ s3c_irqsub_unmask(unsigned int irqno, un
+@@ -57,6 +80,9 @@
        /* write back masks */
        __raw_writel(submask, S3C2410_INTSUBMSK);
        __raw_writel(mask, S3C2410_INTMSK);
@@ -29664,10 +29274,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c24xx/include/plat/irq.h
  }
  
  
-Index: linux-2.6.28/arch/arm/plat-s3c24xx/include/plat/map.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c24xx/include/plat/map.h      2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c24xx/include/plat/map.h
 @@ -0,0 +1,101 @@
 +/* linux/include/asm-arm/plat-s3c24xx/map.h
 + *
@@ -29770,10 +29378,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c24xx/include/plat/map.h
 +#endif
 +
 +#endif /* __ASM_PLAT_S3C24XX_MAP_H */
-Index: linux-2.6.28/arch/arm/plat-s3c24xx/include/plat/mci.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c24xx/include/plat/mci.h      2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c24xx/include/plat/mci.h
 @@ -0,0 +1,15 @@
 +#ifndef _ARCH_MCI_H
 +#define _ARCH_MCI_H
@@ -29790,10 +29396,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c24xx/include/plat/mci.h
 +};
 +
 +#endif /* _ARCH_NCI_H */
-Index: linux-2.6.28/arch/arm/plat-s3c24xx/include/plat/pll.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c24xx/include/plat/pll.h      2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c24xx/include/plat/pll.h
 @@ -0,0 +1,37 @@
 +/* linux/arch/arm/plat-s3c24xx/include/plat/pll.h
 + *
@@ -29832,10 +29436,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c24xx/include/plat/pll.h
 +
 +      return (unsigned int)fvco;
 +}
-Index: linux-2.6.28/arch/arm/plat-s3c24xx/include/plat/pm-core.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c24xx/include/plat/pm-core.h  2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c24xx/include/plat/pm-core.h
 @@ -0,0 +1,64 @@
 +/* linux/arch/arm/plat-s3c24xx/include/plat/pll.h
 + *
@@ -29901,10 +29503,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c24xx/include/plat/pm-core.h
 +                                         struct pm_uart_save *save)
 +{
 +}
-Index: linux-2.6.28/arch/arm/plat-s3c24xx/include/plat/pm.h
-===================================================================
---- linux-2.6.28.orig/arch/arm/plat-s3c24xx/include/plat/pm.h  2008-12-25 00:26:37.000000000 +0100
-+++ /dev/null  1970-01-01 00:00:00.000000000 +0000
+--- a/arch/arm/plat-s3c24xx/include/plat/pm.h
++++ /dev/null
 @@ -1,73 +0,0 @@
 -/* linux/include/asm-arm/plat-s3c24xx/pm.h
 - *
@@ -29979,10 +29579,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c24xx/include/plat/pm.h
 -#define s3c24xx_irq_suspend NULL
 -#define s3c24xx_irq_resume  NULL
 -#endif
-Index: linux-2.6.28/arch/arm/plat-s3c24xx/include/plat/regs-spi.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c24xx/include/plat/regs-spi.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c24xx/include/plat/regs-spi.h
 @@ -0,0 +1,82 @@
 +/* arch/arm/mach-s3c2410/include/mach/regs-spi.h
 + *
@@ -30066,10 +29664,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c24xx/include/plat/regs-spi.h
 +
 +
 +#endif /* __ASM_ARCH_REGS_SPI_H */
-Index: linux-2.6.28/arch/arm/plat-s3c24xx/include/plat/regs-udc.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c24xx/include/plat/regs-udc.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c24xx/include/plat/regs-udc.h
 @@ -0,0 +1,153 @@
 +/* arch/arm/mach-s3c2410/include/mach/regs-udc.h
 + *
@@ -30224,10 +29820,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c24xx/include/plat/regs-udc.h
 +
 +
 +#endif
-Index: linux-2.6.28/arch/arm/plat-s3c24xx/include/plat/s3c2400.h
-===================================================================
---- linux-2.6.28.orig/arch/arm/plat-s3c24xx/include/plat/s3c2400.h     2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/plat-s3c24xx/include/plat/s3c2400.h  2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/plat-s3c24xx/include/plat/s3c2400.h
++++ b/arch/arm/plat-s3c24xx/include/plat/s3c2400.h
 @@ -17,7 +17,7 @@
  
  extern  int s3c2400_init(void);
@@ -30237,10 +29831,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c24xx/include/plat/s3c2400.h
  
  extern void s3c2400_init_uarts(struct s3c2410_uartcfg *cfg, int no);
  
-Index: linux-2.6.28/arch/arm/plat-s3c24xx/include/plat/s3c2410.h
-===================================================================
---- linux-2.6.28.orig/arch/arm/plat-s3c24xx/include/plat/s3c2410.h     2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/plat-s3c24xx/include/plat/s3c2410.h  2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/plat-s3c24xx/include/plat/s3c2410.h
++++ b/arch/arm/plat-s3c24xx/include/plat/s3c2410.h
 @@ -15,7 +15,7 @@
  
  extern  int s3c2410_init(void);
@@ -30250,10 +29842,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c24xx/include/plat/s3c2410.h
  
  extern void s3c2410_init_uarts(struct s3c2410_uartcfg *cfg, int no);
  
-Index: linux-2.6.28/arch/arm/plat-s3c24xx/include/plat/s3c2412.h
-===================================================================
---- linux-2.6.28.orig/arch/arm/plat-s3c24xx/include/plat/s3c2412.h     2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/plat-s3c24xx/include/plat/s3c2412.h  2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/plat-s3c24xx/include/plat/s3c2412.h
++++ b/arch/arm/plat-s3c24xx/include/plat/s3c2412.h
 @@ -14,7 +14,7 @@
  
  extern  int s3c2412_init(void);
@@ -30263,11 +29853,9 @@ Index: linux-2.6.28/arch/arm/plat-s3c24xx/include/plat/s3c2412.h
  
  extern void s3c2412_init_uarts(struct s3c2410_uartcfg *cfg, int no);
  
-Index: linux-2.6.28/arch/arm/plat-s3c24xx/include/plat/s3c2443.h
-===================================================================
---- linux-2.6.28.orig/arch/arm/plat-s3c24xx/include/plat/s3c2443.h     2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/plat-s3c24xx/include/plat/s3c2443.h  2009-01-02 00:01:56.000000000 +0100
-@@ -16,7 +16,7 @@ struct s3c2410_uartcfg;
+--- a/arch/arm/plat-s3c24xx/include/plat/s3c2443.h
++++ b/arch/arm/plat-s3c24xx/include/plat/s3c2443.h
+@@ -16,7 +16,7 @@
  
  extern  int s3c2443_init(void);
  
@@ -30276,10 +29864,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c24xx/include/plat/s3c2443.h
  
  extern void s3c2443_init_uarts(struct s3c2410_uartcfg *cfg, int no);
  
-Index: linux-2.6.28/arch/arm/plat-s3c24xx/include/plat/udc.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c24xx/include/plat/udc.h      2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c24xx/include/plat/udc.h
 @@ -0,0 +1,36 @@
 +/* arch/arm/mach-s3c2410/include/mach/udc.h
 + *
@@ -30317,10 +29903,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c24xx/include/plat/udc.h
 +extern void __init s3c24xx_udc_set_platdata(struct s3c2410_udc_mach_info *);
 +
 +#endif /* __ASM_ARM_ARCH_UDC_H */
-Index: linux-2.6.28/arch/arm/plat-s3c24xx/irq.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/plat-s3c24xx/irq.c      2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/plat-s3c24xx/irq.c   2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/plat-s3c24xx/irq.c
++++ b/arch/arm/plat-s3c24xx/irq.c
 @@ -1,6 +1,6 @@
  /* linux/arch/arm/plat-s3c24xx/irq.c
   *
@@ -30470,7 +30054,7 @@ Index: linux-2.6.28/arch/arm/plat-s3c24xx/irq.c
  }
  
  static inline void
-@@ -155,9 +67,19 @@ s3c_irq_maskack(unsigned int irqno)
+@@ -155,9 +67,19 @@
  {
        unsigned long bitval = 1UL << (irqno - IRQ_EINT0);
        unsigned long mask;
@@ -30490,7 +30074,7 @@ Index: linux-2.6.28/arch/arm/plat-s3c24xx/irq.c
  
        __raw_writel(bitval, S3C2410_SRCPND);
        __raw_writel(bitval, S3C2410_INTPND);
-@@ -168,15 +90,25 @@ static void
+@@ -168,15 +90,25 @@
  s3c_irq_unmask(unsigned int irqno)
  {
        unsigned long mask;
@@ -30516,7 +30100,7 @@ Index: linux-2.6.28/arch/arm/plat-s3c24xx/irq.c
  }
  
  struct irq_chip s3c_irq_level_chip = {
-@@ -589,59 +521,6 @@ s3c_irq_demux_extint4t7(unsigned int irq
+@@ -589,59 +521,6 @@
        }
  }
  
@@ -30576,7 +30160,7 @@ Index: linux-2.6.28/arch/arm/plat-s3c24xx/irq.c
  /* s3c24xx_init_irq
   *
   * Initialise S3C2410 IRQ system
-@@ -672,26 +551,26 @@ void __init s3c24xx_init_irq(void)
+@@ -672,26 +551,26 @@
  
        last = 0;
        for (i = 0; i < 4; i++) {
@@ -30610,10 +30194,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c24xx/irq.c
                last = pend;
        }
  
-Index: linux-2.6.28/arch/arm/plat-s3c24xx/irq-pm.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c24xx/irq-pm.c        2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c24xx/irq-pm.c
 @@ -0,0 +1,118 @@
 +/* linux/arch/arm/plat-s3c24xx/irq-om.c
 + *
@@ -30733,10 +30315,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c24xx/irq-pm.c
 +
 +      return 0;
 +}
-Index: linux-2.6.28/arch/arm/plat-s3c24xx/Kconfig
-===================================================================
---- linux-2.6.28.orig/arch/arm/plat-s3c24xx/Kconfig    2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/plat-s3c24xx/Kconfig 2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/plat-s3c24xx/Kconfig
++++ b/arch/arm/plat-s3c24xx/Kconfig
 @@ -6,18 +6,32 @@
  
  config PLAT_S3C24XX
@@ -30773,7 +30353,7 @@ Index: linux-2.6.28/arch/arm/plat-s3c24xx/Kconfig
        help
          Support for S3C2440 and S3C2442 Samsung Mobile CPU based systems.
  
-@@ -49,9 +63,31 @@ config S3C2410_DMA_DEBUG
+@@ -49,9 +63,31 @@
          Enable debugging output for the DMA code. This option sends info
          to the kernel log, at priority KERN_DEBUG.
  
@@ -30805,11 +30385,9 @@ Index: linux-2.6.28/arch/arm/plat-s3c24xx/Kconfig
 +        Common machine code for Neo1973 hardware
 +
  endif
-Index: linux-2.6.28/arch/arm/plat-s3c24xx/Makefile
-===================================================================
---- linux-2.6.28.orig/arch/arm/plat-s3c24xx/Makefile   2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/plat-s3c24xx/Makefile        2009-01-02 00:01:56.000000000 +0100
-@@ -17,9 +17,8 @@ obj-y                                += irq.o
+--- a/arch/arm/plat-s3c24xx/Makefile
++++ b/arch/arm/plat-s3c24xx/Makefile
+@@ -17,9 +17,8 @@
  obj-y                         += devs.o
  obj-y                         += gpio.o
  obj-y                         += gpiolib.o
@@ -30820,7 +30398,7 @@ Index: linux-2.6.28/arch/arm/plat-s3c24xx/Makefile
  
  # Architecture dependant builds
  
-@@ -28,7 +27,26 @@ obj-$(CONFIG_CPU_S3C244X)   += s3c244x-irq
+@@ -28,7 +27,26 @@
  obj-$(CONFIG_CPU_S3C244X)     += s3c244x-clock.o
  obj-$(CONFIG_PM_SIMTEC)               += pm-simtec.o
  obj-$(CONFIG_PM)              += pm.o
@@ -30847,10 +30425,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c24xx/Makefile
 +                                   neo1973_pm_bt.o  \
 +                                   gta02_pm_wlan.o  \
 +                                   neo1973_shadow.o
-Index: linux-2.6.28/arch/arm/plat-s3c24xx/neo1973_pm_bt.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c24xx/neo1973_pm_bt.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c24xx/neo1973_pm_bt.c
 @@ -0,0 +1,323 @@
 +/*
 + * Bluetooth PM code for the FIC Neo1973 GSM Phone
@@ -31175,10 +30751,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c24xx/neo1973_pm_bt.c
 +MODULE_LICENSE("GPL");
 +MODULE_AUTHOR("Harald Welte <laforge@openmoko.org>");
 +MODULE_DESCRIPTION(DRVMSG);
-Index: linux-2.6.28/arch/arm/plat-s3c24xx/neo1973_pm_gps.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c24xx/neo1973_pm_gps.c        2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c24xx/neo1973_pm_gps.c
 @@ -0,0 +1,699 @@
 +/*
 + * GPS Power Management code for the FIC Neo1973 GSM Phone
@@ -31879,16 +31453,12 @@ Index: linux-2.6.28/arch/arm/plat-s3c24xx/neo1973_pm_gps.c
 +MODULE_LICENSE("GPL");
 +MODULE_AUTHOR("Harald Welte <laforge@openmoko.org>");
 +MODULE_DESCRIPTION("FIC Neo1973 GPS Power Management");
-Index: linux-2.6.28/arch/arm/plat-s3c24xx/neo1973_pm_gps.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c24xx/neo1973_pm_gps.h        2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c24xx/neo1973_pm_gps.h
 @@ -0,0 +1 @@
 +extern int neo1973_pm_gps_is_on(void);
-Index: linux-2.6.28/arch/arm/plat-s3c24xx/neo1973_pm_gsm.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c24xx/neo1973_pm_gsm.c        2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c24xx/neo1973_pm_gsm.c
 @@ -0,0 +1,360 @@
 +/*
 + * GSM Management code for the FIC Neo1973 GSM Phone
@@ -32250,10 +31820,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c24xx/neo1973_pm_gsm.c
 +MODULE_LICENSE("GPL");
 +MODULE_AUTHOR("Harald Welte <laforge@openmoko.org>");
 +MODULE_DESCRIPTION("FIC Neo1973 GSM Power Management");
-Index: linux-2.6.28/arch/arm/plat-s3c24xx/neo1973_shadow.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c24xx/neo1973_shadow.c        2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c24xx/neo1973_shadow.c
 @@ -0,0 +1,88 @@
 +/*
 + * include/asm-arm/plat-s3c24xx/neo1973.h
@@ -32343,10 +31911,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c24xx/neo1973_shadow.c
 +      local_irq_restore(flags);
 +}
 +EXPORT_SYMBOL(neo1973_gpb_setpin);
-Index: linux-2.6.28/arch/arm/plat-s3c24xx/pm.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/plat-s3c24xx/pm.c       2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/plat-s3c24xx/pm.c    2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/plat-s3c24xx/pm.c
++++ b/arch/arm/plat-s3c24xx/pm.c
 @@ -31,14 +31,9 @@
  #include <linux/errno.h>
  #include <linux/time.h>
@@ -32374,7 +31940,7 @@ Index: linux-2.6.28/arch/arm/plat-s3c24xx/pm.c
  #define PFX "s3c24xx-pm: "
  
  static struct sleep_save core_save[] = {
-@@ -76,371 +67,26 @@ static struct sleep_save core_save[] = {
+@@ -76,371 +67,26 @@
        SAVE_ITEM(S3C2410_BANKCON4),
        SAVE_ITEM(S3C2410_BANKCON5),
  
@@ -32751,7 +32317,7 @@ Index: linux-2.6.28/arch/arm/plat-s3c24xx/pm.c
  {
        unsigned long irqstate;
        unsigned long pinstate;
-@@ -455,21 +101,21 @@ static void s3c2410_pm_check_resume_pin(
+@@ -455,21 +101,21 @@
  
        if (!irqstate) {
                if (pinstate == S3C2410_GPIO_IRQ)
@@ -32777,7 +32343,7 @@ Index: linux-2.6.28/arch/arm/plat-s3c24xx/pm.c
  {
        int pin;
  
-@@ -479,336 +125,24 @@ static void s3c2410_pm_configure_extint(
+@@ -479,336 +125,24 @@
        */
  
        for (pin = S3C2410_GPF0; pin <= S3C2410_GPF7; pin++) {
@@ -33122,11 +32688,9 @@ Index: linux-2.6.28/arch/arm/plat-s3c24xx/pm.c
 -      suspend_set_ops(&s3c2410_pm_ops);
 -      return 0;
 -}
-Index: linux-2.6.28/arch/arm/plat-s3c24xx/pm-simtec.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/plat-s3c24xx/pm-simtec.c        2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/plat-s3c24xx/pm-simtec.c     2009-01-02 00:01:56.000000000 +0100
-@@ -61,7 +61,7 @@ static __init int pm_simtec_init(void)
+--- a/arch/arm/plat-s3c24xx/pm-simtec.c
++++ b/arch/arm/plat-s3c24xx/pm-simtec.c
+@@ -61,7 +61,7 @@
  
        __raw_writel(gstatus4, S3C2410_GSTATUS4);
  
@@ -33135,10 +32699,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c24xx/pm-simtec.c
  }
  
  arch_initcall(pm_simtec_init);
-Index: linux-2.6.28/arch/arm/plat-s3c24xx/pwm-clock.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/plat-s3c24xx/pwm-clock.c        2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/plat-s3c24xx/pwm-clock.c     2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/plat-s3c24xx/pwm-clock.c
++++ b/arch/arm/plat-s3c24xx/pwm-clock.c
 @@ -24,10 +24,10 @@
  #include <mach/regs-clock.h>
  #include <mach/regs-gpio.h>
@@ -33153,10 +32715,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c24xx/pwm-clock.c
  
  /* Each of the timers 0 through 5 go through the following
   * clock tree, with the inputs depending on the timers.
-Index: linux-2.6.28/arch/arm/plat-s3c24xx/s3c2410-clock.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c24xx/s3c2410-clock.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c24xx/s3c2410-clock.c
 @@ -0,0 +1,277 @@
 +/* linux/arch/arm/mach-s3c2410/clock.c
 + *
@@ -33435,10 +32995,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c24xx/s3c2410-clock.c
 +      s3c_pwmclk_init();
 +      return 0;
 +}
-Index: linux-2.6.28/arch/arm/plat-s3c24xx/s3c244x.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/plat-s3c24xx/s3c244x.c  2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/plat-s3c24xx/s3c244x.c       2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/plat-s3c24xx/s3c244x.c
++++ b/arch/arm/plat-s3c24xx/s3c244x.c
 @@ -29,6 +29,8 @@
  #include <mach/hardware.h>
  #include <asm/irq.h>
@@ -33456,7 +33014,7 @@ Index: linux-2.6.28/arch/arm/plat-s3c24xx/s3c244x.c
  
  static struct map_desc s3c244x_iodesc[] __initdata = {
        IODESC_ENT(CLKPWR),
-@@ -56,32 +59,37 @@ void __init s3c244x_init_uarts(struct s3
+@@ -56,32 +59,37 @@
        s3c24xx_init_uartdevs("s3c2440-uart", s3c2410_uart_resources, cfg, no);
  }
  
@@ -33501,7 +33059,7 @@ Index: linux-2.6.28/arch/arm/plat-s3c24xx/s3c244x.c
  
        clkdiv = __raw_readl(S3C2410_CLKDIVN);
        camdiv = __raw_readl(S3C2440_CAMDIVN);
-@@ -107,18 +115,24 @@ void __init s3c244x_init_clocks(int xtal
+@@ -107,18 +115,24 @@
        }
  
        hclk = fclk / hdiv;
@@ -33528,7 +33086,7 @@ Index: linux-2.6.28/arch/arm/plat-s3c24xx/s3c244x.c
        s3c2410_baseclk_add();
  }
  
-@@ -134,13 +148,13 @@ static struct sleep_save s3c244x_sleep[]
+@@ -134,13 +148,13 @@
  
  static int s3c244x_suspend(struct sys_device *dev, pm_message_t state)
  {
@@ -33544,10 +33102,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c24xx/s3c244x.c
        return 0;
  }
  
-Index: linux-2.6.28/arch/arm/plat-s3c24xx/s3c244x-clock.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/plat-s3c24xx/s3c244x-clock.c    2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/plat-s3c24xx/s3c244x-clock.c 2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/plat-s3c24xx/s3c244x-clock.c
++++ b/arch/arm/plat-s3c24xx/s3c244x-clock.c
 @@ -31,7 +31,6 @@
  #include <linux/sysdev.h>
  #include <linux/interrupt.h>
@@ -33556,7 +33112,7 @@ Index: linux-2.6.28/arch/arm/plat-s3c24xx/s3c244x-clock.c
  #include <linux/clk.h>
  #include <linux/io.h>
  
-@@ -102,13 +101,13 @@ static int s3c244x_clk_add(struct sys_de
+@@ -102,13 +101,13 @@
        if (clk_get_rate(clock_upll) > (94 * MHZ)) {
                clk_usb_bus.rate = clk_get_rate(clock_upll) / 2;
  
@@ -33572,10 +33128,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c24xx/s3c244x-clock.c
        }
  
        return 0;
-Index: linux-2.6.28/arch/arm/plat-s3c24xx/s3c244x.h
-===================================================================
---- linux-2.6.28.orig/arch/arm/plat-s3c24xx/s3c244x.h  2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/plat-s3c24xx/s3c244x.h       2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/plat-s3c24xx/s3c244x.h
++++ b/arch/arm/plat-s3c24xx/s3c244x.h
 @@ -12,7 +12,7 @@
  
  #if defined(CONFIG_CPU_S3C2440) || defined(CONFIG_CPU_S3C2442)
@@ -33585,10 +33139,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c24xx/s3c244x.h
  
  extern void s3c244x_init_uarts(struct s3c2410_uartcfg *cfg, int no);
  
-Index: linux-2.6.28/arch/arm/plat-s3c24xx/setup-i2c.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c24xx/setup-i2c.c     2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c24xx/setup-i2c.c
 @@ -0,0 +1,25 @@
 +/* linux/arch/arm/plat-s3c24xx/setup-i2c.c
 + *
@@ -33615,10 +33167,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c24xx/setup-i2c.c
 +      s3c2410_gpio_cfgpin(S3C2410_GPE15, S3C2410_GPE15_IICSDA);
 +      s3c2410_gpio_cfgpin(S3C2410_GPE14, S3C2410_GPE14_IICSCL);
 +}
-Index: linux-2.6.28/arch/arm/plat-s3c24xx/sleep.S
-===================================================================
---- linux-2.6.28.orig/arch/arm/plat-s3c24xx/sleep.S    2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/plat-s3c24xx/sleep.S 2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/plat-s3c24xx/sleep.S
++++ b/arch/arm/plat-s3c24xx/sleep.S
 @@ -41,7 +41,7 @@
  
        .text
@@ -33637,7 +33187,7 @@ Index: linux-2.6.28/arch/arm/plat-s3c24xx/sleep.S
        stmfd   sp!, { r4 - r12, lr }
  
        @@ store co-processor registers
-@@ -84,7 +84,7 @@ resume_with_mmu:
+@@ -84,7 +84,7 @@
        .ltorg
  
        @@ the next bits sit in the .data segment, even though they
@@ -33646,7 +33196,7 @@ Index: linux-2.6.28/arch/arm/plat-s3c24xx/sleep.S
        @@ accessed by the resume code before it can restore the MMU.
        @@ This means that the variable has to be close enough for the
        @@ code to read it... since the .text segment needs to be RO,
-@@ -92,19 +92,19 @@ resume_with_mmu:
+@@ -92,19 +92,19 @@
  
        .data
  
@@ -33670,7 +33220,7 @@ Index: linux-2.6.28/arch/arm/plat-s3c24xx/sleep.S
         *
         * resume code entry for bootloader to call
         *
-@@ -113,7 +113,7 @@ s3c2410_sleep_save_phys:
+@@ -113,7 +113,7 @@
         * must not write to the code segment (code is read-only)
        */
  
@@ -33679,7 +33229,7 @@ Index: linux-2.6.28/arch/arm/plat-s3c24xx/sleep.S
        mov     r0, #PSR_I_BIT | PSR_F_BIT | SVC_MODE
        msr     cpsr_c, r0
  
-@@ -145,7 +145,7 @@ ENTRY(s3c2410_cpu_resume)
+@@ -145,7 +145,7 @@
        mcr     p15, 0, r1, c8, c7, 0           @@ invalidate I & D TLBs
        mcr     p15, 0, r1, c7, c7, 0           @@ invalidate I & D caches
  
@@ -33688,10 +33238,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c24xx/sleep.S
        ldmia   r0, { r4 - r13 }
  
        mcr     p15, 0, r4, c13, c0, 0          @ PID
-Index: linux-2.6.28/arch/arm/plat-s3c24xx/spi-bus0-gpe11_12_13.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c24xx/spi-bus0-gpe11_12_13.c  2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c24xx/spi-bus0-gpe11_12_13.c
 @@ -0,0 +1,37 @@
 +/* linux/arch/arm/plat-s3c24xx/spi-bus0-gpe11_12_13.c
 + *
@@ -33730,10 +33278,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c24xx/spi-bus0-gpe11_12_13.c
 +              s3c2410_gpio_pullup(S3C2410_GPE13, 1);
 +      }
 +}
-Index: linux-2.6.28/arch/arm/plat-s3c24xx/spi-bus1-gpg5_6_7.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c24xx/spi-bus1-gpg5_6_7.c     2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c24xx/spi-bus1-gpg5_6_7.c
 @@ -0,0 +1,37 @@
 +/* linux/arch/arm/plat-s3c24xx/spi-bus0-gpg5_6_7.c
 + *
@@ -33772,10 +33318,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c24xx/spi-bus1-gpg5_6_7.c
 +              s3c2410_gpio_pullup(S3C2410_GPG7, 1);
 +      }
 +}
-Index: linux-2.6.28/arch/arm/plat-s3c24xx/time.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/plat-s3c24xx/time.c     2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/plat-s3c24xx/time.c  2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/plat-s3c24xx/time.c
++++ b/arch/arm/plat-s3c24xx/time.c
 @@ -3,6 +3,8 @@
   * Copyright (C) 2003-2005 Simtec Electronics
   *    Ben Dooks, <ben@simtec.co.uk>
@@ -33817,7 +33361,7 @@ Index: linux-2.6.28/arch/arm/plat-s3c24xx/time.c
  
  #define TIMER_USEC_SHIFT 16
  
-@@ -177,11 +183,7 @@ static void s3c2410_timer_setup (void)
+@@ -177,11 +183,7 @@
                tcfg1 &= ~S3C2410_TCFG1_MUX4_MASK;
                tcfg1 |= S3C2410_TCFG1_MUX4_TCLK1;
        } else {
@@ -33830,7 +33374,7 @@ Index: linux-2.6.28/arch/arm/plat-s3c24xx/time.c
                 * 70MHz are not values we can directly generate the timer
                 * value from, we need to pre-scale and divide before using it.
                 *
-@@ -189,19 +191,9 @@ static void s3c2410_timer_setup (void)
+@@ -189,19 +191,9 @@
                 * (8.45 ticks per usec)
                 */
  
@@ -33851,7 +33395,7 @@ Index: linux-2.6.28/arch/arm/plat-s3c24xx/time.c
  
                tcfg1 &= ~S3C2410_TCFG1_MUX4_MASK;
                tcfg1 |= S3C2410_TCFG1_MUX4_DIV2;
-@@ -245,16 +237,244 @@ static void s3c2410_timer_setup (void)
+@@ -245,16 +237,244 @@
        tcon |= S3C2410_TCON_T4START;
        tcon &= ~S3C2410_TCON_T4MANUALUPD;
        __raw_writel(tcon, S3C2410_TCON);
@@ -34097,10 +33641,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c24xx/time.c
 +      .dyn_tick       = &s3c24xx_dyn_tick_timer,
 +#endif
  };
-Index: linux-2.6.28/arch/arm/plat-s3c64xx/clock.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c64xx/clock.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c64xx/clock.c
 @@ -0,0 +1,282 @@
 +/* linux/arch/arm/plat-s3c64xx/clock.c
 + *
@@ -34384,10 +33926,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c64xx/clock.c
 +
 +      s3c_pwmclk_init();
 +}
-Index: linux-2.6.28/arch/arm/plat-s3c64xx/cpu.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c64xx/cpu.c   2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c64xx/cpu.c
 @@ -0,0 +1,139 @@
 +/* linux/arch/arm/plat-s3c64xx/cpu.c
 + *
@@ -34528,10 +34068,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c64xx/cpu.c
 +}
 +
 +core_initcall(s3c64xx_sysdev_init);
-Index: linux-2.6.28/arch/arm/plat-s3c64xx/dev-uart.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c64xx/dev-uart.c      2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c64xx/dev-uart.c
 @@ -0,0 +1,176 @@
 +/* linux/arch/arm/plat-s3c64xx/dev-uart.c
 + *
@@ -34709,10 +34247,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c64xx/dev-uart.c
 +struct platform_device *s3c24xx_uart_devs[4] = {
 +};
 +
-Index: linux-2.6.28/arch/arm/plat-s3c64xx/gpiolib.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c64xx/gpiolib.c       2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c64xx/gpiolib.c
 @@ -0,0 +1,428 @@
 +/* arch/arm/plat-s3c64xx/gpiolib.c
 + *
@@ -35142,10 +34678,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c64xx/gpiolib.c
 +}
 +
 +arch_initcall(s3c64xx_gpiolib_init);
-Index: linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/gpio-bank-a.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/gpio-bank-a.h      2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c64xx/include/plat/gpio-bank-a.h
 @@ -0,0 +1,48 @@
 +/* linux/arch/arm/plat-s3c64xx/include/plat/gpio-bank-a.h
 + *
@@ -35195,10 +34729,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/gpio-bank-a.h
 +#define S3C64XX_GPA7_UART_nRTS1               (0x02 << 28)
 +#define S3C64XX_GPA7_EINT_G1_7                (0x07 << 28)
 +
-Index: linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/gpio-bank-b.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/gpio-bank-b.h      2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c64xx/include/plat/gpio-bank-b.h
 @@ -0,0 +1,60 @@
 +/* linux/arch/arm/plat-s3c64xx/include/plat/gpio-bank-b.h
 + *
@@ -35260,10 +34792,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/gpio-bank-b.h
 +#define S3C64XX_GPB6_I2C_SDA0         (0x02 << 24)
 +#define S3C64XX_GPB6_EINT_G1_14               (0x07 << 24)
 +
-Index: linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/gpio-bank-c.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/gpio-bank-c.h      2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c64xx/include/plat/gpio-bank-c.h
 @@ -0,0 +1,53 @@
 +/* linux/arch/arm/plat-s3c64xx/include/plat/gpio-bank-c.h
 + *
@@ -35318,10 +34848,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/gpio-bank-c.h
 +#define S3C64XX_GPC7_I2S2_V40_DO      (0x05 << 28)
 +#define S3C64XX_GPC7_EINT_G2_7                (0x07 << 28)
 +
-Index: linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/gpio-bank-d.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/gpio-bank-d.h      2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c64xx/include/plat/gpio-bank-d.h
 @@ -0,0 +1,49 @@
 +/* linux/arch/arm/plat-s3c64xx/include/plat/gpio-bank-d.h
 + *
@@ -35372,10 +34900,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/gpio-bank-d.h
 +#define S3C64XX_GPD4_AC97_SDO         (0x04 << 16)
 +#define S3C64XX_GPD4_EINT_G3_4                (0x07 << 16)
 +
-Index: linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/gpio-bank-e.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/gpio-bank-e.h      2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c64xx/include/plat/gpio-bank-e.h
 @@ -0,0 +1,44 @@
 +/* linux/arch/arm/plat-s3c64xx/include/plat/gpio-bank-e.h
 + *
@@ -35421,10 +34947,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/gpio-bank-e.h
 +#define S3C64XX_GPE4_I2S1_D0          (0x03 << 16)
 +#define S3C64XX_GPE4_AC97_SDO         (0x04 << 16)
 +
-Index: linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/gpio-bank-f.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/gpio-bank-f.h      2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c64xx/include/plat/gpio-bank-f.h
 @@ -0,0 +1,71 @@
 +/* linux/arch/arm/plat-s3c64xx/include/plat/gpio-bank-f.h
 + *
@@ -35497,10 +35021,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/gpio-bank-f.h
 +
 +#define S3C64XX_GPF15_PWM_TOUT1               (0x02 << 30)
 +
-Index: linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/gpio-bank-g.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/gpio-bank-g.h      2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c64xx/include/plat/gpio-bank-g.h
 @@ -0,0 +1,42 @@
 +/* linux/arch/arm/plat-s3c64xx/include/plat/gpio-bank-g.h
 + *
@@ -35544,10 +35066,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/gpio-bank-g.h
 +#define S3C64XX_GPG5_MMC0_DATA3               (0x02 << 20)
 +#define S3C64XX_GPG5_EINT_G5_5                (0x07 << 20)
 +
-Index: linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/gpio-bank-h.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/gpio-bank-h.h      2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c64xx/include/plat/gpio-bank-h.h
 @@ -0,0 +1,74 @@
 +/* linux/arch/arm/plat-s3c64xx/include/plat/gpio-bank-h.h
 + *
@@ -35623,10 +35143,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/gpio-bank-h.h
 +#define S3C64XX_GPH9_I2S_V40_DI               (0x05 << 36)
 +#define S3C64XX_GPH9_EINT_G6_9                (0x07 << 36)
 +
-Index: linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/gpio-bank-i.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/gpio-bank-i.h      2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c64xx/include/plat/gpio-bank-i.h
 @@ -0,0 +1,40 @@
 +/* linux/arch/arm/plat-s3c64xx/include/plat/gpio-bank-i.h
 + *
@@ -35668,10 +35186,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/gpio-bank-i.h
 +#define S3C64XX_GPI13_VD13            (0x02 << 26)
 +#define S3C64XX_GPI14_VD14            (0x02 << 28)
 +#define S3C64XX_GPI15_VD15            (0x02 << 30)
-Index: linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/gpio-bank-j.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/gpio-bank-j.h      2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c64xx/include/plat/gpio-bank-j.h
 @@ -0,0 +1,36 @@
 +/* linux/arch/arm/plat-s3c64xx/include/plat/gpio-bank-j.h
 + *
@@ -35709,10 +35225,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/gpio-bank-j.h
 +#define S3C64XX_GPJ9_LCD_VSYNC                (0x02 << 18)
 +#define S3C64XX_GPJ10_LCD_VDEN                (0x02 << 20)
 +#define S3C64XX_GPJ11_LCD_VCLK                (0x02 << 22)
-Index: linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/gpio-bank-n.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/gpio-bank-n.h      2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c64xx/include/plat/gpio-bank-n.h
 @@ -0,0 +1,54 @@
 +/* linux/arch/arm/plat-s3c64xx/include/plat/gpio-bank-n.h
 + *
@@ -35768,10 +35282,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/gpio-bank-n.h
 +#define S3C64XX_GPN13_EINT13          (0x02 << 26)
 +#define S3C64XX_GPN14_EINT14          (0x02 << 28)
 +#define S3C64XX_GPN15_EINT15          (0x02 << 30)
-Index: linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/gpio-bank-o.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/gpio-bank-o.h      2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c64xx/include/plat/gpio-bank-o.h
 @@ -0,0 +1,70 @@
 +/* linux/arch/arm/plat-s3c64xx/include/plat/gpio-bank-o.h
 + *
@@ -35843,10 +35355,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/gpio-bank-o.h
 +#define S3C64XX_GPO15_MEM0_ADDR15     (0x02 << 30)
 +#define S3C64XX_GPO15_EINT_G7_15      (0x03 << 30)
 +
-Index: linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/gpio-bank-p.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/gpio-bank-p.h      2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c64xx/include/plat/gpio-bank-p.h
 @@ -0,0 +1,69 @@
 +/* linux/arch/arm/plat-s3c64xx/include/plat/gpio-bank-p.h
 + *
@@ -35917,10 +35427,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/gpio-bank-p.h
 +#define S3C64XX_GPP14_MEM0_ATA_CD     (0x02 << 28)
 +#define S3C64XX_GPP14_EINT_G8_14      (0x03 << 28)
 +
-Index: linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/gpio-bank-q.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/gpio-bank-q.h      2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c64xx/include/plat/gpio-bank-q.h
 @@ -0,0 +1,46 @@
 +/* linux/arch/arm/plat-s3c64xx/include/plat/gpio-bank-q.h
 + *
@@ -35968,10 +35476,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/gpio-bank-q.h
 +#define S3C64XX_GPQ8_MEM0_ADDR16_APDMC        (0x02 << 16)
 +#define S3C64XX_GPQ8_EINT_G9_8                (0x03 << 16)
 +
-Index: linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/irqs.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/irqs.h     2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c64xx/include/plat/irqs.h
 @@ -0,0 +1,202 @@
 +/* linux/arch/arm/plat-s3c64xx/include/mach/irqs.h
 + *
@@ -36175,10 +35681,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/irqs.h
 +
 +#endif /* __ASM_PLAT_S3C64XX_IRQS_H */
 +
-Index: linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/pll.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/pll.h      2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c64xx/include/plat/pll.h
 @@ -0,0 +1,74 @@
 +/* arch/arm/plat-s3c64xx/include/plat/pll.h
 + *
@@ -36254,10 +35758,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/pll.h
 +
 +      return result;
 +}
-Index: linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/pm-core.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/pm-core.h  2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c64xx/include/plat/pm-core.h
 @@ -0,0 +1,106 @@
 +/* linux/arch/arm/plat-s3c64xx/include/plat/pm-core.h
 + *
@@ -36365,10 +35867,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/pm-core.h
 +              save->ucon = new_ucon;
 +      }
 +}
-Index: linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/regs-clock.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/regs-clock.h       2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c64xx/include/plat/regs-clock.h
 @@ -0,0 +1,225 @@
 +/* arch/arm/plat-s3c64xx/include/plat/regs-clock.h
 + *
@@ -36595,10 +36095,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/regs-clock.h
 +
 +
 +#endif /* _PLAT_REGS_CLOCK_H */
-Index: linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/regs-gpio.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/regs-gpio.h        2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c64xx/include/plat/regs-gpio.h
 @@ -0,0 +1,187 @@
 +/* linux/arch/arm/plat-s3c64xx/include/mach/regs-gpio.h
 + *
@@ -36787,10 +36285,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/regs-gpio.h
 +
 +#endif /* __ASM_PLAT_S3C64XX_REGS_GPIO_H */
 +
-Index: linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/regs-gpio-memport.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/regs-gpio-memport.h        2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c64xx/include/plat/regs-gpio-memport.h
 @@ -0,0 +1,25 @@
 +/* linux/arch/arm/plat-s3c64xx/include/mach/regs-gpio-memport.h
 + *
@@ -36817,10 +36313,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/regs-gpio-memport.h
 +
 +#endif /* __ASM_PLAT_S3C64XX_REGS_GPIO_MEMPORT_H */
 +
-Index: linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/regs-modem.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/regs-modem.h       2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c64xx/include/plat/regs-modem.h
 @@ -0,0 +1,31 @@
 +/* arch/arm/plat-s3c64xx/include/plat/regs-modem.h
 + *
@@ -36853,10 +36347,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/regs-modem.h
 +#define MIFPCON_LCD_BYPASS                    (1 << 3)
 +
 +#endif /* __PLAT_S3C64XX_REGS_MODEM_H */
-Index: linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/regs-syscon-power.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/regs-syscon-power.h        2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c64xx/include/plat/regs-syscon-power.h
 @@ -0,0 +1,116 @@
 +/* arch/arm/plat-s3c64xx/include/plat/regs-syscon-power.h
 + *
@@ -36974,10 +36466,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/regs-syscon-power.h
 +#define S3C64XX_INFORM3                               S3C_SYSREG(0xA0C)
 +
 +#endif /* __PLAT_S3C64XX_REGS_SYSCON_POWER_H */
-Index: linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/regs-sys.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/regs-sys.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c64xx/include/plat/regs-sys.h
 @@ -0,0 +1,28 @@
 +/* arch/arm/plat-s3c64xx/include/plat/regs-sys.h
 + *
@@ -37007,10 +36497,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/regs-sys.h
 +#define S3C64XX_OTHERS_USBMASK        (1 << 16)
 +
 +#endif /* _PLAT_REGS_SYS_H */
-Index: linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/s3c6400.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/s3c6400.h  2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c64xx/include/plat/s3c6400.h
 @@ -0,0 +1,35 @@
 +/* arch/arm/plat-s3c64xx/include/plat/s3c6400.h
 + *
@@ -37047,10 +36535,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/s3c6400.h
 +#define s3c6400_init NULL
 +#endif
 +
-Index: linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/s3c6410.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/s3c6410.h  2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c64xx/include/plat/s3c6410.h
 @@ -0,0 +1,29 @@
 +/* arch/arm/plat-s3c64xx/include/plat/s3c6410.h
 + *
@@ -37081,10 +36567,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/s3c6410.h
 +#define s3c6410_map_io NULL
 +#define s3c6410_init NULL
 +#endif
-Index: linux-2.6.28/arch/arm/plat-s3c64xx/irq.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c64xx/irq.c   2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c64xx/irq.c
 @@ -0,0 +1,256 @@
 +/* arch/arm/plat-s3c64xx/irq.c
 + *
@@ -37342,10 +36826,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c64xx/irq.c
 +}
 +
 +
-Index: linux-2.6.28/arch/arm/plat-s3c64xx/irq-eint.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c64xx/irq-eint.c      2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c64xx/irq-eint.c
 @@ -0,0 +1,204 @@
 +/* arch/arm/plat-s3c64xx/irq-eint.c
 + *
@@ -37551,10 +37033,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c64xx/irq-eint.c
 +}
 +
 +arch_initcall(s3c64xx_init_irq_eint);
-Index: linux-2.6.28/arch/arm/plat-s3c64xx/irq-pm.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c64xx/irq-pm.c        2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c64xx/irq-pm.c
 @@ -0,0 +1,173 @@
 +/* arch/arm/plat-s3c64xx/irq-pm.c
 + *
@@ -37729,10 +37209,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c64xx/irq-pm.c
 +
 +arch_initcall(s3c64xx_irq_pm_init);
 +
-Index: linux-2.6.28/arch/arm/plat-s3c64xx/Kconfig
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c64xx/Kconfig 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c64xx/Kconfig
 @@ -0,0 +1,61 @@
 +# arch/arm/plat-s3c64xx/Kconfig
 +#
@@ -37795,10 +37273,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c64xx/Kconfig
 +        Common setup code for S3C64XX with an 24bpp RGB display helper.
 +
 +endif
-Index: linux-2.6.28/arch/arm/plat-s3c64xx/Makefile
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c64xx/Makefile        2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c64xx/Makefile
 @@ -0,0 +1,37 @@
 +# arch/arm/plat-s3c64xx/Makefile
 +#
@@ -37837,10 +37313,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c64xx/Makefile
 +obj-$(CONFIG_S3C64XX_SETUP_I2C0) += setup-i2c0.o
 +obj-$(CONFIG_S3C64XX_SETUP_I2C1) += setup-i2c1.o
 +obj-$(CONFIG_S3C64XX_SETUP_FB_24BPP) += setup-fb-24bpp.o
-Index: linux-2.6.28/arch/arm/plat-s3c64xx/pm.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c64xx/pm.c    2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c64xx/pm.c
 @@ -0,0 +1,177 @@
 +/* linux/arch/arm/plat-s3c64xx/pm.c
 + *
@@ -38019,10 +37493,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c64xx/pm.c
 +}
 +
 +arch_initcall(s3c64xx_pm_init);
-Index: linux-2.6.28/arch/arm/plat-s3c64xx/s3c6400-clock.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c64xx/s3c6400-clock.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c64xx/s3c6400-clock.c
 @@ -0,0 +1,654 @@
 +/* linux/arch/arm/plat-s3c64xx/s3c6400-clock.c
 + *
@@ -38678,10 +38150,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c64xx/s3c6400-clock.c
 +
 +      clk_epll.parent = &clk_mout_epll.clk;
 +}
-Index: linux-2.6.28/arch/arm/plat-s3c64xx/s3c6400-init.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c64xx/s3c6400-init.c  2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c64xx/s3c6400-init.c
 @@ -0,0 +1,29 @@
 +/* linux/arch/arm/plat-s3c64xx/s3c6400-init.c
 + *
@@ -38712,10 +38182,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c64xx/s3c6400-init.c
 +{
 +      s3c24xx_init_uartdevs("s3c6400-uart", s3c64xx_uart_resources, cfg, no);
 +}
-Index: linux-2.6.28/arch/arm/plat-s3c64xx/setup-fb-24bpp.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c64xx/setup-fb-24bpp.c        2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c64xx/setup-fb-24bpp.c
 @@ -0,0 +1,37 @@
 +/* linux/arch/arm/plat-s3c64xx/setup-fb-24bpp.c
 + *
@@ -38754,10 +38222,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c64xx/setup-fb-24bpp.c
 +              s3c_gpio_setpull(gpio, S3C_GPIO_PULL_NONE);
 +      }
 +}
-Index: linux-2.6.28/arch/arm/plat-s3c64xx/setup-i2c0.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c64xx/setup-i2c0.c    2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c64xx/setup-i2c0.c
 @@ -0,0 +1,31 @@
 +/* linux/arch/arm/plat-s3c64xx/setup-i2c0.c
 + *
@@ -38790,10 +38256,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c64xx/setup-i2c0.c
 +      s3c_gpio_setpull(S3C64XX_GPB(5), S3C_GPIO_PULL_UP);
 +      s3c_gpio_setpull(S3C64XX_GPB(6), S3C_GPIO_PULL_UP);
 +}
-Index: linux-2.6.28/arch/arm/plat-s3c64xx/setup-i2c1.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c64xx/setup-i2c1.c    2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c64xx/setup-i2c1.c
 @@ -0,0 +1,31 @@
 +/* linux/arch/arm/plat-s3c64xx/setup-i2c1.c
 + *
@@ -38826,10 +38290,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c64xx/setup-i2c1.c
 +      s3c_gpio_setpull(S3C64XX_GPB(2), S3C_GPIO_PULL_UP);
 +      s3c_gpio_setpull(S3C64XX_GPB(3), S3C_GPIO_PULL_UP);
 +}
-Index: linux-2.6.28/arch/arm/plat-s3c64xx/sleep.S
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c64xx/sleep.S 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c64xx/sleep.S
 @@ -0,0 +1,143 @@
 +/* linux/0arch/arm/plat-s3c64xx/sleep.S
 + *
@@ -38974,10 +38436,8 @@ Index: linux-2.6.28/arch/arm/plat-s3c64xx/sleep.S
 +      mov     pc, r2                          /* jump back */
 +
 +      .end
-Index: linux-2.6.28/dfu-kern
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/dfu-kern      2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/dfu-kern
 @@ -0,0 +1,14 @@
 +#!/bin/bash
 +
@@ -38993,11 +38453,9 @@ Index: linux-2.6.28/dfu-kern
 +fi
 +
 +
-Index: linux-2.6.28/Documentation/arm/Samsung-S3C24XX/Suspend.txt
-===================================================================
---- linux-2.6.28.orig/Documentation/arm/Samsung-S3C24XX/Suspend.txt    2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/Documentation/arm/Samsung-S3C24XX/Suspend.txt 2009-01-02 00:01:56.000000000 +0100
-@@ -40,13 +40,13 @@ Resuming
+--- a/Documentation/arm/Samsung-S3C24XX/Suspend.txt
++++ b/Documentation/arm/Samsung-S3C24XX/Suspend.txt
+@@ -40,13 +40,13 @@
  Machine Support
  ---------------
  
@@ -39014,7 +38472,7 @@ Index: linux-2.6.28/Documentation/arm/Samsung-S3C24XX/Suspend.txt
    needs to setup anything else for power management support.
  
    There is currently no support for over-riding the default method of
-@@ -74,7 +74,7 @@ statuc void __init machine_init(void)
+@@ -74,7 +74,7 @@
  
        enable_irq_wake(IRQ_EINT0);
  
@@ -39023,10 +38481,8 @@ Index: linux-2.6.28/Documentation/arm/Samsung-S3C24XX/Suspend.txt
  }
  
  
-Index: linux-2.6.28/drivers/android/alarm.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/android/alarm.c       2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/android/alarm.c
 @@ -0,0 +1,542 @@
 +/* drivers/android/alarm.c
 + *
@@ -39570,10 +39026,8 @@ Index: linux-2.6.28/drivers/android/alarm.c
 +module_init(alarm_init);
 +module_exit(alarm_exit);
 +
-Index: linux-2.6.28/drivers/android/binder.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/android/binder.c      2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/android/binder.c
 @@ -0,0 +1,3495 @@
 +/* drivers/android/binder.c
 + *
@@ -43070,10 +42524,8 @@ Index: linux-2.6.28/drivers/android/binder.c
 +
 +device_initcall(binder_init);
 +
-Index: linux-2.6.28/drivers/android/Kconfig
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/android/Kconfig       2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/android/Kconfig
 @@ -0,0 +1,93 @@
 +menu "Android"
 +
@@ -43168,10 +42620,8 @@ Index: linux-2.6.28/drivers/android/Kconfig
 +      default y
 +
 +endmenu
-Index: linux-2.6.28/drivers/android/logger.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/android/logger.c      2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/android/logger.c
 @@ -0,0 +1,607 @@
 +/*
 + * drivers/android/logger.c
@@ -43780,10 +43230,8 @@ Index: linux-2.6.28/drivers/android/logger.c
 +      return ret;
 +}
 +device_initcall(logger_init);
-Index: linux-2.6.28/drivers/android/Makefile
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/android/Makefile      2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/android/Makefile
 @@ -0,0 +1,6 @@
 +obj-$(CONFIG_ANDROID_BINDER_IPC)      += binder.o
 +obj-$(CONFIG_ANDROID_POWER)           += power.o
@@ -43791,10 +43239,8 @@ Index: linux-2.6.28/drivers/android/Makefile
 +obj-$(CONFIG_ANDROID_LOGGER)          += logger.o
 +obj-$(CONFIG_ANDROID_RAM_CONSOLE)     += ram_console.o
 +obj-$(CONFIG_ANDROID_TIMED_GPIO)      += timed_gpio.o
-Index: linux-2.6.28/drivers/android/power.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/android/power.c       2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/android/power.c
 @@ -0,0 +1,1336 @@
 +/* drivers/android/power.c
 + *
@@ -45132,10 +44578,8 @@ Index: linux-2.6.28/drivers/android/power.c
 +EXPORT_SYMBOL(android_unregister_early_suspend);
 +
 +
-Index: linux-2.6.28/drivers/android/ram_console.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/android/ram_console.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/android/ram_console.c
 @@ -0,0 +1,395 @@
 +/* drivers/android/ram_console.c
 + *
@@ -45532,10 +44976,8 @@ Index: linux-2.6.28/drivers/android/ram_console.c
 +#endif
 +late_initcall(ram_console_late_init);
 +
-Index: linux-2.6.28/drivers/android/timed_gpio.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/android/timed_gpio.c  2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/android/timed_gpio.c
 @@ -0,0 +1,177 @@
 +/* drivers/android/timed_gpio.c
 + *
@@ -45714,10 +45156,8 @@ Index: linux-2.6.28/drivers/android/timed_gpio.c
 +MODULE_AUTHOR("Mike Lockwood <lockwood@android.com>");
 +MODULE_DESCRIPTION("Android timed gpio driver");
 +MODULE_LICENSE("GPL");
-Index: linux-2.6.28/drivers/ar6000/ar6000/ar6000_drv.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/ar6000/ar6000_drv.c    2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/ar6000/ar6000_drv.c
 @@ -0,0 +1,3124 @@
 +/*
 + *
@@ -48843,10 +48283,8 @@ Index: linux-2.6.28/drivers/ar6000/ar6000/ar6000_drv.c
 +   A_UINT32 targReplyArg)
 +{
 +}
-Index: linux-2.6.28/drivers/ar6000/ar6000/ar6000_drv.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/ar6000/ar6000_drv.h    2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/ar6000/ar6000_drv.h
 @@ -0,0 +1,361 @@
 +/*
 + *
@@ -49209,10 +48647,8 @@ Index: linux-2.6.28/drivers/ar6000/ar6000/ar6000_drv.h
 +#endif
 +
 +#endif /* _AR6000_H_ */
-Index: linux-2.6.28/drivers/ar6000/ar6000/ar6000_raw_if.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/ar6000/ar6000_raw_if.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/ar6000/ar6000_raw_if.c
 @@ -0,0 +1,439 @@
 +/*
 + *
@@ -49653,10 +49089,8 @@ Index: linux-2.6.28/drivers/ar6000/ar6000/ar6000_raw_if.c
 +    return length;
 +}
 +#endif /* HTC_RAW_INTERFACE */
-Index: linux-2.6.28/drivers/ar6000/ar6000/ar6xapi_linux.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/ar6000/ar6xapi_linux.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/ar6000/ar6xapi_linux.h
 @@ -0,0 +1,128 @@
 +#ifndef _AR6XAPI_LINUX_H
 +#define _AR6XAPI_LINUX_H
@@ -49786,10 +49220,8 @@ Index: linux-2.6.28/drivers/ar6000/ar6000/ar6xapi_linux.h
 +#endif
 +
 +#endif
-Index: linux-2.6.28/drivers/ar6000/ar6000/athdrv_linux.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/ar6000/athdrv_linux.h  2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/ar6000/athdrv_linux.h
 @@ -0,0 +1,993 @@
 +/*
 + * Copyright (c) 2004-2006 Atheros Communications Inc.
@@ -50784,10 +50216,8 @@ Index: linux-2.6.28/drivers/ar6000/ar6000/athdrv_linux.h
 +}
 +#endif
 +#endif
-Index: linux-2.6.28/drivers/ar6000/ar6000/athtypes_linux.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/ar6000/athtypes_linux.h        2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/ar6000/athtypes_linux.h
 @@ -0,0 +1,47 @@
 +/*
 + * $Id: //depot/sw/releases/olca2.0-GPL/host/os/linux/include/athtypes_linux.h#1 $
@@ -50836,10 +50266,8 @@ Index: linux-2.6.28/drivers/ar6000/ar6000/athtypes_linux.h
 +
 +
 +#endif /* _ATHTYPES_LINUX_H_ */
-Index: linux-2.6.28/drivers/ar6000/ar6000/config_linux.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/ar6000/config_linux.h  2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/ar6000/config_linux.h
 @@ -0,0 +1,44 @@
 +/*
 + * Copyright (c) 2004-2007 Atheros Communications Inc.
@@ -50885,10 +50313,8 @@ Index: linux-2.6.28/drivers/ar6000/ar6000/config_linux.h
 +#endif
 +
 +#endif
-Index: linux-2.6.28/drivers/ar6000/ar6000/debug_linux.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/ar6000/debug_linux.h   2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/ar6000/debug_linux.h
 @@ -0,0 +1,86 @@
 +/*
 + * Copyright (c) 2004-2006 Atheros Communications Inc.
@@ -50976,10 +50402,8 @@ Index: linux-2.6.28/drivers/ar6000/ar6000/debug_linux.h
 +#endif
 +
 +#endif /* _DEBUG_LINUX_H_ */
-Index: linux-2.6.28/drivers/ar6000/ar6000/ioctl.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/ar6000/ioctl.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/ar6000/ioctl.c
 @@ -0,0 +1,2540 @@
 +/*
 + *
@@ -53521,10 +52945,8 @@ Index: linux-2.6.28/drivers/ar6000/ar6000/ioctl.c
 +    return ret;
 +}
 +
-Index: linux-2.6.28/drivers/ar6000/ar6000/netbuf.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/ar6000/netbuf.c        2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/ar6000/netbuf.c
 @@ -0,0 +1,225 @@
 +
 +/*
@@ -53751,10 +53173,8 @@ Index: linux-2.6.28/drivers/ar6000/ar6000/netbuf.c
 +    return A_OK;
 +}
 +
-Index: linux-2.6.28/drivers/ar6000/ar6000/osapi_linux.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/ar6000/osapi_linux.h   2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/ar6000/osapi_linux.h
 @@ -0,0 +1,319 @@
 +/*
 + * $Id: //depot/sw/releases/olca2.0-GPL/host/os/linux/include/osapi_linux.h#1 $
@@ -54075,10 +53495,8 @@ Index: linux-2.6.28/drivers/ar6000/ar6000/osapi_linux.h
 +#endif /* __KERNEL__ */
 +
 +#endif /* _OSAPI_LINUX_H_ */
-Index: linux-2.6.28/drivers/ar6000/ar6000/wireless_ext.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/ar6000/wireless_ext.c  2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/ar6000/wireless_ext.c
 @@ -0,0 +1,1972 @@
 +/*
 + *
@@ -56052,10 +55470,8 @@ Index: linux-2.6.28/drivers/ar6000/ar6000/wireless_ext.c
 +};
 +
 +
-Index: linux-2.6.28/drivers/ar6000/bmi/bmi.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/bmi/bmi.c      2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/bmi/bmi.c
 @@ -0,0 +1,657 @@
 +/*
 + * Copyright (c) 2004-2007 Atheros Communications Inc.
@@ -56714,10 +56130,8 @@ Index: linux-2.6.28/drivers/ar6000/bmi/bmi.c
 +
 +    return status;
 +}
-Index: linux-2.6.28/drivers/ar6000/bmi/bmi_internal.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/bmi/bmi_internal.h     2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/bmi/bmi_internal.h
 @@ -0,0 +1,45 @@
 +#ifndef BMI_INTERNAL_H
 +#define BMI_INTERNAL_H
@@ -56764,10 +56178,8 @@ Index: linux-2.6.28/drivers/ar6000/bmi/bmi_internal.h
 +                 A_UINT32 length);
 +
 +#endif
-Index: linux-2.6.28/drivers/ar6000/hif/hif2.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/hif/hif2.c     2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/hif/hif2.c
 @@ -0,0 +1,646 @@
 +/*
 + * hif2.c - HIF layer re-implementation for the Linux SDIO stack
@@ -57415,10 +56827,8 @@ Index: linux-2.6.28/drivers/ar6000/hif/hif2.c
 +              mutex_unlock(&shutdown_lock);
 +      }
 +}
-Index: linux-2.6.28/drivers/ar6000/hif/hif.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/hif/hif.c      2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/hif/hif.c
 @@ -0,0 +1,824 @@
 +/*
 + * @file: hif.c
@@ -58244,10 +57654,8 @@ Index: linux-2.6.28/drivers/ar6000/hif/hif.c
 +
 +    return;
 +}
-Index: linux-2.6.28/drivers/ar6000/hif/hif_internal.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/hif/hif_internal.h     2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/hif/hif_internal.h
 @@ -0,0 +1,102 @@
 +/*
 + * @file: hif_internal.h
@@ -58351,10 +57759,8 @@ Index: linux-2.6.28/drivers/ar6000/hif/hif_internal.h
 +
 +void
 +delHifDevice(SDDEVICE *handle);
-Index: linux-2.6.28/drivers/ar6000/htc/ar6k.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/htc/ar6k.c     2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/htc/ar6k.c
 @@ -0,0 +1,991 @@
 +/*
 + * AR6K device layer that handles register level I/O
@@ -59347,10 +58753,8 @@ Index: linux-2.6.28/drivers/ar6000/htc/ar6k.c
 +
 +
 +
-Index: linux-2.6.28/drivers/ar6000/htc/ar6k_events.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/htc/ar6k_events.c      2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/htc/ar6k_events.c
 @@ -0,0 +1,638 @@
 +/*
 + * AR6K Driver layer event handling (i.e. interrupts, message polling)
@@ -59990,10 +59394,8 @@ Index: linux-2.6.28/drivers/ar6000/htc/ar6k_events.c
 +}
 +
 +
-Index: linux-2.6.28/drivers/ar6000/htc/ar6k.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/htc/ar6k.h     2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/htc/ar6k.h
 @@ -0,0 +1,191 @@
 +/*
 + *
@@ -60186,10 +59588,8 @@ Index: linux-2.6.28/drivers/ar6000/htc/ar6k.h
 +#endif
 +
 +#endif /*AR6K_H_*/
-Index: linux-2.6.28/drivers/ar6000/htc/htc.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/htc/htc.c      2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/htc/htc.c
 @@ -0,0 +1,507 @@
 +/*
 + *
@@ -60698,10 +60098,8 @@ Index: linux-2.6.28/drivers/ar6000/htc/htc.c
 +    return FALSE;
 +#endif
 +}
-Index: linux-2.6.28/drivers/ar6000/htc/htc_debug.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/htc/htc_debug.h        2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/htc/htc_debug.h
 @@ -0,0 +1,65 @@
 +#ifndef HTC_DEBUG_H_
 +#define HTC_DEBUG_H_
@@ -60768,10 +60166,8 @@ Index: linux-2.6.28/drivers/ar6000/htc/htc_debug.h
 +void DebugDumpBytes(A_UCHAR *buffer, A_UINT16 length, char *pDescription);
 +
 +#endif /*HTC_DEBUG_H_*/
-Index: linux-2.6.28/drivers/ar6000/htc/htc_internal.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/htc/htc_internal.h     2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/htc/htc_internal.h
 @@ -0,0 +1,168 @@
 +/*
 + *
@@ -60941,10 +60337,8 @@ Index: linux-2.6.28/drivers/ar6000/htc/htc_internal.h
 +#endif
 +
 +#endif /* _HTC_INTERNAL_H_ */
-Index: linux-2.6.28/drivers/ar6000/htc/htc_recv.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/htc/htc_recv.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/htc/htc_recv.c
 @@ -0,0 +1,703 @@
 +/*
 + *
@@ -61649,10 +61043,8 @@ Index: linux-2.6.28/drivers/ar6000/htc/htc_recv.c
 +}
 +
 +
-Index: linux-2.6.28/drivers/ar6000/htc/htc_send.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/htc/htc_send.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/htc/htc_send.c
 @@ -0,0 +1,543 @@
 +/*
 + *
@@ -62197,10 +61589,8 @@ Index: linux-2.6.28/drivers/ar6000/htc/htc_send.c
 +    UNLOCK_HTC_TX(target);
 +
 +}
-Index: linux-2.6.28/drivers/ar6000/htc/htc_services.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/htc/htc_services.c     2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/htc/htc_services.c
 @@ -0,0 +1,403 @@
 +/*
 + *
@@ -62605,10 +61995,8 @@ Index: linux-2.6.28/drivers/ar6000/htc/htc_services.c
 +    }
 +
 +}
-Index: linux-2.6.28/drivers/ar6000/include/a_config.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/a_config.h     2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/a_config.h
 @@ -0,0 +1,27 @@
 +#ifndef _A_CONFIG_H_
 +#define _A_CONFIG_H_
@@ -62637,10 +62025,8 @@ Index: linux-2.6.28/drivers/ar6000/include/a_config.h
 +#include "../ar6000/config_linux.h"
 +
 +#endif
-Index: linux-2.6.28/drivers/ar6000/include/a_debug.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/a_debug.h      2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/a_debug.h
 @@ -0,0 +1,41 @@
 +#ifndef _A_DEBUG_H_
 +#define _A_DEBUG_H_
@@ -62683,10 +62069,8 @@ Index: linux-2.6.28/drivers/ar6000/include/a_debug.h
 +#include "../ar6000/debug_linux.h"
 +
 +#endif
-Index: linux-2.6.28/drivers/ar6000/include/a_drv_api.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/a_drv_api.h    2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/a_drv_api.h
 @@ -0,0 +1,185 @@
 +#ifndef _A_DRV_API_H_
 +#define _A_DRV_API_H_
@@ -62873,10 +62257,8 @@ Index: linux-2.6.28/drivers/ar6000/include/a_drv_api.h
 +#endif
 +
 +#endif
-Index: linux-2.6.28/drivers/ar6000/include/a_drv.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/a_drv.h        2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/a_drv.h
 @@ -0,0 +1,28 @@
 +#ifndef _A_DRV_H_
 +#define _A_DRV_H_
@@ -62906,10 +62288,8 @@ Index: linux-2.6.28/drivers/ar6000/include/a_drv.h
 +#include "../ar6000/athdrv_linux.h"
 +
 +#endif /* _ADRV_H_ */
-Index: linux-2.6.28/drivers/ar6000/include/a_osapi.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/a_osapi.h      2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/a_osapi.h
 @@ -0,0 +1,28 @@
 +#ifndef _A_OSAPI_H_
 +#define _A_OSAPI_H_
@@ -62939,10 +62319,8 @@ Index: linux-2.6.28/drivers/ar6000/include/a_osapi.h
 +#include "../ar6000/osapi_linux.h"
 +
 +#endif /* _OSAPI_H_ */
-Index: linux-2.6.28/drivers/ar6000/include/ar6000_api.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/ar6000_api.h   2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/ar6000_api.h
 @@ -0,0 +1,29 @@
 +#ifndef _AR6000_API_H_
 +#define _AR6000_API_H_
@@ -62973,10 +62351,8 @@ Index: linux-2.6.28/drivers/ar6000/include/ar6000_api.h
 +
 +#endif /* _AR6000_API_H */
 +
-Index: linux-2.6.28/drivers/ar6000/include/ar6000_diag.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/ar6000_diag.h  2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/ar6000_diag.h
 @@ -0,0 +1,38 @@
 +/*
 + *
@@ -63016,10 +62392,8 @@ Index: linux-2.6.28/drivers/ar6000/include/ar6000_diag.h
 +                     A_UCHAR *data, A_UINT32 length);
 +
 +#endif /*AR6000_DIAG_H_*/
-Index: linux-2.6.28/drivers/ar6000/include/AR6001_regdump.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/AR6001_regdump.h       2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/AR6001_regdump.h
 @@ -0,0 +1,100 @@
 +/*
 + * Copyright (c) 2006 Atheros Communications Inc.
@@ -63121,10 +62495,8 @@ Index: linux-2.6.28/drivers/ar6000/include/AR6001_regdump.h
 +#define RD_SIZE         (34*4) /* Space for this number of words */
 +
 +#endif /* __AR6000_REGDUMP_H__ */
-Index: linux-2.6.28/drivers/ar6000/include/AR6Khwreg.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/AR6Khwreg.h    2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/AR6Khwreg.h
 @@ -0,0 +1,147 @@
 +/*
 + * Copyright (c) 2004-2007 Atheros Communications Inc.
@@ -63273,10 +62645,8 @@ Index: linux-2.6.28/drivers/ar6000/include/AR6Khwreg.h
 +#endif
 +
 +#endif /* __AR6KHWREG_H__ */
-Index: linux-2.6.28/drivers/ar6000/include/AR6K_version.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/AR6K_version.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/AR6K_version.h
 @@ -0,0 +1,36 @@
 +#define __VER_MAJOR_ 2
 +#define __VER_MINOR_ 0
@@ -63314,10 +62684,8 @@ Index: linux-2.6.28/drivers/ar6000/include/AR6K_version.h
 +#define AR6K_SW_VERSION       ( ( __VER_MAJOR_ << VER_MAJOR_BIT_OFFSET ) + ( __VER_MINOR_ << VER_MINOR_BIT_OFFSET ) + ( __VER_PATCH_ << VER_PATCH_BIT_OFFSET ) + ( __BUILD_NUMBER_ << VER_BUILD_NUM_BIT_OFFSET ) )
 +
 +
-Index: linux-2.6.28/drivers/ar6000/include/AR6K_version.h.NEW
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/AR6K_version.h.NEW     2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/AR6K_version.h.NEW
 @@ -0,0 +1,36 @@
 +#define __VER_MAJOR_ 2
 +#define __VER_MINOR_ 0
@@ -63355,10 +62723,8 @@ Index: linux-2.6.28/drivers/ar6000/include/AR6K_version.h.NEW
 +#define AR6K_SW_VERSION       ( ( __VER_MAJOR_ << VER_MAJOR_BIT_OFFSET ) + ( __VER_MINOR_ << VER_MINOR_BIT_OFFSET ) + ( __VER_PATCH_ << VER_PATCH_BIT_OFFSET ) + ( __BUILD_NUMBER_ << VER_BUILD_NUM_BIT_OFFSET ) )
 +
 +
-Index: linux-2.6.28/drivers/ar6000/include/athdefs.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/athdefs.h      2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/athdefs.h
 @@ -0,0 +1,85 @@
 +#ifndef __ATHDEFS_H__
 +#define __ATHDEFS_H__
@@ -63445,10 +62811,8 @@ Index: linux-2.6.28/drivers/ar6000/include/athdefs.h
 +}WLAN_CAPABILITY;
 +
 +#endif /* __ATHDEFS_H__ */
-Index: linux-2.6.28/drivers/ar6000/include/athdrv.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/athdrv.h       2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/athdrv.h
 @@ -0,0 +1,32 @@
 +/*
 + * Copyright (c) 2004-2006 Atheros Communications Inc.
@@ -63482,10 +62846,8 @@ Index: linux-2.6.28/drivers/ar6000/include/athdrv.h
 +#endif
 +
 +#endif /* _ATHDRV_H_ */
-Index: linux-2.6.28/drivers/ar6000/include/athendpack.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/athendpack.h   2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/athendpack.h
 @@ -0,0 +1,41 @@
 +/*+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 + * @file: athendpack.h
@@ -63528,10 +62890,8 @@ Index: linux-2.6.28/drivers/ar6000/include/athendpack.h
 +#include "../os/wince/include/athendpack_wince.h"
 +#endif /* WINCE */
 +
-Index: linux-2.6.28/drivers/ar6000/include/athstartpack.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/athstartpack.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/athstartpack.h
 @@ -0,0 +1,42 @@
 +/*+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
 + * @file: athstartpack.h
@@ -63575,10 +62935,8 @@ Index: linux-2.6.28/drivers/ar6000/include/athstartpack.h
 +#include "../os/wince/include/athstartpack_wince.h"
 +#endif /* WINCE */
 +
-Index: linux-2.6.28/drivers/ar6000/include/a_types.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/a_types.h      2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/a_types.h
 @@ -0,0 +1,28 @@
 +#ifndef _A_TYPES_H_
 +#define _A_TYPES_H_
@@ -63608,10 +62966,8 @@ Index: linux-2.6.28/drivers/ar6000/include/a_types.h
 +#include "../ar6000/athtypes_linux.h"
 +
 +#endif /* _ATHTYPES_H_ */
-Index: linux-2.6.28/drivers/ar6000/include/bmi.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/bmi.h  2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/bmi.h
 @@ -0,0 +1,100 @@
 +#ifndef _BMI_H_
 +#define _BMI_H_
@@ -63713,10 +63069,8 @@ Index: linux-2.6.28/drivers/ar6000/include/bmi.h
 +#endif
 +
 +#endif /* _BMI_H_ */
-Index: linux-2.6.28/drivers/ar6000/include/bmi_msg.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/bmi_msg.h      2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/bmi_msg.h
 @@ -0,0 +1,199 @@
 +#ifndef __BMI_MSG_H__
 +#define __BMI_MSG_H__
@@ -63917,10 +63271,8 @@ Index: linux-2.6.28/drivers/ar6000/include/bmi_msg.h
 +
 +
 +#endif /* __BMI_MSG_H__ */
-Index: linux-2.6.28/drivers/ar6000/include/common_drv.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/common_drv.h   2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/common_drv.h
 @@ -0,0 +1,61 @@
 +/*
 + *
@@ -63983,10 +63335,8 @@ Index: linux-2.6.28/drivers/ar6000/include/common_drv.h
 +#endif
 +
 +#endif /*COMMON_DRV_H_*/
-Index: linux-2.6.28/drivers/ar6000/include/dbglog_api.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/dbglog_api.h   2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/dbglog_api.h
 @@ -0,0 +1,46 @@
 +#ifndef _DBGLOG_API_H_
 +#define _DBGLOG_API_H_
@@ -64034,10 +63384,8 @@ Index: linux-2.6.28/drivers/ar6000/include/dbglog_api.h
 +#endif
 +
 +#endif /* _DBGLOG_API_H_ */
-Index: linux-2.6.28/drivers/ar6000/include/dbglog.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/dbglog.h       2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/dbglog.h
 @@ -0,0 +1,107 @@
 +/*
 + * Copyright (c) 2004-2007 Atheros Communications Inc.
@@ -64146,10 +63494,8 @@ Index: linux-2.6.28/drivers/ar6000/include/dbglog.h
 +#endif
 +
 +#endif /* _DBGLOG_H_ */
-Index: linux-2.6.28/drivers/ar6000/include/dbglog_id.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/dbglog_id.h    2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/dbglog_id.h
 @@ -0,0 +1,307 @@
 +/*
 + *
@@ -64458,10 +63804,8 @@ Index: linux-2.6.28/drivers/ar6000/include/dbglog_id.h
 +#endif
 +
 +#endif /* _DBGLOG_ID_H_ */
-Index: linux-2.6.28/drivers/ar6000/include/dl_list.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/dl_list.h      2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/dl_list.h
 @@ -0,0 +1,114 @@
 +/*
 + *
@@ -64577,10 +63921,8 @@ Index: linux-2.6.28/drivers/ar6000/include/dl_list.h
 +}
 +
 +#endif /* __DL_LIST_H___ */
-Index: linux-2.6.28/drivers/ar6000/include/dset_api.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/dset_api.h     2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/dset_api.h
 @@ -0,0 +1,63 @@
 +/*
 + * Copyright (c) 2004-2006 Atheros Communications Inc.
@@ -64645,10 +63987,8 @@ Index: linux-2.6.28/drivers/ar6000/include/dset_api.h
 +
 +
 +#endif /* _DSET_API_H_ */
-Index: linux-2.6.28/drivers/ar6000/include/dsetid.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/dsetid.h       2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/dsetid.h
 @@ -0,0 +1,110 @@
 +/*
 + * Copyright (c) 2004-2007 Atheros Communications Inc.
@@ -64760,10 +64100,8 @@ Index: linux-2.6.28/drivers/ar6000/include/dsetid.h
 +#define DSETID_BPATCH_FLAG                0x80000000
 +
 +#endif /* __DSETID_H__ */
-Index: linux-2.6.28/drivers/ar6000/include/dset_internal.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/dset_internal.h        2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/dset_internal.h
 @@ -0,0 +1,39 @@
 +/*
 + * Copyright (c) 2007 Atheros Communications Inc.
@@ -64804,10 +64142,8 @@ Index: linux-2.6.28/drivers/ar6000/include/dset_internal.h
 +} dset_descriptor_t;
 +
 +#endif /* __DSET_INTERNAL_H__ */
-Index: linux-2.6.28/drivers/ar6000/include/gpio_api.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/gpio_api.h     2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/gpio_api.h
 @@ -0,0 +1,57 @@
 +#ifndef _GPIO_API_H_
 +#define _GPIO_API_H_
@@ -64866,10 +64202,8 @@ Index: linux-2.6.28/drivers/ar6000/include/gpio_api.h
 +A_STATUS wmi_gpio_intr_ack(struct wmi_t *wmip, A_UINT32 ack_mask);
 +
 +#endif /* _GPIO_API_H_ */
-Index: linux-2.6.28/drivers/ar6000/include/gpio.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/gpio.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/gpio.h
 @@ -0,0 +1,34 @@
 +/*
 + * Copyright (c) 2005 Atheros Communications Inc.
@@ -64905,10 +64239,8 @@ Index: linux-2.6.28/drivers/ar6000/include/gpio.h
 +
 +#define GPIO_LAST_REGISTER_ID   GPIO_ID_PIN(17)
 +#define GPIO_ID_NONE            0xffffffff
-Index: linux-2.6.28/drivers/ar6000/include/hif.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/hif.h  2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/hif.h
 @@ -0,0 +1,296 @@
 +/*
 + * Copyright (c) 2004-2007 Atheros Communications Inc.
@@ -65206,10 +64538,8 @@ Index: linux-2.6.28/drivers/ar6000/include/hif.h
 +#endif
 +
 +#endif /* _HIF_H_ */
-Index: linux-2.6.28/drivers/ar6000/include/host_version.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/host_version.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/host_version.h
 @@ -0,0 +1,49 @@
 +#ifndef _HOST_VERSION_H_
 +#define _HOST_VERSION_H_
@@ -65260,10 +64590,8 @@ Index: linux-2.6.28/drivers/ar6000/include/host_version.h
 +#endif
 +
 +#endif /* _HOST_VERSION_H_ */
-Index: linux-2.6.28/drivers/ar6000/include/htc_api.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/htc_api.h      2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/htc_api.h
 @@ -0,0 +1,436 @@
 +/*
 + *
@@ -65701,10 +65029,8 @@ Index: linux-2.6.28/drivers/ar6000/include/htc_api.h
 +#endif
 +
 +#endif /* _HTC_API_H_ */
-Index: linux-2.6.28/drivers/ar6000/include/htc.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/htc.h  2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/htc.h
 @@ -0,0 +1,190 @@
 +/*
 + * Copyright (c) 2007 Atheros Communications Inc.
@@ -65896,10 +65222,8 @@ Index: linux-2.6.28/drivers/ar6000/include/htc.h
 +
 +#endif /* __HTC_H__ */
 +
-Index: linux-2.6.28/drivers/ar6000/include/htc_packet.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/htc_packet.h   2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/htc_packet.h
 @@ -0,0 +1,138 @@
 +/*
 + *
@@ -66039,10 +65363,8 @@ Index: linux-2.6.28/drivers/ar6000/include/htc_packet.h
 +}
 +
 +#endif /*HTC_PACKET_H_*/
-Index: linux-2.6.28/drivers/ar6000/include/htc_services.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/htc_services.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/htc_services.h
 @@ -0,0 +1,37 @@
 +/*
 + * Copyright (c) 2007 Atheros Communications Inc.
@@ -66081,10 +65403,8 @@ Index: linux-2.6.28/drivers/ar6000/include/htc_services.h
 +#define HTC_RAW_STREAMS_SVC MAKE_SERVICE_ID(HTC_TEST_GROUP,0)
 +
 +#endif /*HTC_SERVICES_H_*/
-Index: linux-2.6.28/drivers/ar6000/include/ieee80211.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/ieee80211.h    2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/ieee80211.h
 @@ -0,0 +1,342 @@
 +/*-
 + * Copyright (c) 2001 Atsushi Onoe
@@ -66428,10 +65748,8 @@ Index: linux-2.6.28/drivers/ar6000/include/ieee80211.h
 +#include "athendpack.h"
 +
 +#endif /* _NET80211_IEEE80211_H_ */
-Index: linux-2.6.28/drivers/ar6000/include/ieee80211_ioctl.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/ieee80211_ioctl.h      2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/ieee80211_ioctl.h
 @@ -0,0 +1,163 @@
 +/*
 + * Copyright (c) 2004-2005 Atheros Communications Inc.
@@ -66596,10 +65914,8 @@ Index: linux-2.6.28/drivers/ar6000/include/ieee80211_ioctl.h
 +#endif
 +
 +#endif /* _IEEE80211_IOCTL_H_ */
-Index: linux-2.6.28/drivers/ar6000/include/ieee80211_node.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/ieee80211_node.h       2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/ieee80211_node.h
 @@ -0,0 +1,77 @@
 +/*-
 + * Copyright (c) 2001 Atsushi Onoe
@@ -66678,10 +65994,8 @@ Index: linux-2.6.28/drivers/ar6000/include/ieee80211_node.h
 +#define WLAN_NODE_INACT_TIMEOUT_MSEC            10000
 +
 +#endif /* _IEEE80211_NODE_H_ */
-Index: linux-2.6.28/drivers/ar6000/include/ini_dset.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/ini_dset.h     2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/ini_dset.h
 @@ -0,0 +1,40 @@
 +/*
 + * Copyright (c) 2004-2007 Atheros Communications Inc.
@@ -66723,10 +66037,8 @@ Index: linux-2.6.28/drivers/ar6000/include/ini_dset.h
 +} POSTPACK INI_DSET_REG_OVERRIDE;
 +
 +#endif
-Index: linux-2.6.28/drivers/ar6000/include/regDb.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/regDb.h        2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/regDb.h
 @@ -0,0 +1,19 @@
 +/*
 + * Copyright (c) 2005 Atheros Communications, Inc.
@@ -66747,10 +66059,8 @@ Index: linux-2.6.28/drivers/ar6000/include/regDb.h
 +#include "./regulatory/reg_dbvalues.h"
 +
 +#endif  /* __REG_DB_H__ */
-Index: linux-2.6.28/drivers/ar6000/include/regdump.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/regdump.h      2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/regdump.h
 @@ -0,0 +1,33 @@
 +#ifndef __REGDUMP_H__
 +#define __REGDUMP_H__
@@ -66785,10 +66095,8 @@ Index: linux-2.6.28/drivers/ar6000/include/regdump.h
 +};
 +#endif /* __ASSEMBLER__ */
 +#endif /* __REGDUMP_H__ */
-Index: linux-2.6.28/drivers/ar6000/include/targaddrs.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/targaddrs.h    2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/targaddrs.h
 @@ -0,0 +1,158 @@
 +/*
 + * Copyright (c) 2004-2007 Atheros Communications Inc.
@@ -66948,10 +66256,8 @@ Index: linux-2.6.28/drivers/ar6000/include/targaddrs.h
 +#endif /* !__ASSEMBLER__ */
 +
 +#endif /* __TARGADDRS_H__ */
-Index: linux-2.6.28/drivers/ar6000/include/testcmd.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/testcmd.h      2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/testcmd.h
 @@ -0,0 +1,144 @@
 +/*
 + * Copyright (c) 2004-2005 Atheros Communications Inc.
@@ -67097,10 +66403,8 @@ Index: linux-2.6.28/drivers/ar6000/include/testcmd.h
 +#endif
 +
 +#endif /* TESTCMD_H_ */
-Index: linux-2.6.28/drivers/ar6000/include/wlan_api.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/wlan_api.h     2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/wlan_api.h
 @@ -0,0 +1,101 @@
 +#ifndef _HOST_WLAN_API_H_
 +#define _HOST_WLAN_API_H_
@@ -67203,10 +66507,8 @@ Index: linux-2.6.28/drivers/ar6000/include/wlan_api.h
 +#endif
 +
 +#endif /* _HOST_WLAN_API_H_ */
-Index: linux-2.6.28/drivers/ar6000/include/wlan_dset.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/wlan_dset.h    2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/wlan_dset.h
 @@ -0,0 +1,20 @@
 +/*
 + * Copyright (c) 2007 Atheros Communications, Inc.
@@ -67228,10 +66530,8 @@ Index: linux-2.6.28/drivers/ar6000/include/wlan_dset.h
 +} POSTPACK WOW_CONFIG_DSET;
 +
 +#endif
-Index: linux-2.6.28/drivers/ar6000/include/wmi_api.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/wmi_api.h      2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/wmi_api.h
 @@ -0,0 +1,260 @@
 +#ifndef _WMI_API_H_
 +#define _WMI_API_H_
@@ -67493,10 +66793,8 @@ Index: linux-2.6.28/drivers/ar6000/include/wmi_api.h
 +#endif
 +
 +#endif /* _WMI_API_H_ */
-Index: linux-2.6.28/drivers/ar6000/include/wmi.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/wmi.h  2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/wmi.h
 @@ -0,0 +1,1743 @@
 +/*
 + * Copyright (c) 2004-2006 Atheros Communications Inc.
@@ -69241,10 +68539,8 @@ Index: linux-2.6.28/drivers/ar6000/include/wmi.h
 +#endif
 +
 +#endif /* _WMI_H_ */
-Index: linux-2.6.28/drivers/ar6000/include/wmix.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/wmix.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/wmix.h
 @@ -0,0 +1,233 @@
 +/*
 + * Copyright (c) 2004-2005 Atheros Communications Inc.
@@ -69479,10 +68775,8 @@ Index: linux-2.6.28/drivers/ar6000/include/wmix.h
 +#endif
 +
 +#endif /* _WMIX_H_ */
-Index: linux-2.6.28/drivers/ar6000/Kconfig
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/Kconfig        2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/Kconfig
 @@ -0,0 +1,7 @@
 +config AR6000_WLAN
 +        tristate "AR6000 wireless networking over SDIO"
@@ -69491,10 +68785,8 @@ Index: linux-2.6.28/drivers/ar6000/Kconfig
 +        default m
 +        help
 +          good luck.
-Index: linux-2.6.28/drivers/ar6000/Makefile
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/Makefile       2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/Makefile
 @@ -0,0 +1,38 @@
 +REV ?= 2
 +
@@ -69534,10 +68826,8 @@ Index: linux-2.6.28/drivers/ar6000/Makefile
 +               wlan/wlan_utils.o
 +
 +
-Index: linux-2.6.28/drivers/ar6000/miscdrv/common_drv.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/miscdrv/common_drv.c   2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/miscdrv/common_drv.c
 @@ -0,0 +1,467 @@
 +
 +/*
@@ -70006,10 +69296,8 @@ Index: linux-2.6.28/drivers/ar6000/miscdrv/common_drv.c
 +
 +}
 +
-Index: linux-2.6.28/drivers/ar6000/miscdrv/credit_dist.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/miscdrv/credit_dist.c  2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/miscdrv/credit_dist.c
 @@ -0,0 +1,346 @@
 +
 +/*
@@ -70357,10 +69645,8 @@ Index: linux-2.6.28/drivers/ar6000/miscdrv/credit_dist.c
 +    return A_OK;
 +}
 +
-Index: linux-2.6.28/drivers/ar6000/wlan/wlan_node.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/wlan/wlan_node.c       2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/wlan/wlan_node.c
 @@ -0,0 +1,371 @@
 +/*-
 + * Copyright (c) 2001 Atsushi Onoe
@@ -70733,10 +70019,8 @@ Index: linux-2.6.28/drivers/ar6000/wlan/wlan_node.c
 +      wlan_node_dec_free (ni);
 +      IEEE80211_NODE_UNLOCK (nt);
 +}
-Index: linux-2.6.28/drivers/ar6000/wlan/wlan_recv_beacon.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/wlan/wlan_recv_beacon.c        2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/wlan/wlan_recv_beacon.c
 @@ -0,0 +1,192 @@
 +/*-
 + * Copyright (c) 2001 Atsushi Onoe
@@ -70930,10 +70214,8 @@ Index: linux-2.6.28/drivers/ar6000/wlan/wlan_recv_beacon.c
 +
 +    return A_OK;
 +}
-Index: linux-2.6.28/drivers/ar6000/wlan/wlan_utils.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/wlan/wlan_utils.c      2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/wlan/wlan_utils.c
 @@ -0,0 +1,59 @@
 +/*
 + * Copyright (c) 2004-2005 Atheros Communications Inc.
@@ -70994,10 +70276,8 @@ Index: linux-2.6.28/drivers/ar6000/wlan/wlan_utils.c
 +        return 15 + ((freq - 2512) / 20);
 +    return (freq - 5000) / 5;
 +}
-Index: linux-2.6.28/drivers/ar6000/wmi/wmi.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/wmi/wmi.c      2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/wmi/wmi.c
 @@ -0,0 +1,3954 @@
 +/*
 + * Copyright (c) 2004-2007 Atheros Communications Inc.
@@ -74953,10 +74233,8 @@ Index: linux-2.6.28/drivers/ar6000/wmi/wmi.c
 +                         NO_SYNC_WMIFLAG));
 +}
 +
-Index: linux-2.6.28/drivers/ar6000/wmi/wmi_doc.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/wmi/wmi_doc.h  2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/wmi/wmi_doc.h
 @@ -0,0 +1,4421 @@
 +/*
 + *
@@ -79379,10 +78657,8 @@ Index: linux-2.6.28/drivers/ar6000/wmi/wmi_doc.h
 +
 +=====================================================================
 +#endif
-Index: linux-2.6.28/drivers/ar6000/wmi/wmi_host.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/wmi/wmi_host.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/wmi/wmi_host.h
 @@ -0,0 +1,71 @@
 +#ifndef _WMI_HOST_H_
 +#define _WMI_HOST_H_
@@ -79455,11 +78731,9 @@ Index: linux-2.6.28/drivers/ar6000/wmi/wmi_host.h
 +#endif
 +
 +#endif /* _WMI_HOST_H_ */
-Index: linux-2.6.28/drivers/base/bus.c
-===================================================================
---- linux-2.6.28.orig/drivers/base/bus.c       2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/base/bus.c    2009-01-02 00:01:56.000000000 +0100
-@@ -141,6 +141,29 @@ void bus_remove_file(struct bus_type *bu
+--- a/drivers/base/bus.c
++++ b/drivers/base/bus.c
+@@ -141,6 +141,29 @@
  }
  EXPORT_SYMBOL_GPL(bus_remove_file);
  
@@ -79489,11 +78763,9 @@ Index: linux-2.6.28/drivers/base/bus.c
  static struct kobj_type bus_ktype = {
        .sysfs_ops      = &bus_sysfs_ops,
  };
-Index: linux-2.6.28/drivers/base/core.c
-===================================================================
---- linux-2.6.28.orig/drivers/base/core.c      2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/base/core.c   2009-01-02 00:01:56.000000000 +0100
-@@ -55,6 +55,11 @@ static inline int device_is_not_partitio
+--- a/drivers/base/core.c
++++ b/drivers/base/core.c
+@@ -55,6 +55,11 @@
   */
  const char *dev_driver_string(const struct device *dev)
  {
@@ -79505,11 +78777,9 @@ Index: linux-2.6.28/drivers/base/core.c
        return dev->driver ? dev->driver->name :
                        (dev->bus ? dev->bus->name :
                        (dev->class ? dev->class->name : ""));
-Index: linux-2.6.28/drivers/base/power/main.c
-===================================================================
---- linux-2.6.28.orig/drivers/base/power/main.c        2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/base/power/main.c     2009-01-02 00:01:56.000000000 +0100
-@@ -69,9 +69,9 @@ void device_pm_unlock(void)
+--- a/drivers/base/power/main.c
++++ b/drivers/base/power/main.c
+@@ -69,9 +69,9 @@
   */
  void device_pm_add(struct device *dev)
  {
@@ -79521,11 +78791,9 @@ Index: linux-2.6.28/drivers/base/power/main.c
        mutex_lock(&dpm_list_mtx);
        if (dev->parent) {
                if (dev->parent->power.status >= DPM_SUSPENDING)
-Index: linux-2.6.28/drivers/char/Kconfig
-===================================================================
---- linux-2.6.28.orig/drivers/char/Kconfig     2009-01-02 00:00:02.000000000 +0100
-+++ linux-2.6.28/drivers/char/Kconfig  2009-01-02 00:01:56.000000000 +0100
-@@ -66,6 +66,18 @@ config VT_CONSOLE
+--- a/drivers/char/Kconfig
++++ b/drivers/char/Kconfig
+@@ -66,6 +66,18 @@
  
          If unsure, say Y.
  
@@ -79544,10 +78812,8 @@ Index: linux-2.6.28/drivers/char/Kconfig
  config HW_CONSOLE
        bool
        depends on VT && !S390 && !UML
-Index: linux-2.6.28/drivers/gpio/gpiolib.c
-===================================================================
---- linux-2.6.28.orig/drivers/gpio/gpiolib.c   2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/gpio/gpiolib.c        2009-01-02 00:01:56.000000000 +0100
+--- a/drivers/gpio/gpiolib.c
++++ b/drivers/gpio/gpiolib.c
 @@ -6,8 +6,7 @@
  #include <linux/err.h>
  #include <linux/debugfs.h>
@@ -79558,10 +78824,8 @@ Index: linux-2.6.28/drivers/gpio/gpiolib.c
  
  /* Optional implementation infrastructure for GPIO interfaces.
   *
-Index: linux-2.6.28/drivers/i2c/busses/i2c-s3c2410.c
-===================================================================
---- linux-2.6.28.orig/drivers/i2c/busses/i2c-s3c2410.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/i2c/busses/i2c-s3c2410.c      2009-01-02 00:51:37.000000000 +0100
+--- a/drivers/i2c/busses/i2c-s3c2410.c
++++ b/drivers/i2c/busses/i2c-s3c2410.c
 @@ -34,14 +34,12 @@
  #include <linux/platform_device.h>
  #include <linux/clk.h>
@@ -79580,7 +78844,7 @@ Index: linux-2.6.28/drivers/i2c/busses/i2c-s3c2410.c
  
  /* i2c controller state */
  
-@@ -64,6 +62,7 @@ struct s3c24xx_i2c {
+@@ -64,6 +62,7 @@
        unsigned int            msg_ptr;
  
        unsigned int            tx_setup;
@@ -79588,7 +78852,7 @@ Index: linux-2.6.28/drivers/i2c/busses/i2c-s3c2410.c
  
        enum s3c24xx_i2c_state  state;
        unsigned long           clkrate;
-@@ -71,7 +70,6 @@ struct s3c24xx_i2c {
+@@ -71,7 +70,6 @@
        void __iomem            *regs;
        struct clk              *clk;
        struct device           *dev;
@@ -79596,7 +78860,7 @@ Index: linux-2.6.28/drivers/i2c/busses/i2c-s3c2410.c
        struct resource         *ioarea;
        struct i2c_adapter      adap;
  
-@@ -80,16 +78,7 @@ struct s3c24xx_i2c {
+@@ -80,16 +78,7 @@
  #endif
  };
  
@@ -79614,7 +78878,7 @@ Index: linux-2.6.28/drivers/i2c/busses/i2c-s3c2410.c
  
  /* s3c24xx_i2c_is2440()
   *
-@@ -103,21 +92,6 @@ static inline int s3c24xx_i2c_is2440(str
+@@ -103,21 +92,6 @@
        return !strcmp(pdev->name, "s3c2440-i2c");
  }
  
@@ -79636,7 +78900,7 @@ Index: linux-2.6.28/drivers/i2c/busses/i2c-s3c2410.c
  /* s3c24xx_i2c_master_complete
   *
   * complete the message and wake up the caller, using the given return code,
-@@ -130,7 +104,7 @@ static inline void s3c24xx_i2c_master_co
+@@ -130,7 +104,7 @@
  
        i2c->msg_ptr = 0;
        i2c->msg = NULL;
@@ -79645,7 +78909,7 @@ Index: linux-2.6.28/drivers/i2c/busses/i2c-s3c2410.c
        i2c->msg_num = 0;
        if (ret)
                i2c->msg_idx = ret;
-@@ -141,19 +115,17 @@ static inline void s3c24xx_i2c_master_co
+@@ -141,19 +115,17 @@
  static inline void s3c24xx_i2c_disable_ack(struct s3c24xx_i2c *i2c)
  {
        unsigned long tmp;
@@ -79667,7 +78931,7 @@ Index: linux-2.6.28/drivers/i2c/busses/i2c-s3c2410.c
  }
  
  /* irq enable/disable functions */
-@@ -161,15 +133,23 @@ static inline void s3c24xx_i2c_enable_ac
+@@ -161,15 +133,23 @@
  static inline void s3c24xx_i2c_disable_irq(struct s3c24xx_i2c *i2c)
  {
        unsigned long tmp;
@@ -79693,7 +78957,7 @@ Index: linux-2.6.28/drivers/i2c/busses/i2c-s3c2410.c
        tmp = readl(i2c->regs + S3C2410_IICCON);
        writel(tmp | S3C2410_IICCON_IRQEN, i2c->regs + S3C2410_IICCON);
  }
-@@ -177,10 +157,10 @@ static inline void s3c24xx_i2c_enable_ir
+@@ -177,10 +157,10 @@
  
  /* s3c24xx_i2c_message_start
   *
@@ -79706,7 +78970,7 @@ Index: linux-2.6.28/drivers/i2c/busses/i2c-s3c2410.c
                                      struct i2c_msg *msg)
  {
        unsigned int addr = (msg->addr & 0x7f) << 1;
-@@ -199,15 +179,15 @@ static void s3c24xx_i2c_message_start(st
+@@ -199,15 +179,15 @@
        if (msg->flags & I2C_M_REV_DIR_ADDR)
                addr ^= 1;
  
@@ -79725,7 +78989,7 @@ Index: linux-2.6.28/drivers/i2c/busses/i2c-s3c2410.c
        /* delay here to ensure the data byte has gotten onto the bus
         * before the transaction is started */
  
-@@ -215,8 +195,8 @@ static void s3c24xx_i2c_message_start(st
+@@ -215,8 +195,8 @@
  
        dev_dbg(i2c->dev, "iiccon, %08lx\n", iiccon);
        writel(iiccon, i2c->regs + S3C2410_IICCON);
@@ -79736,7 +79000,7 @@ Index: linux-2.6.28/drivers/i2c/busses/i2c-s3c2410.c
        writel(stat, i2c->regs + S3C2410_IICSTAT);
  }
  
-@@ -227,11 +207,11 @@ static inline void s3c24xx_i2c_stop(stru
+@@ -227,11 +207,11 @@
        dev_dbg(i2c->dev, "STOP\n");
  
        /* stop the transfer */
@@ -79751,7 +79015,7 @@ Index: linux-2.6.28/drivers/i2c/busses/i2c-s3c2410.c
        s3c24xx_i2c_master_complete(i2c, ret);
        s3c24xx_i2c_disable_irq(i2c);
  }
-@@ -241,7 +221,7 @@ static inline void s3c24xx_i2c_stop(stru
+@@ -241,7 +221,7 @@
  
  /* is_lastmsg()
   *
@@ -79760,7 +79024,7 @@ Index: linux-2.6.28/drivers/i2c/busses/i2c-s3c2410.c
  */
  
  static inline int is_lastmsg(struct s3c24xx_i2c *i2c)
-@@ -289,14 +269,14 @@ static int i2s_s3c_irq_nextbyte(struct s
+@@ -289,14 +269,14 @@
  
        case STATE_STOP:
                dev_err(i2c->dev, "%s: called in STATE_STOP\n", __func__);
@@ -79777,7 +79041,7 @@ Index: linux-2.6.28/drivers/i2c/busses/i2c-s3c2410.c
                if (iicstat & S3C2410_IICSTAT_LASTBIT &&
                    !(i2c->msg->flags & I2C_M_IGNORE_NAK)) {
                        /* ack was not received... */
-@@ -322,7 +302,7 @@ static int i2s_s3c_irq_nextbyte(struct s
+@@ -322,7 +302,7 @@
                if (i2c->state == STATE_READ)
                        goto prepare_read;
  
@@ -79786,7 +79050,7 @@ Index: linux-2.6.28/drivers/i2c/busses/i2c-s3c2410.c
                 * send a byte as well */
  
        case STATE_WRITE:
-@@ -339,7 +319,7 @@ static int i2s_s3c_irq_nextbyte(struct s
+@@ -339,7 +319,7 @@
                        }
                }
  
@@ -79795,7 +79059,7 @@ Index: linux-2.6.28/drivers/i2c/busses/i2c-s3c2410.c
  
                if (!is_msgend(i2c)) {
                        byte = i2c->msg->buf[i2c->msg_ptr++];
-@@ -359,9 +339,9 @@ static int i2s_s3c_irq_nextbyte(struct s
+@@ -359,9 +339,9 @@
                        dev_dbg(i2c->dev, "WRITE: Next Message\n");
  
                        i2c->msg_ptr = 0;
@@ -79807,7 +79071,7 @@ Index: linux-2.6.28/drivers/i2c/busses/i2c-s3c2410.c
                        /* check to see if we need to do another message */
                        if (i2c->msg->flags & I2C_M_NOSTART) {
  
-@@ -375,7 +355,6 @@ static int i2s_s3c_irq_nextbyte(struct s
+@@ -375,7 +355,6 @@
  
                                goto retry_write;
                        } else {
@@ -79815,7 +79079,7 @@ Index: linux-2.6.28/drivers/i2c/busses/i2c-s3c2410.c
                                /* send the new start */
                                s3c24xx_i2c_message_start(i2c, i2c->msg);
                                i2c->state = STATE_START;
-@@ -389,7 +368,7 @@ static int i2s_s3c_irq_nextbyte(struct s
+@@ -389,7 +368,7 @@
                break;
  
        case STATE_READ:
@@ -79824,7 +79088,7 @@ Index: linux-2.6.28/drivers/i2c/busses/i2c-s3c2410.c
                 * something with it, and then work out wether we are
                 * going to do any more read/write
                 */
-@@ -397,13 +376,13 @@ static int i2s_s3c_irq_nextbyte(struct s
+@@ -397,13 +376,13 @@
                byte = readb(i2c->regs + S3C2410_IICDS);
                i2c->msg->buf[i2c->msg_ptr++] = byte;
  
@@ -79840,7 +79104,7 @@ Index: linux-2.6.28/drivers/i2c/busses/i2c-s3c2410.c
                } else if (is_msgend(i2c)) {
                        /* ok, we've read the entire buffer, see if there
                         * is anything else we need to do */
-@@ -429,7 +408,7 @@ static int i2s_s3c_irq_nextbyte(struct s
+@@ -429,7 +408,7 @@
        /* acknowlegde the IRQ and get back on with the work */
  
   out_ack:
@@ -79849,7 +79113,7 @@ Index: linux-2.6.28/drivers/i2c/busses/i2c-s3c2410.c
        tmp &= ~S3C2410_IICCON_IRQPEND;
        writel(tmp, i2c->regs + S3C2410_IICCON);
   out:
-@@ -450,19 +429,19 @@ static irqreturn_t s3c24xx_i2c_irq(int i
+@@ -450,19 +429,19 @@
        status = readl(i2c->regs + S3C2410_IICSTAT);
  
        if (status & S3C2410_IICSTAT_ARBITR) {
@@ -79872,7 +79136,7 @@ Index: linux-2.6.28/drivers/i2c/busses/i2c-s3c2410.c
        /* pretty much this leaves us with the fact that we've
         * transmitted or received whatever byte we last sent */
  
-@@ -485,16 +464,13 @@ static int s3c24xx_i2c_set_master(struct
+@@ -485,16 +464,13 @@
  
        while (timeout-- > 0) {
                iicstat = readl(i2c->regs + S3C2410_IICSTAT);
@@ -79890,7 +79154,7 @@ Index: linux-2.6.28/drivers/i2c/busses/i2c-s3c2410.c
        return -ETIMEDOUT;
  }
  
-@@ -503,7 +479,8 @@ static int s3c24xx_i2c_set_master(struct
+@@ -503,7 +479,8 @@
   * this starts an i2c transfer
  */
  
@@ -79900,7 +79164,7 @@ Index: linux-2.6.28/drivers/i2c/busses/i2c-s3c2410.c
  {
        unsigned long timeout;
        int ret;
-@@ -511,6 +488,15 @@ static int s3c24xx_i2c_doxfer(struct s3c
+@@ -511,6 +488,15 @@
        if (i2c->suspended)
                return -EIO;
  
@@ -79916,7 +79180,7 @@ Index: linux-2.6.28/drivers/i2c/busses/i2c-s3c2410.c
        ret = s3c24xx_i2c_set_master(i2c);
        if (ret != 0) {
                dev_err(i2c->dev, "cannot get bus (error %d)\n", ret);
-@@ -529,12 +515,12 @@ static int s3c24xx_i2c_doxfer(struct s3c
+@@ -529,12 +515,12 @@
        s3c24xx_i2c_enable_irq(i2c);
        s3c24xx_i2c_message_start(i2c, msgs);
        spin_unlock_irq(&i2c->lock);
@@ -79931,7 +79195,7 @@ Index: linux-2.6.28/drivers/i2c/busses/i2c-s3c2410.c
         * noisy when doing an i2cdetect */
  
        if (timeout == 0)
-@@ -591,19 +577,6 @@ static const struct i2c_algorithm s3c24x
+@@ -591,19 +577,6 @@
        .functionality          = s3c24xx_i2c_func,
  };
  
@@ -79951,7 +79215,7 @@ Index: linux-2.6.28/drivers/i2c/busses/i2c-s3c2410.c
  /* s3c24xx_i2c_calcdivisor
   *
   * return the divisor settings for a given frequency
-@@ -643,7 +616,7 @@ static inline int freq_acceptable(unsign
+@@ -643,7 +616,7 @@
  {
        int diff = freq - wanted;
  
@@ -79960,7 +79224,7 @@ Index: linux-2.6.28/drivers/i2c/busses/i2c-s3c2410.c
  }
  
  /* s3c24xx_i2c_clockrate
-@@ -655,7 +628,7 @@ static inline int freq_acceptable(unsign
+@@ -655,7 +628,7 @@
  
  static int s3c24xx_i2c_clockrate(struct s3c24xx_i2c *i2c, unsigned int *got)
  {
@@ -79969,7 +79233,7 @@ Index: linux-2.6.28/drivers/i2c/busses/i2c-s3c2410.c
        unsigned long clkin = clk_get_rate(i2c->clk);
        unsigned int divs, div1;
        u32 iiccon;
-@@ -663,10 +636,8 @@ static int s3c24xx_i2c_clockrate(struct 
+@@ -663,10 +636,8 @@
        int start, end;
  
        i2c->clkrate = clkin;
@@ -79981,7 +79245,7 @@ Index: linux-2.6.28/drivers/i2c/busses/i2c-s3c2410.c
        dev_dbg(i2c->dev, "pdata %p, freq %lu %lu..%lu\n",
                 pdata, pdata->bus_freq, pdata->min_freq, pdata->max_freq);
  
-@@ -774,7 +745,7 @@ static inline void s3c24xx_i2c_deregiste
+@@ -774,7 +745,7 @@
  
  /* s3c24xx_i2c_init
   *
@@ -79990,7 +79254,7 @@ Index: linux-2.6.28/drivers/i2c/busses/i2c-s3c2410.c
  */
  
  static int s3c24xx_i2c_init(struct s3c24xx_i2c *i2c)
-@@ -785,15 +756,15 @@ static int s3c24xx_i2c_init(struct s3c24
+@@ -785,15 +756,15 @@
  
        /* get the plafrom data */
  
@@ -80010,7 +79274,7 @@ Index: linux-2.6.28/drivers/i2c/busses/i2c-s3c2410.c
        writeb(pdata->slave_addr, i2c->regs + S3C2410_IICADD);
  
        dev_info(i2c->dev, "slave address 0x%02x\n", pdata->slave_addr);
-@@ -831,12 +802,32 @@ static int s3c24xx_i2c_init(struct s3c24
+@@ -831,12 +802,32 @@
  
  static int s3c24xx_i2c_probe(struct platform_device *pdev)
  {
@@ -80045,7 +79309,7 @@ Index: linux-2.6.28/drivers/i2c/busses/i2c-s3c2410.c
  
        /* find the clock and enable it */
  
-@@ -878,7 +869,8 @@ static int s3c24xx_i2c_probe(struct plat
+@@ -878,7 +869,8 @@
                goto err_ioarea;
        }
  
@@ -80055,7 +79319,7 @@ Index: linux-2.6.28/drivers/i2c/busses/i2c-s3c2410.c
  
        /* setup info block for the i2c core */
  
-@@ -892,29 +884,23 @@ static int s3c24xx_i2c_probe(struct plat
+@@ -892,29 +884,23 @@
                goto err_iomap;
  
        /* find the IRQ for this unit (note, this relies on the init call to
@@ -80091,7 +79355,7 @@ Index: linux-2.6.28/drivers/i2c/busses/i2c-s3c2410.c
        ret = s3c24xx_i2c_register_cpufreq(i2c);
        if (ret < 0) {
                dev_err(&pdev->dev, "failed to register cpufreq notifier\n");
-@@ -944,7 +930,7 @@ static int s3c24xx_i2c_probe(struct plat
+@@ -944,7 +930,7 @@
        s3c24xx_i2c_deregister_cpufreq(i2c);
  
   err_irq:
@@ -80100,7 +79364,7 @@ Index: linux-2.6.28/drivers/i2c/busses/i2c-s3c2410.c
  
   err_iomap:
        iounmap(i2c->regs);
-@@ -958,6 +944,7 @@ static int s3c24xx_i2c_probe(struct plat
+@@ -958,6 +944,7 @@
        clk_put(i2c->clk);
  
   err_noclk:
@@ -80108,7 +79372,7 @@ Index: linux-2.6.28/drivers/i2c/busses/i2c-s3c2410.c
        return ret;
  }
  
-@@ -973,7 +960,7 @@ static int s3c24xx_i2c_remove(struct pla
+@@ -973,7 +960,7 @@
        s3c24xx_i2c_deregister_cpufreq(i2c);
  
        i2c_del_adapter(&i2c->adap);
@@ -80117,7 +79381,7 @@ Index: linux-2.6.28/drivers/i2c/busses/i2c-s3c2410.c
  
        clk_disable(i2c->clk);
        clk_put(i2c->clk);
-@@ -982,6 +969,7 @@ static int s3c24xx_i2c_remove(struct pla
+@@ -982,6 +969,7 @@
  
        release_resource(i2c->ioarea);
        kfree(i2c->ioarea);
@@ -80125,11 +79389,9 @@ Index: linux-2.6.28/drivers/i2c/busses/i2c-s3c2410.c
  
        return 0;
  }
-Index: linux-2.6.28/drivers/i2c/busses/Kconfig
-===================================================================
---- linux-2.6.28.orig/drivers/i2c/busses/Kconfig       2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/i2c/busses/Kconfig    2009-01-02 00:01:56.000000000 +0100
-@@ -455,11 +455,12 @@ config I2C_PXA_SLAVE
+--- a/drivers/i2c/busses/Kconfig
++++ b/drivers/i2c/busses/Kconfig
+@@ -455,11 +455,12 @@
          I2C bus.
  
  config I2C_S3C2410
@@ -80145,11 +79407,9 @@ Index: linux-2.6.28/drivers/i2c/busses/Kconfig
  
  config I2C_SH7760
        tristate "Renesas SH7760 I2C Controller"
-Index: linux-2.6.28/drivers/i2c/chips/Kconfig
-===================================================================
---- linux-2.6.28.orig/drivers/i2c/chips/Kconfig        2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/i2c/chips/Kconfig     2009-01-02 00:01:56.000000000 +0100
-@@ -53,6 +53,26 @@ config SENSORS_EEPROM
+--- a/drivers/i2c/chips/Kconfig
++++ b/drivers/i2c/chips/Kconfig
+@@ -53,6 +53,26 @@
          This driver can also be built as a module.  If so, the module
          will be called eeprom.
  
@@ -80176,7 +79436,7 @@ Index: linux-2.6.28/drivers/i2c/chips/Kconfig
  config SENSORS_PCF8574
        tristate "Philips PCF8574 and PCF8574A (DEPRECATED)"
        depends on EXPERIMENTAL && GPIO_PCF857X = "n"
-@@ -185,4 +205,23 @@ config MCU_MPC8349EMITX
+@@ -185,4 +205,23 @@
          also register MCU GPIOs with the generic GPIO API, so you'll able
          to use MCU pins as GPIOs.
  
@@ -80200,11 +79460,9 @@ Index: linux-2.6.28/drivers/i2c/chips/Kconfig
 +        This driver can also be built as a module.  If so, the module
 +        will be called pca9632.
  endmenu
-Index: linux-2.6.28/drivers/i2c/chips/Makefile
-===================================================================
---- linux-2.6.28.orig/drivers/i2c/chips/Makefile       2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/i2c/chips/Makefile    2009-01-02 00:01:56.000000000 +0100
-@@ -15,6 +15,8 @@ obj-$(CONFIG_AT24)           += at24.o
+--- a/drivers/i2c/chips/Makefile
++++ b/drivers/i2c/chips/Makefile
+@@ -15,6 +15,8 @@
  obj-$(CONFIG_SENSORS_EEPROM)  += eeprom.o
  obj-$(CONFIG_SENSORS_MAX6875) += max6875.o
  obj-$(CONFIG_SENSORS_PCA9539) += pca9539.o
@@ -80213,7 +79471,7 @@ Index: linux-2.6.28/drivers/i2c/chips/Makefile
  obj-$(CONFIG_SENSORS_PCF8574) += pcf8574.o
  obj-$(CONFIG_PCF8575)         += pcf8575.o
  obj-$(CONFIG_SENSORS_PCF8591) += pcf8591.o
-@@ -23,6 +25,8 @@ obj-$(CONFIG_TPS65010)               += tps65010.o
+@@ -23,6 +25,8 @@
  obj-$(CONFIG_MENELAUS)                += menelaus.o
  obj-$(CONFIG_SENSORS_TSL2550) += tsl2550.o
  obj-$(CONFIG_MCU_MPC8349EMITX)        += mcu_mpc8349emitx.o
@@ -80222,10 +79480,8 @@ Index: linux-2.6.28/drivers/i2c/chips/Makefile
  
  ifeq ($(CONFIG_I2C_DEBUG_CHIP),y)
  EXTRA_CFLAGS += -DDEBUG
-Index: linux-2.6.28/drivers/i2c/chips/pca9632.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/i2c/chips/pca9632.c   2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/i2c/chips/pca9632.c
 @@ -0,0 +1,551 @@
 +/*
 + *  Philips/NXP PCA9632 low power LED driver.
@@ -80778,10 +80034,8 @@ Index: linux-2.6.28/drivers/i2c/chips/pca9632.c
 +
 +module_init(pca9632_init);
 +module_exit(pca9632_exit);
-Index: linux-2.6.28/drivers/i2c/chips/pca9632.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/i2c/chips/pca9632.h   2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/i2c/chips/pca9632.h
 @@ -0,0 +1,24 @@
 +#ifndef _PCA9632_H
 +#define _PCA9632_H
@@ -80807,10 +80061,8 @@ Index: linux-2.6.28/drivers/i2c/chips/pca9632.h
 +#define PCA9632_DMBLNK_SHIFT  5
 +
 +#endif /* _PCA9632_H */
-Index: linux-2.6.28/drivers/i2c/chips/pcf50606.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/i2c/chips/pcf50606.c  2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/i2c/chips/pcf50606.c
 @@ -0,0 +1,2193 @@
 +/* Philips/NXP PCF50606 Power Management Unit (PMU) driver
 + *
@@ -83005,10 +82257,8 @@ Index: linux-2.6.28/drivers/i2c/chips/pcf50606.c
 +
 +module_init(pcf50606_init);
 +module_exit(pcf50606_exit);
-Index: linux-2.6.28/drivers/i2c/chips/pcf50606.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/i2c/chips/pcf50606.h  2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/i2c/chips/pcf50606.h
 @@ -0,0 +1,302 @@
 +#ifndef _PCF50606_H
 +#define _PCF50606_H
@@ -83312,10 +82562,8 @@ Index: linux-2.6.28/drivers/i2c/chips/pcf50606.h
 +
 +#endif /* _PCF50606_H */
 +
-Index: linux-2.6.28/drivers/i2c/chips/pcf50633.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/i2c/chips/pcf50633.c  2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/i2c/chips/pcf50633.c
 @@ -0,0 +1,1883 @@
 +/* Philips PCF50633 Power Management Unit (PMU) driver
 + *
@@ -85200,16 +84448,14 @@ Index: linux-2.6.28/drivers/i2c/chips/pcf50633.c
 +
 +module_init(pcf50633_init);
 +module_exit(pcf50633_exit);
-Index: linux-2.6.28/drivers/i2c/i2c-core.c
-===================================================================
---- linux-2.6.28.orig/drivers/i2c/i2c-core.c   2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/i2c/i2c-core.c        2009-01-02 00:01:56.000000000 +0100
+--- a/drivers/i2c/i2c-core.c
++++ b/drivers/i2c/i2c-core.c
 @@ -1,4 +1,3 @@
 -/* i2c-core.c - a device driver for the iic-bus interface                  */
  /* ------------------------------------------------------------------------- */
  /*   Copyright (C) 1995-99 Simon G. Vogl
  
-@@ -158,10 +157,16 @@ static int i2c_device_suspend(struct dev
+@@ -158,10 +157,16 @@
  
        if (!dev->driver)
                return 0;
@@ -85226,7 +84472,7 @@ Index: linux-2.6.28/drivers/i2c/i2c-core.c
  }
  
  static int i2c_device_resume(struct device * dev)
-@@ -170,10 +175,16 @@ static int i2c_device_resume(struct devi
+@@ -170,10 +175,16 @@
  
        if (!dev->driver)
                return 0;
@@ -85243,7 +84489,7 @@ Index: linux-2.6.28/drivers/i2c/i2c-core.c
  }
  
  static void i2c_client_release(struct device *dev)
-@@ -1129,11 +1140,11 @@ static int i2c_probe_address(struct i2c_
+@@ -1129,11 +1140,11 @@
        int err;
  
        /* Make sure the address is valid */
@@ -85257,10 +84503,8 @@ Index: linux-2.6.28/drivers/i2c/i2c-core.c
  
        /* Skip if already in use */
        if (i2c_check_addr(adapter, addr))
-Index: linux-2.6.28/drivers/input/keyboard/gpio_keys.c
-===================================================================
---- linux-2.6.28.orig/drivers/input/keyboard/gpio_keys.c       2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/input/keyboard/gpio_keys.c    2009-01-02 00:01:56.000000000 +0100
+--- a/drivers/input/keyboard/gpio_keys.c
++++ b/drivers/input/keyboard/gpio_keys.c
 @@ -23,7 +23,7 @@
  #include <linux/input.h>
  #include <linux/gpio_keys.h>
@@ -85270,11 +84514,9 @@ Index: linux-2.6.28/drivers/input/keyboard/gpio_keys.c
  
  struct gpio_button_data {
        struct gpio_keys_button *button;
-Index: linux-2.6.28/drivers/input/keyboard/Kconfig
-===================================================================
---- linux-2.6.28.orig/drivers/input/keyboard/Kconfig   2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/input/keyboard/Kconfig        2009-01-02 00:01:56.000000000 +0100
-@@ -323,4 +323,21 @@ config KEYBOARD_SH_KEYSC
+--- a/drivers/input/keyboard/Kconfig
++++ b/drivers/input/keyboard/Kconfig
+@@ -323,4 +323,21 @@
  
          To compile this driver as a module, choose M here: the
          module will be called sh_keysc.
@@ -85296,11 +84538,9 @@ Index: linux-2.6.28/drivers/input/keyboard/Kconfig
 +
 +
  endif
-Index: linux-2.6.28/drivers/input/keyboard/Makefile
-===================================================================
---- linux-2.6.28.orig/drivers/input/keyboard/Makefile  2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/input/keyboard/Makefile       2009-01-02 00:01:56.000000000 +0100
-@@ -14,6 +14,8 @@ obj-$(CONFIG_KEYBOARD_LOCOMO)                += locomo
+--- a/drivers/input/keyboard/Makefile
++++ b/drivers/input/keyboard/Makefile
+@@ -14,6 +14,8 @@
  obj-$(CONFIG_KEYBOARD_NEWTON)         += newtonkbd.o
  obj-$(CONFIG_KEYBOARD_STOWAWAY)               += stowaway.o
  obj-$(CONFIG_KEYBOARD_CORGI)          += corgikbd.o
@@ -85309,10 +84549,8 @@ Index: linux-2.6.28/drivers/input/keyboard/Makefile
  obj-$(CONFIG_KEYBOARD_SPITZ)          += spitzkbd.o
  obj-$(CONFIG_KEYBOARD_TOSA)           += tosakbd.o
  obj-$(CONFIG_KEYBOARD_HIL)            += hil_kbd.o
-Index: linux-2.6.28/drivers/input/keyboard/neo1973kbd.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/input/keyboard/neo1973kbd.c   2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/input/keyboard/neo1973kbd.c
 @@ -0,0 +1,465 @@
 +/*
 + * Keyboard driver for FIC Neo1973 GSM phone
@@ -85779,10 +85017,8 @@ Index: linux-2.6.28/drivers/input/keyboard/neo1973kbd.c
 +MODULE_AUTHOR("Harald Welte <laforge@openmoko.org>");
 +MODULE_DESCRIPTION("FIC Neo1973 buttons input driver");
 +MODULE_LICENSE("GPL");
-Index: linux-2.6.28/drivers/input/keyboard/qt2410kbd.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/input/keyboard/qt2410kbd.c    2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/input/keyboard/qt2410kbd.c
 @@ -0,0 +1,231 @@
 +/*
 + * Keyboard driver for Armzone QT2410
@@ -86015,11 +85251,9 @@ Index: linux-2.6.28/drivers/input/keyboard/qt2410kbd.c
 +MODULE_AUTHOR("Harald Welte <laforge@openmoko.org>");
 +MODULE_DESCRIPTION("Armzone QT2410 Buttons Driver");
 +MODULE_LICENSE("GPL");
-Index: linux-2.6.28/drivers/input/misc/Kconfig
-===================================================================
---- linux-2.6.28.orig/drivers/input/misc/Kconfig       2009-01-02 00:00:02.000000000 +0100
-+++ linux-2.6.28/drivers/input/misc/Kconfig    2009-01-02 00:01:56.000000000 +0100
-@@ -236,4 +236,25 @@ config INPUT_GPIO_BUTTONS
+--- a/drivers/input/misc/Kconfig
++++ b/drivers/input/misc/Kconfig
+@@ -236,4 +236,25 @@
          To compile this driver as a module, choose M here: the
          module will be called gpio-buttons.
  
@@ -86045,10 +85279,8 @@ Index: linux-2.6.28/drivers/input/misc/Kconfig
 +       Say Y to include support for input events on NXP PCF50606.
 +
  endif
-Index: linux-2.6.28/drivers/input/misc/lis302dl.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/input/misc/lis302dl.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/input/misc/lis302dl.c
 @@ -0,0 +1,874 @@
 +/* Linux kernel driver for the ST LIS302D 3-axis accelerometer
 + *
@@ -86924,21 +86156,17 @@ Index: linux-2.6.28/drivers/input/misc/lis302dl.c
 +
 +module_init(lis302dl_init);
 +module_exit(lis302dl_exit);
-Index: linux-2.6.28/drivers/input/misc/Makefile
-===================================================================
---- linux-2.6.28.orig/drivers/input/misc/Makefile      2009-01-02 00:00:02.000000000 +0100
-+++ linux-2.6.28/drivers/input/misc/Makefile   2009-01-02 00:05:46.000000000 +0100
-@@ -22,3 +22,6 @@ obj-$(CONFIG_INPUT_UINPUT)           += uinput.o
+--- a/drivers/input/misc/Makefile
++++ b/drivers/input/misc/Makefile
+@@ -22,3 +22,6 @@
  obj-$(CONFIG_INPUT_APANEL)            += apanel.o
  obj-$(CONFIG_INPUT_SGI_BTNS)          += sgi_btns.o
  obj-$(CONFIG_INPUT_GPIO_BUTTONS)      += gpio_buttons.o
 +obj-$(CONFIG_INPUT_LIS302DL)          += lis302dl.o
 +obj-$(CONFIG_INPUT_PCF50633_PMU)      += pcf50633-input.o
 +obj-$(CONFIG_INPUT_PCF50606_PMU)      += pcf50606-input.o
-Index: linux-2.6.28/drivers/input/misc/pcf50606-input.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/input/misc/pcf50606-input.c   2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/input/misc/pcf50606-input.c
 @@ -0,0 +1,123 @@
 +/* Philips PCF50606 Input Driver
 + *
@@ -87063,10 +86291,8 @@ Index: linux-2.6.28/drivers/input/misc/pcf50606-input.c
 +MODULE_DESCRIPTION("PCF50606 input driver");
 +MODULE_LICENSE("GPL");
 +MODULE_ALIAS("platform:pcf50606-input");
-Index: linux-2.6.28/drivers/input/misc/pcf50633-input.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/input/misc/pcf50633-input.c   2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/input/misc/pcf50633-input.c
 @@ -0,0 +1,123 @@
 +/* Philips PCF50633 Input Driver
 + *
@@ -87191,11 +86417,9 @@ Index: linux-2.6.28/drivers/input/misc/pcf50633-input.c
 +MODULE_DESCRIPTION("PCF50633 input driver");
 +MODULE_LICENSE("GPL");
 +MODULE_ALIAS("platform:pcf50633-input");
-Index: linux-2.6.28/drivers/input/mousedev.c
-===================================================================
---- linux-2.6.28.orig/drivers/input/mousedev.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/input/mousedev.c      2009-01-02 00:01:56.000000000 +0100
-@@ -1016,6 +1016,7 @@ static const struct input_device_id mous
+--- a/drivers/input/mousedev.c
++++ b/drivers/input/mousedev.c
+@@ -1016,6 +1016,7 @@
                .evbit = { BIT_MASK(EV_KEY) | BIT_MASK(EV_REL) },
                .relbit = { BIT_MASK(REL_WHEEL) },
        },      /* A separate scrollwheel */
@@ -87203,7 +86427,7 @@ Index: linux-2.6.28/drivers/input/mousedev.c
        {
                .flags = INPUT_DEVICE_ID_MATCH_EVBIT |
                                INPUT_DEVICE_ID_MATCH_KEYBIT |
-@@ -1025,6 +1026,7 @@ static const struct input_device_id mous
+@@ -1025,6 +1026,7 @@
                .absbit = { BIT_MASK(ABS_X) | BIT_MASK(ABS_Y) },
        },      /* A tablet like device, at least touch detection,
                   two absolute axes */
@@ -87211,11 +86435,9 @@ Index: linux-2.6.28/drivers/input/mousedev.c
        {
                .flags = INPUT_DEVICE_ID_MATCH_EVBIT |
                                INPUT_DEVICE_ID_MATCH_KEYBIT |
-Index: linux-2.6.28/drivers/input/touchscreen/Kconfig
-===================================================================
---- linux-2.6.28.orig/drivers/input/touchscreen/Kconfig        2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/input/touchscreen/Kconfig     2009-01-02 00:01:56.000000000 +0100
-@@ -11,6 +11,50 @@ menuconfig INPUT_TOUCHSCREEN
+--- a/drivers/input/touchscreen/Kconfig
++++ b/drivers/input/touchscreen/Kconfig
+@@ -11,6 +11,50 @@
  
  if INPUT_TOUCHSCREEN
  
@@ -87266,7 +86488,7 @@ Index: linux-2.6.28/drivers/input/touchscreen/Kconfig
  config TOUCHSCREEN_ADS7846
        tristate "ADS7846/TSC2046 and ADS7843 based touchscreens"
        depends on SPI_MASTER
-@@ -71,6 +115,25 @@ config TOUCHSCREEN_FUJITSU
+@@ -71,6 +115,25 @@
          To compile this driver as a module, choose M here: the
          module will be called fujitsu-ts.
  
@@ -87292,7 +86514,7 @@ Index: linux-2.6.28/drivers/input/touchscreen/Kconfig
  config TOUCHSCREEN_GUNZE
        tristate "Gunze AHL-51S touchscreen"
        select SERIO
-@@ -376,4 +439,15 @@ config TOUCHSCREEN_TOUCHIT213
+@@ -376,4 +439,15 @@
          To compile this driver as a module, choose M here: the
          module will be called touchit213.
  
@@ -87308,11 +86530,9 @@ Index: linux-2.6.28/drivers/input/touchscreen/Kconfig
 +        module will be called pcap7200.
  endif
 +
-Index: linux-2.6.28/drivers/input/touchscreen/Makefile
-===================================================================
---- linux-2.6.28.orig/drivers/input/touchscreen/Makefile       2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/input/touchscreen/Makefile    2009-01-02 00:01:56.000000000 +0100
-@@ -31,3 +31,10 @@ wm97xx-ts-$(CONFIG_TOUCHSCREEN_WM9705)      +
+--- a/drivers/input/touchscreen/Makefile
++++ b/drivers/input/touchscreen/Makefile
+@@ -31,3 +31,10 @@
  wm97xx-ts-$(CONFIG_TOUCHSCREEN_WM9712)        += wm9712.o
  wm97xx-ts-$(CONFIG_TOUCHSCREEN_WM9713)        += wm9713.o
  obj-$(CONFIG_TOUCHSCREEN_WM97XX_MAINSTONE)    += mainstone-wm97xx.o
@@ -87323,10 +86543,8 @@ Index: linux-2.6.28/drivers/input/touchscreen/Makefile
 +obj-$(CONFIG_TOUCHSCREEN_FILTER_MEDIAN)       += ts_filter_median.o
 +obj-$(CONFIG_TOUCHSCREEN_FILTER_MEAN) += ts_filter_mean.o
 +obj-$(CONFIG_TOUCHSCREEN_PCAP7200)    += pcap7200_ts.o
-Index: linux-2.6.28/drivers/input/touchscreen/s3c2410_ts.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/input/touchscreen/s3c2410_ts.c        2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/input/touchscreen/s3c2410_ts.c
 @@ -0,0 +1,618 @@
 +/*
 + * This program is free software; you can redistribute it and/or modify
@@ -87946,10 +87164,8 @@ Index: linux-2.6.28/drivers/input/touchscreen/s3c2410_ts.c
 +module_init(s3c2410ts_init);
 +module_exit(s3c2410ts_exit);
 +
-Index: linux-2.6.28/drivers/input/touchscreen/ts_filter.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/input/touchscreen/ts_filter.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/input/touchscreen/ts_filter.c
 @@ -0,0 +1,64 @@
 +/*
 + * This program is free software; you can redistribute it and/or modify
@@ -88015,10 +87231,8 @@ Index: linux-2.6.28/drivers/input/touchscreen/ts_filter.c
 +      *first = NULL;
 +}
 +EXPORT_SYMBOL_GPL(ts_filter_destroy_chain);
-Index: linux-2.6.28/drivers/input/touchscreen/ts_filter_group.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/input/touchscreen/ts_filter_group.c   2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/input/touchscreen/ts_filter_group.c
 @@ -0,0 +1,219 @@
 +/*
 + * This program is free software; you can redistribute it and/or modify
@@ -88239,10 +87453,8 @@ Index: linux-2.6.28/drivers/input/touchscreen/ts_filter_group.c
 +      .scale = ts_filter_group_scale,
 +};
 +
-Index: linux-2.6.28/drivers/input/touchscreen/ts_filter_linear.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/input/touchscreen/ts_filter_linear.c  2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/input/touchscreen/ts_filter_linear.c
 @@ -0,0 +1,178 @@
 +/*
 + * This program is free software; you can redistribute it and/or modify
@@ -88422,10 +87634,8 @@ Index: linux-2.6.28/drivers/input/touchscreen/ts_filter_linear.c
 +      .process = ts_filter_linear_process,
 +      .scale = ts_filter_linear_scale,
 +};
-Index: linux-2.6.28/drivers/input/touchscreen/ts_filter_mean.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/input/touchscreen/ts_filter_mean.c    2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/input/touchscreen/ts_filter_mean.c
 @@ -0,0 +1,172 @@
 +/*
 + * This program is free software; you can redistribute it and/or modify
@@ -88599,10 +87809,8 @@ Index: linux-2.6.28/drivers/input/touchscreen/ts_filter_mean.c
 +      .process = ts_filter_mean_process,
 +      .scale = ts_filter_mean_scale,
 +};
-Index: linux-2.6.28/drivers/input/touchscreen/ts_filter_median.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/input/touchscreen/ts_filter_median.c  2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/input/touchscreen/ts_filter_median.c
 @@ -0,0 +1,215 @@
 +/*
 + * This program is free software; you can redistribute it and/or modify
@@ -88819,22 +88027,18 @@ Index: linux-2.6.28/drivers/input/touchscreen/ts_filter_median.c
 +      .process = ts_filter_median_process,
 +      .scale = ts_filter_median_scale,
 +};
-Index: linux-2.6.28/drivers/Kconfig
-===================================================================
---- linux-2.6.28.orig/drivers/Kconfig  2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/Kconfig       2009-01-02 00:01:56.000000000 +0100
-@@ -107,4 +107,6 @@ source "drivers/uio/Kconfig"
+--- a/drivers/Kconfig
++++ b/drivers/Kconfig
+@@ -107,4 +107,6 @@
  source "drivers/xen/Kconfig"
  
  source "drivers/staging/Kconfig"
 +
 +source "drivers/android/Kconfig"
  endmenu
-Index: linux-2.6.28/drivers/leds/Kconfig
-===================================================================
---- linux-2.6.28.orig/drivers/leds/Kconfig     2009-01-02 00:00:02.000000000 +0100
-+++ linux-2.6.28/drivers/leds/Kconfig  2009-01-02 00:01:56.000000000 +0100
-@@ -33,7 +33,7 @@ config LEDS_LOCOMO
+--- a/drivers/leds/Kconfig
++++ b/drivers/leds/Kconfig
+@@ -33,7 +33,7 @@
  
  config LEDS_S3C24XX
        tristate "LED Support for Samsung S3C24XX GPIO LEDs"
@@ -88843,7 +88047,7 @@ Index: linux-2.6.28/drivers/leds/Kconfig
        help
          This option enables support for LEDs connected to GPIO lines
          on Samsung S3C24XX series CPUs, such as the S3C2410 and S3C2440.
-@@ -171,6 +171,18 @@ config LEDS_DA903X
+@@ -171,6 +171,18 @@
          This option enables support for on-chip LED drivers found
          on Dialog Semiconductor DA9030/DA9034 PMICs.
  
@@ -88862,11 +88066,9 @@ Index: linux-2.6.28/drivers/leds/Kconfig
  comment "LED Triggers"
  
  config LEDS_TRIGGERS
-Index: linux-2.6.28/drivers/leds/led-class.c
-===================================================================
---- linux-2.6.28.orig/drivers/leds/led-class.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/leds/led-class.c      2009-01-02 00:01:56.000000000 +0100
-@@ -56,8 +56,10 @@ static ssize_t led_brightness_store(stru
+--- a/drivers/leds/led-class.c
++++ b/drivers/leds/led-class.c
+@@ -56,8 +56,10 @@
        if (count == size) {
                ret = count;
  
@@ -88877,10 +88079,8 @@ Index: linux-2.6.28/drivers/leds/led-class.c
                led_set_brightness(led_cdev, state);
        }
  
-Index: linux-2.6.28/drivers/leds/leds-neo1973-gta02.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/leds/leds-neo1973-gta02.c     2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/leds/leds-neo1973-gta02.c
 @@ -0,0 +1,179 @@
 +/*
 + * LED driver for the Openmoko GTA02 GSM phone
@@ -89061,10 +88261,8 @@ Index: linux-2.6.28/drivers/leds/leds-neo1973-gta02.c
 +MODULE_AUTHOR("Harald Welte <laforge@openmoko.org>");
 +MODULE_DESCRIPTION("Openmoko GTA02 LED driver");
 +MODULE_LICENSE("GPL");
-Index: linux-2.6.28/drivers/leds/leds-neo1973-vibrator.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/leds/leds-neo1973-vibrator.c  2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/leds/leds-neo1973-vibrator.c
 @@ -0,0 +1,209 @@
 +/*
 + * LED driver for the vibrator of the Openmoko GTA01/GTA02 GSM Phones
@@ -89275,11 +88473,9 @@ Index: linux-2.6.28/drivers/leds/leds-neo1973-vibrator.c
 +MODULE_AUTHOR("Harald Welte <laforge@openmoko.org>");
 +MODULE_DESCRIPTION("Openmoko GTA01/GTA02 vibrator driver");
 +MODULE_LICENSE("GPL");
-Index: linux-2.6.28/drivers/leds/Makefile
-===================================================================
---- linux-2.6.28.orig/drivers/leds/Makefile    2009-01-02 00:00:02.000000000 +0100
-+++ linux-2.6.28/drivers/leds/Makefile 2009-01-02 00:01:56.000000000 +0100
-@@ -24,6 +24,8 @@ obj-$(CONFIG_LEDS_FSG)                       += leds-fsg.o
+--- a/drivers/leds/Makefile
++++ b/drivers/leds/Makefile
+@@ -24,6 +24,8 @@
  obj-$(CONFIG_LEDS_PCA955X)            += leds-pca955x.o
  obj-$(CONFIG_LEDS_DA903X)             += leds-da903x.o
  obj-$(CONFIG_LEDS_HP_DISK)            += leds-hp-disk.o
@@ -89288,11 +88484,9 @@ Index: linux-2.6.28/drivers/leds/Makefile
  
  # LED Triggers
  obj-$(CONFIG_LEDS_TRIGGER_TIMER)      += ledtrig-timer.o
-Index: linux-2.6.28/drivers/Makefile
-===================================================================
---- linux-2.6.28.orig/drivers/Makefile 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/Makefile      2009-01-02 00:01:56.000000000 +0100
-@@ -86,6 +86,7 @@ obj-$(CONFIG_CPU_IDLE)               += cpuidle/
+--- a/drivers/Makefile
++++ b/drivers/Makefile
+@@ -86,6 +86,7 @@
  obj-y                         += idle/
  obj-$(CONFIG_MMC)             += mmc/
  obj-$(CONFIG_MEMSTICK)                += memstick/
@@ -89300,7 +88494,7 @@ Index: linux-2.6.28/drivers/Makefile
  obj-$(CONFIG_NEW_LEDS)                += leds/
  obj-$(CONFIG_INFINIBAND)      += infiniband/
  obj-$(CONFIG_SGI_SN)          += sn/
-@@ -98,6 +99,7 @@ obj-$(CONFIG_DCA)            += dca/
+@@ -98,6 +99,7 @@
  obj-$(CONFIG_HID)             += hid/
  obj-$(CONFIG_PPC_PS3)         += ps3/
  obj-$(CONFIG_OF)              += of/
@@ -89308,10 +88502,8 @@ Index: linux-2.6.28/drivers/Makefile
  obj-$(CONFIG_SSB)             += ssb/
  obj-$(CONFIG_VIRTIO)          += virtio/
  obj-$(CONFIG_REGULATOR)               += regulator/
-Index: linux-2.6.28/drivers/mfd/glamo/glamo-core.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/mfd/glamo/glamo-core.c        2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/mfd/glamo/glamo-core.c
 @@ -0,0 +1,1399 @@
 +/* Smedia Glamo 336x/337x driver
 + *
@@ -90712,10 +89904,8 @@ Index: linux-2.6.28/drivers/mfd/glamo/glamo-core.c
 +MODULE_AUTHOR("Harald Welte <laforge@openmoko.org>");
 +MODULE_DESCRIPTION("Smedia Glamo 336x/337x core/resource driver");
 +MODULE_LICENSE("GPL");
-Index: linux-2.6.28/drivers/mfd/glamo/glamo-core.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/mfd/glamo/glamo-core.h        2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/mfd/glamo/glamo-core.h
 @@ -0,0 +1,92 @@
 +#ifndef __GLAMO_CORE_H
 +#define __GLAMO_CORE_H
@@ -90809,10 +89999,8 @@ Index: linux-2.6.28/drivers/mfd/glamo/glamo-core.h
 +u_int16_t glamo_engine_clkreg_get(struct glamo_core *glamo,
 +                                enum glamo_engine engine);
 +#endif /* __GLAMO_CORE_H */
-Index: linux-2.6.28/drivers/mfd/glamo/glamo-fb.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/mfd/glamo/glamo-fb.c  2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/mfd/glamo/glamo-fb.c
 @@ -0,0 +1,1048 @@
 +/* Smedia Glamo 336x/337x driver
 + *
@@ -91862,10 +91050,8 @@ Index: linux-2.6.28/drivers/mfd/glamo/glamo-fb.c
 +MODULE_AUTHOR("Harald Welte <laforge@openmoko.org>");
 +MODULE_DESCRIPTION("Smedia Glamo 336x/337x framebuffer driver");
 +MODULE_LICENSE("GPL");
-Index: linux-2.6.28/drivers/mfd/glamo/glamo-gpio.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/mfd/glamo/glamo-gpio.c        2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/mfd/glamo/glamo-gpio.c
 @@ -0,0 +1,62 @@
 +
 +#include <linux/kernel.h>
@@ -91929,10 +91115,8 @@ Index: linux-2.6.28/drivers/mfd/glamo/glamo-gpio.c
 +}
 +EXPORT_SYMBOL(glamo_gpio_cfgpin);
 +
-Index: linux-2.6.28/drivers/mfd/glamo/glamo-lcm-spi.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/mfd/glamo/glamo-lcm-spi.c     2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/mfd/glamo/glamo-lcm-spi.c
 @@ -0,0 +1,240 @@
 +/*
 + * Copyright (C) 2007 Openmoko, Inc.
@@ -92174,10 +91358,8 @@ Index: linux-2.6.28/drivers/mfd/glamo/glamo-lcm-spi.c
 +MODULE_DESCRIPTION("Smedia Glamo 336x/337x LCM serial command SPI Driver");
 +MODULE_AUTHOR("Harald Welte <laforge@openmoko.org>")
 +MODULE_LICENSE("GPL");
-Index: linux-2.6.28/drivers/mfd/glamo/glamo-mci.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/mfd/glamo/glamo-mci.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/mfd/glamo/glamo-mci.c
 @@ -0,0 +1,1133 @@
 +/*
 + *  linux/drivers/mmc/host/glamo-mmc.c - Glamo MMC driver
@@ -93312,10 +92494,8 @@ Index: linux-2.6.28/drivers/mfd/glamo/glamo-mci.c
 +MODULE_DESCRIPTION("Glamo MMC/SD Card Interface driver");
 +MODULE_LICENSE("GPL");
 +MODULE_AUTHOR("Andy Green <andy@openmoko.com>");
-Index: linux-2.6.28/drivers/mfd/glamo/glamo-mci.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/mfd/glamo/glamo-mci.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/mfd/glamo/glamo-mci.h
 @@ -0,0 +1,83 @@
 +/*
 + *  linux/drivers/mmc/host/glamo-mmc.h - GLAMO MCI driver
@@ -93400,10 +92580,8 @@ Index: linux-2.6.28/drivers/mfd/glamo/glamo-mci.h
 +
 +      struct regulator        *regulator;
 +};
-Index: linux-2.6.28/drivers/mfd/glamo/glamo-regs.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/mfd/glamo/glamo-regs.h        2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/mfd/glamo/glamo-regs.h
 @@ -0,0 +1,632 @@
 +#ifndef _GLAMO_REGS_H
 +#define _GLAMO_REGS_H
@@ -94037,10 +93215,8 @@ Index: linux-2.6.28/drivers/mfd/glamo/glamo-regs.h
 +};
 +
 +#endif /* _GLAMO_REGS_H */
-Index: linux-2.6.28/drivers/mfd/glamo/glamo-spi-gpio.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/mfd/glamo/glamo-spi-gpio.c    2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/mfd/glamo/glamo-spi-gpio.c
 @@ -0,0 +1,288 @@
 +/*
 + * Copyright (C) 2007 Openmoko, Inc.
@@ -94330,10 +93506,8 @@ Index: linux-2.6.28/drivers/mfd/glamo/glamo-spi-gpio.c
 +MODULE_DESCRIPTION("Smedia Glamo 336x/337x LCM serial command SPI Driver");
 +MODULE_AUTHOR("Harald Welte <laforge@openmoko.org>")
 +MODULE_LICENSE("GPL");
-Index: linux-2.6.28/drivers/mfd/glamo/Kconfig
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/mfd/glamo/Kconfig     2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/mfd/glamo/Kconfig
 @@ -0,0 +1,44 @@
 +config MFD_GLAMO
 +      bool "Smedia Glamo 336x/337x support"
@@ -94380,10 +93554,8 @@ Index: linux-2.6.28/drivers/mfd/glamo/Kconfig
 +
 +        If unsure, say N.
 \ No newline at end of file
-Index: linux-2.6.28/drivers/mfd/glamo/Makefile
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/mfd/glamo/Makefile    2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/mfd/glamo/Makefile
 @@ -0,0 +1,12 @@
 +#
 +# Makefile for the Smedia Glamo framebuffer driver
@@ -94397,11 +93569,9 @@ Index: linux-2.6.28/drivers/mfd/glamo/Makefile
 +obj-$(CONFIG_MFD_GLAMO_SPI_FB)                += glamo-lcm-spi.o
 +obj-$(CONFIG_MFD_GLAMO_MCI)           += glamo-mci.o
 +
-Index: linux-2.6.28/drivers/mfd/Kconfig
-===================================================================
---- linux-2.6.28.orig/drivers/mfd/Kconfig      2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/mfd/Kconfig   2009-01-02 00:01:56.000000000 +0100
-@@ -153,6 +153,55 @@ config MFD_WM8350_I2C
+--- a/drivers/mfd/Kconfig
++++ b/drivers/mfd/Kconfig
+@@ -153,6 +153,55 @@
          I2C as the control interface.  Additional options must be
          selected to enable support for the functionality of the chip.
  
@@ -94457,10 +93627,8 @@ Index: linux-2.6.28/drivers/mfd/Kconfig
  endmenu
  
  menu "Multimedia Capabilities Port drivers"
-Index: linux-2.6.28/drivers/mfd/Makefile
-===================================================================
---- linux-2.6.28.orig/drivers/mfd/Makefile     2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/mfd/Makefile  2009-01-02 00:01:56.000000000 +0100
+--- a/drivers/mfd/Makefile
++++ b/drivers/mfd/Makefile
 @@ -4,6 +4,7 @@
  
  obj-$(CONFIG_MFD_SM501)               += sm501.o
@@ -94469,7 +93637,7 @@ Index: linux-2.6.28/drivers/mfd/Makefile
  
  obj-$(CONFIG_HTC_EGPIO)               += htc-egpio.o
  obj-$(CONFIG_HTC_PASIC3)      += htc-pasic3.o
-@@ -31,4 +32,13 @@ obj-$(CONFIG_MCP_UCB1200)   += ucb1x00-ass
+@@ -31,4 +32,13 @@
  endif
  obj-$(CONFIG_UCB1400_CORE)    += ucb1400_core.o
  
@@ -94485,10 +93653,8 @@ Index: linux-2.6.28/drivers/mfd/Makefile
 +obj-$(CONFIG_PCF50606_ADC)    += pcf50606-adc.o
 +obj-$(CONFIG_PCF50606_GPO)    += pcf50606-gpo.o
 +
-Index: linux-2.6.28/drivers/mfd/pcf50606-adc.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/mfd/pcf50606-adc.c    2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/mfd/pcf50606-adc.c
 @@ -0,0 +1,239 @@
 +/* Philips PCF50606 ADC Driver
 + *
@@ -94729,10 +93895,8 @@ Index: linux-2.6.28/drivers/mfd/pcf50606-adc.c
 +MODULE_LICENSE("GPL");
 +MODULE_ALIAS("platform:pcf50606-adc");
 +
-Index: linux-2.6.28/drivers/mfd/pcf50606-core.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/mfd/pcf50606-core.c   2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/mfd/pcf50606-core.c
 @@ -0,0 +1,580 @@
 +/* Philips PCF50606 Power Management Unit (PMU) driver
 + *
@@ -95314,10 +94478,8 @@ Index: linux-2.6.28/drivers/mfd/pcf50606-core.c
 +
 +module_init(pcf50606_init);
 +module_exit(pcf50606_exit);
-Index: linux-2.6.28/drivers/mfd/pcf50606-gpo.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/mfd/pcf50606-gpo.c    2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/mfd/pcf50606-gpo.c
 @@ -0,0 +1,128 @@
 +/* Philips PCF50606 GPO Driver
 + *
@@ -95447,10 +94609,8 @@ Index: linux-2.6.28/drivers/mfd/pcf50606-gpo.c
 +      return (value >> shift) & 0x01;
 +}
 +EXPORT_SYMBOL_GPL(pcf50606_gpo_invert_get);
-Index: linux-2.6.28/drivers/mfd/pcf50633-adc.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/mfd/pcf50633-adc.c    2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/mfd/pcf50633-adc.c
 @@ -0,0 +1,252 @@
 +/* Philips PCF50633 ADC Driver
 + *
@@ -95704,10 +94864,8 @@ Index: linux-2.6.28/drivers/mfd/pcf50633-adc.c
 +MODULE_LICENSE("GPL");
 +MODULE_ALIAS("platform:pcf50633-adc");
 +
-Index: linux-2.6.28/drivers/mfd/pcf50633-core.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/mfd/pcf50633-core.c   2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/mfd/pcf50633-core.c
 @@ -0,0 +1,627 @@
 +/* Philips PCF50633 Power Management Unit (PMU) driver
 + *
@@ -96336,10 +95494,8 @@ Index: linux-2.6.28/drivers/mfd/pcf50633-core.c
 +
 +module_init(pcf50633_init);
 +module_exit(pcf50633_exit);
-Index: linux-2.6.28/drivers/mfd/pcf50633-gpio.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/mfd/pcf50633-gpio.c   2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/mfd/pcf50633-gpio.c
 @@ -0,0 +1,100 @@
 +/* Philips PCF50633 GPIO Driver
 + *
@@ -96441,19 +95597,15 @@ Index: linux-2.6.28/drivers/mfd/pcf50633-gpio.c
 +      pcf50633_reg_set_bit_mask(pcf, reg, mask, val);
 +}
 +EXPORT_SYMBOL_GPL(pcf50633_gpio_power_supply_set);
-Index: linux-2.6.28/drivers/mfd/pcf50633-i2c.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/mfd/pcf50633-i2c.c    2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/mfd/pcf50633-i2c.c
 @@ -0,0 +1,3 @@
 +
 +};
 +
-Index: linux-2.6.28/drivers/misc/Kconfig
-===================================================================
---- linux-2.6.28.orig/drivers/misc/Kconfig     2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/misc/Kconfig  2009-01-02 00:01:56.000000000 +0100
-@@ -401,6 +401,11 @@ config THINKPAD_ACPI_HOTKEY_POLL
+--- a/drivers/misc/Kconfig
++++ b/drivers/misc/Kconfig
+@@ -401,6 +401,11 @@
          If you are not sure, say Y here.  The driver enables polling only if
          it is strictly necessary to do so.
  
@@ -96465,7 +95617,7 @@ Index: linux-2.6.28/drivers/misc/Kconfig
  config ATMEL_SSC
        tristate "Device driver for Atmel SSC peripheral"
        depends on AVR32 || ARCH_AT91
-@@ -500,4 +505,9 @@ config SGI_GRU_DEBUG
+@@ -500,4 +505,9 @@
  
  source "drivers/misc/c2port/Kconfig"
  
@@ -96475,10 +95627,8 @@ Index: linux-2.6.28/drivers/misc/Kconfig
 +        Common machine code for Openmoko GTAxx hardware
 +
  endif # MISC_DEVICES
-Index: linux-2.6.28/drivers/misc/lowmemorykiller.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/misc/lowmemorykiller.c        2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/misc/lowmemorykiller.c
 @@ -0,0 +1,119 @@
 +/* drivers/misc/lowmemorykiller.c
 + *
@@ -96599,11 +95749,9 @@ Index: linux-2.6.28/drivers/misc/lowmemorykiller.c
 +
 +MODULE_LICENSE("GPL");
 +
-Index: linux-2.6.28/drivers/misc/Makefile
-===================================================================
---- linux-2.6.28.orig/drivers/misc/Makefile    2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/misc/Makefile 2009-01-02 00:06:11.000000000 +0100
-@@ -33,3 +33,8 @@ obj-$(CONFIG_SGI_XP)         += sgi-xp/
+--- a/drivers/misc/Makefile
++++ b/drivers/misc/Makefile
+@@ -33,3 +33,8 @@
  obj-$(CONFIG_SGI_GRU)         += sgi-gru/
  obj-$(CONFIG_HP_ILO)          += hpilo.o
  obj-$(CONFIG_C2PORT)          += c2port/
@@ -96612,10 +95760,8 @@ Index: linux-2.6.28/drivers/misc/Makefile
 +obj-$(CONFIG_MACH_NEO1973)      += neo1973_version.o \
 +                                   neo1973_pm_host.o \
 +                                   neo1973_pm_resume_reason.o
-Index: linux-2.6.28/drivers/misc/neo1973_pm_charging_led.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/misc/neo1973_pm_charging_led.c        2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/misc/neo1973_pm_charging_led.c
 @@ -0,0 +1,106 @@
 +/*
 + * Charging LED sysfs for the FIC Neo1973 GSM Phone
@@ -96723,10 +95869,8 @@ Index: linux-2.6.28/drivers/misc/neo1973_pm_charging_led.c
 +MODULE_AUTHOR("Andy Green <andy@openmoko.com>");
 +MODULE_DESCRIPTION("Neo1973 PCB charging_led");
 +#endif
-Index: linux-2.6.28/drivers/misc/neo1973_pm_host.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/misc/neo1973_pm_host.c        2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/misc/neo1973_pm_host.c
 @@ -0,0 +1,109 @@
 +/*
 + * Bluetooth PM code for the FIC Neo1973 GSM Phone
@@ -96837,10 +95981,8 @@ Index: linux-2.6.28/drivers/misc/neo1973_pm_host.c
 +MODULE_AUTHOR("Andy Green <andy@openmoko.com>");
 +MODULE_DESCRIPTION("Neo1973 USB Host Power Management");
 +#endif
-Index: linux-2.6.28/drivers/misc/neo1973_pm_resume_reason.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/misc/neo1973_pm_resume_reason.c       2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/misc/neo1973_pm_resume_reason.c
 @@ -0,0 +1,147 @@
 +/*
 + * Resume reason sysfs for the FIC Neo1973 GSM Phone
@@ -96989,10 +96131,8 @@ Index: linux-2.6.28/drivers/misc/neo1973_pm_resume_reason.c
 +MODULE_LICENSE("GPL");
 +MODULE_AUTHOR("Andy Green <andy@openmoko.com>");
 +MODULE_DESCRIPTION("Neo1973 resume_reason");
-Index: linux-2.6.28/drivers/misc/neo1973_pm_usbhost.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/misc/neo1973_pm_usbhost.c     2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/misc/neo1973_pm_usbhost.c
 @@ -0,0 +1,132 @@
 +/*
 + * Bluetooth PM code for the FIC Neo1973 GSM Phone
@@ -97126,10 +96266,8 @@ Index: linux-2.6.28/drivers/misc/neo1973_pm_usbhost.c
 +MODULE_LICENSE("GPL");
 +MODULE_AUTHOR("Andy Green <andy@openmoko.com>");
 +MODULE_DESCRIPTION("Neo1973 USB Host Power Management");
-Index: linux-2.6.28/drivers/misc/neo1973_version.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/misc/neo1973_version.c        2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/misc/neo1973_version.c
 @@ -0,0 +1,90 @@
 +/*
 + * PCB version sysfs for the FIC Neo1973 GSM Phone
@@ -97221,10 +96359,8 @@ Index: linux-2.6.28/drivers/misc/neo1973_version.c
 +MODULE_AUTHOR("Andy Green <andy@openmoko.com>");
 +MODULE_DESCRIPTION("Neo1973 PCB version");
 +#endif
-Index: linux-2.6.28/drivers/misc/smdk6410-sleeptest.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/misc/smdk6410-sleeptest.c     2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/misc/smdk6410-sleeptest.c
 @@ -0,0 +1,65 @@
 +/* linux/drivers/misc/smdk6410-sleeptest.c
 + *
@@ -97291,11 +96427,9 @@ Index: linux-2.6.28/drivers/misc/smdk6410-sleeptest.c
 +
 +MODULE_AUTHOR("Ben Dooks <ben@simtec.co.uk>");
 +MODULE_LICENSE("GPL");
-Index: linux-2.6.28/drivers/mmc/core/core.c
-===================================================================
---- linux-2.6.28.orig/drivers/mmc/core/core.c  2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/mmc/core/core.c       2009-01-02 00:01:56.000000000 +0100
-@@ -57,10 +57,11 @@ static int mmc_schedule_delayed_work(str
+--- a/drivers/mmc/core/core.c
++++ b/drivers/mmc/core/core.c
+@@ -57,10 +57,11 @@
  /*
   * Internal function. Flush all scheduled work from the MMC work queue.
   */
@@ -97308,7 +96442,7 @@ Index: linux-2.6.28/drivers/mmc/core/core.c
  
  /**
   *    mmc_request_done - finish processing an MMC request
-@@ -495,7 +496,13 @@ void mmc_set_timing(struct mmc_host *hos
+@@ -495,7 +496,13 @@
   */
  static void mmc_power_up(struct mmc_host *host)
  {
@@ -97323,11 +96457,9 @@ Index: linux-2.6.28/drivers/mmc/core/core.c
  
        host->ios.vdd = bit;
        if (mmc_host_is_spi(host)) {
-Index: linux-2.6.28/drivers/mmc/host/Kconfig
-===================================================================
---- linux-2.6.28.orig/drivers/mmc/host/Kconfig 2009-01-02 00:00:02.000000000 +0100
-+++ linux-2.6.28/drivers/mmc/host/Kconfig      2009-01-02 00:01:56.000000000 +0100
-@@ -48,6 +48,18 @@ config MMC_SDHCI_PCI
+--- a/drivers/mmc/host/Kconfig
++++ b/drivers/mmc/host/Kconfig
+@@ -48,6 +48,18 @@
  
          If unsure, say N.
  
@@ -97346,11 +96478,9 @@ Index: linux-2.6.28/drivers/mmc/host/Kconfig
  config MMC_RICOH_MMC
        tristate "Ricoh MMC Controller Disabler  (EXPERIMENTAL)"
        depends on MMC_SDHCI_PCI
-Index: linux-2.6.28/drivers/mmc/host/Makefile
-===================================================================
---- linux-2.6.28.orig/drivers/mmc/host/Makefile        2009-01-02 00:00:02.000000000 +0100
-+++ linux-2.6.28/drivers/mmc/host/Makefile     2009-01-02 00:01:56.000000000 +0100
-@@ -11,6 +11,7 @@ obj-$(CONFIG_MMC_PXA)                += pxamci.o
+--- a/drivers/mmc/host/Makefile
++++ b/drivers/mmc/host/Makefile
+@@ -11,6 +11,7 @@
  obj-$(CONFIG_MMC_IMX)         += imxmmc.o
  obj-$(CONFIG_MMC_SDHCI)               += sdhci.o
  obj-$(CONFIG_MMC_SDHCI_PCI)   += sdhci-pci.o
@@ -97358,10 +96488,8 @@ Index: linux-2.6.28/drivers/mmc/host/Makefile
  obj-$(CONFIG_MMC_RICOH_MMC)   += ricoh_mmc.o
  obj-$(CONFIG_MMC_WBSD)                += wbsd.o
  obj-$(CONFIG_MMC_AU1X)                += au1xmmc.o
-Index: linux-2.6.28/drivers/mmc/host/s3cmci.c
-===================================================================
---- linux-2.6.28.orig/drivers/mmc/host/s3cmci.c        2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/mmc/host/s3cmci.c     2009-01-02 00:01:56.000000000 +0100
+--- 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
   *
@@ -97387,7 +96515,7 @@ Index: linux-2.6.28/drivers/mmc/host/s3cmci.c
  
  #include "s3cmci.h"
  
-@@ -47,6 +56,9 @@ static const int dbgmap_err   = dbg_fail
+@@ -47,6 +56,9 @@
  static const int dbgmap_info  = dbg_info | dbg_conf;
  static const int dbgmap_debug = dbg_err | dbg_debug;
  
@@ -97397,7 +96525,7 @@ Index: linux-2.6.28/drivers/mmc/host/s3cmci.c
  #define dbg(host, channels, args...)            \
        do {                                      \
        if (dbgmap_err & channels)                \
-@@ -280,8 +292,11 @@ static void do_pio_read(struct s3cmci_ho
+@@ -280,8 +292,11 @@
                 * an even multiple of 4. */
                if (fifo >= host->pio_bytes)
                        fifo = host->pio_bytes;
@@ -97410,7 +96538,7 @@ Index: linux-2.6.28/drivers/mmc/host/s3cmci.c
  
                host->pio_bytes -= fifo;
                host->pio_count += fifo;
-@@ -353,8 +368,11 @@ static void do_pio_write(struct s3cmci_h
+@@ -353,8 +368,11 @@
                 * words, so round down to an even multiple of 4. */
                if (fifo >= host->pio_bytes)
                        fifo = host->pio_bytes;
@@ -97423,7 +96551,7 @@ Index: linux-2.6.28/drivers/mmc/host/s3cmci.c
  
                host->pio_bytes -= fifo;
                host->pio_count += fifo;
-@@ -373,7 +391,6 @@ static void pio_tasklet(unsigned long da
+@@ -373,7 +391,6 @@
  {
        struct s3cmci_host *host = (struct s3cmci_host *) data;
  
@@ -97431,7 +96559,7 @@ Index: linux-2.6.28/drivers/mmc/host/s3cmci.c
        disable_irq(host->irq);
  
        if (host->pio_active == XFER_WRITE)
-@@ -614,7 +631,6 @@ irq_out:
+@@ -614,7 +631,6 @@
  
        spin_unlock_irqrestore(&host->complete_lock, iflags);
        return IRQ_HANDLED;
@@ -97439,7 +96567,7 @@ Index: linux-2.6.28/drivers/mmc/host/s3cmci.c
  }
  
  /*
-@@ -1027,6 +1043,7 @@ static void s3cmci_send_request(struct m
+@@ -1026,6 +1042,7 @@
                        dbg(host, dbg_err, "data prepare error %d\n", res);
                        cmd->error = res;
                        cmd->data->error = res;
@@ -97447,7 +96575,7 @@ Index: linux-2.6.28/drivers/mmc/host/s3cmci.c
  
                        mmc_request_done(mmc, mrq);
                        return;
-@@ -1264,10 +1281,8 @@ static int __devinit s3cmci_probe(struct
+@@ -1263,10 +1280,8 @@
        host->is2440    = is2440;
  
        host->pdata = pdev->dev.platform_data;
@@ -97459,7 +96587,7 @@ Index: linux-2.6.28/drivers/mmc/host/s3cmci.c
  
        spin_lock_init(&host->complete_lock);
        tasklet_init(&host->pio_tasklet, pio_tasklet, (unsigned long) host);
-@@ -1380,6 +1395,18 @@ static int __devinit s3cmci_probe(struct
+@@ -1379,6 +1394,18 @@
        mmc->f_min      = host->clk_rate / (host->clk_div * 256);
        mmc->f_max      = host->clk_rate / host->clk_div;
  
@@ -97478,7 +96606,7 @@ Index: linux-2.6.28/drivers/mmc/host/s3cmci.c
        if (host->pdata->ocr_avail)
                mmc->ocr_avail = host->pdata->ocr_avail;
  
-@@ -1492,18 +1519,60 @@ static int __devinit s3cmci_2440_probe(s
+@@ -1491,18 +1518,60 @@
  
  #ifdef CONFIG_PM
  
@@ -97541,7 +96669,7 @@ Index: linux-2.6.28/drivers/mmc/host/s3cmci.c
  }
  
  #else /* CONFIG_PM */
-@@ -1561,9 +1630,13 @@ static void __exit s3cmci_exit(void)
+@@ -1560,9 +1629,13 @@
  module_init(s3cmci_init);
  module_exit(s3cmci_exit);
  
@@ -97555,10 +96683,8 @@ Index: linux-2.6.28/drivers/mmc/host/s3cmci.c
  MODULE_ALIAS("platform:s3c2412-sdi");
  MODULE_ALIAS("platform:s3c2440-sdi");
 +
-Index: linux-2.6.28/drivers/mmc/host/s3cmci.h
-===================================================================
---- linux-2.6.28.orig/drivers/mmc/host/s3cmci.h        2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/mmc/host/s3cmci.h     2009-01-02 00:01:56.000000000 +0100
+--- a/drivers/mmc/host/s3cmci.h
++++ b/drivers/mmc/host/s3cmci.h
 @@ -8,6 +8,9 @@
   * published by the Free Software Foundation.
   */
@@ -97569,7 +96695,7 @@ Index: linux-2.6.28/drivers/mmc/host/s3cmci.h
  /* FIXME: DMA Resource management ?! */
  #define S3CMCI_DMA 0
  
-@@ -68,6 +71,13 @@ struct s3cmci_host {
+@@ -68,6 +71,13 @@
        unsigned int            ccnt, dcnt;
        struct tasklet_struct   pio_tasklet;
  
@@ -97583,11 +96709,9 @@ Index: linux-2.6.28/drivers/mmc/host/s3cmci.h
  #ifdef CONFIG_CPU_FREQ
        struct notifier_block   freq_transition;
  #endif
-Index: linux-2.6.28/drivers/mmc/host/sdhci.c
-===================================================================
---- linux-2.6.28.orig/drivers/mmc/host/sdhci.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/mmc/host/sdhci.c      2009-01-02 00:01:56.000000000 +0100
-@@ -73,6 +73,11 @@ static void sdhci_dumpregs(struct sdhci_
+--- a/drivers/mmc/host/sdhci.c
++++ b/drivers/mmc/host/sdhci.c
+@@ -73,6 +73,11 @@
                readl(host->ioaddr + SDHCI_CAPABILITIES),
                readl(host->ioaddr + SDHCI_MAX_CURRENT));
  
@@ -97599,7 +96723,7 @@ Index: linux-2.6.28/drivers/mmc/host/sdhci.c
        printk(KERN_DEBUG DRIVER_NAME ": ===========================================\n");
  }
  
-@@ -731,6 +736,23 @@ static void sdhci_set_transfer_mode(stru
+@@ -731,6 +736,23 @@
        writew(mode, host->ioaddr + SDHCI_TRANSFER_MODE);
  }
  
@@ -97623,7 +96747,7 @@ Index: linux-2.6.28/drivers/mmc/host/sdhci.c
  static void sdhci_finish_data(struct sdhci_host *host)
  {
        struct mmc_data *data;
-@@ -744,6 +766,8 @@ static void sdhci_finish_data(struct sdh
+@@ -744,6 +766,8 @@
                if (host->flags & SDHCI_USE_ADMA)
                        sdhci_adma_table_post(host, data);
                else {
@@ -97632,7 +96756,7 @@ Index: linux-2.6.28/drivers/mmc/host/sdhci.c
                        dma_unmap_sg(mmc_dev(host->mmc), data->sg,
                                data->sg_len, (data->flags & MMC_DATA_READ) ?
                                        DMA_FROM_DEVICE : DMA_TO_DEVICE);
-@@ -883,13 +907,18 @@ static void sdhci_finish_command(struct 
+@@ -883,13 +907,18 @@
  
  static void sdhci_set_clock(struct sdhci_host *host, unsigned int clock)
  {
@@ -97654,7 +96778,7 @@ Index: linux-2.6.28/drivers/mmc/host/sdhci.c
        writew(0, host->ioaddr + SDHCI_CLOCK_CONTROL);
  
        if (clock == 0)
-@@ -926,6 +955,8 @@ out:
+@@ -926,6 +955,8 @@
        host->clock = clock;
  }
  
@@ -97663,7 +96787,7 @@ Index: linux-2.6.28/drivers/mmc/host/sdhci.c
  static void sdhci_set_power(struct sdhci_host *host, unsigned short power)
  {
        u8 pwr;
-@@ -999,12 +1030,13 @@ static void sdhci_request(struct mmc_hos
+@@ -999,12 +1030,13 @@
  #endif
  
        host->mrq = mrq;
@@ -97678,7 +96802,7 @@ Index: linux-2.6.28/drivers/mmc/host/sdhci.c
                sdhci_send_command(host, mrq->cmd);
  
        mmiowb();
-@@ -1033,6 +1065,9 @@ static void sdhci_set_ios(struct mmc_hos
+@@ -1033,6 +1065,9 @@
                sdhci_init(host);
        }
  
@@ -97688,7 +96812,7 @@ Index: linux-2.6.28/drivers/mmc/host/sdhci.c
        sdhci_set_clock(host, ios->clock);
  
        if (ios->power_mode == MMC_POWER_OFF)
-@@ -1136,7 +1171,7 @@ static void sdhci_tasklet_card(unsigned 
+@@ -1136,7 +1171,7 @@
        host = (struct sdhci_host*)param;
  
        spin_lock_irqsave(&host->lock, flags);
@@ -97697,7 +96821,7 @@ Index: linux-2.6.28/drivers/mmc/host/sdhci.c
        if (!(readl(host->ioaddr + SDHCI_PRESENT_STATE) & SDHCI_CARD_PRESENT)) {
                if (host->mrq) {
                        printk(KERN_ERR "%s: Card removed during transfer!\n",
-@@ -1151,7 +1186,7 @@ static void sdhci_tasklet_card(unsigned 
+@@ -1151,7 +1186,7 @@
                        tasklet_schedule(&host->finish_tasklet);
                }
        }
@@ -97706,33 +96830,7 @@ Index: linux-2.6.28/drivers/mmc/host/sdhci.c
        spin_unlock_irqrestore(&host->lock, flags);
  
        mmc_detect_change(host->mmc, msecs_to_jiffies(200));
-@@ -1283,11 +1318,24 @@ static void sdhci_cmd_irq(struct sdhci_h
-        *       controllers.
-        */
-       if (host->cmd->flags & MMC_RSP_BUSY) {
-+              u32 present;
-+
-               if (host->cmd->data)
-                       DBG("Cannot wait for busy signal when also "
-                               "doing a data transfer");
--              else
-+              else if (!(host->quirks & SDHCI_QUIRK_NO_TCIRQ_ON_NOT_BUSY))
-                       return;
-+
-+              /* The Samsung SDHCI does not seem to provide an INT_DATA_END
-+               * when the system goes non-busy, so check the state of the
-+               * transfer by reading SDHCI_PRESENT_STATE to see if the
-+               * controller is ready
-+               */
-+
-+              present = readl(host->ioaddr + SDHCI_PRESENT_STATE);
-+              DBG("busy? present %08x, intstat %08x\n", present, intmask);
-+
-+              /* fall through and take the SDHCI_INT_RESPONSE */
-       }
-       if (intmask & SDHCI_INT_RESPONSE)
-@@ -1604,17 +1652,23 @@ int sdhci_add_host(struct sdhci_host *ho
+@@ -1607,17 +1642,23 @@
                mmc_dev(host->mmc)->dma_mask = &host->dma_mask;
        }
  
@@ -97761,10 +96859,8 @@ Index: linux-2.6.28/drivers/mmc/host/sdhci.c
        if (host->timeout_clk == 0) {
                printk(KERN_ERR "%s: Hardware doesn't specify timeout clock "
                        "frequency.\n", mmc_hostname(mmc));
-Index: linux-2.6.28/drivers/mmc/host/sdhci.h
-===================================================================
---- linux-2.6.28.orig/drivers/mmc/host/sdhci.h 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/mmc/host/sdhci.h      2009-01-02 00:01:56.000000000 +0100
+--- a/drivers/mmc/host/sdhci.h
++++ b/drivers/mmc/host/sdhci.h
 @@ -57,6 +57,7 @@
  #define  SDHCI_DATA_AVAILABLE 0x00000800
  #define  SDHCI_CARD_PRESENT   0x00010000
@@ -97773,16 +96869,7 @@ Index: linux-2.6.28/drivers/mmc/host/sdhci.h
  
  #define SDHCI_HOST_CONTROL    0x28
  #define  SDHCI_CTRL_LED               0x01
-@@ -210,6 +211,8 @@ struct sdhci_host {
- #define SDHCI_QUIRK_BROKEN_SMALL_PIO                  (1<<13)
- /* Controller supports high speed but doesn't have the caps bit set */
- #define SDHCI_QUIRK_FORCE_HIGHSPEED                   (1<<14)
-+/* Controller does not provide transfer-complete interrupt when not busy */
-+#define SDHCI_QUIRK_NO_TCIRQ_ON_NOT_BUSY              (1<<15)
-       int                     irq;            /* Device IRQ */
-       void __iomem *          ioaddr;         /* Mapped address */
-@@ -267,6 +270,14 @@ struct sdhci_host {
+@@ -270,6 +271,14 @@
  
  struct sdhci_ops {
        int             (*enable_dma)(struct sdhci_host *host);
@@ -97797,7 +96884,7 @@ Index: linux-2.6.28/drivers/mmc/host/sdhci.h
  };
  
  
-@@ -274,6 +285,8 @@ extern struct sdhci_host *sdhci_alloc_ho
+@@ -277,6 +286,8 @@
        size_t priv_size);
  extern void sdhci_free_host(struct sdhci_host *host);
  
@@ -97806,11 +96893,9 @@ Index: linux-2.6.28/drivers/mmc/host/sdhci.h
  static inline void *sdhci_priv(struct sdhci_host *host)
  {
        return (void *)host->private;
-Index: linux-2.6.28/drivers/mmc/host/sdhci-pci.c
-===================================================================
---- linux-2.6.28.orig/drivers/mmc/host/sdhci-pci.c     2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/mmc/host/sdhci-pci.c  2009-01-02 00:01:56.000000000 +0100
-@@ -391,6 +391,7 @@ static int sdhci_pci_enable_dma(struct s
+--- a/drivers/mmc/host/sdhci-pci.c
++++ b/drivers/mmc/host/sdhci-pci.c
+@@ -392,6 +392,7 @@
  
  static struct sdhci_ops sdhci_pci_ops = {
        .enable_dma     = sdhci_pci_enable_dma,
@@ -97818,10 +96903,8 @@ Index: linux-2.6.28/drivers/mmc/host/sdhci-pci.c
  };
  
  /*****************************************************************************\
-Index: linux-2.6.28/drivers/mmc/host/sdhci-s3c.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/mmc/host/sdhci-s3c.c  2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/mmc/host/sdhci-s3c.c
 @@ -0,0 +1,419 @@
 +/* linux/drivers/mmc/host/sdhci-s3c.c
 + *
@@ -98153,7 +97236,7 @@ Index: linux-2.6.28/drivers/mmc/host/sdhci-s3c.c
 +      /* It seems we do not get an DATA transfer complete on non-busy
 +       * transfers, not sure if this is a problem with this specific
 +       * SDHCI block, or a missing configuration that needs to be set. */
-+      host->quirks |= SDHCI_QUIRK_NO_TCIRQ_ON_NOT_BUSY;
++      host->quirks |= SDHCI_QUIRK_NO_BUSY_IRQ;
 +
 +      host->quirks |= (SDHCI_QUIRK_32BIT_DMA_ADDR |
 +                       SDHCI_QUIRK_32BIT_DMA_SIZE);
@@ -98242,10 +97325,8 @@ Index: linux-2.6.28/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.28/drivers/mtd/nand/s3c2410.c
-===================================================================
---- linux-2.6.28.orig/drivers/mtd/nand/s3c2410.c       2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/mtd/nand/s3c2410.c    2009-01-02 00:01:56.000000000 +0100
+--- a/drivers/mtd/nand/s3c2410.c
++++ b/drivers/mtd/nand/s3c2410.c
 @@ -45,8 +45,8 @@
  
  #include <asm/io.h>
@@ -98257,7 +97338,7 @@ Index: linux-2.6.28/drivers/mtd/nand/s3c2410.c
  
  #ifdef CONFIG_MTD_NAND_S3C2410_HWECC
  static int hardware_ecc = 1;
-@@ -231,8 +231,6 @@ static int s3c2410_nand_setrate(struct s
+@@ -231,8 +231,6 @@
                BUG();
        }
  
@@ -98266,7 +97347,7 @@ Index: linux-2.6.28/drivers/mtd/nand/s3c2410.c
        local_irq_save(flags);
  
        cfg = readl(info->regs + S3C2410_NFCONF);
-@@ -240,6 +238,8 @@ static int s3c2410_nand_setrate(struct s
+@@ -240,6 +238,8 @@
        cfg |= set;
        writel(cfg, info->regs + S3C2410_NFCONF);
  
@@ -98275,7 +97356,7 @@ Index: linux-2.6.28/drivers/mtd/nand/s3c2410.c
        local_irq_restore(flags);
  
        return 0;
-@@ -438,7 +438,7 @@ static int s3c2410_nand_correct_data(str
+@@ -438,7 +438,7 @@
        if ((diff0 & ~(1<<fls(diff0))) == 0)
                return 1;
  
@@ -98284,7 +97365,7 @@ Index: linux-2.6.28/drivers/mtd/nand/s3c2410.c
  }
  
  /* ECC functions
-@@ -530,7 +530,12 @@ static void s3c2410_nand_read_buf(struct
+@@ -530,7 +530,12 @@
  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);
@@ -98297,7 +97378,7 @@ Index: linux-2.6.28/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 @@ static int s3c2410_nand_remove(struct pl
+@@ -645,17 +650,31 @@
  }
  
  #ifdef CONFIG_MTD_PARTITIONS
@@ -98331,7 +97412,7 @@ Index: linux-2.6.28/drivers/mtd/nand/s3c2410.c
        return add_mtd_device(&mtd->mtd);
  }
  #else
-@@ -684,9 +703,13 @@ static void s3c2410_nand_init_chip(struc
+@@ -684,9 +703,13 @@
        chip->select_chip  = s3c2410_nand_select_chip;
        chip->chip_delay   = 50;
        chip->priv         = nmtd;
@@ -98346,7 +97427,7 @@ Index: linux-2.6.28/drivers/mtd/nand/s3c2410.c
        switch (info->cpu_type) {
        case TYPE_S3C2410:
                chip->IO_ADDR_W = regs + S3C2410_NFDATA;
-@@ -726,7 +749,7 @@ static void s3c2410_nand_init_chip(struc
+@@ -726,7 +749,7 @@
        nmtd->mtd.owner    = THIS_MODULE;
        nmtd->set          = set;
  
@@ -98355,11 +97436,9 @@ Index: linux-2.6.28/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.28/drivers/net/wireless/libertas/if_sdio.c
-===================================================================
---- linux-2.6.28.orig/drivers/net/wireless/libertas/if_sdio.c  2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/net/wireless/libertas/if_sdio.c       2009-01-02 00:01:56.000000000 +0100
-@@ -48,6 +48,7 @@ module_param_named(fw_name, lbs_fw_name,
+--- a/drivers/net/wireless/libertas/if_sdio.c
++++ b/drivers/net/wireless/libertas/if_sdio.c
+@@ -48,6 +48,7 @@
  
  static const struct sdio_device_id if_sdio_ids[] = {
        { SDIO_DEVICE(SDIO_VENDOR_ID_MARVELL, SDIO_DEVICE_ID_MARVELL_LIBERTAS) },
@@ -98367,7 +97446,7 @@ Index: linux-2.6.28/drivers/net/wireless/libertas/if_sdio.c
        { /* end: all zeroes */                                         },
  };
  
-@@ -72,7 +73,12 @@ static struct if_sdio_model if_sdio_mode
+@@ -72,7 +73,12 @@
                .helper = "sd8686_helper.bin",
                .firmware = "sd8686.bin",
        },
@@ -98381,10 +97460,8 @@ Index: linux-2.6.28/drivers/net/wireless/libertas/if_sdio.c
  
  struct if_sdio_packet {
        struct if_sdio_packet   *next;
-Index: linux-2.6.28/drivers/pnp/Kconfig
-===================================================================
---- linux-2.6.28.orig/drivers/pnp/Kconfig      2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/pnp/Kconfig   2009-01-02 00:01:56.000000000 +0100
+--- a/drivers/pnp/Kconfig
++++ b/drivers/pnp/Kconfig
 @@ -5,7 +5,7 @@
  menuconfig PNP
        bool "Plug and Play support"
@@ -98394,11 +97471,9 @@ Index: linux-2.6.28/drivers/pnp/Kconfig
        ---help---
          Plug and Play (PnP) is a standard for peripherals which allows those
          peripherals to be configured by software, e.g. assign IRQ's or other
-Index: linux-2.6.28/drivers/pnp/resource.c
-===================================================================
---- linux-2.6.28.orig/drivers/pnp/resource.c   2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/pnp/resource.c        2009-01-02 00:01:56.000000000 +0100
-@@ -436,6 +436,7 @@ int pnp_check_dma(struct pnp_dev *dev, s
+--- a/drivers/pnp/resource.c
++++ b/drivers/pnp/resource.c
+@@ -436,6 +436,7 @@
                }
        }
  
@@ -98406,7 +97481,7 @@ Index: linux-2.6.28/drivers/pnp/resource.c
        /* check if the resource is already in use, skip if the
         * device is active because it itself may be in use */
        if (!dev->active) {
-@@ -443,6 +444,7 @@ int pnp_check_dma(struct pnp_dev *dev, s
+@@ -443,6 +444,7 @@
                        return 0;
                free_dma(*dma);
        }
@@ -98414,10 +97489,8 @@ Index: linux-2.6.28/drivers/pnp/resource.c
  
        /* check for conflicts with other pnp devices */
        pnp_for_each_dev(tdev) {
-Index: linux-2.6.28/drivers/power/bq27000_battery.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/power/bq27000_battery.c       2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/power/bq27000_battery.c
 @@ -0,0 +1,463 @@
 +/*
 + * Driver for batteries with bq27000 chips inside via HDQ
@@ -98882,10 +97955,8 @@ Index: linux-2.6.28/drivers/power/bq27000_battery.c
 +MODULE_LICENSE("GPL");
 +MODULE_AUTHOR("Andy Green <andy@openmoko.com>");
 +MODULE_DESCRIPTION("bq27000 battery driver");
-Index: linux-2.6.28/drivers/power/gta02_hdq.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/power/gta02_hdq.c     2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/power/gta02_hdq.c
 @@ -0,0 +1,292 @@
 +/*
 + * HDQ driver for the FIC Neo1973 GTA02 GSM phone
@@ -99179,11 +98250,9 @@ Index: linux-2.6.28/drivers/power/gta02_hdq.c
 +MODULE_AUTHOR("Andy Green <andy@openmoko.com>");
 +MODULE_DESCRIPTION("GTA02 HDQ driver");
 +MODULE_LICENSE("GPL");
-Index: linux-2.6.28/drivers/power/Kconfig
-===================================================================
---- linux-2.6.28.orig/drivers/power/Kconfig    2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/power/Kconfig 2009-01-02 00:01:56.000000000 +0100
-@@ -68,4 +68,24 @@ config BATTERY_BQ27x00
+--- a/drivers/power/Kconfig
++++ b/drivers/power/Kconfig
+@@ -68,4 +68,24 @@
        help
          Say Y here to enable support for batteries with BQ27200(I2C) chip.
  
@@ -99208,11 +98277,9 @@ Index: linux-2.6.28/drivers/power/Kconfig
 +
  endif # POWER_SUPPLY
 +
-Index: linux-2.6.28/drivers/power/Makefile
-===================================================================
---- linux-2.6.28.orig/drivers/power/Makefile   2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/power/Makefile        2009-01-02 00:01:56.000000000 +0100
-@@ -23,3 +23,9 @@ obj-$(CONFIG_BATTERY_OLPC)   += olpc_batte
+--- a/drivers/power/Makefile
++++ b/drivers/power/Makefile
+@@ -23,3 +23,9 @@
  obj-$(CONFIG_BATTERY_TOSA)    += tosa_battery.o
  obj-$(CONFIG_BATTERY_WM97XX)  += wm97xx_battery.o
  obj-$(CONFIG_BATTERY_BQ27x00) += bq27x00_battery.o
@@ -99222,10 +98289,8 @@ Index: linux-2.6.28/drivers/power/Makefile
 +obj-$(CONFIG_GTA02_HDQ)               += gta02_hdq.o
 +
 +obj-$(CONFIG_CHARGER_PCF50633)        += pcf50633-charger.o
-Index: linux-2.6.28/drivers/power/pcf50633-charger.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/power/pcf50633-charger.c      2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/power/pcf50633-charger.c
 @@ -0,0 +1,415 @@
 +/* Philips PCF50633 Main Battery Charger Driver
 + *
@@ -99642,11 +98707,9 @@ Index: linux-2.6.28/drivers/power/pcf50633-charger.c
 +MODULE_DESCRIPTION("PCF50633 mbc driver");
 +MODULE_LICENSE("GPL");
 +MODULE_ALIAS("platform:pcf50633-mbc");
-Index: linux-2.6.28/drivers/regulator/core.c
-===================================================================
---- linux-2.6.28.orig/drivers/regulator/core.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/regulator/core.c      2009-01-02 00:01:56.000000000 +0100
-@@ -1113,6 +1113,7 @@ int regulator_disable(struct regulator *
+--- a/drivers/regulator/core.c
++++ b/drivers/regulator/core.c
+@@ -1113,6 +1113,7 @@
        if (!regulator->enabled) {
                printk(KERN_ERR "%s: not in use by this consumer\n",
                        __func__);
@@ -99654,11 +98717,9 @@ Index: linux-2.6.28/drivers/regulator/core.c
                return 0;
        }
  
-Index: linux-2.6.28/drivers/regulator/Kconfig
-===================================================================
---- linux-2.6.28.orig/drivers/regulator/Kconfig        2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/regulator/Kconfig     2009-01-02 00:01:56.000000000 +0100
-@@ -73,4 +73,10 @@ config REGULATOR_DA903X
+--- a/drivers/regulator/Kconfig
++++ b/drivers/regulator/Kconfig
+@@ -73,4 +73,10 @@
          Say y here to support the BUCKs and LDOs regulators found on
          Dialog Semiconductor DA9030/DA9034 PMIC.
  
@@ -99669,21 +98730,17 @@ Index: linux-2.6.28/drivers/regulator/Kconfig
 +       Say Y here to support the voltage regulators and convertors
 +       on PCF50633
  endif
-Index: linux-2.6.28/drivers/regulator/Makefile
-===================================================================
---- linux-2.6.28.orig/drivers/regulator/Makefile       2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/regulator/Makefile    2009-01-02 00:01:56.000000000 +0100
-@@ -11,5 +11,6 @@ obj-$(CONFIG_REGULATOR_BQ24022) += bq240
+--- a/drivers/regulator/Makefile
++++ b/drivers/regulator/Makefile
+@@ -11,5 +11,6 @@
  obj-$(CONFIG_REGULATOR_WM8350) += wm8350-regulator.o
  obj-$(CONFIG_REGULATOR_WM8400) += wm8400-regulator.o
  obj-$(CONFIG_REGULATOR_DA903X)        += da903x.o
 +obj-$(CONFIG_REGULATOR_PCF50633) += pcf50633-regulator.o
  
  ccflags-$(CONFIG_REGULATOR_DEBUG) += -DDEBUG
-Index: linux-2.6.28/drivers/regulator/pcf50633-regulator.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/regulator/pcf50633-regulator.c        2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/regulator/pcf50633-regulator.c
 @@ -0,0 +1,330 @@
 +/* Philips PCF50633 PMIC Driver
 + *
@@ -100015,11 +99072,9 @@ Index: linux-2.6.28/drivers/regulator/pcf50633-regulator.c
 +MODULE_DESCRIPTION("PCF50633 regulator driver");
 +MODULE_LICENSE("GPL");
 +MODULE_ALIAS("platform:pcf50633-regulator");
-Index: linux-2.6.28/drivers/rtc/Kconfig
-===================================================================
---- linux-2.6.28.orig/drivers/rtc/Kconfig      2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/rtc/Kconfig   2009-01-02 00:01:56.000000000 +0100
-@@ -219,6 +219,18 @@ config RTC_DRV_PCF8583
+--- a/drivers/rtc/Kconfig
++++ b/drivers/rtc/Kconfig
+@@ -219,6 +219,18 @@
          This driver can also be built as a module. If so, the module
          will be called rtc-pcf8583.
  
@@ -100038,11 +99093,9 @@ Index: linux-2.6.28/drivers/rtc/Kconfig
  config RTC_DRV_M41T80
        tristate "ST M41T65/M41T80/81/82/83/84/85/87"
        help
-Index: linux-2.6.28/drivers/rtc/Makefile
-===================================================================
---- linux-2.6.28.orig/drivers/rtc/Makefile     2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/rtc/Makefile  2009-01-02 00:01:56.000000000 +0100
-@@ -50,6 +50,8 @@ obj-$(CONFIG_RTC_DRV_MAX6902)        += rtc-max
+--- a/drivers/rtc/Makefile
++++ b/drivers/rtc/Makefile
+@@ -50,6 +50,8 @@
  obj-$(CONFIG_RTC_DRV_OMAP)    += rtc-omap.o
  obj-$(CONFIG_RTC_DRV_PCF8563) += rtc-pcf8563.o
  obj-$(CONFIG_RTC_DRV_PCF8583) += rtc-pcf8583.o
@@ -100051,10 +99104,8 @@ Index: linux-2.6.28/drivers/rtc/Makefile
  obj-$(CONFIG_RTC_DRV_PL030)   += rtc-pl030.o
  obj-$(CONFIG_RTC_DRV_PL031)   += rtc-pl031.o
  obj-$(CONFIG_RTC_DRV_PARISC)  += rtc-parisc.o
-Index: linux-2.6.28/drivers/rtc/rtc-pcf50606.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/rtc/rtc-pcf50606.c    2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/rtc/rtc-pcf50606.c
 @@ -0,0 +1,300 @@
 +/* Philips PCF50606 RTC Driver
 + *
@@ -100356,10 +99407,8 @@ Index: linux-2.6.28/drivers/rtc/rtc-pcf50606.c
 +MODULE_AUTHOR("Balaji Rao <balajirrao@openmoko.org>");
 +MODULE_LICENSE("GPL");
 +
-Index: linux-2.6.28/drivers/rtc/rtc-pcf50633.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/rtc/rtc-pcf50633.c    2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/rtc/rtc-pcf50633.c
 @@ -0,0 +1,300 @@
 +/* Philips PCF50633 RTC Driver
 + *
@@ -100661,10 +99710,8 @@ Index: linux-2.6.28/drivers/rtc/rtc-pcf50633.c
 +MODULE_AUTHOR("Balaji Rao <balajirrao@openmoko.org>");
 +MODULE_LICENSE("GPL");
 +
-Index: linux-2.6.28/drivers/rtc/rtc-s3c.c
-===================================================================
---- linux-2.6.28.orig/drivers/rtc/rtc-s3c.c    2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/rtc/rtc-s3c.c 2009-01-02 00:01:56.000000000 +0100
+--- a/drivers/rtc/rtc-s3c.c
++++ b/drivers/rtc/rtc-s3c.c
 @@ -26,7 +26,7 @@
  #include <asm/uaccess.h>
  #include <asm/io.h>
@@ -100674,11 +99721,9 @@ Index: linux-2.6.28/drivers/rtc/rtc-s3c.c
  
  /* I have yet to find an S3C implementation with more than one
   * of these rtc blocks in */
-Index: linux-2.6.28/drivers/serial/Kconfig
-===================================================================
---- linux-2.6.28.orig/drivers/serial/Kconfig   2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/serial/Kconfig        2009-01-02 00:01:56.000000000 +0100
-@@ -447,7 +447,7 @@ config SERIAL_CLPS711X_CONSOLE
+--- a/drivers/serial/Kconfig
++++ b/drivers/serial/Kconfig
+@@ -447,7 +447,7 @@
  
  config SERIAL_SAMSUNG
        tristate "Samsung SoC serial support"
@@ -100687,7 +99732,7 @@ Index: linux-2.6.28/drivers/serial/Kconfig
        select SERIAL_CORE
        help
          Support for the on-chip UARTs on the Samsung S3C24XX series CPUs,
-@@ -455,6 +455,16 @@ config SERIAL_SAMSUNG
+@@ -455,6 +455,16 @@
          provide all of these ports, depending on how the serial port
          pins are configured.
  
@@ -100704,7 +99749,7 @@ Index: linux-2.6.28/drivers/serial/Kconfig
  config SERIAL_SAMSUNG_DEBUG
        bool "Samsung SoC serial debug"
        depends on SERIAL_SAMSUNG && DEBUG_LL
-@@ -508,7 +518,20 @@ config SERIAL_S3C2440
+@@ -508,7 +518,20 @@
        help
          Serial port support for the Samsung S3C2440 and S3C2442 SoC
  
@@ -100726,11 +99771,9 @@ Index: linux-2.6.28/drivers/serial/Kconfig
  
  config SERIAL_DZ
        bool "DECstation DZ serial driver"
-Index: linux-2.6.28/drivers/serial/Makefile
-===================================================================
---- linux-2.6.28.orig/drivers/serial/Makefile  2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/serial/Makefile       2009-01-02 00:01:56.000000000 +0100
-@@ -41,6 +41,8 @@ obj-$(CONFIG_SERIAL_S3C2400) += s3c2400.
+--- a/drivers/serial/Makefile
++++ b/drivers/serial/Makefile
+@@ -41,6 +41,8 @@
  obj-$(CONFIG_SERIAL_S3C2410) += s3c2410.o
  obj-$(CONFIG_SERIAL_S3C2412) += s3c2412.o
  obj-$(CONFIG_SERIAL_S3C2440) += s3c2440.o
@@ -100739,10 +99782,8 @@ Index: linux-2.6.28/drivers/serial/Makefile
  obj-$(CONFIG_SERIAL_IP22_ZILOG) += ip22zilog.o
  obj-$(CONFIG_SERIAL_MUX) += mux.o
  obj-$(CONFIG_SERIAL_68328) += 68328serial.o
-Index: linux-2.6.28/drivers/serial/s3c2410.c
-===================================================================
---- linux-2.6.28.orig/drivers/serial/s3c2410.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/serial/s3c2410.c      2009-01-02 00:01:56.000000000 +0100
+--- a/drivers/serial/s3c2410.c
++++ b/drivers/serial/s3c2410.c
 @@ -19,6 +19,7 @@
  #include <linux/serial.h>
  
@@ -100751,10 +99792,8 @@ Index: linux-2.6.28/drivers/serial/s3c2410.c
  #include <mach/hardware.h>
  
  #include <plat/regs-serial.h>
-Index: linux-2.6.28/drivers/serial/s3c24a0.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/serial/s3c24a0.c      2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/serial/s3c24a0.c
 @@ -0,0 +1,118 @@
 +/* linux/drivers/serial/s3c24a0.c
 + *
@@ -100874,10 +99913,8 @@ Index: linux-2.6.28/drivers/serial/s3c24a0.c
 +module_init(s3c24a0_serial_init);
 +module_exit(s3c24a0_serial_exit);
 +
-Index: linux-2.6.28/drivers/serial/s3c6400.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/serial/s3c6400.c      2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/serial/s3c6400.c
 @@ -0,0 +1,152 @@
 +/* linux/drivers/serial/s3c6400.c
 + *
@@ -101031,10 +100068,8 @@ Index: linux-2.6.28/drivers/serial/s3c6400.c
 +MODULE_AUTHOR("Ben Dooks <ben@simtec.co.uk>");
 +MODULE_LICENSE("GPL v2");
 +MODULE_ALIAS("platform:s3c6400-uart");
-Index: linux-2.6.28/drivers/serial/samsung.c
-===================================================================
---- linux-2.6.28.orig/drivers/serial/samsung.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/serial/samsung.c      2009-01-02 00:01:56.000000000 +0100
+--- a/drivers/serial/samsung.c
++++ b/drivers/serial/samsung.c
 @@ -42,13 +42,18 @@
  #include <linux/serial.h>
  #include <linux/delay.h>
@@ -101074,7 +100109,7 @@ Index: linux-2.6.28/drivers/serial/samsung.c
  /* macros to change one thing to another */
  
  #define tx_enabled(port) ((port)->unused[0])
-@@ -136,8 +128,10 @@ static void s3c24xx_serial_rx_disable(st
+@@ -136,8 +128,10 @@
  
  static void s3c24xx_serial_stop_tx(struct uart_port *port)
  {
@@ -101086,7 +100121,7 @@ Index: linux-2.6.28/drivers/serial/samsung.c
                tx_enabled(port) = 0;
                if (port->flags & UPF_CONS_FLOW)
                        s3c24xx_serial_rx_enable(port);
-@@ -146,11 +140,13 @@ static void s3c24xx_serial_stop_tx(struc
+@@ -146,11 +140,13 @@
  
  static void s3c24xx_serial_start_tx(struct uart_port *port)
  {
@@ -101101,7 +100136,7 @@ Index: linux-2.6.28/drivers/serial/samsung.c
                tx_enabled(port) = 1;
        }
  }
-@@ -158,9 +154,11 @@ static void s3c24xx_serial_start_tx(stru
+@@ -158,9 +154,11 @@
  
  static void s3c24xx_serial_stop_rx(struct uart_port *port)
  {
@@ -101114,7 +100149,7 @@ Index: linux-2.6.28/drivers/serial/samsung.c
                rx_enabled(port) = 0;
        }
  }
-@@ -241,7 +239,7 @@ s3c24xx_serial_rx_chars(int irq, void *d
+@@ -241,7 +239,7 @@
                port->icount.rx++;
  
                if (unlikely(uerstat & S3C2410_UERSTAT_ANY)) {
@@ -101123,7 +100158,7 @@ Index: linux-2.6.28/drivers/serial/samsung.c
                            ch, uerstat);
  
                        /* check for break */
-@@ -384,13 +382,13 @@ static void s3c24xx_serial_shutdown(stru
+@@ -384,13 +382,13 @@
        struct s3c24xx_uart_port *ourport = to_ourport(port);
  
        if (ourport->tx_claimed) {
@@ -101139,7 +100174,7 @@ Index: linux-2.6.28/drivers/serial/samsung.c
                ourport->rx_claimed = 0;
                rx_enabled(port) = 0;
        }
-@@ -407,12 +405,11 @@ static int s3c24xx_serial_startup(struct
+@@ -407,12 +405,11 @@
  
        rx_enabled(port) = 1;
  
@@ -101154,7 +100189,7 @@ Index: linux-2.6.28/drivers/serial/samsung.c
                return ret;
        }
  
-@@ -422,12 +419,11 @@ static int s3c24xx_serial_startup(struct
+@@ -422,12 +419,11 @@
  
        tx_enabled(port) = 1;
  
@@ -101169,7 +100204,7 @@ Index: linux-2.6.28/drivers/serial/samsung.c
                goto err;
        }
  
-@@ -452,6 +448,8 @@ static void s3c24xx_serial_pm(struct uar
+@@ -452,6 +448,8 @@
  {
        struct s3c24xx_uart_port *ourport = to_ourport(port);
  
@@ -101178,7 +100213,7 @@ Index: linux-2.6.28/drivers/serial/samsung.c
        switch (level) {
        case 3:
                if (!IS_ERR(ourport->baudclk) && ourport->baudclk != NULL)
-@@ -514,6 +512,7 @@ s3c24xx_serial_setsource(struct uart_por
+@@ -514,6 +512,7 @@
  struct baud_calc {
        struct s3c24xx_uart_clksrc      *clksrc;
        unsigned int                     calc;
@@ -101186,7 +100221,7 @@ Index: linux-2.6.28/drivers/serial/samsung.c
        unsigned int                     quot;
        struct clk                      *src;
  };
-@@ -523,6 +522,7 @@ static int s3c24xx_serial_calcbaud(struc
+@@ -523,6 +522,7 @@
                                   struct s3c24xx_uart_clksrc *clksrc,
                                   unsigned int baud)
  {
@@ -101194,7 +100229,7 @@ Index: linux-2.6.28/drivers/serial/samsung.c
        unsigned long rate;
  
        calc->src = clk_get(port->dev, clksrc->name);
-@@ -533,8 +533,24 @@ static int s3c24xx_serial_calcbaud(struc
+@@ -533,8 +533,24 @@
        rate /= clksrc->divisor;
  
        calc->clksrc = clksrc;
@@ -101221,7 +100256,7 @@ Index: linux-2.6.28/drivers/serial/samsung.c
  
        calc->quot--;
        return 1;
-@@ -617,6 +633,30 @@ static unsigned int s3c24xx_serial_getcl
+@@ -617,6 +633,30 @@
        return best->quot;
  }
  
@@ -101252,7 +100287,7 @@ Index: linux-2.6.28/drivers/serial/samsung.c
  static void s3c24xx_serial_set_termios(struct uart_port *port,
                                       struct ktermios *termios,
                                       struct ktermios *old)
-@@ -629,6 +669,7 @@ static void s3c24xx_serial_set_termios(s
+@@ -629,6 +669,7 @@
        unsigned int baud, quot;
        unsigned int ulcon;
        unsigned int umcon;
@@ -101260,7 +100295,7 @@ Index: linux-2.6.28/drivers/serial/samsung.c
  
        /*
         * We don't support modem control lines.
-@@ -650,6 +691,7 @@ static void s3c24xx_serial_set_termios(s
+@@ -650,6 +691,7 @@
        /* check to see if we need  to change clock source */
  
        if (ourport->clksrc != clksrc || ourport->baudclk != clk) {
@@ -101268,7 +100303,7 @@ Index: linux-2.6.28/drivers/serial/samsung.c
                s3c24xx_serial_setsource(port, clksrc);
  
                if (ourport->baudclk != NULL && !IS_ERR(ourport->baudclk)) {
-@@ -661,6 +703,14 @@ static void s3c24xx_serial_set_termios(s
+@@ -661,6 +703,14 @@
  
                ourport->clksrc = clksrc;
                ourport->baudclk = clk;
@@ -101283,7 +100318,7 @@ Index: linux-2.6.28/drivers/serial/samsung.c
        }
  
        switch (termios->c_cflag & CSIZE) {
-@@ -702,12 +752,16 @@ static void s3c24xx_serial_set_termios(s
+@@ -702,12 +752,16 @@
  
        spin_lock_irqsave(&port->lock, flags);
  
@@ -101301,7 +100336,7 @@ Index: linux-2.6.28/drivers/serial/samsung.c
        dbg("uart: ulcon = 0x%08x, ucon = 0x%08x, ufcon = 0x%08x\n",
            rd_regl(port, S3C2410_ULCON),
            rd_regl(port, S3C2410_UCON),
-@@ -752,6 +806,8 @@ static const char *s3c24xx_serial_type(s
+@@ -752,6 +806,8 @@
                return "S3C2440";
        case PORT_S3C2412:
                return "S3C2412";
@@ -101310,7 +100345,7 @@ Index: linux-2.6.28/drivers/serial/samsung.c
        default:
                return NULL;
        }
-@@ -827,14 +883,14 @@ static struct uart_ops s3c24xx_serial_op
+@@ -827,14 +883,14 @@
  static struct uart_driver s3c24xx_uart_drv = {
        .owner          = THIS_MODULE,
        .dev_name       = "s3c2410_serial",
@@ -101327,7 +100362,7 @@ Index: linux-2.6.28/drivers/serial/samsung.c
        [0] = {
                .port = {
                        .lock           = __SPIN_LOCK_UNLOCKED(s3c24xx_serial_ports[0].port.lock),
-@@ -859,7 +915,7 @@ static struct s3c24xx_uart_port s3c24xx_
+@@ -859,7 +915,7 @@
                        .line           = 1,
                }
        },
@@ -101336,7 +100371,7 @@ Index: linux-2.6.28/drivers/serial/samsung.c
  
        [2] = {
                .port = {
-@@ -872,10 +928,88 @@ static struct s3c24xx_uart_port s3c24xx_
+@@ -872,10 +928,88 @@
                        .flags          = UPF_BOOT_AUTOCONF,
                        .line           = 2,
                }
@@ -101425,7 +100460,7 @@ Index: linux-2.6.28/drivers/serial/samsung.c
  /* s3c24xx_serial_resetport
   *
   * wrapper to call the specific reset for this port (reset the fifos
-@@ -890,6 +1024,93 @@ static inline int s3c24xx_serial_resetpo
+@@ -890,6 +1024,93 @@
        return (info->reset_port)(port, cfg);
  }
  
@@ -101519,7 +100554,7 @@ Index: linux-2.6.28/drivers/serial/samsung.c
  /* s3c24xx_serial_init_port
   *
   * initialise a single serial port from the platform device given
-@@ -914,8 +1135,11 @@ static int s3c24xx_serial_init_port(stru
+@@ -914,8 +1135,11 @@
        if (port->mapbase != 0)
                return 0;
  
@@ -101533,7 +100568,7 @@ Index: linux-2.6.28/drivers/serial/samsung.c
  
        /* setup info for port */
        port->dev       = &platdev->dev;
-@@ -943,18 +1167,26 @@ static int s3c24xx_serial_init_port(stru
+@@ -943,18 +1167,26 @@
  
        dbg("resource %p (%lx..%lx)\n", res, res->start, res->end);
  
@@ -101565,7 +100600,7 @@ Index: linux-2.6.28/drivers/serial/samsung.c
  
        /* reset the fifos (and setup the uart) */
        s3c24xx_serial_resetport(port, cfg);
-@@ -987,6 +1219,7 @@ int s3c24xx_serial_probe(struct platform
+@@ -987,6 +1219,7 @@
  
        ourport = &s3c24xx_serial_ports[probe_index];
        probe_index++;
@@ -101573,7 +100608,7 @@ Index: linux-2.6.28/drivers/serial/samsung.c
  
        dbg("%s: initialising port %p...\n", __func__, ourport);
  
-@@ -1002,6 +1235,10 @@ int s3c24xx_serial_probe(struct platform
+@@ -1002,6 +1235,10 @@
        if (ret < 0)
                printk(KERN_ERR "%s: failed to add clksrc attr.\n", __func__);
  
@@ -101584,7 +100619,7 @@ Index: linux-2.6.28/drivers/serial/samsung.c
        return 0;
  
   probe_err:
-@@ -1015,6 +1252,7 @@ int s3c24xx_serial_remove(struct platfor
+@@ -1015,6 +1252,7 @@
        struct uart_port *port = s3c24xx_dev_to_port(&dev->dev);
  
        if (port) {
@@ -101592,7 +100627,7 @@ Index: linux-2.6.28/drivers/serial/samsung.c
                device_remove_file(&dev->dev, &dev_attr_clock_source);
                uart_remove_one_port(&s3c24xx_uart_drv, port);
        }
-@@ -1038,6 +1276,16 @@ static int s3c24xx_serial_suspend(struct
+@@ -1038,6 +1276,16 @@
        return 0;
  }
  
@@ -101609,7 +100644,7 @@ Index: linux-2.6.28/drivers/serial/samsung.c
  static int s3c24xx_serial_resume(struct platform_device *dev)
  {
        struct uart_port *port = s3c24xx_dev_to_port(&dev->dev);
-@@ -1049,6 +1297,9 @@ static int s3c24xx_serial_resume(struct 
+@@ -1049,6 +1297,9 @@
                clk_disable(ourport->clk);
  
                uart_resume_port(&s3c24xx_uart_drv, port);
@@ -101619,7 +100654,7 @@ Index: linux-2.6.28/drivers/serial/samsung.c
        }
  
        return 0;
-@@ -1059,6 +1310,12 @@ int s3c24xx_serial_init(struct platform_
+@@ -1059,6 +1310,12 @@
                        struct s3c24xx_uart_info *info)
  {
        dbg("s3c24xx_serial_init(%p,%p)\n", drv, info);
@@ -101632,7 +100667,7 @@ Index: linux-2.6.28/drivers/serial/samsung.c
  
  #ifdef CONFIG_PM
        drv->suspend = s3c24xx_serial_suspend;
-@@ -1098,6 +1355,13 @@ module_exit(s3c24xx_serial_modexit);
+@@ -1098,6 +1355,13 @@
  #ifdef CONFIG_SERIAL_SAMSUNG_CONSOLE
  
  static struct uart_port *cons_uart;
@@ -101646,7 +100681,7 @@ Index: linux-2.6.28/drivers/serial/samsung.c
  
  static int
  s3c24xx_serial_console_txrdy(struct uart_port *port, unsigned int ufcon)
-@@ -1122,9 +1386,21 @@ static void
+@@ -1122,9 +1386,21 @@
  s3c24xx_serial_console_putchar(struct uart_port *port, int ch)
  {
        unsigned int ufcon = rd_regl(cons_uart, S3C2410_UFCON);
@@ -101668,7 +100703,7 @@ Index: linux-2.6.28/drivers/serial/samsung.c
  }
  
  static void
-@@ -1219,7 +1495,7 @@ static int s3c24xx_serial_init_ports(str
+@@ -1219,7 +1495,7 @@
  
        platdev_ptr = s3c24xx_uart_devs;
  
@@ -101677,7 +100712,7 @@ Index: linux-2.6.28/drivers/serial/samsung.c
                s3c24xx_serial_init_port(ptr, info, *platdev_ptr);
        }
  
-@@ -1240,7 +1516,7 @@ s3c24xx_serial_console_setup(struct cons
+@@ -1240,7 +1516,7 @@
  
        /* is this a valid port */
  
@@ -101686,10 +100721,8 @@ Index: linux-2.6.28/drivers/serial/samsung.c
                co->index = 0;
  
        port = &s3c24xx_serial_ports[co->index].port;
-Index: linux-2.6.28/drivers/serial/samsung.h
-===================================================================
---- linux-2.6.28.orig/drivers/serial/samsung.h 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/serial/samsung.h      2009-01-02 00:01:56.000000000 +0100
+--- a/drivers/serial/samsung.h
++++ b/drivers/serial/samsung.h
 @@ -10,6 +10,8 @@
   * published by the Free Software Foundation.
  */
@@ -101699,7 +100732,7 @@ Index: linux-2.6.28/drivers/serial/samsung.h
  struct s3c24xx_uart_info {
        char                    *name;
        unsigned int            type;
-@@ -21,6 +23,10 @@ struct s3c24xx_uart_info {
+@@ -21,6 +23,10 @@
        unsigned long           tx_fifoshift;
        unsigned long           tx_fifofull;
  
@@ -101710,7 +100743,7 @@ Index: linux-2.6.28/drivers/serial/samsung.h
        /* clock source control */
  
        int (*get_clksrc)(struct uart_port *, struct s3c24xx_uart_clksrc *clk);
-@@ -33,12 +39,23 @@ struct s3c24xx_uart_info {
+@@ -33,12 +39,23 @@
  struct s3c24xx_uart_port {
        unsigned char                   rx_claimed;
        unsigned char                   tx_claimed;
@@ -101734,10 +100767,8 @@ Index: linux-2.6.28/drivers/serial/samsung.h
  };
  
  /* conversion functions */
-Index: linux-2.6.28/drivers/spi/spi_s3c24xx.c
-===================================================================
---- linux-2.6.28.orig/drivers/spi/spi_s3c24xx.c        2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/spi/spi_s3c24xx.c     2009-01-02 00:01:56.000000000 +0100
+--- a/drivers/spi/spi_s3c24xx.c
++++ b/drivers/spi/spi_s3c24xx.c
 @@ -28,7 +28,7 @@
  #include <mach/hardware.h>
  
@@ -101747,11 +100778,9 @@ Index: linux-2.6.28/drivers/spi/spi_s3c24xx.c
  #include <mach/spi.h>
  
  struct s3c24xx_spi {
-Index: linux-2.6.28/drivers/spi/spi_s3c24xx_gpio.c
-===================================================================
---- linux-2.6.28.orig/drivers/spi/spi_s3c24xx_gpio.c   2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/spi/spi_s3c24xx_gpio.c        2009-01-02 00:01:56.000000000 +0100
-@@ -91,7 +91,7 @@ static void s3c2410_spigpio_chipselect(s
+--- a/drivers/spi/spi_s3c24xx_gpio.c
++++ b/drivers/spi/spi_s3c24xx_gpio.c
+@@ -91,7 +91,7 @@
        struct s3c2410_spigpio *sg = spidev_to_sg(dev);
  
        if (sg->info && sg->info->chip_select)
@@ -101760,7 +100789,7 @@ Index: linux-2.6.28/drivers/spi/spi_s3c24xx_gpio.c
  }
  
  static int s3c2410_spigpio_probe(struct platform_device *dev)
-@@ -100,6 +100,7 @@ static int s3c2410_spigpio_probe(struct 
+@@ -100,6 +100,7 @@
        struct spi_master       *master;
        struct s3c2410_spigpio  *sp;
        int ret;
@@ -101768,7 +100797,7 @@ Index: linux-2.6.28/drivers/spi/spi_s3c24xx_gpio.c
  
        master = spi_alloc_master(&dev->dev, sizeof(struct s3c2410_spigpio));
        if (master == NULL) {
-@@ -112,9 +113,11 @@ static int s3c2410_spigpio_probe(struct 
+@@ -112,9 +113,11 @@
  
        platform_set_drvdata(dev, sp);
  
@@ -101781,7 +100810,7 @@ Index: linux-2.6.28/drivers/spi/spi_s3c24xx_gpio.c
        /* setup spi bitbang adaptor */
        sp->bitbang.master = spi_master_get(master);
        sp->bitbang.master->bus_num = info->bus_num;
-@@ -143,6 +146,22 @@ static int s3c2410_spigpio_probe(struct 
+@@ -143,6 +146,22 @@
        if (ret)
                goto err_no_bitbang;
  
@@ -101804,11 +100833,9 @@ Index: linux-2.6.28/drivers/spi/spi_s3c24xx_gpio.c
        return 0;
  
   err_no_bitbang:
-Index: linux-2.6.28/drivers/usb/gadget/composite.c
-===================================================================
---- linux-2.6.28.orig/drivers/usb/gadget/composite.c   2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/usb/gadget/composite.c        2009-01-02 00:01:56.000000000 +0100
-@@ -1045,7 +1045,11 @@ composite_resume(struct usb_gadget *gadg
+--- a/drivers/usb/gadget/composite.c
++++ b/drivers/usb/gadget/composite.c
+@@ -1045,7 +1045,11 @@
  /*-------------------------------------------------------------------------*/
  
  static struct usb_gadget_driver composite_driver = {
@@ -101820,11 +100847,9 @@ Index: linux-2.6.28/drivers/usb/gadget/composite.c
  
        .bind           = composite_bind,
        .unbind         = __exit_p(composite_unbind),
-Index: linux-2.6.28/drivers/usb/gadget/ether.c
-===================================================================
---- linux-2.6.28.orig/drivers/usb/gadget/ether.c       2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/usb/gadget/ether.c    2009-01-02 00:01:56.000000000 +0100
-@@ -122,11 +122,16 @@ static inline bool has_rndis(void)
+--- a/drivers/usb/gadget/ether.c
++++ b/drivers/usb/gadget/ether.c
+@@ -122,11 +122,16 @@
   * Instead:  allocate your own, using normal USB-IF procedures.
   */
  
@@ -101841,7 +100866,7 @@ Index: linux-2.6.28/drivers/usb/gadget/ether.c
  
  /* For hardware that can't talk CDC, we use the same vendor ID that
   * ARM Linux has used for ethernet-over-usb, both with sa1100 and
-@@ -147,8 +152,8 @@ static inline bool has_rndis(void)
+@@ -147,8 +152,8 @@
   * used with CDC Ethernet, Linux 2.4 hosts will need updates to choose
   * the non-RNDIS configuration.
   */
@@ -101852,10 +100877,8 @@ Index: linux-2.6.28/drivers/usb/gadget/ether.c
  
  /*-------------------------------------------------------------------------*/
  
-Index: linux-2.6.28/drivers/usb/gadget/s3c2410_udc.c
-===================================================================
---- linux-2.6.28.orig/drivers/usb/gadget/s3c2410_udc.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/usb/gadget/s3c2410_udc.c      2009-01-02 00:01:56.000000000 +0100
+--- a/drivers/usb/gadget/s3c2410_udc.c
++++ b/drivers/usb/gadget/s3c2410_udc.c
 @@ -53,8 +53,8 @@
  #include <mach/hardware.h>
  #include <mach/regs-gpio.h>
@@ -101867,7 +100890,7 @@ Index: linux-2.6.28/drivers/usb/gadget/s3c2410_udc.c
  
  
  #include "s3c2410_udc.h"
-@@ -134,6 +134,8 @@ static int dprintk(int level, const char
+@@ -134,6 +134,8 @@
        return 0;
  }
  #endif
@@ -101876,7 +100899,7 @@ Index: linux-2.6.28/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 +199,7 @@ static const struct file_operations s3c2
+@@ -197,6 +199,7 @@
        .release        = single_release,
        .owner          = THIS_MODULE,
  };
@@ -101884,7 +100907,7 @@ Index: linux-2.6.28/drivers/usb/gadget/s3c2410_udc.c
  
  /* io macros */
  
-@@ -843,6 +846,7 @@ static void s3c2410_udc_handle_ep(struct
+@@ -843,6 +846,7 @@
        u32                     ep_csr1;
        u32                     idx;
  
@@ -101892,7 +100915,7 @@ Index: linux-2.6.28/drivers/usb/gadget/s3c2410_udc.c
        if (likely (!list_empty(&ep->queue)))
                req = list_entry(ep->queue.next,
                                struct s3c2410_request, queue);
-@@ -882,6 +886,8 @@ static void s3c2410_udc_handle_ep(struct
+@@ -882,6 +886,8 @@
  
                if ((ep_csr1 & S3C2410_UDC_OCSR1_PKTRDY) && req) {
                        s3c2410_udc_read_fifo(ep,req);
@@ -101901,7 +100924,7 @@ Index: linux-2.6.28/drivers/usb/gadget/s3c2410_udc.c
                }
        }
  }
-@@ -1890,6 +1896,7 @@ static int s3c2410_udc_probe(struct plat
+@@ -1890,6 +1896,7 @@
                udc->vbus = 1;
        }
  
@@ -101909,7 +100932,7 @@ Index: linux-2.6.28/drivers/usb/gadget/s3c2410_udc.c
        if (s3c2410_udc_debugfs_root) {
                udc->regs_info = debugfs_create_file("registers", S_IRUGO,
                                s3c2410_udc_debugfs_root,
-@@ -1897,6 +1904,7 @@ static int s3c2410_udc_probe(struct plat
+@@ -1897,6 +1904,7 @@
                if (!udc->regs_info)
                        dev_warn(dev, "debugfs file creation failed\n");
        }
@@ -101917,7 +100940,7 @@ Index: linux-2.6.28/drivers/usb/gadget/s3c2410_udc.c
  
        dev_dbg(dev, "probe ok\n");
  
-@@ -2003,12 +2011,14 @@ static int __init udc_init(void)
+@@ -2003,12 +2011,14 @@
  
        dprintk(DEBUG_NORMAL, "%s: version %s\n", gadget_name, DRIVER_VERSION);
  
@@ -101932,10 +100955,8 @@ Index: linux-2.6.28/drivers/usb/gadget/s3c2410_udc.c
  
        retval = platform_driver_register(&udc_driver_2410);
        if (retval)
-Index: linux-2.6.28/drivers/usb/host/ohci-s3c2410.c
-===================================================================
---- linux-2.6.28.orig/drivers/usb/host/ohci-s3c2410.c  2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/usb/host/ohci-s3c2410.c       2009-01-02 00:01:56.000000000 +0100
+--- a/drivers/usb/host/ohci-s3c2410.c
++++ b/drivers/usb/host/ohci-s3c2410.c
 @@ -24,6 +24,7 @@
  
  #include <mach/hardware.h>
@@ -101944,7 +100965,7 @@ Index: linux-2.6.28/drivers/usb/host/ohci-s3c2410.c
  
  #define valid_port(idx) ((idx) == 1 || (idx) == 2)
  
-@@ -308,6 +309,42 @@ static void s3c2410_hcd_oc(struct s3c241
+@@ -308,6 +309,42 @@
        local_irq_restore(flags);
  }
  
@@ -101987,7 +101008,7 @@ Index: linux-2.6.28/drivers/usb/host/ohci-s3c2410.c
  /* may be called without controller electrically present */
  /* may be called with controller, bus, and devices active */
  
-@@ -325,6 +362,7 @@ static void s3c2410_hcd_oc(struct s3c241
+@@ -325,6 +362,7 @@
  static void
  usb_hcd_s3c2410_remove (struct usb_hcd *hcd, struct platform_device *dev)
  {
@@ -101995,7 +101016,7 @@ Index: linux-2.6.28/drivers/usb/host/ohci-s3c2410.c
        usb_remove_hcd(hcd);
        s3c2410_stop_hc(dev);
        iounmap(hcd->regs);
-@@ -392,8 +430,15 @@ static int usb_hcd_s3c2410_probe (const 
+@@ -392,8 +430,15 @@
        if (retval != 0)
                goto err_ioremap;
  
@@ -102011,10 +101032,8 @@ Index: linux-2.6.28/drivers/usb/host/ohci-s3c2410.c
   err_ioremap:
        s3c2410_stop_hc(dev);
        iounmap(hcd->regs);
-Index: linux-2.6.28/drivers/video/backlight/gta01_bl.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/video/backlight/gta01_bl.c    2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/video/backlight/gta01_bl.c
 @@ -0,0 +1,269 @@
 +/*
 + *  Backlight Driver for FIC GTA01 (Neo1973) GSM Phone
@@ -102285,11 +101304,9 @@ Index: linux-2.6.28/drivers/video/backlight/gta01_bl.c
 +MODULE_DESCRIPTION("FIC GTA01 (Neo1973) Backlight Driver");
 +MODULE_AUTHOR("Harald Welte <laforge@openmoko.org>");
 +MODULE_LICENSE("GPL");
-Index: linux-2.6.28/drivers/video/backlight/Kconfig
-===================================================================
---- linux-2.6.28.orig/drivers/video/backlight/Kconfig  2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/video/backlight/Kconfig       2009-01-02 00:01:56.000000000 +0100
-@@ -152,6 +152,13 @@ config BACKLIGHT_OMAP1
+--- a/drivers/video/backlight/Kconfig
++++ b/drivers/video/backlight/Kconfig
+@@ -152,6 +152,13 @@
          the PWL module of OMAP1 processors.  Say Y if your board
          uses this hardware.
  
@@ -102303,11 +101320,9 @@ Index: linux-2.6.28/drivers/video/backlight/Kconfig
  config BACKLIGHT_HP680
        tristate "HP Jornada 680 Backlight Driver"
        depends on BACKLIGHT_CLASS_DEVICE && SH_HP6XX
-Index: linux-2.6.28/drivers/video/backlight/Makefile
-===================================================================
---- linux-2.6.28.orig/drivers/video/backlight/Makefile 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/video/backlight/Makefile      2009-01-02 00:01:56.000000000 +0100
-@@ -12,6 +12,7 @@ obj-$(CONFIG_LCD_TOSA)                  += tosa_lcd.o
+--- a/drivers/video/backlight/Makefile
++++ b/drivers/video/backlight/Makefile
+@@ -12,6 +12,7 @@
  obj-$(CONFIG_BACKLIGHT_CLASS_DEVICE) += backlight.o
  obj-$(CONFIG_BACKLIGHT_ATMEL_PWM)    += atmel-pwm-bl.o
  obj-$(CONFIG_BACKLIGHT_CORGI) += corgi_bl.o
@@ -102315,11 +101330,9 @@ Index: linux-2.6.28/drivers/video/backlight/Makefile
  obj-$(CONFIG_BACKLIGHT_HP680) += hp680_bl.o
  obj-$(CONFIG_BACKLIGHT_LOCOMO)        += locomolcd.o
  obj-$(CONFIG_BACKLIGHT_OMAP1) += omap1_bl.o
-Index: linux-2.6.28/drivers/video/console/fbcon.c
-===================================================================
---- linux-2.6.28.orig/drivers/video/console/fbcon.c    2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/video/console/fbcon.c 2009-01-02 00:01:56.000000000 +0100
-@@ -401,6 +401,9 @@ static void fb_flashcursor(struct work_s
+--- a/drivers/video/console/fbcon.c
++++ b/drivers/video/console/fbcon.c
+@@ -401,6 +401,9 @@
        int c;
        int mode;
  
@@ -102329,7 +101342,7 @@ Index: linux-2.6.28/drivers/video/console/fbcon.c
        acquire_console_sem();
        if (ops && ops->currcon != -1)
                vc = vc_cons[ops->currcon].d;
-@@ -3225,13 +3228,17 @@ static void fbcon_get_requirement(struct
+@@ -3225,13 +3228,17 @@
  static int fbcon_event_notify(struct notifier_block *self, 
                              unsigned long action, void *data)
  {
@@ -102349,10 +101362,8 @@ Index: linux-2.6.28/drivers/video/console/fbcon.c
        /*
         * ignore all events except driver registration and deregistration
         * if fbcon is not active
-Index: linux-2.6.28/drivers/video/display/jbt6k74.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/video/display/jbt6k74.c       2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/video/display/jbt6k74.c
 @@ -0,0 +1,809 @@
 +/* Linux kernel driver for the tpo JBT6K74-AS LCM ASIC
 + *
@@ -103163,11 +102174,9 @@ Index: linux-2.6.28/drivers/video/display/jbt6k74.c
 +
 +module_init(jbt_init);
 +module_exit(jbt_exit);
-Index: linux-2.6.28/drivers/video/display/Kconfig
-===================================================================
---- linux-2.6.28.orig/drivers/video/display/Kconfig    2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/video/display/Kconfig 2009-01-02 00:01:56.000000000 +0100
-@@ -21,4 +21,15 @@ config DISPLAY_SUPPORT
+--- a/drivers/video/display/Kconfig
++++ b/drivers/video/display/Kconfig
+@@ -21,4 +21,15 @@
  comment "Display hardware drivers"
        depends on DISPLAY_SUPPORT
  
@@ -103183,21 +102192,17 @@ Index: linux-2.6.28/drivers/video/display/Kconfig
 +        controls power management, display timing and gamma calibration.
 +
  endmenu
-Index: linux-2.6.28/drivers/video/display/Makefile
-===================================================================
---- linux-2.6.28.orig/drivers/video/display/Makefile   2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/video/display/Makefile        2009-01-02 00:01:56.000000000 +0100
+--- a/drivers/video/display/Makefile
++++ b/drivers/video/display/Makefile
 @@ -3,4 +3,5 @@
  display-objs                          := display-sysfs.o
  
  obj-$(CONFIG_DISPLAY_SUPPORT)         += display.o
 +obj-$(CONFIG_DISPLAY_JBT6K74)         += jbt6k74.o
  
-Index: linux-2.6.28/drivers/video/Kconfig
-===================================================================
---- linux-2.6.28.orig/drivers/video/Kconfig    2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/video/Kconfig 2009-01-02 00:01:56.000000000 +0100
-@@ -1918,6 +1918,30 @@ config FB_TMIO_ACCELL
+--- a/drivers/video/Kconfig
++++ b/drivers/video/Kconfig
+@@ -1918,6 +1918,30 @@
        depends on FB_TMIO
        default y
  
@@ -103228,11 +102233,9 @@ Index: linux-2.6.28/drivers/video/Kconfig
  config FB_S3C2410
        tristate "S3C2410 LCD framebuffer support"
        depends on FB && ARCH_S3C2410
-Index: linux-2.6.28/drivers/video/logo/Kconfig
-===================================================================
---- linux-2.6.28.orig/drivers/video/logo/Kconfig       2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/video/logo/Kconfig    2009-01-02 00:01:56.000000000 +0100
-@@ -77,6 +77,11 @@ config LOGO_SUPERH_CLUT224
+--- a/drivers/video/logo/Kconfig
++++ b/drivers/video/logo/Kconfig
+@@ -77,6 +77,11 @@
        depends on SUPERH
        default y
  
@@ -103244,11 +102247,9 @@ Index: linux-2.6.28/drivers/video/logo/Kconfig
  config LOGO_M32R_CLUT224
        bool "224-color M32R Linux logo"
        depends on M32R
-Index: linux-2.6.28/drivers/video/logo/logo.c
-===================================================================
---- linux-2.6.28.orig/drivers/video/logo/logo.c        2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/video/logo/logo.c     2009-01-02 00:01:56.000000000 +0100
-@@ -35,6 +35,7 @@ extern const struct linux_logo logo_supe
+--- a/drivers/video/logo/logo.c
++++ b/drivers/video/logo/logo.c
+@@ -35,6 +35,7 @@
  extern const struct linux_logo logo_superh_vga16;
  extern const struct linux_logo logo_superh_clut224;
  extern const struct linux_logo logo_m32r_clut224;
@@ -103256,7 +102257,7 @@ Index: linux-2.6.28/drivers/video/logo/logo.c
  
  static int nologo;
  module_param(nologo, bool, 0);
-@@ -115,6 +116,10 @@ const struct linux_logo * __init_refok f
+@@ -115,6 +116,10 @@
                /* M32R Linux logo */
                logo = &logo_m32r_clut224;
  #endif
@@ -103267,10 +102268,8 @@ Index: linux-2.6.28/drivers/video/logo/logo.c
        }
        return logo;
  }
-Index: linux-2.6.28/drivers/video/logo/logo_openmoko_clut224.ppm
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/video/logo/logo_openmoko_clut224.ppm  2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/drivers/video/logo/logo_openmoko_clut224.ppm
 @@ -0,0 +1,40003 @@
 +P3
 +480 500
@@ -143275,11 +142274,9 @@ Index: linux-2.6.28/drivers/video/logo/logo_openmoko_clut224.ppm
 +0 0 0  0 0 0  0 0 0  0 0 0  0 0 0  0 0 0
 +0 0 0  0 0 0  0 0 0  0 0 0  0 0 0  0 0 0
 +0 0 0  0 0 0  0 0 0  0 0 0  0 0 0  0 0 0
-Index: linux-2.6.28/drivers/video/logo/Makefile
-===================================================================
---- linux-2.6.28.orig/drivers/video/logo/Makefile      2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/video/logo/Makefile   2009-01-02 00:01:57.000000000 +0100
-@@ -15,6 +15,7 @@ obj-$(CONFIG_LOGO_SUPERH_MONO)               += logo_
+--- a/drivers/video/logo/Makefile
++++ b/drivers/video/logo/Makefile
+@@ -15,6 +15,7 @@
  obj-$(CONFIG_LOGO_SUPERH_VGA16)               += logo_superh_vga16.o
  obj-$(CONFIG_LOGO_SUPERH_CLUT224)     += logo_superh_clut224.o
  obj-$(CONFIG_LOGO_M32R_CLUT224)               += logo_m32r_clut224.o
@@ -143287,11 +142284,9 @@ Index: linux-2.6.28/drivers/video/logo/Makefile
  
  obj-$(CONFIG_SPU_BASE)                        += logo_spe_clut224.o
  
-Index: linux-2.6.28/drivers/video/Makefile
-===================================================================
---- linux-2.6.28.orig/drivers/video/Makefile   2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/video/Makefile        2009-01-02 00:01:57.000000000 +0100
-@@ -109,6 +109,7 @@ obj-$(CONFIG_FB_METRONOME)        += met
+--- a/drivers/video/Makefile
++++ b/drivers/video/Makefile
+@@ -109,6 +109,7 @@
  obj-$(CONFIG_FB_S1D13XXX)       += s1d13xxxfb.o
  obj-$(CONFIG_FB_SH7760)                 += sh7760fb.o
  obj-$(CONFIG_FB_IMX)              += imxfb.o
@@ -143299,11 +142294,9 @@ Index: linux-2.6.28/drivers/video/Makefile
  obj-$(CONFIG_FB_S3C2410)        += s3c2410fb.o
  obj-$(CONFIG_FB_FSL_DIU)        += fsl-diu-fb.o
  obj-$(CONFIG_FB_COBALT)           += cobalt_lcdfb.o
-Index: linux-2.6.28/drivers/video/s3c2410fb.c
-===================================================================
---- linux-2.6.28.orig/drivers/video/s3c2410fb.c        2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/video/s3c2410fb.c     2009-01-02 00:01:57.000000000 +0100
-@@ -1017,6 +1017,8 @@ static int s3c2410fb_resume(struct platf
+--- a/drivers/video/s3c2410fb.c
++++ b/drivers/video/s3c2410fb.c
+@@ -1017,6 +1017,8 @@
  
        s3c2410fb_init_registers(fbinfo);
  
@@ -143312,10 +142305,8 @@ Index: linux-2.6.28/drivers/video/s3c2410fb.c
        return 0;
  }
  
-Index: linux-2.6.28/drivers/video/s3c-fb.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/video/s3c-fb.c        2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/drivers/video/s3c-fb.c
 @@ -0,0 +1,1036 @@
 +/* linux/drivers/video/s3c-fb.c
 + *
@@ -144353,11 +143344,9 @@ Index: linux-2.6.28/drivers/video/s3c-fb.c
 +MODULE_DESCRIPTION("Samsung S3C SoC Framebuffer driver");
 +MODULE_LICENSE("GPL");
 +MODULE_ALIAS("platform:s3c-fb");
-Index: linux-2.6.28/drivers/watchdog/Kconfig
-===================================================================
---- linux-2.6.28.orig/drivers/watchdog/Kconfig 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/watchdog/Kconfig      2009-01-02 00:01:57.000000000 +0100
-@@ -233,6 +233,12 @@ config ORION5X_WATCHDOG
+--- a/drivers/watchdog/Kconfig
++++ b/drivers/watchdog/Kconfig
+@@ -233,6 +233,12 @@
          To compile this driver as a module, choose M here: the
          module will be called orion5x_wdt.
  
@@ -144370,7 +143359,7 @@ Index: linux-2.6.28/drivers/watchdog/Kconfig
  # ARM26 Architecture
  
  # AVR32 Architecture
-@@ -784,7 +790,7 @@ config WATCHDOG_RTAS
+@@ -784,7 +790,7 @@
        tristate "RTAS watchdog"
        depends on PPC_RTAS
        help
@@ -144379,11 +143368,9 @@ Index: linux-2.6.28/drivers/watchdog/Kconfig
  
          To compile this driver as a module, choose M here. The module
          will be called wdrtas.
-Index: linux-2.6.28/drivers/watchdog/Makefile
-===================================================================
---- linux-2.6.28.orig/drivers/watchdog/Makefile        2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/watchdog/Makefile     2009-01-02 00:01:57.000000000 +0100
-@@ -41,6 +41,7 @@ obj-$(CONFIG_PNX4008_WATCHDOG) += pnx400
+--- a/drivers/watchdog/Makefile
++++ b/drivers/watchdog/Makefile
+@@ -41,6 +41,7 @@
  obj-$(CONFIG_IOP_WATCHDOG) += iop_wdt.o
  obj-$(CONFIG_DAVINCI_WATCHDOG) += davinci_wdt.o
  obj-$(CONFIG_ORION5X_WATCHDOG) += orion5x_wdt.o
@@ -144391,10 +143378,8 @@ Index: linux-2.6.28/drivers/watchdog/Makefile
  
  # ARM26 Architecture
  
-Index: linux-2.6.28/drivers/watchdog/pcf50606_wdt.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/watchdog/pcf50606_wdt.c       2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/drivers/watchdog/pcf50606_wdt.c
 @@ -0,0 +1,213 @@
 +/* Philips PCF50606 Watchdog Timer Driver
 + *
@@ -144609,10 +143594,8 @@ Index: linux-2.6.28/drivers/watchdog/pcf50606_wdt.c
 +MODULE_LICENSE("GPL");
 +MODULE_ALIAS("platform:pcf50606-wdt");
 +
-Index: linux-2.6.28/drivers/watchdog/s3c2410_wdt.c
-===================================================================
---- linux-2.6.28.orig/drivers/watchdog/s3c2410_wdt.c   2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/watchdog/s3c2410_wdt.c        2009-01-02 00:01:57.000000000 +0100
+--- a/drivers/watchdog/s3c2410_wdt.c
++++ b/drivers/watchdog/s3c2410_wdt.c
 @@ -42,7 +42,7 @@
  #undef S3C_VA_WATCHDOG
  #define S3C_VA_WATCHDOG (0)
@@ -144622,11 +143605,9 @@ Index: linux-2.6.28/drivers/watchdog/s3c2410_wdt.c
  
  #define PFX "s3c2410-wdt: "
  
-Index: linux-2.6.28/fs/jffs2/background.c
-===================================================================
---- linux-2.6.28.orig/fs/jffs2/background.c    2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/fs/jffs2/background.c 2009-01-02 00:01:57.000000000 +0100
-@@ -95,13 +95,17 @@ static int jffs2_garbage_collect_thread(
+--- a/fs/jffs2/background.c
++++ b/fs/jffs2/background.c
+@@ -95,13 +95,17 @@
                        spin_unlock(&c->erase_completion_lock);
                        
  
@@ -144651,10 +143632,8 @@ Index: linux-2.6.28/fs/jffs2/background.c
  
                /* Put_super will send a SIGKILL and then wait on the sem.
                 */
-Index: linux-2.6.28/include/asm-arm/plat-s3c/iic.h
-===================================================================
---- linux-2.6.28.orig/include/asm-arm/plat-s3c/iic.h   2008-12-25 00:26:37.000000000 +0100
-+++ /dev/null  1970-01-01 00:00:00.000000000 +0000
+--- a/include/asm-arm/plat-s3c/iic.h
++++ /dev/null
 @@ -1,33 +0,0 @@
 -/* arch/arm/mach-s3c2410/include/mach/iic.h
 - *
@@ -144689,10 +143668,8 @@ Index: linux-2.6.28/include/asm-arm/plat-s3c/iic.h
 -};
 -
 -#endif /* __ASM_ARCH_IIC_H */
-Index: linux-2.6.28/include/asm-arm/plat-s3c/nand.h
-===================================================================
---- linux-2.6.28.orig/include/asm-arm/plat-s3c/nand.h  2008-12-25 00:26:37.000000000 +0100
-+++ /dev/null  1970-01-01 00:00:00.000000000 +0000
+--- a/include/asm-arm/plat-s3c/nand.h
++++ /dev/null
 @@ -1,50 +0,0 @@
 -/* arch/arm/mach-s3c2410/include/mach/nand.h
 - *
@@ -144744,10 +143721,8 @@ Index: linux-2.6.28/include/asm-arm/plat-s3c/nand.h
 -                                             int chip);
 -};
 -
-Index: linux-2.6.28/include/asm-arm/plat-s3c/regs-ac97.h
-===================================================================
---- linux-2.6.28.orig/include/asm-arm/plat-s3c/regs-ac97.h     2008-12-25 00:26:37.000000000 +0100
-+++ /dev/null  1970-01-01 00:00:00.000000000 +0000
+--- a/include/asm-arm/plat-s3c/regs-ac97.h
++++ /dev/null
 @@ -1,67 +0,0 @@
 -/* arch/arm/mach-s3c2410/include/mach/regs-ac97.h
 - *
@@ -144816,10 +143791,8 @@ Index: linux-2.6.28/include/asm-arm/plat-s3c/regs-ac97.h
 -#define S3C_AC97_MIC_DATA                             (0x1C)
 -
 -#endif /* __ASM_ARCH_REGS_AC97_H */
-Index: linux-2.6.28/include/asm-arm/plat-s3c/regs-iic.h
-===================================================================
---- linux-2.6.28.orig/include/asm-arm/plat-s3c/regs-iic.h      2008-12-25 00:26:37.000000000 +0100
-+++ /dev/null  1970-01-01 00:00:00.000000000 +0000
+--- a/include/asm-arm/plat-s3c/regs-iic.h
++++ /dev/null
 @@ -1,56 +0,0 @@
 -/* arch/arm/mach-s3c2410/include/mach/regs-iic.h
 - *
@@ -144877,10 +143850,8 @@ Index: linux-2.6.28/include/asm-arm/plat-s3c/regs-iic.h
 -#define S3C2410_IICLC_FILTER_ON               (1<<2)
 -
 -#endif /* __ASM_ARCH_REGS_IIC_H */
-Index: linux-2.6.28/include/asm-arm/plat-s3c/regs-nand.h
-===================================================================
---- linux-2.6.28.orig/include/asm-arm/plat-s3c/regs-nand.h     2008-12-25 00:26:37.000000000 +0100
-+++ /dev/null  1970-01-01 00:00:00.000000000 +0000
+--- a/include/asm-arm/plat-s3c/regs-nand.h
++++ /dev/null
 @@ -1,123 +0,0 @@
 -/* arch/arm/mach-s3c2410/include/mach/regs-nand.h
 - *
@@ -145005,10 +143976,8 @@ Index: linux-2.6.28/include/asm-arm/plat-s3c/regs-nand.h
 -
 -#endif /* __ASM_ARM_REGS_NAND */
 -
-Index: linux-2.6.28/include/asm-arm/plat-s3c/regs-rtc.h
-===================================================================
---- linux-2.6.28.orig/include/asm-arm/plat-s3c/regs-rtc.h      2008-12-25 00:26:37.000000000 +0100
-+++ /dev/null  1970-01-01 00:00:00.000000000 +0000
+--- a/include/asm-arm/plat-s3c/regs-rtc.h
++++ /dev/null
 @@ -1,61 +0,0 @@
 -/* arch/arm/mach-s3c2410/include/mach/regs-rtc.h
 - *
@@ -145071,10 +144040,8 @@ Index: linux-2.6.28/include/asm-arm/plat-s3c/regs-rtc.h
 -
 -
 -#endif /* __ASM_ARCH_REGS_RTC_H */
-Index: linux-2.6.28/include/asm-arm/plat-s3c/regs-watchdog.h
-===================================================================
---- linux-2.6.28.orig/include/asm-arm/plat-s3c/regs-watchdog.h 2008-12-25 00:26:37.000000000 +0100
-+++ /dev/null  1970-01-01 00:00:00.000000000 +0000
+--- a/include/asm-arm/plat-s3c/regs-watchdog.h
++++ /dev/null
 @@ -1,41 +0,0 @@
 -/* arch/arm/mach-s3c2410/include/mach/regs-watchdog.h
 - *
@@ -145117,10 +144084,8 @@ Index: linux-2.6.28/include/asm-arm/plat-s3c/regs-watchdog.h
 -#endif /* __ASM_ARCH_REGS_WATCHDOG_H */
 -
 -
-Index: linux-2.6.28/include/asm-arm/plat-s3c24xx/mci.h
-===================================================================
---- linux-2.6.28.orig/include/asm-arm/plat-s3c24xx/mci.h       2008-12-25 00:26:37.000000000 +0100
-+++ /dev/null  1970-01-01 00:00:00.000000000 +0000
+--- a/include/asm-arm/plat-s3c24xx/mci.h
++++ /dev/null
 @@ -1,15 +0,0 @@
 -#ifndef _ARCH_MCI_H
 -#define _ARCH_MCI_H
@@ -145137,10 +144102,8 @@ Index: linux-2.6.28/include/asm-arm/plat-s3c24xx/mci.h
 -};
 -
 -#endif /* _ARCH_NCI_H */
-Index: linux-2.6.28/include/asm-arm/plat-s3c24xx/neo1973.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/include/asm-arm/plat-s3c24xx/neo1973.h        2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/include/asm-arm/plat-s3c24xx/neo1973.h
 @@ -0,0 +1,33 @@
 +/*
 + * include/asm-arm/plat-s3c24xx/neo1973.h
@@ -145175,10 +144138,8 @@ Index: linux-2.6.28/include/asm-arm/plat-s3c24xx/neo1973.h
 +void neo1973_gpb_setpin(unsigned int pin, unsigned to);
 +
 +#endif
-Index: linux-2.6.28/include/asm-arm/plat-s3c24xx/regs-spi.h
-===================================================================
---- linux-2.6.28.orig/include/asm-arm/plat-s3c24xx/regs-spi.h  2008-12-25 00:26:37.000000000 +0100
-+++ /dev/null  1970-01-01 00:00:00.000000000 +0000
+--- a/include/asm-arm/plat-s3c24xx/regs-spi.h
++++ /dev/null
 @@ -1,82 +0,0 @@
 -/* arch/arm/mach-s3c2410/include/mach/regs-spi.h
 - *
@@ -145262,10 +144223,8 @@ Index: linux-2.6.28/include/asm-arm/plat-s3c24xx/regs-spi.h
 -
 -
 -#endif /* __ASM_ARCH_REGS_SPI_H */
-Index: linux-2.6.28/include/asm-arm/plat-s3c24xx/regs-udc.h
-===================================================================
---- linux-2.6.28.orig/include/asm-arm/plat-s3c24xx/regs-udc.h  2008-12-25 00:26:37.000000000 +0100
-+++ /dev/null  1970-01-01 00:00:00.000000000 +0000
+--- a/include/asm-arm/plat-s3c24xx/regs-udc.h
++++ /dev/null
 @@ -1,153 +0,0 @@
 -/* arch/arm/mach-s3c2410/include/mach/regs-udc.h
 - *
@@ -145420,10 +144379,8 @@ Index: linux-2.6.28/include/asm-arm/plat-s3c24xx/regs-udc.h
 -
 -
 -#endif
-Index: linux-2.6.28/include/asm-arm/plat-s3c24xx/udc.h
-===================================================================
---- linux-2.6.28.orig/include/asm-arm/plat-s3c24xx/udc.h       2008-12-25 00:26:37.000000000 +0100
-+++ /dev/null  1970-01-01 00:00:00.000000000 +0000
+--- a/include/asm-arm/plat-s3c24xx/udc.h
++++ /dev/null
 @@ -1,36 +0,0 @@
 -/* arch/arm/mach-s3c2410/include/mach/udc.h
 - *
@@ -145461,10 +144418,8 @@ Index: linux-2.6.28/include/asm-arm/plat-s3c24xx/udc.h
 -extern void __init s3c24xx_udc_set_platdata(struct s3c2410_udc_mach_info *);
 -
 -#endif /* __ASM_ARM_ARCH_UDC_H */
-Index: linux-2.6.28/include/linux/android_aid.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/include/linux/android_aid.h   2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/include/linux/android_aid.h
 @@ -0,0 +1,25 @@
 +/* include/linux/android_aid.h
 + *
@@ -145491,10 +144446,8 @@ Index: linux-2.6.28/include/linux/android_aid.h
 +#define AID_NET_RAW      3004
 +
 +#endif
-Index: linux-2.6.28/include/linux/android_alarm.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/include/linux/android_alarm.h 2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/include/linux/android_alarm.h
 @@ -0,0 +1,59 @@
 +/* include/linux/android_alarm.h
 + *
@@ -145555,10 +144508,8 @@ Index: linux-2.6.28/include/linux/android_alarm.h
 +#define ANDROID_ALARM_IOCTL_TO_TYPE(cmd) (_IOC_NR(cmd) >> 4)
 +
 +#endif
-Index: linux-2.6.28/include/linux/android_power.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/include/linux/android_power.h 2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/include/linux/android_power.h
 @@ -0,0 +1,98 @@
 +/* include/linux/android_power.h
 + *
@@ -145658,10 +144609,8 @@ Index: linux-2.6.28/include/linux/android_power.h
 +
 +#endif
 +
-Index: linux-2.6.28/include/linux/android_timed_gpio.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/include/linux/android_timed_gpio.h    2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/include/linux/android_timed_gpio.h
 @@ -0,0 +1,31 @@
 +/* include/linux/android_timed_gpio.h
 + *
@@ -145694,10 +144643,8 @@ Index: linux-2.6.28/include/linux/android_timed_gpio.h
 +};
 +
 +#endif
-Index: linux-2.6.28/include/linux/ashmem.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/include/linux/ashmem.h        2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/include/linux/ashmem.h
 @@ -0,0 +1,48 @@
 +/*
 + * include/linux/ashmem.h
@@ -145747,10 +144694,8 @@ Index: linux-2.6.28/include/linux/ashmem.h
 +#define ASHMEM_PURGE_ALL_CACHES       _IO(__ASHMEMIOC, 10)
 +
 +#endif        /* _LINUX_ASHMEM_H */
-Index: linux-2.6.28/include/linux/binder.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/include/linux/binder.h        2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/include/linux/binder.h
 @@ -0,0 +1,330 @@
 +/*
 + * Copyright (C) 2008 Google, Inc.
@@ -146082,10 +145027,8 @@ Index: linux-2.6.28/include/linux/binder.h
 +
 +#endif /* _LINUX_BINDER_H */
 +
-Index: linux-2.6.28/include/linux/bq27000_battery.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/include/linux/bq27000_battery.h       2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/include/linux/bq27000_battery.h
 @@ -0,0 +1,14 @@
 +#ifndef __BQ27000_BATTERY_H__
 +#define __BQ27000_BATTERY_H__
@@ -146101,11 +145044,9 @@ Index: linux-2.6.28/include/linux/bq27000_battery.h
 +};
 +
 +#endif
-Index: linux-2.6.28/include/linux/device.h
-===================================================================
---- linux-2.6.28.orig/include/linux/device.h   2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/include/linux/device.h        2009-01-02 00:01:57.000000000 +0100
-@@ -48,6 +48,11 @@ extern int __must_check bus_create_file(
+--- a/include/linux/device.h
++++ b/include/linux/device.h
+@@ -48,6 +48,11 @@
                                        struct bus_attribute *);
  extern void bus_remove_file(struct bus_type *, struct bus_attribute *);
  
@@ -146117,11 +145058,9 @@ Index: linux-2.6.28/include/linux/device.h
  struct bus_type {
        const char              *name;
        struct bus_attribute    *bus_attrs;
-Index: linux-2.6.28/include/linux/fb.h
-===================================================================
---- linux-2.6.28.orig/include/linux/fb.h       2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/include/linux/fb.h    2009-01-02 00:01:57.000000000 +0100
-@@ -123,6 +123,7 @@ struct dentry;
+--- a/include/linux/fb.h
++++ b/include/linux/fb.h
+@@ -123,6 +123,7 @@
  #define FB_ACCEL_TRIDENT_3DIMAGE 51   /* Trident 3DImage              */
  #define FB_ACCEL_TRIDENT_BLADE3D 52   /* Trident Blade3D              */
  #define FB_ACCEL_TRIDENT_BLADEXP 53   /* Trident BladeXP              */
@@ -146129,10 +145068,8 @@ Index: linux-2.6.28/include/linux/fb.h
  #define FB_ACCEL_NEOMAGIC_NM2070 90   /* NeoMagic NM2070              */
  #define FB_ACCEL_NEOMAGIC_NM2090 91   /* NeoMagic NM2090              */
  #define FB_ACCEL_NEOMAGIC_NM2093 92   /* NeoMagic NM2093              */
-Index: linux-2.6.28/include/linux/glamofb.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/include/linux/glamofb.h       2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/include/linux/glamofb.h
 @@ -0,0 +1,45 @@
 +#ifndef _LINUX_GLAMOFB_H
 +#define _LINUX_GLAMOFB_H
@@ -146179,10 +145116,8 @@ Index: linux-2.6.28/include/linux/glamofb.h
 +void glamo_lcm_reset(int level);
 +
 +#endif
-Index: linux-2.6.28/include/linux/glamo-gpio.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/include/linux/glamo-gpio.h    2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/include/linux/glamo-gpio.h
 @@ -0,0 +1,99 @@
 +#ifndef __GLAMO_GPIO_H
 +#define __GLAMO_GPIO_H
@@ -146283,10 +145218,8 @@ Index: linux-2.6.28/include/linux/glamo-gpio.h
 +
 +
 +#endif /* _GLAMO_GPIO */
-Index: linux-2.6.28/include/linux/gta02_hdq.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/include/linux/gta02_hdq.h     2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/include/linux/gta02_hdq.h
 @@ -0,0 +1,18 @@
 +#ifndef __GTA02HDQ_H__
 +#define __GTA02HDQ_H__
@@ -146306,10 +145239,8 @@ Index: linux-2.6.28/include/linux/gta02_hdq.h
 +int gta02hdq_initialized(void);
 +
 +#endif
-Index: linux-2.6.28/include/linux/i2c-id.h
-===================================================================
---- linux-2.6.28.orig/include/linux/i2c-id.h   2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/include/linux/i2c-id.h        2009-01-02 00:01:57.000000000 +0100
+--- a/include/linux/i2c-id.h
++++ b/include/linux/i2c-id.h
 @@ -83,6 +83,9 @@
  #define I2C_DRIVERID_CS5345   96      /* cs5345 audio processor       */
  
@@ -146320,10 +145251,8 @@ Index: linux-2.6.28/include/linux/i2c-id.h
  
  /*
   * ---- Adapter types ----------------------------------------------------
-Index: linux-2.6.28/include/linux/jbt6k74.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/include/linux/jbt6k74.h       2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/include/linux/jbt6k74.h
 @@ -0,0 +1,14 @@
 +#ifndef __JBT6K74_H__
 +#define __JBT6K74_H__
@@ -146339,11 +145268,9 @@ Index: linux-2.6.28/include/linux/jbt6k74.h
 +};
 +
 +#endif
-Index: linux-2.6.28/include/linux/kernel.h
-===================================================================
---- linux-2.6.28.orig/include/linux/kernel.h   2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/include/linux/kernel.h        2009-01-02 00:01:57.000000000 +0100
-@@ -225,6 +225,8 @@ extern struct ratelimit_state printk_rat
+--- a/include/linux/kernel.h
++++ b/include/linux/kernel.h
+@@ -225,6 +225,8 @@
  extern int printk_ratelimit(void);
  extern bool printk_timed_ratelimit(unsigned long *caller_jiffies,
                                   unsigned int interval_msec);
@@ -146352,10 +145279,8 @@ Index: linux-2.6.28/include/linux/kernel.h
  #else
  static inline int vprintk(const char *s, va_list args)
        __attribute__ ((format (printf, 1, 0)));
-Index: linux-2.6.28/include/linux/kexec.h
-===================================================================
---- linux-2.6.28.orig/include/linux/kexec.h    2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/include/linux/kexec.h 2009-01-02 00:01:57.000000000 +0100
+--- a/include/linux/kexec.h
++++ b/include/linux/kexec.h
 @@ -1,7 +1,6 @@
  #ifndef LINUX_KEXEC_H
  #define LINUX_KEXEC_H
@@ -146373,10 +145298,8 @@ Index: linux-2.6.28/include/linux/kexec.h
  /* Verify architecture specific macros are defined */
  
  #ifndef KEXEC_SOURCE_MEMORY_LIMIT
-Index: linux-2.6.28/include/linux/lis302dl.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/include/linux/lis302dl.h      2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/include/linux/lis302dl.h
 @@ -0,0 +1,154 @@
 +#ifndef _LINUX_LIS302DL_H
 +#define _LINUX_LIS302DL_H
@@ -146532,10 +145455,8 @@ Index: linux-2.6.28/include/linux/lis302dl.h
 +
 +#endif /* _LINUX_LIS302DL_H */
 +
-Index: linux-2.6.28/include/linux/logger.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/include/linux/logger.h        2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/include/linux/logger.h
 @@ -0,0 +1,48 @@
 +/* include/linux/logger.h
 + *
@@ -146585,10 +145506,8 @@ Index: linux-2.6.28/include/linux/logger.h
 +#define LOGGER_FLUSH_LOG              _IO(__LOGGERIO, 4) /* flush log */
 +
 +#endif /* _LINUX_LOGGER_H */
-Index: linux-2.6.28/include/linux/mfd/pcf50606/adc.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/include/linux/mfd/pcf50606/adc.h      2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/include/linux/mfd/pcf50606/adc.h
 @@ -0,0 +1,87 @@
 +/*
 + * adc.h  -- Driver for NXP PCF50606 ADC
@@ -146677,10 +145596,8 @@ Index: linux-2.6.28/include/linux/mfd/pcf50606/adc.h
 +pcf50606_adc_sync_read(struct pcf50606 *pcf, int mux, int avg);
 +
 +#endif /* __LINUX_PCF50606_ADC_H */
-Index: linux-2.6.28/include/linux/mfd/pcf50606/core.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/include/linux/mfd/pcf50606/core.h     2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/include/linux/mfd/pcf50606/core.h
 @@ -0,0 +1,163 @@
 +/*
 + * core.h  -- Core driver for NXP PCF50606
@@ -146845,10 +145762,8 @@ Index: linux-2.6.28/include/linux/mfd/pcf50606/core.h
 +
 +#endif
 +
-Index: linux-2.6.28/include/linux/mfd/pcf50606/gpo.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/include/linux/mfd/pcf50606/gpo.h      2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/include/linux/mfd/pcf50606/gpo.h
 @@ -0,0 +1,43 @@
 +/*
 + * gpo.h -- GPO driver for NXP PCF50606
@@ -146893,10 +145808,8 @@ Index: linux-2.6.28/include/linux/mfd/pcf50606/gpo.h
 +#endif /* __LINUX_MFD_PCF50606_GPIO_H */
 +
 +
-Index: linux-2.6.28/include/linux/mfd/pcf50606/input.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/include/linux/mfd/pcf50606/input.h    2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/include/linux/mfd/pcf50606/input.h
 @@ -0,0 +1,37 @@
 +/*
 + * input.h  -- Input driver for NXP PCF50606
@@ -146935,10 +145848,8 @@ Index: linux-2.6.28/include/linux/mfd/pcf50606/input.h
 +
 +#endif
 +
-Index: linux-2.6.28/include/linux/mfd/pcf50606/led.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/include/linux/mfd/pcf50606/led.h      2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/include/linux/mfd/pcf50606/led.h
 @@ -0,0 +1,22 @@
 +/*
 + * led.h  -- LED driver for NXP PCF50606
@@ -146962,10 +145873,8 @@ Index: linux-2.6.28/include/linux/mfd/pcf50606/led.h
 +
 +#endif
 +
-Index: linux-2.6.28/include/linux/mfd/pcf50606/mbc.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/include/linux/mfd/pcf50606/mbc.h      2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/include/linux/mfd/pcf50606/mbc.h
 @@ -0,0 +1,53 @@
 +/*
 + * mbc.h  -- Driver for NXP PCF50606 Main Battery Charger
@@ -147020,10 +145929,8 @@ Index: linux-2.6.28/include/linux/mfd/pcf50606/mbc.h
 +};
 +#endif
 +
-Index: linux-2.6.28/include/linux/mfd/pcf50606/pmic.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/include/linux/mfd/pcf50606/pmic.h     2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/include/linux/mfd/pcf50606/pmic.h
 @@ -0,0 +1,82 @@
 +#ifndef __LINUX_MFD_PCF50606_PMIC_H
 +#define __LINUX_MFD_PCF50606_PMIC_H
@@ -147107,10 +146014,8 @@ Index: linux-2.6.28/include/linux/mfd/pcf50606/pmic.h
 +};
 +#endif
 +
-Index: linux-2.6.28/include/linux/mfd/pcf50606/rtc.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/include/linux/mfd/pcf50606/rtc.h      2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/include/linux/mfd/pcf50606/rtc.h
 @@ -0,0 +1,43 @@
 +/*
 + * rtc.h  -- RTC driver for NXP PCF50606
@@ -147155,10 +146060,8 @@ Index: linux-2.6.28/include/linux/mfd/pcf50606/rtc.h
 +
 +#endif
 +
-Index: linux-2.6.28/include/linux/mfd/pcf50606/wdt.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/include/linux/mfd/pcf50606/wdt.h      2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/include/linux/mfd/pcf50606/wdt.h
 @@ -0,0 +1,32 @@
 +/*
 + * wdt.h -- WDT driver for NXP PCF50606
@@ -147192,10 +146095,8 @@ Index: linux-2.6.28/include/linux/mfd/pcf50606/wdt.h
 +#endif /* __LINUX_MFD_PCF50606_WDT_H */
 +
 +
-Index: linux-2.6.28/include/linux/mfd/pcf50633/adc.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/include/linux/mfd/pcf50633/adc.h      2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/include/linux/mfd/pcf50633/adc.h
 @@ -0,0 +1,88 @@
 +/*
 + * adc.h  -- Driver for NXP PCF50633 ADC
@@ -147285,10 +146186,8 @@ Index: linux-2.6.28/include/linux/mfd/pcf50633/adc.h
 +pcf50633_adc_sync_read(struct pcf50633 *pcf, int mux, int avg);
 +
 +#endif /* __LINUX_PCF50633_ADC_H */
-Index: linux-2.6.28/include/linux/mfd/pcf50633/core.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/include/linux/mfd/pcf50633/core.h     2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/include/linux/mfd/pcf50633/core.h
 @@ -0,0 +1,212 @@
 +/*
 + * core.h  -- Core driver for NXP PCF50633
@@ -147502,10 +146401,8 @@ Index: linux-2.6.28/include/linux/mfd/pcf50633/core.h
 +
 +#endif
 +
-Index: linux-2.6.28/include/linux/mfd/pcf50633/gpio.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/include/linux/mfd/pcf50633/gpio.h     2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/include/linux/mfd/pcf50633/gpio.h
 @@ -0,0 +1,51 @@
 +/*
 + * gpio.h -- GPIO driver for NXP PCF50633
@@ -147558,10 +146455,8 @@ Index: linux-2.6.28/include/linux/mfd/pcf50633/gpio.h
 +#endif /* __LINUX_MFD_PCF50633_GPIO_H */
 +
 +
-Index: linux-2.6.28/include/linux/mfd/pcf50633/input.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/include/linux/mfd/pcf50633/input.h    2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/include/linux/mfd/pcf50633/input.h
 @@ -0,0 +1,29 @@
 +/*
 + * input.h  -- Input driver for NXP PCF50633
@@ -147592,10 +146487,8 @@ Index: linux-2.6.28/include/linux/mfd/pcf50633/input.h
 +
 +#endif
 +
-Index: linux-2.6.28/include/linux/mfd/pcf50633/led.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/include/linux/mfd/pcf50633/led.h      2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/include/linux/mfd/pcf50633/led.h
 @@ -0,0 +1,24 @@
 +/*
 + * led.h  -- LED driver for NXP PCF50633
@@ -147621,10 +146514,8 @@ Index: linux-2.6.28/include/linux/mfd/pcf50633/led.h
 +
 +#endif
 +
-Index: linux-2.6.28/include/linux/mfd/pcf50633/mbc.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/include/linux/mfd/pcf50633/mbc.h      2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/include/linux/mfd/pcf50633/mbc.h
 @@ -0,0 +1,140 @@
 +/*
 + * mbc.h  -- Driver for NXP PCF50633 Main Battery Charger
@@ -147766,10 +146657,8 @@ Index: linux-2.6.28/include/linux/mfd/pcf50633/mbc.h
 +};
 +#endif
 +
-Index: linux-2.6.28/include/linux/mfd/pcf50633/pmic.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/include/linux/mfd/pcf50633/pmic.h     2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/include/linux/mfd/pcf50633/pmic.h
 @@ -0,0 +1,73 @@
 +#ifndef __LINUX_MFD_PCF50633_PMIC_H
 +#define __LINUX_MFD_PCF50633_PMIC_H
@@ -147844,10 +146733,8 @@ Index: linux-2.6.28/include/linux/mfd/pcf50633/pmic.h
 +};
 +#endif
 +
-Index: linux-2.6.28/include/linux/mfd/pcf50633/rtc.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/include/linux/mfd/pcf50633/rtc.h      2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/include/linux/mfd/pcf50633/rtc.h
 @@ -0,0 +1,43 @@
 +/*
 + * rtc.h  -- RTC driver for NXP PCF50633
@@ -147892,11 +146779,9 @@ Index: linux-2.6.28/include/linux/mfd/pcf50633/rtc.h
 +
 +#endif
 +
-Index: linux-2.6.28/include/linux/mmc/core.h
-===================================================================
---- linux-2.6.28.orig/include/linux/mmc/core.h 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/include/linux/mmc/core.h      2009-01-02 00:01:57.000000000 +0100
-@@ -129,6 +129,8 @@ struct mmc_request {
+--- a/include/linux/mmc/core.h
++++ b/include/linux/mmc/core.h
+@@ -129,6 +129,8 @@
  struct mmc_host;
  struct mmc_card;
  
@@ -147905,10 +146790,8 @@ Index: linux-2.6.28/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.28/include/linux/mmc/sdio_ids.h
-===================================================================
---- linux-2.6.28.orig/include/linux/mmc/sdio_ids.h     2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/include/linux/mmc/sdio_ids.h  2009-01-02 00:01:57.000000000 +0100
+--- a/include/linux/mmc/sdio_ids.h
++++ b/include/linux/mmc/sdio_ids.h
 @@ -25,5 +25,8 @@
  
  #define SDIO_VENDOR_ID_MARVELL                        0x02df
@@ -147918,11 +146801,9 @@ Index: linux-2.6.28/include/linux/mmc/sdio_ids.h
 +#define SDIO_DEVICE_ID_ATHEROS_AR6000         0x0100
  
  #endif
-Index: linux-2.6.28/include/linux/mm.h
-===================================================================
---- linux-2.6.28.orig/include/linux/mm.h       2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/include/linux/mm.h    2009-01-02 00:01:57.000000000 +0100
-@@ -714,7 +714,7 @@ static inline int shmem_lock(struct file
+--- a/include/linux/mm.h
++++ b/include/linux/mm.h
+@@ -713,7 +713,7 @@
  }
  #endif
  struct file *shmem_file_setup(char *name, loff_t size, unsigned long flags);
@@ -147931,10 +146812,8 @@ Index: linux-2.6.28/include/linux/mm.h
  int shmem_zero_setup(struct vm_area_struct *);
  
  #ifndef CONFIG_MMU
-Index: linux-2.6.28/include/linux/pcf50606.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/include/linux/pcf50606.h      2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/include/linux/pcf50606.h
 @@ -0,0 +1,91 @@
 +#ifndef _LINUX_PCF50606_H
 +#define _LINUX_PCF50606_H
@@ -148027,10 +146906,8 @@ Index: linux-2.6.28/include/linux/pcf50606.h
 +};
 +
 +#endif
-Index: linux-2.6.28/include/linux/pcf50633.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/include/linux/pcf50633.h      2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/include/linux/pcf50633.h
 @@ -0,0 +1,618 @@
 +#ifndef _LINUX_PCF50633_H
 +#define _LINUX_PCF50633_H
@@ -148650,10 +147527,8 @@ Index: linux-2.6.28/include/linux/pcf50633.h
 +void pcf50633_charge_autofast(int on);
 +#endif /* _PCF50633_H */
 +
-Index: linux-2.6.28/include/linux/pcf506xx.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/include/linux/pcf506xx.h      2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/include/linux/pcf506xx.h
 @@ -0,0 +1,34 @@
 +#ifndef _LINUX_PCF506XX_H
 +#define _LINUX_PCF506XX_H
@@ -148689,18 +147564,14 @@ Index: linux-2.6.28/include/linux/pcf506xx.h
 +
 +
 +#endif /* !_LINUX_PCF506XX_H */
-Index: linux-2.6.28/include/linux/regulator/pcf50633.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/include/linux/regulator/pcf50633.h    2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/include/linux/regulator/pcf50633.h
 @@ -0,0 +1,3 @@
 +#include <linux/pcf50633.h>
 +
 +int pcf50633_regulator_init(struct pcf50633_data *, int);
-Index: linux-2.6.28/include/linux/resume-dependency.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/include/linux/resume-dependency.h     2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/include/linux/resume-dependency.h
 @@ -0,0 +1,114 @@
 +#ifndef __RESUME_DEPENDENCY_H__
 +#define __RESUME_DEPENDENCY_H__
@@ -148816,10 +147687,8 @@ Index: linux-2.6.28/include/linux/resume-dependency.h
 + */
 +
 +#endif
-Index: linux-2.6.28/include/linux/rtc/pcf50633.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/include/linux/rtc/pcf50633.h  2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/include/linux/rtc/pcf50633.h
 @@ -0,0 +1,9 @@
 +enum pcf50633_rtc_event {
 +        PCF50633_RTC_EVENT_ALARM,
@@ -148830,10 +147699,8 @@ Index: linux-2.6.28/include/linux/rtc/pcf50633.h
 +                                        enum pcf50633_rtc_event evt);
 +
 +
-Index: linux-2.6.28/include/linux/serial_core.h
-===================================================================
---- linux-2.6.28.orig/include/linux/serial_core.h      2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/include/linux/serial_core.h   2009-01-02 00:01:57.000000000 +0100
+--- a/include/linux/serial_core.h
++++ b/include/linux/serial_core.h
 @@ -158,6 +158,8 @@
  /* SH-SCI */
  #define PORT_SCIFA    83
@@ -148843,10 +147710,8 @@ Index: linux-2.6.28/include/linux/serial_core.h
  #ifdef __KERNEL__
  
  #include <linux/compiler.h>
-Index: linux-2.6.28/include/linux/spi/glamo.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/include/linux/spi/glamo.h     2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/include/linux/spi/glamo.h
 @@ -0,0 +1,28 @@
 +#ifndef __GLAMO_SPI_H
 +#define __GLAMO_SPI_H
@@ -148876,11 +147741,9 @@ Index: linux-2.6.28/include/linux/spi/glamo.h
 +
 +
 +#endif
-Index: linux-2.6.28/include/linux/suspend.h
-===================================================================
---- linux-2.6.28.orig/include/linux/suspend.h  2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/include/linux/suspend.h       2009-01-02 00:01:57.000000000 +0100
-@@ -146,6 +146,12 @@ struct pbe {
+--- a/include/linux/suspend.h
++++ b/include/linux/suspend.h
+@@ -146,6 +146,12 @@
        struct pbe *next;
  };
  
@@ -148893,10 +147756,8 @@ Index: linux-2.6.28/include/linux/suspend.h
  /* mm/page_alloc.c */
  extern void mark_free_pages(struct zone *zone);
  
-Index: linux-2.6.28/include/linux/ts_filter_group.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/include/linux/ts_filter_group.h       2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/include/linux/ts_filter_group.h
 @@ -0,0 +1,39 @@
 +#ifndef __TS_FILTER_GROUP_H__
 +#define __TS_FILTER_GROUP_H__
@@ -148937,10 +147798,8 @@ Index: linux-2.6.28/include/linux/ts_filter_group.h
 +extern struct ts_filter_api ts_filter_group_api;
 +
 +#endif
-Index: linux-2.6.28/include/linux/ts_filter.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/include/linux/ts_filter.h     2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/include/linux/ts_filter.h
 @@ -0,0 +1,56 @@
 +#ifndef __TS_FILTER_H__
 +#define __TS_FILTER_H__
@@ -148998,10 +147857,8 @@ Index: linux-2.6.28/include/linux/ts_filter.h
 +                                  struct ts_filter **list);
 +
 +#endif
-Index: linux-2.6.28/include/linux/ts_filter_linear.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/include/linux/ts_filter_linear.h      2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/include/linux/ts_filter_linear.h
 @@ -0,0 +1,64 @@
 +#ifndef __TS_FILTER_LINEAR_H__
 +#define __TS_FILTER_LINEAR_H__
@@ -149067,10 +147924,8 @@ Index: linux-2.6.28/include/linux/ts_filter_linear.h
 +extern struct ts_filter_api ts_filter_linear_api;
 +
 +#endif
-Index: linux-2.6.28/include/linux/ts_filter_mean.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/include/linux/ts_filter_mean.h        2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/include/linux/ts_filter_mean.h
 @@ -0,0 +1,34 @@
 +#ifndef __TS_FILTER_MEAN_H__
 +#define __TS_FILTER_MEAN_H__
@@ -149106,10 +147961,8 @@ Index: linux-2.6.28/include/linux/ts_filter_mean.h
 +extern struct ts_filter_api ts_filter_mean_api;
 +
 +#endif
-Index: linux-2.6.28/include/linux/ts_filter_median.h
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/include/linux/ts_filter_median.h      2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/include/linux/ts_filter_median.h
 @@ -0,0 +1,36 @@
 +#ifndef __TS_FILTER_MEDIAN_H__
 +#define __TS_FILTER_MEDIAN_H__
@@ -149147,11 +148000,9 @@ Index: linux-2.6.28/include/linux/ts_filter_median.h
 +extern struct ts_filter_api ts_filter_median_api;
 +
 +#endif
-Index: linux-2.6.28/include/linux/vt.h
-===================================================================
---- linux-2.6.28.orig/include/linux/vt.h       2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/include/linux/vt.h    2009-01-02 00:01:57.000000000 +0100
-@@ -18,8 +18,19 @@ extern int unregister_vt_notifier(struct
+--- a/include/linux/vt.h
++++ b/include/linux/vt.h
+@@ -18,8 +18,19 @@
   * resizing).
   */
  #define MIN_NR_CONSOLES 1       /* must be at least 1 */
@@ -149171,11 +148022,9 @@ Index: linux-2.6.28/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.28/include/sound/soc-dapm.h
-===================================================================
---- linux-2.6.28.orig/include/sound/soc-dapm.h 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/include/sound/soc-dapm.h      2009-01-02 00:01:57.000000000 +0100
-@@ -244,6 +244,13 @@ int snd_soc_dapm_nc_pin(struct snd_soc_c
+--- a/include/sound/soc-dapm.h
++++ b/include/sound/soc-dapm.h
+@@ -244,6 +244,13 @@
  int snd_soc_dapm_get_pin_status(struct snd_soc_codec *codec, char *pin);
  int snd_soc_dapm_sync(struct snd_soc_codec *codec);
  
@@ -149189,11 +148038,9 @@ Index: linux-2.6.28/include/sound/soc-dapm.h
  /* dapm widget types */
  enum snd_soc_dapm_type {
        snd_soc_dapm_input = 0,         /* input pin */
-Index: linux-2.6.28/init/Kconfig
-===================================================================
---- linux-2.6.28.orig/init/Kconfig     2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/init/Kconfig  2009-01-02 00:01:57.000000000 +0100
-@@ -732,6 +732,15 @@ config AIO
+--- a/init/Kconfig
++++ b/init/Kconfig
+@@ -732,6 +732,15 @@
            by some high performance threaded applications. Disabling
            this option saves about 7k.
  
@@ -149209,11 +148056,9 @@ Index: linux-2.6.28/init/Kconfig
  config VM_EVENT_COUNTERS
        default y
        bool "Enable VM event counters for /proc/vmstat" if EMBEDDED
-Index: linux-2.6.28/kernel/irq/chip.c
-===================================================================
---- linux-2.6.28.orig/kernel/irq/chip.c        2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/kernel/irq/chip.c     2009-01-02 00:01:57.000000000 +0100
-@@ -380,6 +380,7 @@ handle_level_irq(unsigned int irq, struc
+--- a/kernel/irq/chip.c
++++ b/kernel/irq/chip.c
+@@ -380,6 +380,7 @@
  out_unlock:
        spin_unlock(&desc->lock);
  }
@@ -149221,7 +148066,7 @@ Index: linux-2.6.28/kernel/irq/chip.c
  
  /**
   *    handle_fasteoi_irq - irq handler for transparent controllers
-@@ -583,6 +584,7 @@ __set_irq_handler(unsigned int irq, irq_
+@@ -583,6 +584,7 @@
        }
        spin_unlock_irqrestore(&desc->lock, flags);
  }
@@ -149229,11 +148074,9 @@ Index: linux-2.6.28/kernel/irq/chip.c
  
  void
  set_irq_chip_and_handler(unsigned int irq, struct irq_chip *chip,
-Index: linux-2.6.28/kernel/power/main.c
-===================================================================
---- linux-2.6.28.orig/kernel/power/main.c      2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/kernel/power/main.c   2009-01-02 00:01:57.000000000 +0100
-@@ -132,6 +132,9 @@ static inline int suspend_test(int level
+--- a/kernel/power/main.c
++++ b/kernel/power/main.c
+@@ -132,6 +132,9 @@
  
  #endif /* CONFIG_PM_SLEEP */
  
@@ -149243,7 +148086,7 @@ Index: linux-2.6.28/kernel/power/main.c
  #ifdef CONFIG_SUSPEND
  
  #ifdef CONFIG_PM_TEST_SUSPEND
-@@ -322,6 +325,8 @@ int suspend_devices_and_enter(suspend_st
+@@ -322,6 +325,8 @@
        if (!suspend_ops)
                return -ENOSYS;
  
@@ -149252,7 +148095,7 @@ Index: linux-2.6.28/kernel/power/main.c
        if (suspend_ops->begin) {
                error = suspend_ops->begin(state);
                if (error)
-@@ -365,6 +370,8 @@ int suspend_devices_and_enter(suspend_st
+@@ -365,6 +370,8 @@
   Close:
        if (suspend_ops->end)
                suspend_ops->end();
@@ -149261,7 +148104,7 @@ Index: linux-2.6.28/kernel/power/main.c
        return error;
  
   Recover_platform:
-@@ -427,6 +434,8 @@ static int enter_state(suspend_state_t s
+@@ -427,6 +434,8 @@
                return -EBUSY;
  
        printk(KERN_INFO "PM: Syncing filesystems ... ");
@@ -149270,10 +148113,8 @@ Index: linux-2.6.28/kernel/power/main.c
        sys_sync();
        printk("done.\n");
  
-Index: linux-2.6.28/kernel/printk.c
-===================================================================
---- linux-2.6.28.orig/kernel/printk.c  2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/kernel/printk.c       2009-01-02 00:01:57.000000000 +0100
+--- a/kernel/printk.c
++++ b/kernel/printk.c
 @@ -32,8 +32,11 @@
  #include <linux/security.h>
  #include <linux/bootmem.h>
@@ -149286,7 +148127,7 @@ Index: linux-2.6.28/kernel/printk.c
  
  /*
   * Architectures can override it:
-@@ -67,6 +70,12 @@ int console_printk[4] = {
+@@ -67,6 +70,12 @@
  int oops_in_progress;
  EXPORT_SYMBOL(oops_in_progress);
  
@@ -149299,7 +148140,7 @@ Index: linux-2.6.28/kernel/printk.c
  /*
   * console_sem protects the console_drivers list, and also
   * provides serialisation for access to the entire console
-@@ -667,8 +676,39 @@ asmlinkage int vprintk(const char *fmt, 
+@@ -667,8 +676,39 @@
        /* Emit the output into the temporary buffer */
        printed_len += vscnprintf(printk_buf + printed_len,
                                  sizeof(printk_buf) - printed_len, fmt, args);
@@ -149341,11 +148182,9 @@ Index: linux-2.6.28/kernel/printk.c
        /*
         * Copy the output into log_buf.  If the caller didn't provide
         * appropriate log level tags, we insert them here
-Index: linux-2.6.28/kernel/timer.c
-===================================================================
---- linux-2.6.28.orig/kernel/timer.c   2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/kernel/timer.c        2009-01-02 00:01:57.000000000 +0100
-@@ -813,7 +813,11 @@ static int cascade(struct tvec_base *bas
+--- a/kernel/timer.c
++++ b/kernel/timer.c
+@@ -813,7 +813,11 @@
         * don't have to detach them individually.
         */
        list_for_each_entry_safe(timer, tmp, &tv_list, entry) {
@@ -149358,11 +148197,9 @@ Index: linux-2.6.28/kernel/timer.c
                internal_add_timer(base, timer);
        }
  
-Index: linux-2.6.28/MAINTAINERS
-===================================================================
---- linux-2.6.28.orig/MAINTAINERS      2009-01-02 00:00:02.000000000 +0100
-+++ linux-2.6.28/MAINTAINERS   2009-01-02 00:01:57.000000000 +0100
-@@ -1705,6 +1705,20 @@ FILE LOCKING (flock() and fcntl()/lockf(
+--- a/MAINTAINERS
++++ b/MAINTAINERS
+@@ -1705,6 +1705,20 @@
  P:    Matthew Wilcox
  M:    matthew@wil.cx
  L:    linux-fsdevel@vger.kernel.org
@@ -149383,10 +148220,8 @@ Index: linux-2.6.28/MAINTAINERS
  S:    Maintained
  
  FILESYSTEMS (VFS and infrastructure)
-Index: linux-2.6.28/makerecovery
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/makerecovery  2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/makerecovery
 @@ -0,0 +1,17 @@
 +#!/bin/sh
 +#
@@ -149405,10 +148240,8 @@ Index: linux-2.6.28/makerecovery
 +rm -f _spacer
 +cat $1 >> recovery-$1
 +
-Index: linux-2.6.28/mm/ashmem.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/mm/ashmem.c   2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/mm/ashmem.c
 @@ -0,0 +1,657 @@
 +/* drivers/android/ashmem.c
 +**
@@ -150067,11 +148900,9 @@ Index: linux-2.6.28/mm/ashmem.c
 +module_exit(ashmem_exit);
 +
 +MODULE_LICENSE("GPL");
-Index: linux-2.6.28/mm/Makefile
-===================================================================
---- linux-2.6.28.orig/mm/Makefile      2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/mm/Makefile   2009-01-02 00:01:57.000000000 +0100
-@@ -22,6 +22,7 @@ obj-$(CONFIG_NUMA)   += mempolicy.o
+--- a/mm/Makefile
++++ b/mm/Makefile
+@@ -22,6 +22,7 @@
  obj-$(CONFIG_SPARSEMEM)       += sparse.o
  obj-$(CONFIG_SPARSEMEM_VMEMMAP) += sparse-vmemmap.o
  obj-$(CONFIG_SHMEM) += shmem.o
@@ -150079,42 +148910,9 @@ Index: linux-2.6.28/mm/Makefile
  obj-$(CONFIG_TMPFS_POSIX_ACL) += shmem_acl.o
  obj-$(CONFIG_TINY_SHMEM) += tiny-shmem.o
  obj-$(CONFIG_SLOB) += slob.o
-Index: linux-2.6.28/mm/shmem.c
-===================================================================
---- linux-2.6.28.orig/mm/shmem.c       2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/mm/shmem.c    2009-01-02 00:01:57.000000000 +0100
-@@ -2587,6 +2587,14 @@ put_memory:
- }
- EXPORT_SYMBOL_GPL(shmem_file_setup);
-+void shmem_set_file(struct vm_area_struct *vma, struct file *file)
-+{
-+      if (vma->vm_file)
-+              fput(vma->vm_file);
-+      vma->vm_file = file;
-+      vma->vm_ops = &shmem_vm_ops;
-+}
-+
- /**
-  * shmem_zero_setup - setup a shared anonymous mapping
-  * @vma: the vma to be mmapped is prepared by do_mmap_pgoff
-@@ -2600,9 +2608,7 @@ int shmem_zero_setup(struct vm_area_stru
-       if (IS_ERR(file))
-               return PTR_ERR(file);
--      if (vma->vm_file)
--              fput(vma->vm_file);
--      vma->vm_file = file;
--      vma->vm_ops = &shmem_vm_ops;
-+      shmem_set_file(vma, file);
-+
-       return 0;
- }
-Index: linux-2.6.28/mm/tiny-shmem.c
-===================================================================
---- linux-2.6.28.orig/mm/tiny-shmem.c  2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/mm/tiny-shmem.c       2009-01-02 00:01:57.000000000 +0100
-@@ -97,6 +97,22 @@ put_memory:
+--- a/mm/tiny-shmem.c
++++ b/mm/tiny-shmem.c
+@@ -97,6 +97,22 @@
  }
  EXPORT_SYMBOL_GPL(shmem_file_setup);
  
@@ -150137,7 +148935,7 @@ Index: linux-2.6.28/mm/tiny-shmem.c
  /**
   * shmem_zero_setup - setup a shared anonymous mapping
   * @vma: the vma to be mmapped is prepared by do_mmap_pgoff
-@@ -110,10 +126,8 @@ int shmem_zero_setup(struct vm_area_stru
+@@ -110,10 +126,8 @@
        if (IS_ERR(file))
                return PTR_ERR(file);
  
@@ -150150,10 +148948,8 @@ Index: linux-2.6.28/mm/tiny-shmem.c
        return 0;
  }
  
-Index: linux-2.6.28/remote_install_sdcard
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/remote_install_sdcard 2009-01-02 00:01:58.000000000 +0100
+--- /dev/null
++++ b/remote_install_sdcard
 @@ -0,0 +1,18 @@
 +#!/bin/sh
 +
@@ -150173,11 +148969,9 @@ Index: linux-2.6.28/remote_install_sdcard
 +scp uImage.bin root@$GTA_DEVICE_IP:/boot
 +ssh root@$GTA_DEVICE_IP "mount /dev/mmcblk0p1 / -oremount,ro ; reboot -if &"
 +
-Index: linux-2.6.28/scripts/mkuboot.sh
-===================================================================
---- linux-2.6.28.orig/scripts/mkuboot.sh       2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/scripts/mkuboot.sh    2009-01-02 00:01:58.000000000 +0100
-@@ -11,7 +11,7 @@ if [ -z "${MKIMAGE}" ]; then
+--- a/scripts/mkuboot.sh
++++ b/scripts/mkuboot.sh
+@@ -11,7 +11,7 @@
        if [ -z "${MKIMAGE}" ]; then
                # Doesn't exist
                echo '"mkimage" command not found - U-Boot images will not be built' >&2
@@ -150186,11 +148980,9 @@ Index: linux-2.6.28/scripts/mkuboot.sh
        fi
  fi
  
-Index: linux-2.6.28/sound/soc/codecs/wm8753.c
-===================================================================
---- linux-2.6.28.orig/sound/soc/codecs/wm8753.c        2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/sound/soc/codecs/wm8753.c     2009-01-02 00:01:58.000000000 +0100
-@@ -1584,6 +1584,9 @@ static int wm8753_init(struct snd_soc_de
+--- a/sound/soc/codecs/wm8753.c
++++ b/sound/soc/codecs/wm8753.c
+@@ -1584,6 +1584,9 @@
        schedule_delayed_work(&codec->delayed_work,
                msecs_to_jiffies(caps_charge));
  
@@ -150200,7 +148992,7 @@ Index: linux-2.6.28/sound/soc/codecs/wm8753.c
        /* set the update bits */
        reg = wm8753_read_reg_cache(codec, WM8753_LDAC);
        wm8753_write(codec, WM8753_LDAC, reg | 0x0100);
-@@ -1644,17 +1647,20 @@ static int wm8753_i2c_probe(struct i2c_c
+@@ -1644,17 +1647,20 @@
        struct snd_soc_codec *codec = socdev->codec;
        int ret;
  
@@ -150223,7 +149015,7 @@ Index: linux-2.6.28/sound/soc/codecs/wm8753.c
  {
        struct snd_soc_codec *codec = i2c_get_clientdata(client);
        kfree(codec->reg_cache);
-@@ -1675,6 +1681,7 @@ static struct i2c_driver wm8753_i2c_driv
+@@ -1675,6 +1681,7 @@
        .probe =    wm8753_i2c_probe,
        .remove =   wm8753_i2c_remove,
        .id_table = wm8753_i2c_id,
@@ -150231,7 +149023,7 @@ Index: linux-2.6.28/sound/soc/codecs/wm8753.c
  };
  
  static int wm8753_add_i2c_device(struct platform_device *pdev,
-@@ -1716,6 +1723,8 @@ err_driver:
+@@ -1716,6 +1723,8 @@
        i2c_del_driver(&wm8753_i2c_driver);
        return -ENODEV;
  }
@@ -150240,7 +149032,7 @@ Index: linux-2.6.28/sound/soc/codecs/wm8753.c
  #endif
  
  #if defined(CONFIG_SPI_MASTER)
-@@ -1783,7 +1792,7 @@ static int wm8753_probe(struct platform_
+@@ -1783,7 +1792,7 @@
        struct wm8753_priv *wm8753;
        int ret = 0;
  
@@ -150249,7 +149041,7 @@ Index: linux-2.6.28/sound/soc/codecs/wm8753.c
  
        setup = socdev->codec_data;
        codec = kzalloc(sizeof(struct snd_soc_codec), GFP_KERNEL);
-@@ -1820,6 +1829,7 @@ static int wm8753_probe(struct platform_
+@@ -1820,6 +1829,7 @@
  #endif
  
        if (ret != 0) {
@@ -150257,7 +149049,7 @@ Index: linux-2.6.28/sound/soc/codecs/wm8753.c
                kfree(codec->private_data);
                kfree(codec);
        }
-@@ -1857,7 +1867,6 @@ static int wm8753_remove(struct platform
+@@ -1857,7 +1867,6 @@
        snd_soc_free_pcms(socdev);
        snd_soc_dapm_free(socdev);
  #if defined(CONFIG_I2C) || defined(CONFIG_I2C_MODULE)
@@ -150265,11 +149057,9 @@ Index: linux-2.6.28/sound/soc/codecs/wm8753.c
        i2c_del_driver(&wm8753_i2c_driver);
  #endif
  #if defined(CONFIG_SPI_MASTER)
-Index: linux-2.6.28/sound/soc/s3c24xx/Kconfig
-===================================================================
---- linux-2.6.28.orig/sound/soc/s3c24xx/Kconfig        2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/sound/soc/s3c24xx/Kconfig     2009-01-02 00:01:58.000000000 +0100
-@@ -26,6 +26,15 @@ config SND_S3C24XX_SOC_NEO1973_WM8753
+--- a/sound/soc/s3c24xx/Kconfig
++++ b/sound/soc/s3c24xx/Kconfig
+@@ -26,6 +26,15 @@
          Say Y if you want to add support for SoC audio on smdk2440
          with the WM8753.
  
@@ -150285,11 +149075,9 @@ Index: linux-2.6.28/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.28/sound/soc/s3c24xx/Makefile
-===================================================================
---- linux-2.6.28.orig/sound/soc/s3c24xx/Makefile       2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/sound/soc/s3c24xx/Makefile    2009-01-02 00:01:58.000000000 +0100
-@@ -13,7 +13,10 @@ obj-$(CONFIG_SND_S3C2412_SOC_I2S) += snd
+--- a/sound/soc/s3c24xx/Makefile
++++ b/sound/soc/s3c24xx/Makefile
+@@ -13,7 +13,10 @@
  snd-soc-neo1973-wm8753-objs := neo1973_wm8753.o
  snd-soc-smdk2443-wm9710-objs := smdk2443_wm9710.o
  snd-soc-ln2440sbc-alc650-objs := ln2440sbc_alc650.o
@@ -150300,10 +149088,8 @@ Index: linux-2.6.28/sound/soc/s3c24xx/Makefile
  obj-$(CONFIG_SND_S3C24XX_SOC_LN2440SBC_ALC650) += snd-soc-ln2440sbc-alc650.o
 +obj-$(CONFIG_SND_S3C24XX_SOC_NEO1973_GTA02_WM8753) += snd-soc-neo1973-gta02-wm8753.o
 +
-Index: linux-2.6.28/sound/soc/s3c24xx/neo1973_gta02_wm8753.c
-===================================================================
---- /dev/null  1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/sound/soc/s3c24xx/neo1973_gta02_wm8753.c      2009-01-02 00:01:58.000000000 +0100
+--- /dev/null
++++ b/sound/soc/s3c24xx/neo1973_gta02_wm8753.c
 @@ -0,0 +1,673 @@
 +/*
 + * neo1973_gta02_wm8753.c  --  SoC audio for Neo1973
@@ -150978,10 +149764,8 @@ Index: linux-2.6.28/sound/soc/s3c24xx/neo1973_gta02_wm8753.c
 +MODULE_DESCRIPTION("ALSA SoC WM8753 Neo1973 GTA02");
 +MODULE_LICENSE("GPL");
 +
-Index: linux-2.6.28/sound/soc/s3c24xx/neo1973_wm8753.c
-===================================================================
---- linux-2.6.28.orig/sound/soc/s3c24xx/neo1973_wm8753.c       2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/sound/soc/s3c24xx/neo1973_wm8753.c    2009-01-02 00:01:58.000000000 +0100
+--- a/sound/soc/s3c24xx/neo1973_wm8753.c
++++ b/sound/soc/s3c24xx/neo1973_wm8753.c
 @@ -32,7 +32,7 @@
  #include <mach/audio.h>
  #include <linux/io.h>
@@ -150991,7 +149775,7 @@ Index: linux-2.6.28/sound/soc/s3c24xx/neo1973_wm8753.c
  #include <asm/plat-s3c24xx/regs-iis.h>
  
  #include "../codecs/wm8753.h"
-@@ -585,7 +585,7 @@ static struct snd_soc_machine neo1973 = 
+@@ -585,7 +585,7 @@
        .num_links = ARRAY_SIZE(neo1973_dai),
  };
  
@@ -151000,7 +149784,7 @@ Index: linux-2.6.28/sound/soc/s3c24xx/neo1973_wm8753.c
        .i2c_bus = 0,
        .i2c_address = 0x1a,
  };
-@@ -594,7 +594,7 @@ static struct snd_soc_device neo1973_snd
+@@ -594,7 +594,7 @@
        .machine = &neo1973,
        .platform = &s3c24xx_soc_platform,
        .codec_dev = &soc_codec_dev_wm8753,
@@ -151009,7 +149793,7 @@ Index: linux-2.6.28/sound/soc/s3c24xx/neo1973_wm8753.c
  };
  
  static int lm4857_i2c_probe(struct i2c_client *client,
-@@ -676,7 +676,7 @@ static int __init neo1973_init(void)
+@@ -676,7 +676,7 @@
  {
        int ret;
  
@@ -151018,10 +149802,8 @@ Index: linux-2.6.28/sound/soc/s3c24xx/neo1973_wm8753.c
  
        if (!machine_is_neo1973_gta01()) {
                printk(KERN_INFO
-Index: linux-2.6.28/sound/soc/s3c24xx/s3c2443-ac97.c
-===================================================================
---- linux-2.6.28.orig/sound/soc/s3c24xx/s3c2443-ac97.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/sound/soc/s3c24xx/s3c2443-ac97.c      2009-01-02 00:01:58.000000000 +0100
+--- a/sound/soc/s3c24xx/s3c2443-ac97.c
++++ b/sound/soc/s3c24xx/s3c2443-ac97.c
 @@ -28,7 +28,7 @@
  #include <sound/soc.h>
  
@@ -151031,11 +149813,9 @@ Index: linux-2.6.28/sound/soc/s3c24xx/s3c2443-ac97.c
  #include <mach/regs-gpio.h>
  #include <mach/regs-clock.h>
  #include <mach/audio.h>
-Index: linux-2.6.28/sound/soc/s3c24xx/s3c24xx-i2s.c
-===================================================================
---- linux-2.6.28.orig/sound/soc/s3c24xx/s3c24xx-i2s.c  2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/sound/soc/s3c24xx/s3c24xx-i2s.c       2009-01-02 00:01:58.000000000 +0100
-@@ -175,7 +175,7 @@ static void s3c24xx_snd_rxctrl(int on)
+--- a/sound/soc/s3c24xx/s3c24xx-i2s.c
++++ b/sound/soc/s3c24xx/s3c24xx-i2s.c
+@@ -175,7 +175,7 @@
  static int s3c24xx_snd_lrsync(void)
  {
        u32 iiscon;
@@ -151044,7 +149824,7 @@ Index: linux-2.6.28/sound/soc/s3c24xx/s3c24xx-i2s.c
  
        DBG("Entered %s\n", __func__);
  
-@@ -282,11 +282,14 @@ static int s3c24xx_i2s_trigger(struct sn
+@@ -282,11 +282,14 @@
        case SNDRV_PCM_TRIGGER_START:
        case SNDRV_PCM_TRIGGER_RESUME:
        case SNDRV_PCM_TRIGGER_PAUSE_RELEASE:
@@ -151064,7 +149844,7 @@ Index: linux-2.6.28/sound/soc/s3c24xx/s3c24xx-i2s.c
  
                if (substream->stream == SNDRV_PCM_STREAM_CAPTURE)
                        s3c24xx_snd_rxctrl(1);
-@@ -306,7 +309,6 @@ static int s3c24xx_i2s_trigger(struct sn
+@@ -306,7 +309,6 @@
                break;
        }
  
@@ -151072,11 +149852,9 @@ Index: linux-2.6.28/sound/soc/s3c24xx/s3c24xx-i2s.c
        return ret;
  }
  
-Index: linux-2.6.28/sound/soc/s3c24xx/s3c24xx-pcm.c
-===================================================================
---- linux-2.6.28.orig/sound/soc/s3c24xx/s3c24xx-pcm.c  2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/sound/soc/s3c24xx/s3c24xx-pcm.c       2009-01-02 00:01:58.000000000 +0100
-@@ -168,7 +168,7 @@ static int s3c24xx_pcm_hw_params(struct 
+--- a/sound/soc/s3c24xx/s3c24xx-pcm.c
++++ b/sound/soc/s3c24xx/s3c24xx-pcm.c
+@@ -168,7 +168,7 @@
                                          prtd->params->client, NULL);
  
                if (ret < 0) {
@@ -151085,11 +149863,9 @@ Index: linux-2.6.28/sound/soc/s3c24xx/s3c24xx-pcm.c
                        return ret;
                }
        }
-Index: linux-2.6.28/sound/soc/soc-core.c
-===================================================================
---- linux-2.6.28.orig/sound/soc/soc-core.c     2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/sound/soc/soc-core.c  2009-01-02 00:01:58.000000000 +0100
-@@ -1003,6 +1003,38 @@ static ssize_t codec_reg_show(struct dev
+--- a/sound/soc/soc-core.c
++++ b/sound/soc/soc-core.c
+@@ -1003,6 +1003,38 @@
  }
  static DEVICE_ATTR(codec_reg, 0444, codec_reg_show, NULL);
  
@@ -151128,7 +149904,7 @@ Index: linux-2.6.28/sound/soc/soc-core.c
  /**
   * snd_soc_new_ac97_codec - initailise AC97 device
   * @codec: audio codec
-@@ -1218,6 +1250,9 @@ int snd_soc_register_card(struct snd_soc
+@@ -1218,6 +1250,9 @@
  
        mutex_unlock(&codec->mutex);
  
@@ -151138,11 +149914,9 @@ Index: linux-2.6.28/sound/soc/soc-core.c
  out:
        return ret;
  }
-Index: linux-2.6.28/sound/soc/soc-dapm.c
-===================================================================
---- linux-2.6.28.orig/sound/soc/soc-dapm.c     2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/sound/soc/soc-dapm.c  2009-01-02 00:01:58.000000000 +0100
-@@ -1525,6 +1525,56 @@ int snd_soc_dapm_get_pin_status(struct s
+--- a/sound/soc/soc-dapm.c
++++ b/sound/soc/soc-dapm.c
+@@ -1525,6 +1525,56 @@
  EXPORT_SYMBOL_GPL(snd_soc_dapm_get_pin_status);
  
  /**
This page took 0.461316 seconds and 4 git commands to generate.