[s3c24xx] Update to 2.6.30.1, refresh patches
[openwrt/svn-archive/archive.git] / target / linux / s3c24xx / patches-2.6.28 / 001-merge-openmoko.patch
index d328602340ca505487f80420c3e917380f57be35..1092bc826a564d3e9664e449ce2cafa152740f63 100644 (file)
@@ -7,7 +7,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
 
 --- a/arch/arm/common/vic.c
 +++ b/arch/arm/common/vic.c
-@@ -69,12 +69,12 @@
+@@ -69,12 +69,12 @@ void __init vic_init(void __iomem *base,
        /*
         * Make sure we clear all existing interrupts
         */
@@ -23,7 +23,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        }
  
        for (i = 0; i < 16; i++) {
-@@ -82,7 +82,7 @@
+@@ -82,7 +82,7 @@ void __init vic_init(void __iomem *base,
                writel(VIC_VECT_CNTL_ENABLE | i, reg);
        }
  
@@ -6657,7 +6657,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
 +CONFIG_HAS_DMA=y
 --- a/arch/arm/Kconfig
 +++ b/arch/arm/Kconfig
-@@ -498,6 +498,13 @@
+@@ -498,6 +498,13 @@ config ARCH_S3C2410
          BAST (<http://www.simtec.co.uk/products/EB110ITX/>), the IPAQ 1940 or
          the Samsung SMDK2410 development board (and derivatives).
  
@@ -6671,7 +6671,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  config ARCH_SHARK
        bool "Shark"
        select ISA
-@@ -590,6 +597,7 @@
+@@ -590,6 +597,7 @@ source "arch/arm/mach-orion5x/Kconfig"
  source "arch/arm/mach-kirkwood/Kconfig"
  
  source "arch/arm/plat-s3c24xx/Kconfig"
@@ -6679,7 +6679,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  source "arch/arm/plat-s3c/Kconfig"
  
  if ARCH_S3C2410
-@@ -601,6 +609,11 @@
+@@ -601,6 +609,11 @@ source "arch/arm/mach-s3c2442/Kconfig"
  source "arch/arm/mach-s3c2443/Kconfig"
  endif
  
@@ -6691,7 +6691,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  source "arch/arm/mach-lh7a40x/Kconfig"
  
  source "arch/arm/mach-imx/Kconfig"
-@@ -1256,6 +1269,8 @@
+@@ -1256,6 +1269,8 @@ source "drivers/usb/Kconfig"
  
  source "drivers/uwb/Kconfig"
  
@@ -6700,7 +6700,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  source "drivers/mmc/Kconfig"
  
  source "drivers/memstick/Kconfig"
-@@ -1268,6 +1283,8 @@
+@@ -1268,6 +1283,8 @@ source "drivers/rtc/Kconfig"
  
  source "drivers/dma/Kconfig"
  
@@ -6711,7 +6711,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  source "drivers/auxdisplay/Kconfig"
 --- a/arch/arm/kernel/vmlinux.lds.S
 +++ b/arch/arm/kernel/vmlinux.lds.S
-@@ -106,6 +106,8 @@
+@@ -106,6 +106,8 @@ SECTIONS
                *(.got)                 /* Global offset table          */
        }
  
@@ -7757,7 +7757,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
 +                                           resume_dependency, int uart_index);
 --- a/arch/arm/mach-s3c2410/include/mach/spi-gpio.h
 +++ b/arch/arm/mach-s3c2410/include/mach/spi-gpio.h
-@@ -21,7 +21,15 @@
+@@ -21,7 +21,15 @@ struct s3c2410_spigpio_info {
        int                      num_chipselect;
        int                      bus_num;
  
@@ -7776,7 +7776,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  
 --- a/arch/arm/mach-s3c2410/include/mach/spi.h
 +++ b/arch/arm/mach-s3c2410/include/mach/spi.h
-@@ -22,5 +22,12 @@
+@@ -22,5 +22,12 @@ struct s3c2410_spi_info {
        void (*set_cs)(struct s3c2410_spi_info *spi, int cs, int pol);
  };
  
@@ -7917,7 +7917,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
 -#endif /* __ASM_ARCH_VMALLOC_H */
 --- a/arch/arm/mach-s3c2410/Kconfig
 +++ b/arch/arm/mach-s3c2410/Kconfig
-@@ -9,6 +9,7 @@
+@@ -9,6 +9,7 @@ config CPU_S3C2410
        depends on ARCH_S3C2410
        select S3C2410_CLOCK
        select S3C2410_GPIO
@@ -7925,7 +7925,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        select CPU_LLSERIAL_S3C2410
        select S3C2410_PM if PM
        help
-@@ -32,11 +33,6 @@
+@@ -32,11 +33,6 @@ config S3C2410_GPIO
        help
          GPIO code for S3C2410 and similar processors
  
@@ -7937,7 +7937,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  config SIMTEC_NOR
        bool
        help
-@@ -49,6 +45,12 @@
+@@ -49,6 +45,12 @@ config MACH_BAST_IDE
          Internal node for machines with an BAST style IDE
          interface
  
@@ -7950,7 +7950,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  menu "S3C2410 Machines"
  
  config ARCH_SMDK2410
-@@ -84,6 +86,7 @@
+@@ -84,6 +86,7 @@ config ARCH_BAST
        select PM_SIMTEC if PM
        select SIMTEC_NOR
        select MACH_BAST_IDE
@@ -7958,7 +7958,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        select ISA
        help
          Say Y here if you are using the Simtec Electronics EB2410ITX
-@@ -121,6 +124,7 @@
+@@ -121,6 +124,7 @@ config MACH_TCT_HAMMER
  config MACH_VR1000
        bool "Thorcom VR1000"
        select PM_SIMTEC if PM
@@ -7966,7 +7966,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        select SIMTEC_NOR
        select MACH_BAST_IDE
        select CPU_S3C2410
-@@ -130,7 +134,16 @@
+@@ -130,7 +134,16 @@ config MACH_VR1000
  config MACH_QT2410
        bool "QT2410"
        select CPU_S3C2410
@@ -7993,7 +7993,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  #include <plat/devs.h>
  #include <plat/cpu.h>
  
-@@ -150,7 +151,7 @@
+@@ -150,7 +151,7 @@ static struct platform_device *amlm5900_
  #endif
        &s3c_device_adc,
        &s3c_device_wdt,
@@ -8002,7 +8002,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        &s3c_device_usb,
        &s3c_device_rtc,
        &s3c_device_usbgadget,
-@@ -233,6 +234,7 @@
+@@ -233,6 +234,7 @@ static void __init amlm5900_init(void)
  #ifdef CONFIG_FB_S3C2410
        s3c24xx_fb_set_platdata(&amlm5900_fb_info);
  #endif
@@ -8023,7 +8023,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  #include <mach/fb.h>
  
  #include <linux/mtd/mtd.h>
-@@ -406,7 +406,7 @@
+@@ -406,7 +406,7 @@ static struct platform_device bast_sio =
   * standard 100KHz i2c bus frequency
  */
  
@@ -8032,7 +8032,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        .flags          = 0,
        .slave_addr     = 0x10,
        .bus_freq       = 100*1000,
-@@ -553,7 +553,7 @@
+@@ -553,7 +553,7 @@ static struct platform_device *bast_devi
        &s3c_device_usb,
        &s3c_device_lcd,
        &s3c_device_wdt,
@@ -8041,7 +8041,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        &s3c_device_rtc,
        &s3c_device_nand,
        &bast_device_dm9k,
-@@ -588,7 +588,8 @@
+@@ -588,7 +588,8 @@ static void __init bast_map_io(void)
        s3c24xx_register_clocks(bast_clocks, ARRAY_SIZE(bast_clocks));
  
        s3c_device_nand.dev.platform_data = &bast_nand_info;
@@ -8857,7 +8857,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  #include <plat/pm.h>
  
  static struct map_desc h1940_iodesc[] __initdata = {
-@@ -129,6 +131,11 @@
+@@ -129,6 +131,11 @@ static struct s3c2410_udc_mach_info h194
        .vbus_pin_inverted      = 1,
  };
  
@@ -8869,7 +8869,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  
  /**
   * Set lcd on or off
-@@ -183,9 +190,10 @@
+@@ -183,9 +190,10 @@ static struct platform_device *h1940_dev
        &s3c_device_usb,
        &s3c_device_lcd,
        &s3c_device_wdt,
@@ -8881,7 +8881,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        &s3c_device_leds,
        &s3c_device_bluetooth,
  };
-@@ -201,7 +209,7 @@
+@@ -201,7 +209,7 @@ static void __init h1940_map_io(void)
  #ifdef CONFIG_PM_H1940
        memcpy(phys_to_virt(H1940_SUSPEND_RESUMEAT), h1940_pm_return, 1024);
  #endif
@@ -8890,7 +8890,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  }
  
  static void __init h1940_init_irq(void)
-@@ -214,7 +222,9 @@
+@@ -214,7 +222,9 @@ static void __init h1940_init(void)
        u32 tmp;
  
        s3c24xx_fb_set_platdata(&h1940_fb_info);
@@ -8900,7 +8900,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  
        /* Turn off suspend on both USB ports, and switch the
         * selectable USB port to USB device mode. */
-@@ -223,10 +233,9 @@
+@@ -223,10 +233,9 @@ static void __init h1940_init(void)
                              S3C2410_MISCCR_USBSUSPND0 |
                              S3C2410_MISCCR_USBSUSPND1, 0x0);
  
@@ -8933,7 +8933,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  
  static struct map_desc n30_iodesc[] __initdata = {
        /* nothing here yet */
-@@ -320,7 +320,7 @@
+@@ -320,7 +320,7 @@ static struct s3c2410fb_mach_info n30_fb
  static struct platform_device *n30_devices[] __initdata = {
        &s3c_device_lcd,
        &s3c_device_wdt,
@@ -8942,7 +8942,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        &s3c_device_iis,
        &s3c_device_usb,
        &s3c_device_usbgadget,
-@@ -332,7 +332,7 @@
+@@ -332,7 +332,7 @@ static struct platform_device *n30_devic
  static struct platform_device *n35_devices[] __initdata = {
        &s3c_device_lcd,
        &s3c_device_wdt,
@@ -8951,7 +8951,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        &s3c_device_iis,
        &s3c_device_usbgadget,
        &n35_button_device,
-@@ -501,7 +501,7 @@
+@@ -501,7 +501,7 @@ static void __init n30_init_irq(void)
  static void __init n30_init(void)
  {
        s3c24xx_fb_set_platdata(&n30_fb_info);
@@ -8970,7 +8970,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  #include <plat/cpu.h>
  
  static struct map_desc otom11_iodesc[] __initdata = {
-@@ -94,7 +95,7 @@
+@@ -94,7 +95,7 @@ static struct platform_device *otom11_de
        &s3c_device_usb,
        &s3c_device_lcd,
        &s3c_device_wdt,
@@ -8979,7 +8979,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        &s3c_device_iis,
        &s3c_device_rtc,
        &otom_device_nor,
-@@ -109,6 +110,7 @@
+@@ -109,6 +110,7 @@ static void __init otom11_map_io(void)
  
  static void __init otom11_init(void)
  {
@@ -9011,7 +9011,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  
  #include <plat/common-smdk.h>
  #include <plat/devs.h>
-@@ -213,7 +214,7 @@
+@@ -213,7 +214,7 @@ static struct platform_device qt2410_led
  
  /* SPI */
  
@@ -9020,7 +9020,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  {
        switch (cs) {
        case BITBANG_CS_ACTIVE:
-@@ -247,7 +248,7 @@
+@@ -247,7 +248,7 @@ static struct platform_device *qt2410_de
        &s3c_device_usb,
        &s3c_device_lcd,
        &s3c_device_wdt,
@@ -9029,7 +9029,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        &s3c_device_iis,
        &s3c_device_sdi,
        &s3c_device_usbgadget,
-@@ -320,6 +321,24 @@
+@@ -320,6 +321,24 @@ static int __init qt2410_tft_setup(char 
  
  __setup("tft=", qt2410_tft_setup);
  
@@ -9054,7 +9054,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  static void __init qt2410_map_io(void)
  {
        s3c24xx_init_io(qt2410_iodesc, ARRAY_SIZE(qt2410_iodesc));
-@@ -349,11 +368,12 @@
+@@ -349,11 +368,12 @@ static void __init qt2410_machine_init(v
        s3c2410_gpio_setpin(S3C2410_GPB0, 1);
  
        s3c24xx_udc_set_platdata(&qt2410_udc_cfg);
@@ -9078,7 +9078,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  
  #include <plat/devs.h>
  #include <plat/cpu.h>
-@@ -89,7 +90,7 @@
+@@ -89,7 +90,7 @@ static struct platform_device *smdk2410_
        &s3c_device_usb,
        &s3c_device_lcd,
        &s3c_device_wdt,
@@ -9087,7 +9087,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        &s3c_device_iis,
  };
  
-@@ -102,6 +103,7 @@
+@@ -102,6 +103,7 @@ static void __init smdk2410_map_io(void)
  
  static void __init smdk2410_init(void)
  {
@@ -9105,7 +9105,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  #include <plat/devs.h>
  #include <plat/cpu.h>
  
-@@ -127,7 +128,7 @@
+@@ -127,7 +128,7 @@ static struct s3c2410_uartcfg tct_hammer
  static struct platform_device *tct_hammer_devices[] __initdata = {
        &s3c_device_adc,
        &s3c_device_wdt,
@@ -9114,7 +9114,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        &s3c_device_usb,
        &s3c_device_rtc,
        &s3c_device_usbgadget,
-@@ -146,6 +147,7 @@
+@@ -146,6 +147,7 @@ static void __init tct_hammer_map_io(voi
  
  static void __init tct_hammer_init(void)
  {
@@ -9132,7 +9132,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  
  #include "usb-simtec.h"
  #include "nor-simtec.h"
-@@ -334,7 +335,7 @@
+@@ -334,7 +335,7 @@ static struct platform_device *vr1000_de
        &s3c_device_usb,
        &s3c_device_lcd,
        &s3c_device_wdt,
@@ -9141,7 +9141,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        &s3c_device_adc,
        &serial_device,
        &vr1000_dm9k0,
-@@ -384,6 +385,7 @@
+@@ -384,6 +385,7 @@ static void __init vr1000_map_io(void)
  
  static void __init vr1000_init(void)
  {
@@ -9151,7 +9151,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        i2c_register_board_info(0, vr1000_i2c_devs,
 --- a/arch/arm/mach-s3c2410/Makefile
 +++ b/arch/arm/mach-s3c2410/Makefile
-@@ -15,7 +15,8 @@
+@@ -15,7 +15,8 @@ obj-$(CONFIG_CPU_S3C2410_DMA)        += dma.o
  obj-$(CONFIG_CPU_S3C2410_DMA) += dma.o
  obj-$(CONFIG_S3C2410_PM)      += pm.o sleep.o
  obj-$(CONFIG_S3C2410_GPIO)    += gpio.o
@@ -9161,7 +9161,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  
  # Machine support
  
-@@ -38,3 +39,5 @@
+@@ -38,3 +39,5 @@ obj-$(CONFIG_SIMTEC_NOR)     += nor-simtec.o
  # machine additions
  
  obj-$(CONFIG_MACH_BAST_IDE)   += bast-ide.o
@@ -9512,7 +9512,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  
  /* Initial IO mappings */
  
-@@ -59,25 +63,28 @@
+@@ -59,25 +63,28 @@ void __init s3c2410_init_uarts(struct s3
   * machine specific initialisation.
  */
  
@@ -9547,7 +9547,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  
        tmp = __raw_readl(S3C2410_CLKDIVN);
  
-@@ -95,7 +102,13 @@
+@@ -95,7 +102,13 @@ void __init s3c2410_init_clocks(int xtal
         * console to use them
         */
  
@@ -9564,7 +9564,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  
 --- a/arch/arm/mach-s3c2412/clock.c
 +++ b/arch/arm/mach-s3c2412/clock.c
-@@ -93,12 +93,6 @@
+@@ -93,12 +93,6 @@ static int s3c2412_upll_enable(struct cl
  
  /* clock selections */
  
@@ -9577,7 +9577,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  static struct clk clk_erefclk = {
        .name           = "erefclk",
        .id             = -1,
-@@ -773,5 +767,6 @@
+@@ -773,5 +767,6 @@ int __init s3c2412_baseclk_add(void)
                s3c2412_clkcon_enable(clkp, 0);
        }
  
@@ -9625,7 +9625,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  
  static struct map_desc jive_iodesc[] __initdata = {
  };
-@@ -450,14 +451,14 @@
+@@ -450,14 +451,14 @@ static struct spi_board_info __initdata 
  
  /* I2C bus and device configuration. */
  
@@ -9642,7 +9642,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        [0] = {
                I2C_BOARD_INFO("lis302dl", 0x1c),
                .irq    = IRQ_EINT14,
-@@ -470,7 +471,7 @@
+@@ -470,7 +471,7 @@ static struct platform_device *jive_devi
        &s3c_device_usb,
        &s3c_device_rtc,
        &s3c_device_wdt,
@@ -9651,7 +9651,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        &s3c_device_lcd,
        &jive_device_lcdspi,
        &jive_device_wm8750,
-@@ -492,7 +493,7 @@
+@@ -492,7 +493,7 @@ static int jive_pm_suspend(struct sys_de
         * correct address to resume from. */
  
        __raw_writel(0x2BED, S3C2412_INFORM0);
@@ -9660,7 +9660,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  
        return 0;
  }
-@@ -628,7 +629,7 @@
+@@ -628,7 +629,7 @@ static void __init jive_machine_init(voi
  
        /* initialise the power management now we've setup everything. */
  
@@ -9669,7 +9669,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  
        s3c_device_nand.dev.platform_data = &jive_nand_info;
  
-@@ -663,7 +664,7 @@
+@@ -663,7 +664,7 @@ static void __init jive_machine_init(voi
  
        spi_register_board_info(jive_spi_devs, ARRAY_SIZE(jive_spi_devs));
  
@@ -9690,7 +9690,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  #include <mach/fb.h>
  
  #include <plat/s3c2410.h>
-@@ -105,7 +106,7 @@
+@@ -105,7 +106,7 @@ static struct platform_device *smdk2413_
        &s3c_device_usb,
        //&s3c_device_lcd,
        &s3c_device_wdt,
@@ -9699,7 +9699,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        &s3c_device_iis,
        &s3c_device_usbgadget,
  };
-@@ -142,6 +143,7 @@
+@@ -142,6 +143,7 @@ static void __init smdk2413_machine_init
  
  
        s3c24xx_udc_set_platdata(&smdk2413_udc_cfg);
@@ -9719,7 +9719,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  
  #include <plat/s3c2410.h>
  #include <plat/s3c2412.h>
-@@ -122,7 +123,7 @@
+@@ -122,7 +123,7 @@ static struct s3c2410_platform_nand vstm
  static struct platform_device *vstms_devices[] __initdata = {
        &s3c_device_usb,
        &s3c_device_wdt,
@@ -9728,7 +9728,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        &s3c_device_iis,
        &s3c_device_rtc,
        &s3c_device_nand,
-@@ -151,6 +152,7 @@
+@@ -151,6 +152,7 @@ static void __init vstms_map_io(void)
  
  static void __init vstms_init(void)
  {
@@ -9738,7 +9738,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  
 --- a/arch/arm/mach-s3c2412/pm.c
 +++ b/arch/arm/mach-s3c2412/pm.c
-@@ -85,7 +85,7 @@
+@@ -85,7 +85,7 @@ static struct sleep_save s3c2412_sleep[]
  
  static int s3c2412_pm_suspend(struct sys_device *dev, pm_message_t state)
  {
@@ -9747,7 +9747,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        return 0;
  }
  
-@@ -98,7 +98,7 @@
+@@ -98,7 +98,7 @@ static int s3c2412_pm_resume(struct sys_
        tmp |=  S3C2412_PWRCFG_STANDBYWFI_IDLE;
        __raw_writel(tmp, S3C2412_PWRCFG);
  
@@ -9791,7 +9791,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  
  #ifndef CONFIG_CPU_S3C2412_ONLY
  void __iomem *s3c24xx_va_gpio2 = S3C24XX_VA_GPIO;
-@@ -136,7 +140,7 @@
+@@ -136,7 +140,7 @@ static void s3c2412_hard_reset(void)
   * machine specific initialisation.
  */
  
@@ -9800,7 +9800,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  {
        /* move base of IO */
  
-@@ -153,20 +157,25 @@
+@@ -153,20 +157,25 @@ void __init s3c2412_map_io(struct map_de
        /* register our io-tables */
  
        iotable_init(s3c2412_iodesc, ARRAY_SIZE(s3c2412_iodesc));
@@ -9829,7 +9829,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  
        clk_mpll.rate = fclk;
  
-@@ -183,11 +192,17 @@
+@@ -183,11 +192,17 @@ void __init s3c2412_init_clocks(int xtal
        printk("S3C2412: core %ld.%03ld MHz, memory %ld.%03ld MHz, peripheral %ld.%03ld MHz\n",
               print_mhz(fclk), print_mhz(hclk), print_mhz(pclk));
  
@@ -9848,7 +9848,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        s3c2412_baseclk_add();
  }
  
-@@ -216,5 +231,8 @@
+@@ -216,5 +231,8 @@ int __init s3c2412_init(void)
  {
        printk("S3C2412: Initialising architecture\n");
  
@@ -16112,7 +16112,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
 +#endif /* _LINUX_FIQ_C_ISR_H */
 --- a/arch/arm/mach-s3c2440/Kconfig
 +++ b/arch/arm/mach-s3c2440/Kconfig
-@@ -22,12 +22,20 @@
+@@ -22,12 +22,20 @@ config S3C2440_DMA
        help
          Support for S3C2440 specific DMA code5A
  
@@ -16133,7 +16133,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        select PM_SIMTEC if PM
        select HAVE_PATA_PLATFORM
        help
-@@ -37,6 +45,7 @@
+@@ -37,6 +45,7 @@ config MACH_ANUBIS
  config MACH_OSIRIS
        bool "Simtec IM2440D20 (OSIRIS) module"
        select CPU_S3C2440
@@ -16141,7 +16141,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        select PM_SIMTEC if PM
        help
          Say Y here if you are using the Simtec IM2440D20 module, also
-@@ -74,5 +83,30 @@
+@@ -74,5 +83,30 @@ config MACH_AT2440EVB
        help
          Say Y here if you are using the AT2440EVB development board
  
@@ -16184,7 +16184,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  
  #include <linux/mtd/mtd.h>
  #include <linux/mtd/nand.h>
-@@ -404,7 +405,7 @@
+@@ -404,7 +405,7 @@ static struct platform_device *anubis_de
        &s3c_device_usb,
        &s3c_device_wdt,
        &s3c_device_adc,
@@ -16193,7 +16193,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        &s3c_device_rtc,
        &s3c_device_nand,
        &anubis_device_ide0,
-@@ -468,6 +469,7 @@
+@@ -468,6 +469,7 @@ static void __init anubis_map_io(void)
  
  static void __init anubis_init(void)
  {
@@ -16213,7 +16213,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  
  #include <linux/mtd/mtd.h>
  #include <linux/mtd/nand.h>
-@@ -166,7 +167,7 @@
+@@ -166,7 +167,7 @@ static struct platform_device *at2440evb
        &s3c_device_usb,
        &s3c_device_wdt,
        &s3c_device_adc,
@@ -16222,7 +16222,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        &s3c_device_rtc,
        &s3c_device_nand,
        &at2440evb_device_eth,
-@@ -183,6 +184,7 @@
+@@ -183,6 +184,7 @@ static void __init at2440evb_map_io(void
  
  static void __init at2440evb_init(void)
  {
@@ -18021,7 +18021,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  
  #include <plat/s3c2410.h>
  #include <plat/s3c2440.h>
-@@ -107,7 +108,7 @@
+@@ -107,7 +108,7 @@ static struct platform_device *nexcoder_
        &s3c_device_usb,
        &s3c_device_lcd,
        &s3c_device_wdt,
@@ -18030,7 +18030,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        &s3c_device_iis,
        &s3c_device_rtc,
        &s3c_device_camif,
-@@ -142,6 +143,7 @@
+@@ -142,6 +143,7 @@ static void __init nexcoder_map_io(void)
  
  static void __init nexcoder_init(void)
  {
@@ -18050,7 +18050,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  
  #include <linux/mtd/mtd.h>
  #include <linux/mtd/nand.h>
-@@ -335,7 +336,7 @@
+@@ -335,7 +336,7 @@ static struct i2c_board_info osiris_i2c_
  /* Standard Osiris devices */
  
  static struct platform_device *osiris_devices[] __initdata = {
@@ -18059,7 +18059,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        &s3c_device_wdt,
        &s3c_device_nand,
        &osiris_pcmcia,
-@@ -398,6 +399,8 @@
+@@ -398,6 +399,8 @@ static void __init osiris_init(void)
        sysdev_class_register(&osiris_pm_sysclass);
        sysdev_register(&osiris_pm_sysdev);
  
@@ -18079,7 +18079,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  #include <mach/fb.h>
  
  #include <plat/clock.h>
-@@ -179,7 +179,7 @@
+@@ -179,7 +179,7 @@ static struct platform_device *rx3715_de
        &s3c_device_usb,
        &s3c_device_lcd,
        &s3c_device_wdt,
@@ -18088,7 +18088,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        &s3c_device_iis,
        &s3c_device_nand,
  };
-@@ -203,7 +203,7 @@
+@@ -203,7 +203,7 @@ static void __init rx3715_init_machine(v
  #ifdef CONFIG_PM_H1940
        memcpy(phys_to_virt(H1940_SUSPEND_RESUMEAT), h1940_pm_return, 1024);
  #endif
@@ -18107,7 +18107,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  
  #include <plat/s3c2410.h>
  #include <plat/s3c2440.h>
-@@ -152,7 +153,7 @@
+@@ -152,7 +153,7 @@ static struct platform_device *smdk2440_
        &s3c_device_usb,
        &s3c_device_lcd,
        &s3c_device_wdt,
@@ -18116,7 +18116,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        &s3c_device_iis,
  };
  
-@@ -166,6 +167,7 @@
+@@ -166,6 +167,7 @@ static void __init smdk2440_map_io(void)
  static void __init smdk2440_machine_init(void)
  {
        s3c24xx_fb_set_platdata(&smdk2440_fb_info);
@@ -18126,7 +18126,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        smdk_machine_init();
 --- a/arch/arm/mach-s3c2440/Makefile
 +++ b/arch/arm/mach-s3c2440/Makefile
-@@ -13,6 +13,7 @@
+@@ -13,6 +13,7 @@ obj-$(CONFIG_CPU_S3C2440)    += s3c2440.o d
  obj-$(CONFIG_CPU_S3C2440)     += irq.o
  obj-$(CONFIG_CPU_S3C2440)     += clock.o
  obj-$(CONFIG_S3C2440_DMA)     += dma.o
@@ -18134,7 +18134,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  
  # Machine support
  
-@@ -22,3 +23,6 @@
+@@ -22,3 +23,6 @@ obj-$(CONFIG_MACH_RX3715)    += mach-rx3715
  obj-$(CONFIG_ARCH_S3C2440)    += mach-smdk2440.o
  obj-$(CONFIG_MACH_NEXCODER_2440) += mach-nexcoder.o
  obj-$(CONFIG_MACH_AT2440EVB) += mach-at2440evb.o
@@ -18143,7 +18143,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
 +
 --- a/arch/arm/mach-s3c2440/s3c2440.c
 +++ b/arch/arm/mach-s3c2440/s3c2440.c
-@@ -46,6 +46,9 @@
+@@ -46,6 +46,9 @@ int __init s3c2440_init(void)
        s3c_device_wdt.resource[1].start = IRQ_S3C2440_WDT;
        s3c_device_wdt.resource[1].end   = IRQ_S3C2440_WDT;
  
@@ -18178,7 +18178,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  
  static struct sys_device s3c2442_sysdev = {
        .cls            = &s3c2442_sysclass,
-@@ -30,5 +31,8 @@
+@@ -30,5 +31,8 @@ int __init s3c2442_init(void)
  {
        printk("S3C2442: Initialising architecture\n");
  
@@ -18198,7 +18198,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  #include <plat/s3c2443.h>
  #include <plat/clock.h>
  #include <plat/cpu.h>
-@@ -145,12 +147,6 @@
+@@ -145,12 +147,6 @@ static unsigned long s3c2443_roundrate_c
  
  /* clock selections */
  
@@ -18211,7 +18211,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  static struct clk clk_mpllref = {
        .name           = "mpllref",
        .parent         = &clk_xtal,
-@@ -165,14 +161,6 @@
+@@ -165,14 +161,6 @@ static struct clk clk_mpll = {
  };
  #endif
  
@@ -18226,7 +18226,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  static struct clk clk_i2s_ext = {
        .name           = "i2s-ext",
        .id             = -1,
-@@ -1011,22 +999,20 @@
+@@ -1011,22 +999,20 @@ static struct clk *clks[] __initdata = {
        &clk_prediv,
  };
  
@@ -18255,7 +18255,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  
        pll = s3c2443_get_mpll(mpllcon, xtal);
        clk_msysclk.rate = pll;
-@@ -1036,13 +1022,29 @@
+@@ -1036,13 +1022,29 @@ void __init s3c2443_init_clocks(int xtal
        hclk /= s3c2443_get_hdiv(clkdiv0);
        pclk = hclk / ((clkdiv0 & S3C2443_CLKDIV0_HALF_PCLK) ? 2 : 1);
  
@@ -18286,7 +18286,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        s3c2443_clk_initparents();
  
        for (ptr = 0; ptr < ARRAY_SIZE(clks); ptr++) {
-@@ -1056,7 +1058,7 @@
+@@ -1056,7 +1058,7 @@ void __init s3c2443_init_clocks(int xtal
        }
  
        clk_epll.rate = s3c2443_get_epll(epllcon, xtal);
@@ -18295,7 +18295,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        clk_usb_bus.parent = &clk_usb_bus_host;
  
        /* ensure usb bus clock is within correct rate of 48MHz */
-@@ -1105,4 +1107,6 @@
+@@ -1105,4 +1107,6 @@ void __init s3c2443_init_clocks(int xtal
  
                (clkp->enable)(clkp, 0);
        }
@@ -18321,7 +18321,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
                [0]     = (x) | DMA_CH_VALID,   \
 --- a/arch/arm/mach-s3c2443/Kconfig
 +++ b/arch/arm/mach-s3c2443/Kconfig
-@@ -24,6 +24,7 @@
+@@ -24,6 +24,7 @@ config MACH_SMDK2443
        bool "SMDK2443"
        select CPU_S3C2443
        select MACH_SMDK
@@ -18339,7 +18339,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  
  #include <plat/s3c2410.h>
  #include <plat/s3c2440.h>
-@@ -103,8 +104,8 @@
+@@ -103,8 +104,8 @@ static struct s3c2410_uartcfg smdk2443_u
  
  static struct platform_device *smdk2443_devices[] __initdata = {
        &s3c_device_wdt,
@@ -18350,7 +18350,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  };
  
  static void __init smdk2443_map_io(void)
-@@ -116,6 +117,7 @@
+@@ -116,6 +117,7 @@ static void __init smdk2443_map_io(void)
  
  static void __init smdk2443_machine_init(void)
  {
@@ -18360,7 +18360,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  }
 --- a/arch/arm/mach-s3c2443/s3c2443.c
 +++ b/arch/arm/mach-s3c2443/s3c2443.c
-@@ -81,10 +81,9 @@
+@@ -81,10 +81,9 @@ void __init s3c2443_init_uarts(struct s3
   * machine specific initialisation.
   */
  
@@ -21366,7 +21366,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
 +}
 --- a/arch/arm/Makefile
 +++ b/arch/arm/Makefile
-@@ -121,7 +121,10 @@
+@@ -121,7 +121,10 @@ endif
   machine-$(CONFIG_ARCH_OMAP3)    := omap2
      plat-$(CONFIG_ARCH_OMAP)     := omap
   machine-$(CONFIG_ARCH_S3C2410)          := s3c2410 s3c2400 s3c2412 s3c2440 s3c2442 s3c2443
@@ -21379,7 +21379,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
   machine-$(CONFIG_ARCH_IMX)      := imx
 --- a/arch/arm/mm/Kconfig
 +++ b/arch/arm/mm/Kconfig
-@@ -183,14 +183,14 @@
+@@ -183,14 +183,14 @@ config CPU_ARM926T
        depends on ARCH_INTEGRATOR || ARCH_VERSATILE_PB || \
                MACH_VERSATILE_AB || ARCH_OMAP730 || \
                ARCH_OMAP16XX || MACH_REALVIEW_EB || \
@@ -21396,7 +21396,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
                ARCH_AT91SAM9260 || ARCH_AT91SAM9261 || \
                ARCH_AT91SAM9263 || ARCH_AT91SAM9RL || \
                ARCH_AT91SAM9G20 || ARCH_AT91CAP9 || \
-@@ -400,9 +400,10 @@
+@@ -400,9 +400,10 @@ config CPU_FEROCEON_OLD_ID
  # ARMv6
  config CPU_V6
        bool "Support ARM V6 processor"
@@ -24626,7 +24626,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  #ifndef __ASSEMBLY__
  
  /* struct s3c24xx_uart_clksrc
-@@ -224,7 +243,7 @@
+@@ -224,7 +243,7 @@ struct s3c2410_uartcfg {
   * or platform_add_device() before the console_initcall()
  */
  
@@ -24830,7 +24830,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
 +#endif /* __PLAT_S3C_SDHCI_H */
 --- a/arch/arm/plat-s3c/include/plat/uncompress.h
 +++ b/arch/arm/plat-s3c/include/plat/uncompress.h
-@@ -28,7 +28,7 @@
+@@ -28,7 +28,7 @@ static void arch_detect_cpu(void);
  /* defines for UART registers */
  
  #include <plat/regs-serial.h>
@@ -24839,7 +24839,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  
  /* working in physical space... */
  #undef S3C2410_WDOGREG
-@@ -37,7 +37,7 @@
+@@ -37,7 +37,7 @@ static void arch_detect_cpu(void);
  /* how many bytes we allow into the FIFO at a time in FIFO mode */
  #define FIFO_MAX       (14)
  
@@ -24848,7 +24848,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  
  static __inline__ void
  uart_wr(unsigned int reg, unsigned int val)
-@@ -139,6 +139,28 @@
+@@ -139,6 +139,28 @@ static void arch_decomp_error(const char
  
  static void error(char *err);
  
@@ -24877,7 +24877,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  static void
  arch_decomp_setup(void)
  {
-@@ -149,6 +171,12 @@
+@@ -149,6 +171,12 @@ arch_decomp_setup(void)
  
        arch_detect_cpu();
        arch_decomp_wdog_start();
@@ -25067,7 +25067,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        select NO_IOPORT
        help
          Base platform code for any Samsung S3C device
-@@ -16,24 +16,24 @@
+@@ -16,24 +16,24 @@ config PLAT_S3C
  
  config CPU_LLSERIAL_S3C2410_ONLY
        bool
@@ -25096,7 +25096,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        help
          Selected if there is an S3C2440 (or register compatible) serial
          low-level implementation needed
-@@ -57,6 +57,14 @@
+@@ -57,6 +57,14 @@ config S3C_BOOT_ERROR_RESET
          Say y here to use the watchdog to reset the system if the
          kernel decompressor detects an error during decompression.
  
@@ -25111,7 +25111,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  comment "Power management"
  
  config S3C2410_PM_DEBUG
-@@ -67,6 +75,15 @@
+@@ -67,6 +75,15 @@ config S3C2410_PM_DEBUG
          Resume code. See <file:Documentation/arm/Samsung-S3C24XX/Suspend.txt>
          for more information.
  
@@ -25127,7 +25127,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  config S3C2410_PM_CHECK
        bool "S3C2410 PM Suspend Memory CRC"
        depends on PLAT_S3C && PM && CRC32
-@@ -102,3 +119,73 @@
+@@ -102,3 +119,73 @@ config S3C_LOWLEVEL_UART_PORT
          such as the `Uncompressing...` at start time. The value of
          this configuration should be between zero and two. The port
          must have been initialised by the boot-loader before use.
@@ -27737,7 +27737,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  
  #include <plat/common-smdk.h>
  #include <plat/devs.h>
-@@ -201,5 +201,5 @@
+@@ -201,5 +201,5 @@ void __init smdk_machine_init(void)
  
        platform_add_devices(smdk_devs, ARRAY_SIZE(smdk_devs));
  
@@ -27763,7 +27763,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  /* table of supported CPUs */
  
  static const char name_s3c2400[]  = "S3C2400";
-@@ -72,6 +62,7 @@
+@@ -72,6 +62,7 @@ static const char name_s3c2410[]  = "S3C
  static const char name_s3c2412[]  = "S3C2412";
  static const char name_s3c2440[]  = "S3C2440";
  static const char name_s3c2442[]  = "S3C2442";
@@ -27771,7 +27771,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  static const char name_s3c2443[]  = "S3C2443";
  static const char name_s3c2410a[] = "S3C2410A";
  static const char name_s3c2440a[] = "S3C2440A";
-@@ -123,6 +114,15 @@
+@@ -123,6 +114,15 @@ static struct cpu_table cpu_ids[] __init
                .name           = name_s3c2442
        },
        {
@@ -27787,7 +27787,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
                .idcode         = 0x32412001,
                .idmask         = 0xffffffff,
                .map_io         = s3c2412_map_io,
-@@ -169,23 +169,7 @@
+@@ -169,23 +169,7 @@ static struct map_desc s3c_iodesc[] __in
        IODESC_ENT(UART)
  };
  
@@ -27812,7 +27812,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  
  static unsigned long s3c24xx_read_idcode_v5(void)
  {
-@@ -231,6 +215,7 @@
+@@ -231,6 +215,7 @@ void __init s3c24xx_init_io(struct map_d
        unsigned long idcode = 0x0;
  
        /* initialise the io descriptors we need for initialisation */
@@ -27820,7 +27820,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        iotable_init(s3c_iodesc, ARRAY_SIZE(s3c_iodesc));
  
        if (cpu_architecture() >= CPU_ARCH_ARMv5) {
-@@ -239,117 +224,7 @@
+@@ -239,117 +224,7 @@ void __init s3c24xx_init_io(struct map_d
                idcode = s3c24xx_read_idcode_v4();
        }
  
@@ -27960,7 +27960,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  
  /* Serial port registrations */
  
-@@ -76,6 +78,19 @@
+@@ -76,6 +78,19 @@ static struct resource s3c2410_uart2_res
        }
  };
  
@@ -27980,7 +27980,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  struct s3c24xx_uart_resources s3c2410_uart_resources[] __initdata = {
        [0] = {
                .resources      = s3c2410_uart0_resource,
-@@ -89,6 +104,10 @@
+@@ -89,6 +104,10 @@ struct s3c24xx_uart_resources s3c2410_ua
                .resources      = s3c2410_uart2_resource,
                .nr_resources   = ARRAY_SIZE(s3c2410_uart2_resource),
        },
@@ -27991,7 +27991,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  };
  
  /* yart devices */
-@@ -105,13 +124,18 @@
+@@ -105,13 +124,18 @@ static struct platform_device s3c24xx_ua
        .id             = 2,
  };
  
@@ -28012,7 +28012,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  };
  
  /* USB Host Controller */
-@@ -192,8 +216,8 @@
+@@ -192,8 +216,8 @@ void __init s3c24xx_fb_set_platdata(stru
  
  static struct resource s3c_nand_resource[] = {
        [0] = {
@@ -28023,7 +28023,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
                .flags = IORESOURCE_MEM,
        }
  };
-@@ -207,6 +231,23 @@
+@@ -207,6 +231,23 @@ struct platform_device s3c_device_nand =
  
  EXPORT_SYMBOL(s3c_device_nand);
  
@@ -28047,7 +28047,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  /* USB Device (Gadget)*/
  
  static struct resource s3c_usbgadget_resource[] = {
-@@ -271,31 +312,6 @@
+@@ -271,31 +312,6 @@ struct platform_device s3c_device_wdt = 
  
  EXPORT_SYMBOL(s3c_device_wdt);
  
@@ -28079,7 +28079,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  /* IIS */
  
  static struct resource s3c_iis_resource[] = {
-@@ -382,8 +398,8 @@
+@@ -382,8 +398,8 @@ struct platform_device s3c_device_adc = 
  
  static struct resource s3c_sdi_resource[] = {
        [0] = {
@@ -28090,7 +28090,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
                .flags = IORESOURCE_MEM,
        },
        [1] = {
-@@ -403,36 +419,6 @@
+@@ -403,36 +419,6 @@ struct platform_device s3c_device_sdi = 
  
  EXPORT_SYMBOL(s3c_device_sdi);
  
@@ -28137,7 +28137,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  
  void s3c2410_gpio_cfgpin(unsigned int pin, unsigned int function)
  {
-@@ -215,3 +216,423 @@
+@@ -215,3 +216,423 @@ int s3c2410_gpio_irq2pin(unsigned int ir
  }
  
  EXPORT_SYMBOL(s3c2410_gpio_irq2pin);
@@ -28670,7 +28670,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  static int s3c24xx_gpiolib_banka_input(struct gpio_chip *chip, unsigned offset)
  {
        return -EINVAL;
-@@ -125,7 +34,7 @@
+@@ -125,7 +34,7 @@ static int s3c24xx_gpiolib_banka_input(s
  static int s3c24xx_gpiolib_banka_output(struct gpio_chip *chip,
                                        unsigned offset, int value)
  {
@@ -28679,7 +28679,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        void __iomem *base = ourchip->base;
        unsigned long flags;
        unsigned long dat;
-@@ -151,9 +60,10 @@
+@@ -151,9 +60,10 @@ static int s3c24xx_gpiolib_banka_output(
        return 0;
  }
  
@@ -28691,7 +28691,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
                .chip   = {
                        .base                   = S3C2410_GPA0,
                        .owner                  = THIS_MODULE,
-@@ -161,97 +71,87 @@
+@@ -161,97 +71,87 @@ static struct s3c24xx_gpio_chip gpios[] 
                        .ngpio                  = 24,
                        .direction_input        = s3c24xx_gpiolib_banka_input,
                        .direction_output       = s3c24xx_gpiolib_banka_output,
@@ -29222,7 +29222,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  #define irqdbf(x...)
  #define irqdbf2(x...)
  
-@@ -25,8 +31,15 @@
+@@ -25,8 +31,15 @@ s3c_irqsub_mask(unsigned int irqno, unsi
  {
        unsigned long mask;
        unsigned long submask;
@@ -29238,7 +29238,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        mask = __raw_readl(S3C2410_INTMSK);
  
        submask |= (1UL << (irqno - IRQ_S3CUART_RX0));
-@@ -39,6 +52,9 @@
+@@ -39,6 +52,9 @@ s3c_irqsub_mask(unsigned int irqno, unsi
  
        /* write back masks */
        __raw_writel(submask, S3C2410_INTSUBMSK);
@@ -29248,7 +29248,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  
  }
  
-@@ -47,8 +63,15 @@
+@@ -47,8 +63,15 @@ s3c_irqsub_unmask(unsigned int irqno, un
  {
        unsigned long mask;
        unsigned long submask;
@@ -29264,7 +29264,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        mask = __raw_readl(S3C2410_INTMSK);
  
        submask &= ~(1UL << (irqno - IRQ_S3CUART_RX0));
-@@ -57,6 +80,9 @@
+@@ -57,6 +80,9 @@ s3c_irqsub_unmask(unsigned int irqno, un
        /* write back masks */
        __raw_writel(submask, S3C2410_INTSUBMSK);
        __raw_writel(mask, S3C2410_INTMSK);
@@ -29855,7 +29855,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  
 --- a/arch/arm/plat-s3c24xx/include/plat/s3c2443.h
 +++ b/arch/arm/plat-s3c24xx/include/plat/s3c2443.h
-@@ -16,7 +16,7 @@
+@@ -16,7 +16,7 @@ struct s3c2410_uartcfg;
  
  extern  int s3c2443_init(void);
  
@@ -30054,7 +30054,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  }
  
  static inline void
-@@ -155,9 +67,19 @@
+@@ -155,9 +67,19 @@ s3c_irq_maskack(unsigned int irqno)
  {
        unsigned long bitval = 1UL << (irqno - IRQ_EINT0);
        unsigned long mask;
@@ -30074,7 +30074,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  
        __raw_writel(bitval, S3C2410_SRCPND);
        __raw_writel(bitval, S3C2410_INTPND);
-@@ -168,15 +90,25 @@
+@@ -168,15 +90,25 @@ static void
  s3c_irq_unmask(unsigned int irqno)
  {
        unsigned long mask;
@@ -30100,7 +30100,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  }
  
  struct irq_chip s3c_irq_level_chip = {
-@@ -589,59 +521,6 @@
+@@ -589,59 +521,6 @@ s3c_irq_demux_extint4t7(unsigned int irq
        }
  }
  
@@ -30160,7 +30160,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  /* s3c24xx_init_irq
   *
   * Initialise S3C2410 IRQ system
-@@ -672,26 +551,26 @@
+@@ -672,26 +551,26 @@ void __init s3c24xx_init_irq(void)
  
        last = 0;
        for (i = 0; i < 4; i++) {
@@ -30353,7 +30353,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        help
          Support for S3C2440 and S3C2442 Samsung Mobile CPU based systems.
  
-@@ -49,9 +63,31 @@
+@@ -49,9 +63,31 @@ config S3C2410_DMA_DEBUG
          Enable debugging output for the DMA code. This option sends info
          to the kernel log, at priority KERN_DEBUG.
  
@@ -30387,7 +30387,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  endif
 --- a/arch/arm/plat-s3c24xx/Makefile
 +++ b/arch/arm/plat-s3c24xx/Makefile
-@@ -17,9 +17,8 @@
+@@ -17,9 +17,8 @@ obj-y                                += irq.o
  obj-y                         += devs.o
  obj-y                         += gpio.o
  obj-y                         += gpiolib.o
@@ -30398,7 +30398,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  
  # Architecture dependant builds
  
-@@ -28,7 +27,26 @@
+@@ -28,7 +27,26 @@ obj-$(CONFIG_CPU_S3C244X)   += s3c244x-irq
  obj-$(CONFIG_CPU_S3C244X)     += s3c244x-clock.o
  obj-$(CONFIG_PM_SIMTEC)               += pm-simtec.o
  obj-$(CONFIG_PM)              += pm.o
@@ -31940,7 +31940,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  #define PFX "s3c24xx-pm: "
  
  static struct sleep_save core_save[] = {
-@@ -76,371 +67,26 @@
+@@ -76,371 +67,26 @@ static struct sleep_save core_save[] = {
        SAVE_ITEM(S3C2410_BANKCON4),
        SAVE_ITEM(S3C2410_BANKCON5),
  
@@ -32317,7 +32317,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  {
        unsigned long irqstate;
        unsigned long pinstate;
-@@ -455,21 +101,21 @@
+@@ -455,21 +101,21 @@ static void s3c2410_pm_check_resume_pin(
  
        if (!irqstate) {
                if (pinstate == S3C2410_GPIO_IRQ)
@@ -32343,7 +32343,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  {
        int pin;
  
-@@ -479,336 +125,24 @@
+@@ -479,336 +125,24 @@ static void s3c2410_pm_configure_extint(
        */
  
        for (pin = S3C2410_GPF0; pin <= S3C2410_GPF7; pin++) {
@@ -32690,7 +32690,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
 -}
 --- a/arch/arm/plat-s3c24xx/pm-simtec.c
 +++ b/arch/arm/plat-s3c24xx/pm-simtec.c
-@@ -61,7 +61,7 @@
+@@ -61,7 +61,7 @@ static __init int pm_simtec_init(void)
  
        __raw_writel(gstatus4, S3C2410_GSTATUS4);
  
@@ -33014,7 +33014,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  
  static struct map_desc s3c244x_iodesc[] __initdata = {
        IODESC_ENT(CLKPWR),
-@@ -56,32 +59,37 @@
+@@ -56,32 +59,37 @@ void __init s3c244x_init_uarts(struct s3
        s3c24xx_init_uartdevs("s3c2440-uart", s3c2410_uart_resources, cfg, no);
  }
  
@@ -33059,7 +33059,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  
        clkdiv = __raw_readl(S3C2410_CLKDIVN);
        camdiv = __raw_readl(S3C2440_CAMDIVN);
-@@ -107,18 +115,24 @@
+@@ -107,18 +115,24 @@ void __init s3c244x_init_clocks(int xtal
        }
  
        hclk = fclk / hdiv;
@@ -33086,7 +33086,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        s3c2410_baseclk_add();
  }
  
-@@ -134,13 +148,13 @@
+@@ -134,13 +148,13 @@ static struct sleep_save s3c244x_sleep[]
  
  static int s3c244x_suspend(struct sys_device *dev, pm_message_t state)
  {
@@ -33112,7 +33112,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  #include <linux/clk.h>
  #include <linux/io.h>
  
-@@ -102,13 +101,13 @@
+@@ -102,13 +101,13 @@ static int s3c244x_clk_add(struct sys_de
        if (clk_get_rate(clock_upll) > (94 * MHZ)) {
                clk_usb_bus.rate = clk_get_rate(clock_upll) / 2;
  
@@ -33187,7 +33187,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        stmfd   sp!, { r4 - r12, lr }
  
        @@ store co-processor registers
-@@ -84,7 +84,7 @@
+@@ -84,7 +84,7 @@ resume_with_mmu:
        .ltorg
  
        @@ the next bits sit in the .data segment, even though they
@@ -33196,7 +33196,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        @@ accessed by the resume code before it can restore the MMU.
        @@ This means that the variable has to be close enough for the
        @@ code to read it... since the .text segment needs to be RO,
-@@ -92,19 +92,19 @@
+@@ -92,19 +92,19 @@ resume_with_mmu:
  
        .data
  
@@ -33220,7 +33220,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
         *
         * resume code entry for bootloader to call
         *
-@@ -113,7 +113,7 @@
+@@ -113,7 +113,7 @@ s3c2410_sleep_save_phys:
         * must not write to the code segment (code is read-only)
        */
  
@@ -33229,7 +33229,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        mov     r0, #PSR_I_BIT | PSR_F_BIT | SVC_MODE
        msr     cpsr_c, r0
  
-@@ -145,7 +145,7 @@
+@@ -145,7 +145,7 @@ ENTRY(s3c2410_cpu_resume)
        mcr     p15, 0, r1, c8, c7, 0           @@ invalidate I & D TLBs
        mcr     p15, 0, r1, c7, c7, 0           @@ invalidate I & D caches
  
@@ -33361,7 +33361,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  
  #define TIMER_USEC_SHIFT 16
  
-@@ -177,11 +183,7 @@
+@@ -177,11 +183,7 @@ static void s3c2410_timer_setup (void)
                tcfg1 &= ~S3C2410_TCFG1_MUX4_MASK;
                tcfg1 |= S3C2410_TCFG1_MUX4_TCLK1;
        } else {
@@ -33374,7 +33374,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
                 * 70MHz are not values we can directly generate the timer
                 * value from, we need to pre-scale and divide before using it.
                 *
-@@ -189,19 +191,9 @@
+@@ -189,19 +191,9 @@ static void s3c2410_timer_setup (void)
                 * (8.45 ticks per usec)
                 */
  
@@ -33395,7 +33395,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  
                tcfg1 &= ~S3C2410_TCFG1_MUX4_MASK;
                tcfg1 |= S3C2410_TCFG1_MUX4_DIV2;
-@@ -245,16 +237,244 @@
+@@ -245,16 +237,244 @@ static void s3c2410_timer_setup (void)
        tcon |= S3C2410_TCON_T4START;
        tcon &= ~S3C2410_TCON_T4MANUALUPD;
        __raw_writel(tcon, S3C2410_TCON);
@@ -38455,7 +38455,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
 +
 --- a/Documentation/arm/Samsung-S3C24XX/Suspend.txt
 +++ b/Documentation/arm/Samsung-S3C24XX/Suspend.txt
-@@ -40,13 +40,13 @@
+@@ -40,13 +40,13 @@ Resuming
  Machine Support
  ---------------
  
@@ -38472,7 +38472,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
    needs to setup anything else for power management support.
  
    There is currently no support for over-riding the default method of
-@@ -74,7 +74,7 @@
+@@ -74,7 +74,7 @@ statuc void __init machine_init(void)
  
        enable_irq_wake(IRQ_EINT0);
  
@@ -78733,7 +78733,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
 +#endif /* _WMI_HOST_H_ */
 --- a/drivers/base/bus.c
 +++ b/drivers/base/bus.c
-@@ -141,6 +141,29 @@
+@@ -141,6 +141,29 @@ void bus_remove_file(struct bus_type *bu
  }
  EXPORT_SYMBOL_GPL(bus_remove_file);
  
@@ -78765,7 +78765,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  };
 --- a/drivers/base/core.c
 +++ b/drivers/base/core.c
-@@ -55,6 +55,11 @@
+@@ -55,6 +55,11 @@ static inline int device_is_not_partitio
   */
  const char *dev_driver_string(const struct device *dev)
  {
@@ -78779,7 +78779,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
                        (dev->class ? dev->class->name : ""));
 --- a/drivers/base/power/main.c
 +++ b/drivers/base/power/main.c
-@@ -69,9 +69,9 @@
+@@ -69,9 +69,9 @@ void device_pm_unlock(void)
   */
  void device_pm_add(struct device *dev)
  {
@@ -78793,7 +78793,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
                if (dev->parent->power.status >= DPM_SUSPENDING)
 --- a/drivers/char/Kconfig
 +++ b/drivers/char/Kconfig
-@@ -66,6 +66,18 @@
+@@ -66,6 +66,18 @@ config VT_CONSOLE
  
          If unsure, say Y.
  
@@ -78844,7 +78844,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  
  /* i2c controller state */
  
-@@ -64,6 +62,7 @@
+@@ -64,6 +62,7 @@ struct s3c24xx_i2c {
        unsigned int            msg_ptr;
  
        unsigned int            tx_setup;
@@ -78852,7 +78852,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  
        enum s3c24xx_i2c_state  state;
        unsigned long           clkrate;
-@@ -71,7 +70,6 @@
+@@ -71,7 +70,6 @@ struct s3c24xx_i2c {
        void __iomem            *regs;
        struct clk              *clk;
        struct device           *dev;
@@ -78860,7 +78860,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        struct resource         *ioarea;
        struct i2c_adapter      adap;
  
-@@ -80,16 +78,7 @@
+@@ -80,16 +78,7 @@ struct s3c24xx_i2c {
  #endif
  };
  
@@ -78878,7 +78878,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  
  /* s3c24xx_i2c_is2440()
   *
-@@ -103,21 +92,6 @@
+@@ -103,21 +92,6 @@ static inline int s3c24xx_i2c_is2440(str
        return !strcmp(pdev->name, "s3c2440-i2c");
  }
  
@@ -78900,7 +78900,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  /* s3c24xx_i2c_master_complete
   *
   * complete the message and wake up the caller, using the given return code,
-@@ -130,7 +104,7 @@
+@@ -130,7 +104,7 @@ static inline void s3c24xx_i2c_master_co
  
        i2c->msg_ptr = 0;
        i2c->msg = NULL;
@@ -78909,7 +78909,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        i2c->msg_num = 0;
        if (ret)
                i2c->msg_idx = ret;
-@@ -141,19 +115,17 @@
+@@ -141,19 +115,17 @@ static inline void s3c24xx_i2c_master_co
  static inline void s3c24xx_i2c_disable_ack(struct s3c24xx_i2c *i2c)
  {
        unsigned long tmp;
@@ -78931,7 +78931,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  }
  
  /* irq enable/disable functions */
-@@ -161,15 +133,23 @@
+@@ -161,15 +133,23 @@ static inline void s3c24xx_i2c_enable_ac
  static inline void s3c24xx_i2c_disable_irq(struct s3c24xx_i2c *i2c)
  {
        unsigned long tmp;
@@ -78957,7 +78957,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        tmp = readl(i2c->regs + S3C2410_IICCON);
        writel(tmp | S3C2410_IICCON_IRQEN, i2c->regs + S3C2410_IICCON);
  }
-@@ -177,10 +157,10 @@
+@@ -177,10 +157,10 @@ static inline void s3c24xx_i2c_enable_ir
  
  /* s3c24xx_i2c_message_start
   *
@@ -78970,7 +78970,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
                                      struct i2c_msg *msg)
  {
        unsigned int addr = (msg->addr & 0x7f) << 1;
-@@ -199,15 +179,15 @@
+@@ -199,15 +179,15 @@ static void s3c24xx_i2c_message_start(st
        if (msg->flags & I2C_M_REV_DIR_ADDR)
                addr ^= 1;
  
@@ -78989,7 +78989,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        /* delay here to ensure the data byte has gotten onto the bus
         * before the transaction is started */
  
-@@ -215,8 +195,8 @@
+@@ -215,8 +195,8 @@ static void s3c24xx_i2c_message_start(st
  
        dev_dbg(i2c->dev, "iiccon, %08lx\n", iiccon);
        writel(iiccon, i2c->regs + S3C2410_IICCON);
@@ -79000,7 +79000,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        writel(stat, i2c->regs + S3C2410_IICSTAT);
  }
  
-@@ -227,11 +207,11 @@
+@@ -227,11 +207,11 @@ static inline void s3c24xx_i2c_stop(stru
        dev_dbg(i2c->dev, "STOP\n");
  
        /* stop the transfer */
@@ -79015,7 +79015,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        s3c24xx_i2c_master_complete(i2c, ret);
        s3c24xx_i2c_disable_irq(i2c);
  }
-@@ -241,7 +221,7 @@
+@@ -241,7 +221,7 @@ static inline void s3c24xx_i2c_stop(stru
  
  /* is_lastmsg()
   *
@@ -79024,7 +79024,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  */
  
  static inline int is_lastmsg(struct s3c24xx_i2c *i2c)
-@@ -289,14 +269,14 @@
+@@ -289,14 +269,14 @@ static int i2s_s3c_irq_nextbyte(struct s
  
        case STATE_STOP:
                dev_err(i2c->dev, "%s: called in STATE_STOP\n", __func__);
@@ -79041,7 +79041,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
                if (iicstat & S3C2410_IICSTAT_LASTBIT &&
                    !(i2c->msg->flags & I2C_M_IGNORE_NAK)) {
                        /* ack was not received... */
-@@ -322,7 +302,7 @@
+@@ -322,7 +302,7 @@ static int i2s_s3c_irq_nextbyte(struct s
                if (i2c->state == STATE_READ)
                        goto prepare_read;
  
@@ -79050,7 +79050,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
                 * send a byte as well */
  
        case STATE_WRITE:
-@@ -339,7 +319,7 @@
+@@ -339,7 +319,7 @@ static int i2s_s3c_irq_nextbyte(struct s
                        }
                }
  
@@ -79059,7 +79059,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  
                if (!is_msgend(i2c)) {
                        byte = i2c->msg->buf[i2c->msg_ptr++];
-@@ -359,9 +339,9 @@
+@@ -359,9 +339,9 @@ static int i2s_s3c_irq_nextbyte(struct s
                        dev_dbg(i2c->dev, "WRITE: Next Message\n");
  
                        i2c->msg_ptr = 0;
@@ -79071,7 +79071,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
                        /* check to see if we need to do another message */
                        if (i2c->msg->flags & I2C_M_NOSTART) {
  
-@@ -375,7 +355,6 @@
+@@ -375,7 +355,6 @@ static int i2s_s3c_irq_nextbyte(struct s
  
                                goto retry_write;
                        } else {
@@ -79079,7 +79079,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
                                /* send the new start */
                                s3c24xx_i2c_message_start(i2c, i2c->msg);
                                i2c->state = STATE_START;
-@@ -389,7 +368,7 @@
+@@ -389,7 +368,7 @@ static int i2s_s3c_irq_nextbyte(struct s
                break;
  
        case STATE_READ:
@@ -79088,7 +79088,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
                 * something with it, and then work out wether we are
                 * going to do any more read/write
                 */
-@@ -397,13 +376,13 @@
+@@ -397,13 +376,13 @@ static int i2s_s3c_irq_nextbyte(struct s
                byte = readb(i2c->regs + S3C2410_IICDS);
                i2c->msg->buf[i2c->msg_ptr++] = byte;
  
@@ -79104,7 +79104,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
                } else if (is_msgend(i2c)) {
                        /* ok, we've read the entire buffer, see if there
                         * is anything else we need to do */
-@@ -429,7 +408,7 @@
+@@ -429,7 +408,7 @@ static int i2s_s3c_irq_nextbyte(struct s
        /* acknowlegde the IRQ and get back on with the work */
  
   out_ack:
@@ -79113,7 +79113,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        tmp &= ~S3C2410_IICCON_IRQPEND;
        writel(tmp, i2c->regs + S3C2410_IICCON);
   out:
-@@ -450,19 +429,19 @@
+@@ -450,19 +429,19 @@ static irqreturn_t s3c24xx_i2c_irq(int i
        status = readl(i2c->regs + S3C2410_IICSTAT);
  
        if (status & S3C2410_IICSTAT_ARBITR) {
@@ -79136,7 +79136,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        /* pretty much this leaves us with the fact that we've
         * transmitted or received whatever byte we last sent */
  
-@@ -485,16 +464,13 @@
+@@ -485,16 +464,13 @@ static int s3c24xx_i2c_set_master(struct
  
        while (timeout-- > 0) {
                iicstat = readl(i2c->regs + S3C2410_IICSTAT);
@@ -79154,7 +79154,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        return -ETIMEDOUT;
  }
  
-@@ -503,7 +479,8 @@
+@@ -503,7 +479,8 @@ static int s3c24xx_i2c_set_master(struct
   * this starts an i2c transfer
  */
  
@@ -79164,7 +79164,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  {
        unsigned long timeout;
        int ret;
-@@ -511,6 +488,15 @@
+@@ -511,6 +488,15 @@ static int s3c24xx_i2c_doxfer(struct s3c
        if (i2c->suspended)
                return -EIO;
  
@@ -79180,7 +79180,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        ret = s3c24xx_i2c_set_master(i2c);
        if (ret != 0) {
                dev_err(i2c->dev, "cannot get bus (error %d)\n", ret);
-@@ -529,12 +515,12 @@
+@@ -529,12 +515,12 @@ static int s3c24xx_i2c_doxfer(struct s3c
        s3c24xx_i2c_enable_irq(i2c);
        s3c24xx_i2c_message_start(i2c, msgs);
        spin_unlock_irq(&i2c->lock);
@@ -79195,7 +79195,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
         * noisy when doing an i2cdetect */
  
        if (timeout == 0)
-@@ -591,19 +577,6 @@
+@@ -591,19 +577,6 @@ static const struct i2c_algorithm s3c24x
        .functionality          = s3c24xx_i2c_func,
  };
  
@@ -79215,7 +79215,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  /* s3c24xx_i2c_calcdivisor
   *
   * return the divisor settings for a given frequency
-@@ -643,7 +616,7 @@
+@@ -643,7 +616,7 @@ static inline int freq_acceptable(unsign
  {
        int diff = freq - wanted;
  
@@ -79224,7 +79224,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  }
  
  /* s3c24xx_i2c_clockrate
-@@ -655,7 +628,7 @@
+@@ -655,7 +628,7 @@ static inline int freq_acceptable(unsign
  
  static int s3c24xx_i2c_clockrate(struct s3c24xx_i2c *i2c, unsigned int *got)
  {
@@ -79233,7 +79233,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        unsigned long clkin = clk_get_rate(i2c->clk);
        unsigned int divs, div1;
        u32 iiccon;
-@@ -663,10 +636,8 @@
+@@ -663,10 +636,8 @@ static int s3c24xx_i2c_clockrate(struct 
        int start, end;
  
        i2c->clkrate = clkin;
@@ -79245,7 +79245,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        dev_dbg(i2c->dev, "pdata %p, freq %lu %lu..%lu\n",
                 pdata, pdata->bus_freq, pdata->min_freq, pdata->max_freq);
  
-@@ -774,7 +745,7 @@
+@@ -774,7 +745,7 @@ static inline void s3c24xx_i2c_deregiste
  
  /* s3c24xx_i2c_init
   *
@@ -79254,7 +79254,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  */
  
  static int s3c24xx_i2c_init(struct s3c24xx_i2c *i2c)
-@@ -785,15 +756,15 @@
+@@ -785,15 +756,15 @@ static int s3c24xx_i2c_init(struct s3c24
  
        /* get the plafrom data */
  
@@ -79274,7 +79274,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        writeb(pdata->slave_addr, i2c->regs + S3C2410_IICADD);
  
        dev_info(i2c->dev, "slave address 0x%02x\n", pdata->slave_addr);
-@@ -831,12 +802,32 @@
+@@ -831,12 +802,32 @@ static int s3c24xx_i2c_init(struct s3c24
  
  static int s3c24xx_i2c_probe(struct platform_device *pdev)
  {
@@ -79309,7 +79309,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  
        /* find the clock and enable it */
  
-@@ -878,7 +869,8 @@
+@@ -878,7 +869,8 @@ static int s3c24xx_i2c_probe(struct plat
                goto err_ioarea;
        }
  
@@ -79319,7 +79319,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  
        /* setup info block for the i2c core */
  
-@@ -892,29 +884,23 @@
+@@ -892,29 +884,23 @@ static int s3c24xx_i2c_probe(struct plat
                goto err_iomap;
  
        /* find the IRQ for this unit (note, this relies on the init call to
@@ -79355,7 +79355,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        ret = s3c24xx_i2c_register_cpufreq(i2c);
        if (ret < 0) {
                dev_err(&pdev->dev, "failed to register cpufreq notifier\n");
-@@ -944,7 +930,7 @@
+@@ -944,7 +930,7 @@ static int s3c24xx_i2c_probe(struct plat
        s3c24xx_i2c_deregister_cpufreq(i2c);
  
   err_irq:
@@ -79364,7 +79364,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  
   err_iomap:
        iounmap(i2c->regs);
-@@ -958,6 +944,7 @@
+@@ -958,6 +944,7 @@ static int s3c24xx_i2c_probe(struct plat
        clk_put(i2c->clk);
  
   err_noclk:
@@ -79372,7 +79372,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        return ret;
  }
  
-@@ -973,7 +960,7 @@
+@@ -973,7 +960,7 @@ static int s3c24xx_i2c_remove(struct pla
        s3c24xx_i2c_deregister_cpufreq(i2c);
  
        i2c_del_adapter(&i2c->adap);
@@ -79381,7 +79381,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  
        clk_disable(i2c->clk);
        clk_put(i2c->clk);
-@@ -982,6 +969,7 @@
+@@ -982,6 +969,7 @@ static int s3c24xx_i2c_remove(struct pla
  
        release_resource(i2c->ioarea);
        kfree(i2c->ioarea);
@@ -79391,7 +79391,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  }
 --- a/drivers/i2c/busses/Kconfig
 +++ b/drivers/i2c/busses/Kconfig
-@@ -455,11 +455,12 @@
+@@ -455,11 +455,12 @@ config I2C_PXA_SLAVE
          I2C bus.
  
  config I2C_S3C2410
@@ -79409,7 +79409,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        tristate "Renesas SH7760 I2C Controller"
 --- a/drivers/i2c/chips/Kconfig
 +++ b/drivers/i2c/chips/Kconfig
-@@ -53,6 +53,26 @@
+@@ -53,6 +53,26 @@ config SENSORS_EEPROM
          This driver can also be built as a module.  If so, the module
          will be called eeprom.
  
@@ -79436,7 +79436,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  config SENSORS_PCF8574
        tristate "Philips PCF8574 and PCF8574A (DEPRECATED)"
        depends on EXPERIMENTAL && GPIO_PCF857X = "n"
-@@ -185,4 +205,23 @@
+@@ -185,4 +205,23 @@ config MCU_MPC8349EMITX
          also register MCU GPIOs with the generic GPIO API, so you'll able
          to use MCU pins as GPIOs.
  
@@ -79462,7 +79462,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  endmenu
 --- a/drivers/i2c/chips/Makefile
 +++ b/drivers/i2c/chips/Makefile
-@@ -15,6 +15,8 @@
+@@ -15,6 +15,8 @@ obj-$(CONFIG_AT24)           += at24.o
  obj-$(CONFIG_SENSORS_EEPROM)  += eeprom.o
  obj-$(CONFIG_SENSORS_MAX6875) += max6875.o
  obj-$(CONFIG_SENSORS_PCA9539) += pca9539.o
@@ -79471,7 +79471,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  obj-$(CONFIG_SENSORS_PCF8574) += pcf8574.o
  obj-$(CONFIG_PCF8575)         += pcf8575.o
  obj-$(CONFIG_SENSORS_PCF8591) += pcf8591.o
-@@ -23,6 +25,8 @@
+@@ -23,6 +25,8 @@ obj-$(CONFIG_TPS65010)               += tps65010.o
  obj-$(CONFIG_MENELAUS)                += menelaus.o
  obj-$(CONFIG_SENSORS_TSL2550) += tsl2550.o
  obj-$(CONFIG_MCU_MPC8349EMITX)        += mcu_mpc8349emitx.o
@@ -84455,7 +84455,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  /* ------------------------------------------------------------------------- */
  /*   Copyright (C) 1995-99 Simon G. Vogl
  
-@@ -158,10 +157,16 @@
+@@ -158,10 +157,16 @@ static int i2c_device_suspend(struct dev
  
        if (!dev->driver)
                return 0;
@@ -84472,7 +84472,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  }
  
  static int i2c_device_resume(struct device * dev)
-@@ -170,10 +175,16 @@
+@@ -170,10 +175,16 @@ static int i2c_device_resume(struct devi
  
        if (!dev->driver)
                return 0;
@@ -84489,7 +84489,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  }
  
  static void i2c_client_release(struct device *dev)
-@@ -1129,11 +1140,11 @@
+@@ -1129,11 +1140,11 @@ static int i2c_probe_address(struct i2c_
        int err;
  
        /* Make sure the address is valid */
@@ -84516,7 +84516,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        struct gpio_keys_button *button;
 --- a/drivers/input/keyboard/Kconfig
 +++ b/drivers/input/keyboard/Kconfig
-@@ -323,4 +323,21 @@
+@@ -323,4 +323,21 @@ config KEYBOARD_SH_KEYSC
  
          To compile this driver as a module, choose M here: the
          module will be called sh_keysc.
@@ -84540,7 +84540,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  endif
 --- a/drivers/input/keyboard/Makefile
 +++ b/drivers/input/keyboard/Makefile
-@@ -14,6 +14,8 @@
+@@ -14,6 +14,8 @@ obj-$(CONFIG_KEYBOARD_LOCOMO)                += locomo
  obj-$(CONFIG_KEYBOARD_NEWTON)         += newtonkbd.o
  obj-$(CONFIG_KEYBOARD_STOWAWAY)               += stowaway.o
  obj-$(CONFIG_KEYBOARD_CORGI)          += corgikbd.o
@@ -85253,7 +85253,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
 +MODULE_LICENSE("GPL");
 --- a/drivers/input/misc/Kconfig
 +++ b/drivers/input/misc/Kconfig
-@@ -236,4 +236,25 @@
+@@ -236,4 +236,25 @@ config INPUT_GPIO_BUTTONS
          To compile this driver as a module, choose M here: the
          module will be called gpio-buttons.
  
@@ -86158,7 +86158,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
 +module_exit(lis302dl_exit);
 --- a/drivers/input/misc/Makefile
 +++ b/drivers/input/misc/Makefile
-@@ -22,3 +22,6 @@
+@@ -22,3 +22,6 @@ obj-$(CONFIG_INPUT_UINPUT)           += uinput.o
  obj-$(CONFIG_INPUT_APANEL)            += apanel.o
  obj-$(CONFIG_INPUT_SGI_BTNS)          += sgi_btns.o
  obj-$(CONFIG_INPUT_GPIO_BUTTONS)      += gpio_buttons.o
@@ -86419,7 +86419,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
 +MODULE_ALIAS("platform:pcf50633-input");
 --- a/drivers/input/mousedev.c
 +++ b/drivers/input/mousedev.c
-@@ -1016,6 +1016,7 @@
+@@ -1016,6 +1016,7 @@ static const struct input_device_id mous
                .evbit = { BIT_MASK(EV_KEY) | BIT_MASK(EV_REL) },
                .relbit = { BIT_MASK(REL_WHEEL) },
        },      /* A separate scrollwheel */
@@ -86427,7 +86427,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        {
                .flags = INPUT_DEVICE_ID_MATCH_EVBIT |
                                INPUT_DEVICE_ID_MATCH_KEYBIT |
-@@ -1025,6 +1026,7 @@
+@@ -1025,6 +1026,7 @@ static const struct input_device_id mous
                .absbit = { BIT_MASK(ABS_X) | BIT_MASK(ABS_Y) },
        },      /* A tablet like device, at least touch detection,
                   two absolute axes */
@@ -86437,7 +86437,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
                                INPUT_DEVICE_ID_MATCH_KEYBIT |
 --- a/drivers/input/touchscreen/Kconfig
 +++ b/drivers/input/touchscreen/Kconfig
-@@ -11,6 +11,50 @@
+@@ -11,6 +11,50 @@ menuconfig INPUT_TOUCHSCREEN
  
  if INPUT_TOUCHSCREEN
  
@@ -86488,7 +86488,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  config TOUCHSCREEN_ADS7846
        tristate "ADS7846/TSC2046 and ADS7843 based touchscreens"
        depends on SPI_MASTER
-@@ -71,6 +115,25 @@
+@@ -71,6 +115,25 @@ config TOUCHSCREEN_FUJITSU
          To compile this driver as a module, choose M here: the
          module will be called fujitsu-ts.
  
@@ -86514,7 +86514,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  config TOUCHSCREEN_GUNZE
        tristate "Gunze AHL-51S touchscreen"
        select SERIO
-@@ -376,4 +439,15 @@
+@@ -376,4 +439,15 @@ config TOUCHSCREEN_TOUCHIT213
          To compile this driver as a module, choose M here: the
          module will be called touchit213.
  
@@ -86532,7 +86532,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
 +
 --- a/drivers/input/touchscreen/Makefile
 +++ b/drivers/input/touchscreen/Makefile
-@@ -31,3 +31,10 @@
+@@ -31,3 +31,10 @@ wm97xx-ts-$(CONFIG_TOUCHSCREEN_WM9705)      +
  wm97xx-ts-$(CONFIG_TOUCHSCREEN_WM9712)        += wm9712.o
  wm97xx-ts-$(CONFIG_TOUCHSCREEN_WM9713)        += wm9713.o
  obj-$(CONFIG_TOUCHSCREEN_WM97XX_MAINSTONE)    += mainstone-wm97xx.o
@@ -88029,7 +88029,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
 +};
 --- a/drivers/Kconfig
 +++ b/drivers/Kconfig
-@@ -107,4 +107,6 @@
+@@ -107,4 +107,6 @@ source "drivers/uio/Kconfig"
  source "drivers/xen/Kconfig"
  
  source "drivers/staging/Kconfig"
@@ -88038,7 +88038,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  endmenu
 --- a/drivers/leds/Kconfig
 +++ b/drivers/leds/Kconfig
-@@ -33,7 +33,7 @@
+@@ -33,7 +33,7 @@ config LEDS_LOCOMO
  
  config LEDS_S3C24XX
        tristate "LED Support for Samsung S3C24XX GPIO LEDs"
@@ -88047,7 +88047,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        help
          This option enables support for LEDs connected to GPIO lines
          on Samsung S3C24XX series CPUs, such as the S3C2410 and S3C2440.
-@@ -171,6 +171,18 @@
+@@ -171,6 +171,18 @@ config LEDS_DA903X
          This option enables support for on-chip LED drivers found
          on Dialog Semiconductor DA9030/DA9034 PMICs.
  
@@ -88068,7 +88068,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  config LEDS_TRIGGERS
 --- a/drivers/leds/led-class.c
 +++ b/drivers/leds/led-class.c
-@@ -56,8 +56,10 @@
+@@ -56,8 +56,10 @@ static ssize_t led_brightness_store(stru
        if (count == size) {
                ret = count;
  
@@ -88475,7 +88475,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
 +MODULE_LICENSE("GPL");
 --- a/drivers/leds/Makefile
 +++ b/drivers/leds/Makefile
-@@ -24,6 +24,8 @@
+@@ -24,6 +24,8 @@ obj-$(CONFIG_LEDS_FSG)                       += leds-fsg.o
  obj-$(CONFIG_LEDS_PCA955X)            += leds-pca955x.o
  obj-$(CONFIG_LEDS_DA903X)             += leds-da903x.o
  obj-$(CONFIG_LEDS_HP_DISK)            += leds-hp-disk.o
@@ -88486,7 +88486,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  obj-$(CONFIG_LEDS_TRIGGER_TIMER)      += ledtrig-timer.o
 --- a/drivers/Makefile
 +++ b/drivers/Makefile
-@@ -86,6 +86,7 @@
+@@ -86,6 +86,7 @@ obj-$(CONFIG_CPU_IDLE)               += cpuidle/
  obj-y                         += idle/
  obj-$(CONFIG_MMC)             += mmc/
  obj-$(CONFIG_MEMSTICK)                += memstick/
@@ -88494,7 +88494,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  obj-$(CONFIG_NEW_LEDS)                += leds/
  obj-$(CONFIG_INFINIBAND)      += infiniband/
  obj-$(CONFIG_SGI_SN)          += sn/
-@@ -98,6 +99,7 @@
+@@ -98,6 +99,7 @@ obj-$(CONFIG_DCA)            += dca/
  obj-$(CONFIG_HID)             += hid/
  obj-$(CONFIG_PPC_PS3)         += ps3/
  obj-$(CONFIG_OF)              += of/
@@ -93571,7 +93571,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
 +
 --- a/drivers/mfd/Kconfig
 +++ b/drivers/mfd/Kconfig
-@@ -153,6 +153,55 @@
+@@ -153,6 +153,55 @@ config MFD_WM8350_I2C
          I2C as the control interface.  Additional options must be
          selected to enable support for the functionality of the chip.
  
@@ -93637,7 +93637,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  
  obj-$(CONFIG_HTC_EGPIO)               += htc-egpio.o
  obj-$(CONFIG_HTC_PASIC3)      += htc-pasic3.o
-@@ -31,4 +32,13 @@
+@@ -31,4 +32,13 @@ obj-$(CONFIG_MCP_UCB1200)   += ucb1x00-ass
  endif
  obj-$(CONFIG_UCB1400_CORE)    += ucb1400_core.o
  
@@ -95605,7 +95605,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
 +
 --- a/drivers/misc/Kconfig
 +++ b/drivers/misc/Kconfig
-@@ -401,6 +401,11 @@
+@@ -401,6 +401,11 @@ config THINKPAD_ACPI_HOTKEY_POLL
          If you are not sure, say Y here.  The driver enables polling only if
          it is strictly necessary to do so.
  
@@ -95617,7 +95617,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  config ATMEL_SSC
        tristate "Device driver for Atmel SSC peripheral"
        depends on AVR32 || ARCH_AT91
-@@ -500,4 +505,9 @@
+@@ -500,4 +505,9 @@ config SGI_GRU_DEBUG
  
  source "drivers/misc/c2port/Kconfig"
  
@@ -95751,7 +95751,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
 +
 --- a/drivers/misc/Makefile
 +++ b/drivers/misc/Makefile
-@@ -33,3 +33,8 @@
+@@ -33,3 +33,8 @@ obj-$(CONFIG_SGI_XP)         += sgi-xp/
  obj-$(CONFIG_SGI_GRU)         += sgi-gru/
  obj-$(CONFIG_HP_ILO)          += hpilo.o
  obj-$(CONFIG_C2PORT)          += c2port/
@@ -96429,7 +96429,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
 +MODULE_LICENSE("GPL");
 --- a/drivers/mmc/core/core.c
 +++ b/drivers/mmc/core/core.c
-@@ -57,10 +57,11 @@
+@@ -57,10 +57,11 @@ static int mmc_schedule_delayed_work(str
  /*
   * Internal function. Flush all scheduled work from the MMC work queue.
   */
@@ -96442,7 +96442,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  
  /**
   *    mmc_request_done - finish processing an MMC request
-@@ -495,7 +496,13 @@
+@@ -495,7 +496,13 @@ void mmc_set_timing(struct mmc_host *hos
   */
  static void mmc_power_up(struct mmc_host *host)
  {
@@ -96459,7 +96459,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        if (mmc_host_is_spi(host)) {
 --- a/drivers/mmc/host/Kconfig
 +++ b/drivers/mmc/host/Kconfig
-@@ -48,6 +48,18 @@
+@@ -48,6 +48,18 @@ config MMC_SDHCI_PCI
  
          If unsure, say N.
  
@@ -96480,7 +96480,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        depends on MMC_SDHCI_PCI
 --- a/drivers/mmc/host/Makefile
 +++ b/drivers/mmc/host/Makefile
-@@ -11,6 +11,7 @@
+@@ -11,6 +11,7 @@ obj-$(CONFIG_MMC_PXA)                += pxamci.o
  obj-$(CONFIG_MMC_IMX)         += imxmmc.o
  obj-$(CONFIG_MMC_SDHCI)               += sdhci.o
  obj-$(CONFIG_MMC_SDHCI_PCI)   += sdhci-pci.o
@@ -96515,7 +96515,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  
  #include "s3cmci.h"
  
-@@ -47,6 +56,9 @@
+@@ -47,6 +56,9 @@ static const int dbgmap_err   = dbg_fail
  static const int dbgmap_info  = dbg_info | dbg_conf;
  static const int dbgmap_debug = dbg_err | dbg_debug;
  
@@ -96525,7 +96525,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  #define dbg(host, channels, args...)            \
        do {                                      \
        if (dbgmap_err & channels)                \
-@@ -280,8 +292,11 @@
+@@ -280,8 +292,11 @@ static void do_pio_read(struct s3cmci_ho
                 * an even multiple of 4. */
                if (fifo >= host->pio_bytes)
                        fifo = host->pio_bytes;
@@ -96538,7 +96538,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  
                host->pio_bytes -= fifo;
                host->pio_count += fifo;
-@@ -353,8 +368,11 @@
+@@ -353,8 +368,11 @@ static void do_pio_write(struct s3cmci_h
                 * words, so round down to an even multiple of 4. */
                if (fifo >= host->pio_bytes)
                        fifo = host->pio_bytes;
@@ -96551,7 +96551,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  
                host->pio_bytes -= fifo;
                host->pio_count += fifo;
-@@ -373,7 +391,6 @@
+@@ -373,7 +391,6 @@ static void pio_tasklet(unsigned long da
  {
        struct s3cmci_host *host = (struct s3cmci_host *) data;
  
@@ -96559,7 +96559,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        disable_irq(host->irq);
  
        if (host->pio_active == XFER_WRITE)
-@@ -614,7 +631,6 @@
+@@ -614,7 +631,6 @@ irq_out:
  
        spin_unlock_irqrestore(&host->complete_lock, iflags);
        return IRQ_HANDLED;
@@ -96567,7 +96567,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  }
  
  /*
-@@ -1026,6 +1042,7 @@
+@@ -1026,6 +1042,7 @@ static void s3cmci_send_request(struct m
                        dbg(host, dbg_err, "data prepare error %d\n", res);
                        cmd->error = res;
                        cmd->data->error = res;
@@ -96575,7 +96575,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  
                        mmc_request_done(mmc, mrq);
                        return;
-@@ -1263,10 +1280,8 @@
+@@ -1263,10 +1280,8 @@ static int __devinit s3cmci_probe(struct
        host->is2440    = is2440;
  
        host->pdata = pdev->dev.platform_data;
@@ -96587,7 +96587,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  
        spin_lock_init(&host->complete_lock);
        tasklet_init(&host->pio_tasklet, pio_tasklet, (unsigned long) host);
-@@ -1379,6 +1394,18 @@
+@@ -1379,6 +1394,18 @@ static int __devinit s3cmci_probe(struct
        mmc->f_min      = host->clk_rate / (host->clk_div * 256);
        mmc->f_max      = host->clk_rate / host->clk_div;
  
@@ -96606,7 +96606,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        if (host->pdata->ocr_avail)
                mmc->ocr_avail = host->pdata->ocr_avail;
  
-@@ -1491,18 +1518,60 @@
+@@ -1491,18 +1518,60 @@ static int __devinit s3cmci_2440_probe(s
  
  #ifdef CONFIG_PM
  
@@ -96669,7 +96669,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  }
  
  #else /* CONFIG_PM */
-@@ -1560,9 +1629,13 @@
+@@ -1560,9 +1629,13 @@ static void __exit s3cmci_exit(void)
  module_init(s3cmci_init);
  module_exit(s3cmci_exit);
  
@@ -96695,7 +96695,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  /* FIXME: DMA Resource management ?! */
  #define S3CMCI_DMA 0
  
-@@ -68,6 +71,13 @@
+@@ -68,6 +71,13 @@ struct s3cmci_host {
        unsigned int            ccnt, dcnt;
        struct tasklet_struct   pio_tasklet;
  
@@ -96711,7 +96711,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  #endif
 --- a/drivers/mmc/host/sdhci.c
 +++ b/drivers/mmc/host/sdhci.c
-@@ -73,6 +73,11 @@
+@@ -73,6 +73,11 @@ static void sdhci_dumpregs(struct sdhci_
                readl(host->ioaddr + SDHCI_CAPABILITIES),
                readl(host->ioaddr + SDHCI_MAX_CURRENT));
  
@@ -96723,7 +96723,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        printk(KERN_DEBUG DRIVER_NAME ": ===========================================\n");
  }
  
-@@ -731,6 +736,23 @@
+@@ -731,6 +736,23 @@ static void sdhci_set_transfer_mode(stru
        writew(mode, host->ioaddr + SDHCI_TRANSFER_MODE);
  }
  
@@ -96747,7 +96747,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  static void sdhci_finish_data(struct sdhci_host *host)
  {
        struct mmc_data *data;
-@@ -744,6 +766,8 @@
+@@ -744,6 +766,8 @@ static void sdhci_finish_data(struct sdh
                if (host->flags & SDHCI_USE_ADMA)
                        sdhci_adma_table_post(host, data);
                else {
@@ -96756,7 +96756,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
                        dma_unmap_sg(mmc_dev(host->mmc), data->sg,
                                data->sg_len, (data->flags & MMC_DATA_READ) ?
                                        DMA_FROM_DEVICE : DMA_TO_DEVICE);
-@@ -883,13 +907,18 @@
+@@ -883,13 +907,18 @@ static void sdhci_finish_command(struct 
  
  static void sdhci_set_clock(struct sdhci_host *host, unsigned int clock)
  {
@@ -96778,7 +96778,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        writew(0, host->ioaddr + SDHCI_CLOCK_CONTROL);
  
        if (clock == 0)
-@@ -926,6 +955,8 @@
+@@ -926,6 +955,8 @@ out:
        host->clock = clock;
  }
  
@@ -96787,7 +96787,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  static void sdhci_set_power(struct sdhci_host *host, unsigned short power)
  {
        u8 pwr;
-@@ -999,12 +1030,13 @@
+@@ -999,12 +1030,13 @@ static void sdhci_request(struct mmc_hos
  #endif
  
        host->mrq = mrq;
@@ -96802,7 +96802,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
                sdhci_send_command(host, mrq->cmd);
  
        mmiowb();
-@@ -1033,6 +1065,9 @@
+@@ -1033,6 +1065,9 @@ static void sdhci_set_ios(struct mmc_hos
                sdhci_init(host);
        }
  
@@ -96812,7 +96812,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        sdhci_set_clock(host, ios->clock);
  
        if (ios->power_mode == MMC_POWER_OFF)
-@@ -1136,7 +1171,7 @@
+@@ -1136,7 +1171,7 @@ static void sdhci_tasklet_card(unsigned 
        host = (struct sdhci_host*)param;
  
        spin_lock_irqsave(&host->lock, flags);
@@ -96821,7 +96821,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        if (!(readl(host->ioaddr + SDHCI_PRESENT_STATE) & SDHCI_CARD_PRESENT)) {
                if (host->mrq) {
                        printk(KERN_ERR "%s: Card removed during transfer!\n",
-@@ -1151,7 +1186,7 @@
+@@ -1151,7 +1186,7 @@ static void sdhci_tasklet_card(unsigned 
                        tasklet_schedule(&host->finish_tasklet);
                }
        }
@@ -96830,7 +96830,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        spin_unlock_irqrestore(&host->lock, flags);
  
        mmc_detect_change(host->mmc, msecs_to_jiffies(200));
-@@ -1607,17 +1642,23 @@
+@@ -1607,17 +1642,23 @@ int sdhci_add_host(struct sdhci_host *ho
                mmc_dev(host->mmc)->dma_mask = &host->dma_mask;
        }
  
@@ -96869,7 +96869,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  
  #define SDHCI_HOST_CONTROL    0x28
  #define  SDHCI_CTRL_LED               0x01
-@@ -270,6 +271,14 @@
+@@ -270,6 +271,14 @@ struct sdhci_host {
  
  struct sdhci_ops {
        int             (*enable_dma)(struct sdhci_host *host);
@@ -96884,7 +96884,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  };
  
  
-@@ -277,6 +286,8 @@
+@@ -277,6 +286,8 @@ extern struct sdhci_host *sdhci_alloc_ho
        size_t priv_size);
  extern void sdhci_free_host(struct sdhci_host *host);
  
@@ -96895,7 +96895,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        return (void *)host->private;
 --- a/drivers/mmc/host/sdhci-pci.c
 +++ b/drivers/mmc/host/sdhci-pci.c
-@@ -392,6 +392,7 @@
+@@ -392,6 +392,7 @@ static int sdhci_pci_enable_dma(struct s
  
  static struct sdhci_ops sdhci_pci_ops = {
        .enable_dma     = sdhci_pci_enable_dma,
@@ -97338,7 +97338,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  
  #ifdef CONFIG_MTD_NAND_S3C2410_HWECC
  static int hardware_ecc = 1;
-@@ -231,8 +231,6 @@
+@@ -231,8 +231,6 @@ static int s3c2410_nand_setrate(struct s
                BUG();
        }
  
@@ -97347,7 +97347,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        local_irq_save(flags);
  
        cfg = readl(info->regs + S3C2410_NFCONF);
-@@ -240,6 +238,8 @@
+@@ -240,6 +238,8 @@ static int s3c2410_nand_setrate(struct s
        cfg |= set;
        writel(cfg, info->regs + S3C2410_NFCONF);
  
@@ -97356,7 +97356,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        local_irq_restore(flags);
  
        return 0;
-@@ -438,7 +438,7 @@
+@@ -438,7 +438,7 @@ static int s3c2410_nand_correct_data(str
        if ((diff0 & ~(1<<fls(diff0))) == 0)
                return 1;
  
@@ -97365,7 +97365,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  }
  
  /* ECC functions
-@@ -530,7 +530,12 @@
+@@ -530,7 +530,12 @@ static void s3c2410_nand_read_buf(struct
  static void s3c2440_nand_read_buf(struct mtd_info *mtd, u_char *buf, int len)
  {
        struct s3c2410_nand_info *info = s3c2410_nand_mtd_toinfo(mtd);
@@ -97378,7 +97378,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  }
  
  static void s3c2410_nand_write_buf(struct mtd_info *mtd, const u_char *buf, int len)
-@@ -645,17 +650,31 @@
+@@ -645,17 +650,31 @@ static int s3c2410_nand_remove(struct pl
  }
  
  #ifdef CONFIG_MTD_PARTITIONS
@@ -97412,7 +97412,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        return add_mtd_device(&mtd->mtd);
  }
  #else
-@@ -684,9 +703,13 @@
+@@ -684,9 +703,13 @@ static void s3c2410_nand_init_chip(struc
        chip->select_chip  = s3c2410_nand_select_chip;
        chip->chip_delay   = 50;
        chip->priv         = nmtd;
@@ -97427,7 +97427,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        switch (info->cpu_type) {
        case TYPE_S3C2410:
                chip->IO_ADDR_W = regs + S3C2410_NFDATA;
-@@ -726,7 +749,7 @@
+@@ -726,7 +749,7 @@ static void s3c2410_nand_init_chip(struc
        nmtd->mtd.owner    = THIS_MODULE;
        nmtd->set          = set;
  
@@ -97438,7 +97438,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
                chip->ecc.mode      = NAND_ECC_HW;
 --- a/drivers/net/wireless/libertas/if_sdio.c
 +++ b/drivers/net/wireless/libertas/if_sdio.c
-@@ -48,6 +48,7 @@
+@@ -48,6 +48,7 @@ module_param_named(fw_name, lbs_fw_name,
  
  static const struct sdio_device_id if_sdio_ids[] = {
        { SDIO_DEVICE(SDIO_VENDOR_ID_MARVELL, SDIO_DEVICE_ID_MARVELL_LIBERTAS) },
@@ -97446,7 +97446,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        { /* end: all zeroes */                                         },
  };
  
-@@ -72,7 +73,12 @@
+@@ -72,7 +73,12 @@ static struct if_sdio_model if_sdio_mode
                .helper = "sd8686_helper.bin",
                .firmware = "sd8686.bin",
        },
@@ -97473,7 +97473,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
          peripherals to be configured by software, e.g. assign IRQ's or other
 --- a/drivers/pnp/resource.c
 +++ b/drivers/pnp/resource.c
-@@ -436,6 +436,7 @@
+@@ -436,6 +436,7 @@ int pnp_check_dma(struct pnp_dev *dev, s
                }
        }
  
@@ -97481,7 +97481,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        /* check if the resource is already in use, skip if the
         * device is active because it itself may be in use */
        if (!dev->active) {
-@@ -443,6 +444,7 @@
+@@ -443,6 +444,7 @@ int pnp_check_dma(struct pnp_dev *dev, s
                        return 0;
                free_dma(*dma);
        }
@@ -98252,7 +98252,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
 +MODULE_LICENSE("GPL");
 --- a/drivers/power/Kconfig
 +++ b/drivers/power/Kconfig
-@@ -68,4 +68,24 @@
+@@ -68,4 +68,24 @@ config BATTERY_BQ27x00
        help
          Say Y here to enable support for batteries with BQ27200(I2C) chip.
  
@@ -98279,7 +98279,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
 +
 --- a/drivers/power/Makefile
 +++ b/drivers/power/Makefile
-@@ -23,3 +23,9 @@
+@@ -23,3 +23,9 @@ obj-$(CONFIG_BATTERY_OLPC)   += olpc_batte
  obj-$(CONFIG_BATTERY_TOSA)    += tosa_battery.o
  obj-$(CONFIG_BATTERY_WM97XX)  += wm97xx_battery.o
  obj-$(CONFIG_BATTERY_BQ27x00) += bq27x00_battery.o
@@ -98709,7 +98709,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
 +MODULE_ALIAS("platform:pcf50633-mbc");
 --- a/drivers/regulator/core.c
 +++ b/drivers/regulator/core.c
-@@ -1113,6 +1113,7 @@
+@@ -1113,6 +1113,7 @@ int regulator_disable(struct regulator *
        if (!regulator->enabled) {
                printk(KERN_ERR "%s: not in use by this consumer\n",
                        __func__);
@@ -98719,7 +98719,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  
 --- a/drivers/regulator/Kconfig
 +++ b/drivers/regulator/Kconfig
-@@ -73,4 +73,10 @@
+@@ -73,4 +73,10 @@ config REGULATOR_DA903X
          Say y here to support the BUCKs and LDOs regulators found on
          Dialog Semiconductor DA9030/DA9034 PMIC.
  
@@ -98732,7 +98732,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  endif
 --- a/drivers/regulator/Makefile
 +++ b/drivers/regulator/Makefile
-@@ -11,5 +11,6 @@
+@@ -11,5 +11,6 @@ obj-$(CONFIG_REGULATOR_BQ24022) += bq240
  obj-$(CONFIG_REGULATOR_WM8350) += wm8350-regulator.o
  obj-$(CONFIG_REGULATOR_WM8400) += wm8400-regulator.o
  obj-$(CONFIG_REGULATOR_DA903X)        += da903x.o
@@ -99074,7 +99074,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
 +MODULE_ALIAS("platform:pcf50633-regulator");
 --- a/drivers/rtc/Kconfig
 +++ b/drivers/rtc/Kconfig
-@@ -219,6 +219,18 @@
+@@ -219,6 +219,18 @@ config RTC_DRV_PCF8583
          This driver can also be built as a module. If so, the module
          will be called rtc-pcf8583.
  
@@ -99095,7 +99095,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        help
 --- a/drivers/rtc/Makefile
 +++ b/drivers/rtc/Makefile
-@@ -50,6 +50,8 @@
+@@ -50,6 +50,8 @@ obj-$(CONFIG_RTC_DRV_MAX6902)        += rtc-max
  obj-$(CONFIG_RTC_DRV_OMAP)    += rtc-omap.o
  obj-$(CONFIG_RTC_DRV_PCF8563) += rtc-pcf8563.o
  obj-$(CONFIG_RTC_DRV_PCF8583) += rtc-pcf8583.o
@@ -99723,7 +99723,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
   * of these rtc blocks in */
 --- a/drivers/serial/Kconfig
 +++ b/drivers/serial/Kconfig
-@@ -447,7 +447,7 @@
+@@ -447,7 +447,7 @@ config SERIAL_CLPS711X_CONSOLE
  
  config SERIAL_SAMSUNG
        tristate "Samsung SoC serial support"
@@ -99732,7 +99732,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        select SERIAL_CORE
        help
          Support for the on-chip UARTs on the Samsung S3C24XX series CPUs,
-@@ -455,6 +455,16 @@
+@@ -455,6 +455,16 @@ config SERIAL_SAMSUNG
          provide all of these ports, depending on how the serial port
          pins are configured.
  
@@ -99749,7 +99749,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  config SERIAL_SAMSUNG_DEBUG
        bool "Samsung SoC serial debug"
        depends on SERIAL_SAMSUNG && DEBUG_LL
-@@ -508,7 +518,20 @@
+@@ -508,7 +518,20 @@ config SERIAL_S3C2440
        help
          Serial port support for the Samsung S3C2440 and S3C2442 SoC
  
@@ -99773,7 +99773,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        bool "DECstation DZ serial driver"
 --- a/drivers/serial/Makefile
 +++ b/drivers/serial/Makefile
-@@ -41,6 +41,8 @@
+@@ -41,6 +41,8 @@ obj-$(CONFIG_SERIAL_S3C2400) += s3c2400.
  obj-$(CONFIG_SERIAL_S3C2410) += s3c2410.o
  obj-$(CONFIG_SERIAL_S3C2412) += s3c2412.o
  obj-$(CONFIG_SERIAL_S3C2440) += s3c2440.o
@@ -100109,7 +100109,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  /* macros to change one thing to another */
  
  #define tx_enabled(port) ((port)->unused[0])
-@@ -136,8 +128,10 @@
+@@ -136,8 +128,10 @@ static void s3c24xx_serial_rx_disable(st
  
  static void s3c24xx_serial_stop_tx(struct uart_port *port)
  {
@@ -100121,7 +100121,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
                tx_enabled(port) = 0;
                if (port->flags & UPF_CONS_FLOW)
                        s3c24xx_serial_rx_enable(port);
-@@ -146,11 +140,13 @@
+@@ -146,11 +140,13 @@ static void s3c24xx_serial_stop_tx(struc
  
  static void s3c24xx_serial_start_tx(struct uart_port *port)
  {
@@ -100136,7 +100136,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
                tx_enabled(port) = 1;
        }
  }
-@@ -158,9 +154,11 @@
+@@ -158,9 +154,11 @@ static void s3c24xx_serial_start_tx(stru
  
  static void s3c24xx_serial_stop_rx(struct uart_port *port)
  {
@@ -100149,7 +100149,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
                rx_enabled(port) = 0;
        }
  }
-@@ -241,7 +239,7 @@
+@@ -241,7 +239,7 @@ s3c24xx_serial_rx_chars(int irq, void *d
                port->icount.rx++;
  
                if (unlikely(uerstat & S3C2410_UERSTAT_ANY)) {
@@ -100158,7 +100158,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
                            ch, uerstat);
  
                        /* check for break */
-@@ -384,13 +382,13 @@
+@@ -384,13 +382,13 @@ static void s3c24xx_serial_shutdown(stru
        struct s3c24xx_uart_port *ourport = to_ourport(port);
  
        if (ourport->tx_claimed) {
@@ -100174,7 +100174,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
                ourport->rx_claimed = 0;
                rx_enabled(port) = 0;
        }
-@@ -407,12 +405,11 @@
+@@ -407,12 +405,11 @@ static int s3c24xx_serial_startup(struct
  
        rx_enabled(port) = 1;
  
@@ -100189,7 +100189,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
                return ret;
        }
  
-@@ -422,12 +419,11 @@
+@@ -422,12 +419,11 @@ static int s3c24xx_serial_startup(struct
  
        tx_enabled(port) = 1;
  
@@ -100204,7 +100204,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
                goto err;
        }
  
-@@ -452,6 +448,8 @@
+@@ -452,6 +448,8 @@ static void s3c24xx_serial_pm(struct uar
  {
        struct s3c24xx_uart_port *ourport = to_ourport(port);
  
@@ -100213,7 +100213,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        switch (level) {
        case 3:
                if (!IS_ERR(ourport->baudclk) && ourport->baudclk != NULL)
-@@ -514,6 +512,7 @@
+@@ -514,6 +512,7 @@ s3c24xx_serial_setsource(struct uart_por
  struct baud_calc {
        struct s3c24xx_uart_clksrc      *clksrc;
        unsigned int                     calc;
@@ -100221,7 +100221,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        unsigned int                     quot;
        struct clk                      *src;
  };
-@@ -523,6 +522,7 @@
+@@ -523,6 +522,7 @@ static int s3c24xx_serial_calcbaud(struc
                                   struct s3c24xx_uart_clksrc *clksrc,
                                   unsigned int baud)
  {
@@ -100229,7 +100229,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        unsigned long rate;
  
        calc->src = clk_get(port->dev, clksrc->name);
-@@ -533,8 +533,24 @@
+@@ -533,8 +533,24 @@ static int s3c24xx_serial_calcbaud(struc
        rate /= clksrc->divisor;
  
        calc->clksrc = clksrc;
@@ -100256,7 +100256,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  
        calc->quot--;
        return 1;
-@@ -617,6 +633,30 @@
+@@ -617,6 +633,30 @@ static unsigned int s3c24xx_serial_getcl
        return best->quot;
  }
  
@@ -100287,7 +100287,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  static void s3c24xx_serial_set_termios(struct uart_port *port,
                                       struct ktermios *termios,
                                       struct ktermios *old)
-@@ -629,6 +669,7 @@
+@@ -629,6 +669,7 @@ static void s3c24xx_serial_set_termios(s
        unsigned int baud, quot;
        unsigned int ulcon;
        unsigned int umcon;
@@ -100295,7 +100295,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  
        /*
         * We don't support modem control lines.
-@@ -650,6 +691,7 @@
+@@ -650,6 +691,7 @@ static void s3c24xx_serial_set_termios(s
        /* check to see if we need  to change clock source */
  
        if (ourport->clksrc != clksrc || ourport->baudclk != clk) {
@@ -100303,7 +100303,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
                s3c24xx_serial_setsource(port, clksrc);
  
                if (ourport->baudclk != NULL && !IS_ERR(ourport->baudclk)) {
-@@ -661,6 +703,14 @@
+@@ -661,6 +703,14 @@ static void s3c24xx_serial_set_termios(s
  
                ourport->clksrc = clksrc;
                ourport->baudclk = clk;
@@ -100318,7 +100318,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        }
  
        switch (termios->c_cflag & CSIZE) {
-@@ -702,12 +752,16 @@
+@@ -702,12 +752,16 @@ static void s3c24xx_serial_set_termios(s
  
        spin_lock_irqsave(&port->lock, flags);
  
@@ -100336,7 +100336,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        dbg("uart: ulcon = 0x%08x, ucon = 0x%08x, ufcon = 0x%08x\n",
            rd_regl(port, S3C2410_ULCON),
            rd_regl(port, S3C2410_UCON),
-@@ -752,6 +806,8 @@
+@@ -752,6 +806,8 @@ static const char *s3c24xx_serial_type(s
                return "S3C2440";
        case PORT_S3C2412:
                return "S3C2412";
@@ -100345,7 +100345,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        default:
                return NULL;
        }
-@@ -827,14 +883,14 @@
+@@ -827,14 +883,14 @@ static struct uart_ops s3c24xx_serial_op
  static struct uart_driver s3c24xx_uart_drv = {
        .owner          = THIS_MODULE,
        .dev_name       = "s3c2410_serial",
@@ -100362,7 +100362,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        [0] = {
                .port = {
                        .lock           = __SPIN_LOCK_UNLOCKED(s3c24xx_serial_ports[0].port.lock),
-@@ -859,7 +915,7 @@
+@@ -859,7 +915,7 @@ static struct s3c24xx_uart_port s3c24xx_
                        .line           = 1,
                }
        },
@@ -100371,7 +100371,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  
        [2] = {
                .port = {
-@@ -872,10 +928,88 @@
+@@ -872,10 +928,88 @@ static struct s3c24xx_uart_port s3c24xx_
                        .flags          = UPF_BOOT_AUTOCONF,
                        .line           = 2,
                }
@@ -100460,7 +100460,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  /* s3c24xx_serial_resetport
   *
   * wrapper to call the specific reset for this port (reset the fifos
-@@ -890,6 +1024,93 @@
+@@ -890,6 +1024,93 @@ static inline int s3c24xx_serial_resetpo
        return (info->reset_port)(port, cfg);
  }
  
@@ -100554,7 +100554,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  /* s3c24xx_serial_init_port
   *
   * initialise a single serial port from the platform device given
-@@ -914,8 +1135,11 @@
+@@ -914,8 +1135,11 @@ static int s3c24xx_serial_init_port(stru
        if (port->mapbase != 0)
                return 0;
  
@@ -100568,7 +100568,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  
        /* setup info for port */
        port->dev       = &platdev->dev;
-@@ -943,18 +1167,26 @@
+@@ -943,18 +1167,26 @@ static int s3c24xx_serial_init_port(stru
  
        dbg("resource %p (%lx..%lx)\n", res, res->start, res->end);
  
@@ -100600,7 +100600,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  
        /* reset the fifos (and setup the uart) */
        s3c24xx_serial_resetport(port, cfg);
-@@ -987,6 +1219,7 @@
+@@ -987,6 +1219,7 @@ int s3c24xx_serial_probe(struct platform
  
        ourport = &s3c24xx_serial_ports[probe_index];
        probe_index++;
@@ -100608,7 +100608,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  
        dbg("%s: initialising port %p...\n", __func__, ourport);
  
-@@ -1002,6 +1235,10 @@
+@@ -1002,6 +1235,10 @@ int s3c24xx_serial_probe(struct platform
        if (ret < 0)
                printk(KERN_ERR "%s: failed to add clksrc attr.\n", __func__);
  
@@ -100619,7 +100619,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        return 0;
  
   probe_err:
-@@ -1015,6 +1252,7 @@
+@@ -1015,6 +1252,7 @@ int s3c24xx_serial_remove(struct platfor
        struct uart_port *port = s3c24xx_dev_to_port(&dev->dev);
  
        if (port) {
@@ -100627,7 +100627,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
                device_remove_file(&dev->dev, &dev_attr_clock_source);
                uart_remove_one_port(&s3c24xx_uart_drv, port);
        }
-@@ -1038,6 +1276,16 @@
+@@ -1038,6 +1276,16 @@ static int s3c24xx_serial_suspend(struct
        return 0;
  }
  
@@ -100644,7 +100644,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  static int s3c24xx_serial_resume(struct platform_device *dev)
  {
        struct uart_port *port = s3c24xx_dev_to_port(&dev->dev);
-@@ -1049,6 +1297,9 @@
+@@ -1049,6 +1297,9 @@ static int s3c24xx_serial_resume(struct 
                clk_disable(ourport->clk);
  
                uart_resume_port(&s3c24xx_uart_drv, port);
@@ -100654,7 +100654,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        }
  
        return 0;
-@@ -1059,6 +1310,12 @@
+@@ -1059,6 +1310,12 @@ int s3c24xx_serial_init(struct platform_
                        struct s3c24xx_uart_info *info)
  {
        dbg("s3c24xx_serial_init(%p,%p)\n", drv, info);
@@ -100667,7 +100667,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  
  #ifdef CONFIG_PM
        drv->suspend = s3c24xx_serial_suspend;
-@@ -1098,6 +1355,13 @@
+@@ -1098,6 +1355,13 @@ module_exit(s3c24xx_serial_modexit);
  #ifdef CONFIG_SERIAL_SAMSUNG_CONSOLE
  
  static struct uart_port *cons_uart;
@@ -100681,7 +100681,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  
  static int
  s3c24xx_serial_console_txrdy(struct uart_port *port, unsigned int ufcon)
-@@ -1122,9 +1386,21 @@
+@@ -1122,9 +1386,21 @@ static void
  s3c24xx_serial_console_putchar(struct uart_port *port, int ch)
  {
        unsigned int ufcon = rd_regl(cons_uart, S3C2410_UFCON);
@@ -100703,7 +100703,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  }
  
  static void
-@@ -1219,7 +1495,7 @@
+@@ -1219,7 +1495,7 @@ static int s3c24xx_serial_init_ports(str
  
        platdev_ptr = s3c24xx_uart_devs;
  
@@ -100712,7 +100712,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
                s3c24xx_serial_init_port(ptr, info, *platdev_ptr);
        }
  
-@@ -1240,7 +1516,7 @@
+@@ -1240,7 +1516,7 @@ s3c24xx_serial_console_setup(struct cons
  
        /* is this a valid port */
  
@@ -100732,7 +100732,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  struct s3c24xx_uart_info {
        char                    *name;
        unsigned int            type;
-@@ -21,6 +23,10 @@
+@@ -21,6 +23,10 @@ struct s3c24xx_uart_info {
        unsigned long           tx_fifoshift;
        unsigned long           tx_fifofull;
  
@@ -100743,7 +100743,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        /* clock source control */
  
        int (*get_clksrc)(struct uart_port *, struct s3c24xx_uart_clksrc *clk);
-@@ -33,12 +39,23 @@
+@@ -33,12 +39,23 @@ struct s3c24xx_uart_info {
  struct s3c24xx_uart_port {
        unsigned char                   rx_claimed;
        unsigned char                   tx_claimed;
@@ -100780,7 +100780,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  struct s3c24xx_spi {
 --- a/drivers/spi/spi_s3c24xx_gpio.c
 +++ b/drivers/spi/spi_s3c24xx_gpio.c
-@@ -91,7 +91,7 @@
+@@ -91,7 +91,7 @@ static void s3c2410_spigpio_chipselect(s
        struct s3c2410_spigpio *sg = spidev_to_sg(dev);
  
        if (sg->info && sg->info->chip_select)
@@ -100789,7 +100789,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  }
  
  static int s3c2410_spigpio_probe(struct platform_device *dev)
-@@ -100,6 +100,7 @@
+@@ -100,6 +100,7 @@ static int s3c2410_spigpio_probe(struct 
        struct spi_master       *master;
        struct s3c2410_spigpio  *sp;
        int ret;
@@ -100797,7 +100797,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  
        master = spi_alloc_master(&dev->dev, sizeof(struct s3c2410_spigpio));
        if (master == NULL) {
-@@ -112,9 +113,11 @@
+@@ -112,9 +113,11 @@ static int s3c2410_spigpio_probe(struct 
  
        platform_set_drvdata(dev, sp);
  
@@ -100810,7 +100810,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        /* setup spi bitbang adaptor */
        sp->bitbang.master = spi_master_get(master);
        sp->bitbang.master->bus_num = info->bus_num;
-@@ -143,6 +146,22 @@
+@@ -143,6 +146,22 @@ static int s3c2410_spigpio_probe(struct 
        if (ret)
                goto err_no_bitbang;
  
@@ -100835,7 +100835,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
   err_no_bitbang:
 --- a/drivers/usb/gadget/composite.c
 +++ b/drivers/usb/gadget/composite.c
-@@ -1045,7 +1045,11 @@
+@@ -1045,7 +1045,11 @@ composite_resume(struct usb_gadget *gadg
  /*-------------------------------------------------------------------------*/
  
  static struct usb_gadget_driver composite_driver = {
@@ -100849,7 +100849,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        .unbind         = __exit_p(composite_unbind),
 --- a/drivers/usb/gadget/ether.c
 +++ b/drivers/usb/gadget/ether.c
-@@ -122,11 +122,16 @@
+@@ -122,11 +122,16 @@ static inline bool has_rndis(void)
   * Instead:  allocate your own, using normal USB-IF procedures.
   */
  
@@ -100866,7 +100866,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  
  /* For hardware that can't talk CDC, we use the same vendor ID that
   * ARM Linux has used for ethernet-over-usb, both with sa1100 and
-@@ -147,8 +152,8 @@
+@@ -147,8 +152,8 @@ static inline bool has_rndis(void)
   * used with CDC Ethernet, Linux 2.4 hosts will need updates to choose
   * the non-RNDIS configuration.
   */
@@ -100890,7 +100890,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  
  
  #include "s3c2410_udc.h"
-@@ -134,6 +134,8 @@
+@@ -134,6 +134,8 @@ static int dprintk(int level, const char
        return 0;
  }
  #endif
@@ -100899,7 +100899,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  static int s3c2410_udc_debugfs_seq_show(struct seq_file *m, void *p)
  {
        u32 addr_reg,pwr_reg,ep_int_reg,usb_int_reg;
-@@ -197,6 +199,7 @@
+@@ -197,6 +199,7 @@ static const struct file_operations s3c2
        .release        = single_release,
        .owner          = THIS_MODULE,
  };
@@ -100907,7 +100907,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  
  /* io macros */
  
-@@ -843,6 +846,7 @@
+@@ -843,6 +846,7 @@ static void s3c2410_udc_handle_ep(struct
        u32                     ep_csr1;
        u32                     idx;
  
@@ -100915,7 +100915,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        if (likely (!list_empty(&ep->queue)))
                req = list_entry(ep->queue.next,
                                struct s3c2410_request, queue);
-@@ -882,6 +886,8 @@
+@@ -882,6 +886,8 @@ static void s3c2410_udc_handle_ep(struct
  
                if ((ep_csr1 & S3C2410_UDC_OCSR1_PKTRDY) && req) {
                        s3c2410_udc_read_fifo(ep,req);
@@ -100924,7 +100924,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
                }
        }
  }
-@@ -1890,6 +1896,7 @@
+@@ -1890,6 +1896,7 @@ static int s3c2410_udc_probe(struct plat
                udc->vbus = 1;
        }
  
@@ -100932,7 +100932,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        if (s3c2410_udc_debugfs_root) {
                udc->regs_info = debugfs_create_file("registers", S_IRUGO,
                                s3c2410_udc_debugfs_root,
-@@ -1897,6 +1904,7 @@
+@@ -1897,6 +1904,7 @@ static int s3c2410_udc_probe(struct plat
                if (!udc->regs_info)
                        dev_warn(dev, "debugfs file creation failed\n");
        }
@@ -100940,7 +100940,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  
        dev_dbg(dev, "probe ok\n");
  
-@@ -2003,12 +2011,14 @@
+@@ -2003,12 +2011,14 @@ static int __init udc_init(void)
  
        dprintk(DEBUG_NORMAL, "%s: version %s\n", gadget_name, DRIVER_VERSION);
  
@@ -100965,7 +100965,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  
  #define valid_port(idx) ((idx) == 1 || (idx) == 2)
  
-@@ -308,6 +309,42 @@
+@@ -308,6 +309,42 @@ static void s3c2410_hcd_oc(struct s3c241
        local_irq_restore(flags);
  }
  
@@ -101008,7 +101008,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  /* may be called without controller electrically present */
  /* may be called with controller, bus, and devices active */
  
-@@ -325,6 +362,7 @@
+@@ -325,6 +362,7 @@ static void s3c2410_hcd_oc(struct s3c241
  static void
  usb_hcd_s3c2410_remove (struct usb_hcd *hcd, struct platform_device *dev)
  {
@@ -101016,7 +101016,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        usb_remove_hcd(hcd);
        s3c2410_stop_hc(dev);
        iounmap(hcd->regs);
-@@ -392,8 +430,15 @@
+@@ -392,8 +430,15 @@ static int usb_hcd_s3c2410_probe (const 
        if (retval != 0)
                goto err_ioremap;
  
@@ -101306,7 +101306,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
 +MODULE_LICENSE("GPL");
 --- a/drivers/video/backlight/Kconfig
 +++ b/drivers/video/backlight/Kconfig
-@@ -152,6 +152,13 @@
+@@ -152,6 +152,13 @@ config BACKLIGHT_OMAP1
          the PWL module of OMAP1 processors.  Say Y if your board
          uses this hardware.
  
@@ -101322,7 +101322,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        depends on BACKLIGHT_CLASS_DEVICE && SH_HP6XX
 --- a/drivers/video/backlight/Makefile
 +++ b/drivers/video/backlight/Makefile
-@@ -12,6 +12,7 @@
+@@ -12,6 +12,7 @@ obj-$(CONFIG_LCD_TOSA)                  += tosa_lcd.o
  obj-$(CONFIG_BACKLIGHT_CLASS_DEVICE) += backlight.o
  obj-$(CONFIG_BACKLIGHT_ATMEL_PWM)    += atmel-pwm-bl.o
  obj-$(CONFIG_BACKLIGHT_CORGI) += corgi_bl.o
@@ -101332,7 +101332,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  obj-$(CONFIG_BACKLIGHT_OMAP1) += omap1_bl.o
 --- a/drivers/video/console/fbcon.c
 +++ b/drivers/video/console/fbcon.c
-@@ -401,6 +401,9 @@
+@@ -401,6 +401,9 @@ static void fb_flashcursor(struct work_s
        int c;
        int mode;
  
@@ -101342,7 +101342,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        acquire_console_sem();
        if (ops && ops->currcon != -1)
                vc = vc_cons[ops->currcon].d;
-@@ -3225,13 +3228,17 @@
+@@ -3225,13 +3228,17 @@ static void fbcon_get_requirement(struct
  static int fbcon_event_notify(struct notifier_block *self, 
                              unsigned long action, void *data)
  {
@@ -102176,7 +102176,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
 +module_exit(jbt_exit);
 --- a/drivers/video/display/Kconfig
 +++ b/drivers/video/display/Kconfig
-@@ -21,4 +21,15 @@
+@@ -21,4 +21,15 @@ config DISPLAY_SUPPORT
  comment "Display hardware drivers"
        depends on DISPLAY_SUPPORT
  
@@ -102202,7 +102202,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  
 --- a/drivers/video/Kconfig
 +++ b/drivers/video/Kconfig
-@@ -1918,6 +1918,30 @@
+@@ -1918,6 +1918,30 @@ config FB_TMIO_ACCELL
        depends on FB_TMIO
        default y
  
@@ -102235,7 +102235,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        depends on FB && ARCH_S3C2410
 --- a/drivers/video/logo/Kconfig
 +++ b/drivers/video/logo/Kconfig
-@@ -77,6 +77,11 @@
+@@ -77,6 +77,11 @@ config LOGO_SUPERH_CLUT224
        depends on SUPERH
        default y
  
@@ -102249,7 +102249,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        depends on M32R
 --- a/drivers/video/logo/logo.c
 +++ b/drivers/video/logo/logo.c
-@@ -35,6 +35,7 @@
+@@ -35,6 +35,7 @@ extern const struct linux_logo logo_supe
  extern const struct linux_logo logo_superh_vga16;
  extern const struct linux_logo logo_superh_clut224;
  extern const struct linux_logo logo_m32r_clut224;
@@ -102257,7 +102257,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  
  static int nologo;
  module_param(nologo, bool, 0);
-@@ -115,6 +116,10 @@
+@@ -115,6 +116,10 @@ const struct linux_logo * __init_refok f
                /* M32R Linux logo */
                logo = &logo_m32r_clut224;
  #endif
@@ -142276,7 +142276,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
 +0 0 0  0 0 0  0 0 0  0 0 0  0 0 0  0 0 0
 --- a/drivers/video/logo/Makefile
 +++ b/drivers/video/logo/Makefile
-@@ -15,6 +15,7 @@
+@@ -15,6 +15,7 @@ obj-$(CONFIG_LOGO_SUPERH_MONO)               += logo_
  obj-$(CONFIG_LOGO_SUPERH_VGA16)               += logo_superh_vga16.o
  obj-$(CONFIG_LOGO_SUPERH_CLUT224)     += logo_superh_clut224.o
  obj-$(CONFIG_LOGO_M32R_CLUT224)               += logo_m32r_clut224.o
@@ -142286,7 +142286,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  
 --- a/drivers/video/Makefile
 +++ b/drivers/video/Makefile
-@@ -109,6 +109,7 @@
+@@ -109,6 +109,7 @@ obj-$(CONFIG_FB_METRONOME)        += met
  obj-$(CONFIG_FB_S1D13XXX)       += s1d13xxxfb.o
  obj-$(CONFIG_FB_SH7760)                 += sh7760fb.o
  obj-$(CONFIG_FB_IMX)              += imxfb.o
@@ -142296,7 +142296,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  obj-$(CONFIG_FB_COBALT)           += cobalt_lcdfb.o
 --- a/drivers/video/s3c2410fb.c
 +++ b/drivers/video/s3c2410fb.c
-@@ -1017,6 +1017,8 @@
+@@ -1017,6 +1017,8 @@ static int s3c2410fb_resume(struct platf
  
        s3c2410fb_init_registers(fbinfo);
  
@@ -143346,7 +143346,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
 +MODULE_ALIAS("platform:s3c-fb");
 --- a/drivers/watchdog/Kconfig
 +++ b/drivers/watchdog/Kconfig
-@@ -233,6 +233,12 @@
+@@ -233,6 +233,12 @@ config ORION5X_WATCHDOG
          To compile this driver as a module, choose M here: the
          module will be called orion5x_wdt.
  
@@ -143359,7 +143359,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  # ARM26 Architecture
  
  # AVR32 Architecture
-@@ -784,7 +790,7 @@
+@@ -784,7 +790,7 @@ config WATCHDOG_RTAS
        tristate "RTAS watchdog"
        depends on PPC_RTAS
        help
@@ -143370,7 +143370,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
          will be called wdrtas.
 --- a/drivers/watchdog/Makefile
 +++ b/drivers/watchdog/Makefile
-@@ -41,6 +41,7 @@
+@@ -41,6 +41,7 @@ obj-$(CONFIG_PNX4008_WATCHDOG) += pnx400
  obj-$(CONFIG_IOP_WATCHDOG) += iop_wdt.o
  obj-$(CONFIG_DAVINCI_WATCHDOG) += davinci_wdt.o
  obj-$(CONFIG_ORION5X_WATCHDOG) += orion5x_wdt.o
@@ -143607,7 +143607,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  
 --- a/fs/jffs2/background.c
 +++ b/fs/jffs2/background.c
-@@ -95,13 +95,17 @@
+@@ -95,13 +95,17 @@ static int jffs2_garbage_collect_thread(
                        spin_unlock(&c->erase_completion_lock);
                        
  
@@ -145046,7 +145046,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
 +#endif
 --- a/include/linux/device.h
 +++ b/include/linux/device.h
-@@ -48,6 +48,11 @@
+@@ -48,6 +48,11 @@ extern int __must_check bus_create_file(
                                        struct bus_attribute *);
  extern void bus_remove_file(struct bus_type *, struct bus_attribute *);
  
@@ -145060,7 +145060,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        struct bus_attribute    *bus_attrs;
 --- a/include/linux/fb.h
 +++ b/include/linux/fb.h
-@@ -123,6 +123,7 @@
+@@ -123,6 +123,7 @@ struct dentry;
  #define FB_ACCEL_TRIDENT_3DIMAGE 51   /* Trident 3DImage              */
  #define FB_ACCEL_TRIDENT_BLADE3D 52   /* Trident Blade3D              */
  #define FB_ACCEL_TRIDENT_BLADEXP 53   /* Trident BladeXP              */
@@ -145270,7 +145270,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
 +#endif
 --- a/include/linux/kernel.h
 +++ b/include/linux/kernel.h
-@@ -225,6 +225,8 @@
+@@ -225,6 +225,8 @@ extern struct ratelimit_state printk_rat
  extern int printk_ratelimit(void);
  extern bool printk_timed_ratelimit(unsigned long *caller_jiffies,
                                   unsigned int interval_msec);
@@ -146781,7 +146781,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
 +
 --- a/include/linux/mmc/core.h
 +++ b/include/linux/mmc/core.h
-@@ -129,6 +129,8 @@
+@@ -129,6 +129,8 @@ struct mmc_request {
  struct mmc_host;
  struct mmc_card;
  
@@ -146803,7 +146803,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  #endif
 --- a/include/linux/mm.h
 +++ b/include/linux/mm.h
-@@ -713,7 +713,7 @@
+@@ -713,7 +713,7 @@ static inline int shmem_lock(struct file
  }
  #endif
  struct file *shmem_file_setup(char *name, loff_t size, unsigned long flags);
@@ -147743,7 +147743,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
 +#endif
 --- a/include/linux/suspend.h
 +++ b/include/linux/suspend.h
-@@ -146,6 +146,12 @@
+@@ -146,6 +146,12 @@ struct pbe {
        struct pbe *next;
  };
  
@@ -148002,7 +148002,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
 +#endif
 --- a/include/linux/vt.h
 +++ b/include/linux/vt.h
-@@ -18,8 +18,19 @@
+@@ -18,8 +18,19 @@ extern int unregister_vt_notifier(struct
   * resizing).
   */
  #define MIN_NR_CONSOLES 1       /* must be at least 1 */
@@ -148024,7 +148024,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  
 --- a/include/sound/soc-dapm.h
 +++ b/include/sound/soc-dapm.h
-@@ -244,6 +244,13 @@
+@@ -244,6 +244,13 @@ int snd_soc_dapm_nc_pin(struct snd_soc_c
  int snd_soc_dapm_get_pin_status(struct snd_soc_codec *codec, char *pin);
  int snd_soc_dapm_sync(struct snd_soc_codec *codec);
  
@@ -148040,7 +148040,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        snd_soc_dapm_input = 0,         /* input pin */
 --- a/init/Kconfig
 +++ b/init/Kconfig
-@@ -732,6 +732,15 @@
+@@ -720,6 +720,15 @@ config AIO
            by some high performance threaded applications. Disabling
            this option saves about 7k.
  
@@ -148058,7 +148058,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        bool "Enable VM event counters for /proc/vmstat" if EMBEDDED
 --- a/kernel/irq/chip.c
 +++ b/kernel/irq/chip.c
-@@ -380,6 +380,7 @@
+@@ -380,6 +380,7 @@ handle_level_irq(unsigned int irq, struc
  out_unlock:
        spin_unlock(&desc->lock);
  }
@@ -148066,7 +148066,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  
  /**
   *    handle_fasteoi_irq - irq handler for transparent controllers
-@@ -583,6 +584,7 @@
+@@ -583,6 +584,7 @@ __set_irq_handler(unsigned int irq, irq_
        }
        spin_unlock_irqrestore(&desc->lock, flags);
  }
@@ -148076,7 +148076,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  set_irq_chip_and_handler(unsigned int irq, struct irq_chip *chip,
 --- a/kernel/power/main.c
 +++ b/kernel/power/main.c
-@@ -132,6 +132,9 @@
+@@ -132,6 +132,9 @@ static inline int suspend_test(int level
  
  #endif /* CONFIG_PM_SLEEP */
  
@@ -148086,7 +148086,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  #ifdef CONFIG_SUSPEND
  
  #ifdef CONFIG_PM_TEST_SUSPEND
-@@ -322,6 +325,8 @@
+@@ -322,6 +325,8 @@ int suspend_devices_and_enter(suspend_st
        if (!suspend_ops)
                return -ENOSYS;
  
@@ -148095,7 +148095,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        if (suspend_ops->begin) {
                error = suspend_ops->begin(state);
                if (error)
-@@ -365,6 +370,8 @@
+@@ -365,6 +370,8 @@ int suspend_devices_and_enter(suspend_st
   Close:
        if (suspend_ops->end)
                suspend_ops->end();
@@ -148104,7 +148104,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        return error;
  
   Recover_platform:
-@@ -427,6 +434,8 @@
+@@ -427,6 +434,8 @@ static int enter_state(suspend_state_t s
                return -EBUSY;
  
        printk(KERN_INFO "PM: Syncing filesystems ... ");
@@ -148127,7 +148127,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  
  /*
   * Architectures can override it:
-@@ -67,6 +70,12 @@
+@@ -67,6 +70,12 @@ int console_printk[4] = {
  int oops_in_progress;
  EXPORT_SYMBOL(oops_in_progress);
  
@@ -148140,7 +148140,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  /*
   * console_sem protects the console_drivers list, and also
   * provides serialisation for access to the entire console
-@@ -667,8 +676,39 @@
+@@ -667,8 +676,39 @@ asmlinkage int vprintk(const char *fmt, 
        /* Emit the output into the temporary buffer */
        printed_len += vscnprintf(printk_buf + printed_len,
                                  sizeof(printk_buf) - printed_len, fmt, args);
@@ -148184,7 +148184,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
         * appropriate log level tags, we insert them here
 --- a/kernel/timer.c
 +++ b/kernel/timer.c
-@@ -813,7 +813,11 @@
+@@ -813,7 +813,11 @@ static int cascade(struct tvec_base *bas
         * don't have to detach them individually.
         */
        list_for_each_entry_safe(timer, tmp, &tv_list, entry) {
@@ -148199,7 +148199,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  
 --- a/MAINTAINERS
 +++ b/MAINTAINERS
-@@ -1705,6 +1705,20 @@
+@@ -1705,6 +1705,20 @@ FILE LOCKING (flock() and fcntl()/lockf(
  P:    Matthew Wilcox
  M:    matthew@wil.cx
  L:    linux-fsdevel@vger.kernel.org
@@ -148902,7 +148902,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
 +MODULE_LICENSE("GPL");
 --- a/mm/Makefile
 +++ b/mm/Makefile
-@@ -22,6 +22,7 @@
+@@ -22,6 +22,7 @@ obj-$(CONFIG_NUMA)   += mempolicy.o
  obj-$(CONFIG_SPARSEMEM)       += sparse.o
  obj-$(CONFIG_SPARSEMEM_VMEMMAP) += sparse-vmemmap.o
  obj-$(CONFIG_SHMEM) += shmem.o
@@ -148912,7 +148912,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  obj-$(CONFIG_SLOB) += slob.o
 --- a/mm/tiny-shmem.c
 +++ b/mm/tiny-shmem.c
-@@ -97,6 +97,22 @@
+@@ -97,6 +97,22 @@ put_memory:
  }
  EXPORT_SYMBOL_GPL(shmem_file_setup);
  
@@ -148935,7 +148935,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  /**
   * shmem_zero_setup - setup a shared anonymous mapping
   * @vma: the vma to be mmapped is prepared by do_mmap_pgoff
-@@ -110,10 +126,8 @@
+@@ -110,10 +126,8 @@ int shmem_zero_setup(struct vm_area_stru
        if (IS_ERR(file))
                return PTR_ERR(file);
  
@@ -148971,7 +148971,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
 +
 --- a/scripts/mkuboot.sh
 +++ b/scripts/mkuboot.sh
-@@ -11,7 +11,7 @@
+@@ -11,7 +11,7 @@ if [ -z "${MKIMAGE}" ]; then
        if [ -z "${MKIMAGE}" ]; then
                # Doesn't exist
                echo '"mkimage" command not found - U-Boot images will not be built' >&2
@@ -148982,7 +148982,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  
 --- a/sound/soc/codecs/wm8753.c
 +++ b/sound/soc/codecs/wm8753.c
-@@ -1584,6 +1584,9 @@
+@@ -1584,6 +1584,9 @@ static int wm8753_init(struct snd_soc_de
        schedule_delayed_work(&codec->delayed_work,
                msecs_to_jiffies(caps_charge));
  
@@ -148992,7 +148992,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        /* set the update bits */
        reg = wm8753_read_reg_cache(codec, WM8753_LDAC);
        wm8753_write(codec, WM8753_LDAC, reg | 0x0100);
-@@ -1644,17 +1647,20 @@
+@@ -1644,17 +1647,20 @@ static int wm8753_i2c_probe(struct i2c_c
        struct snd_soc_codec *codec = socdev->codec;
        int ret;
  
@@ -149015,7 +149015,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  {
        struct snd_soc_codec *codec = i2c_get_clientdata(client);
        kfree(codec->reg_cache);
-@@ -1675,6 +1681,7 @@
+@@ -1675,6 +1681,7 @@ static struct i2c_driver wm8753_i2c_driv
        .probe =    wm8753_i2c_probe,
        .remove =   wm8753_i2c_remove,
        .id_table = wm8753_i2c_id,
@@ -149023,7 +149023,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  };
  
  static int wm8753_add_i2c_device(struct platform_device *pdev,
-@@ -1716,6 +1723,8 @@
+@@ -1716,6 +1723,8 @@ err_driver:
        i2c_del_driver(&wm8753_i2c_driver);
        return -ENODEV;
  }
@@ -149032,7 +149032,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  #endif
  
  #if defined(CONFIG_SPI_MASTER)
-@@ -1783,7 +1792,7 @@
+@@ -1783,7 +1792,7 @@ static int wm8753_probe(struct platform_
        struct wm8753_priv *wm8753;
        int ret = 0;
  
@@ -149041,7 +149041,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  
        setup = socdev->codec_data;
        codec = kzalloc(sizeof(struct snd_soc_codec), GFP_KERNEL);
-@@ -1820,6 +1829,7 @@
+@@ -1820,6 +1829,7 @@ static int wm8753_probe(struct platform_
  #endif
  
        if (ret != 0) {
@@ -149049,7 +149049,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
                kfree(codec->private_data);
                kfree(codec);
        }
-@@ -1857,7 +1867,6 @@
+@@ -1857,7 +1867,6 @@ static int wm8753_remove(struct platform
        snd_soc_free_pcms(socdev);
        snd_soc_dapm_free(socdev);
  #if defined(CONFIG_I2C) || defined(CONFIG_I2C_MODULE)
@@ -149059,7 +149059,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  #if defined(CONFIG_SPI_MASTER)
 --- a/sound/soc/s3c24xx/Kconfig
 +++ b/sound/soc/s3c24xx/Kconfig
-@@ -26,6 +26,15 @@
+@@ -26,6 +26,15 @@ config SND_S3C24XX_SOC_NEO1973_WM8753
          Say Y if you want to add support for SoC audio on smdk2440
          with the WM8753.
  
@@ -149077,7 +149077,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        depends on SND_S3C24XX_SOC && MACH_SMDK2443
 --- a/sound/soc/s3c24xx/Makefile
 +++ b/sound/soc/s3c24xx/Makefile
-@@ -13,7 +13,10 @@
+@@ -13,7 +13,10 @@ obj-$(CONFIG_SND_S3C2412_SOC_I2S) += snd
  snd-soc-neo1973-wm8753-objs := neo1973_wm8753.o
  snd-soc-smdk2443-wm9710-objs := smdk2443_wm9710.o
  snd-soc-ln2440sbc-alc650-objs := ln2440sbc_alc650.o
@@ -149775,7 +149775,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  #include <asm/plat-s3c24xx/regs-iis.h>
  
  #include "../codecs/wm8753.h"
-@@ -585,7 +585,7 @@
+@@ -585,7 +585,7 @@ static struct snd_soc_machine neo1973 = 
        .num_links = ARRAY_SIZE(neo1973_dai),
  };
  
@@ -149784,7 +149784,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        .i2c_bus = 0,
        .i2c_address = 0x1a,
  };
-@@ -594,7 +594,7 @@
+@@ -594,7 +594,7 @@ static struct snd_soc_device neo1973_snd
        .machine = &neo1973,
        .platform = &s3c24xx_soc_platform,
        .codec_dev = &soc_codec_dev_wm8753,
@@ -149793,7 +149793,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  };
  
  static int lm4857_i2c_probe(struct i2c_client *client,
-@@ -676,7 +676,7 @@
+@@ -676,7 +676,7 @@ static int __init neo1973_init(void)
  {
        int ret;
  
@@ -149815,7 +149815,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  #include <mach/audio.h>
 --- a/sound/soc/s3c24xx/s3c24xx-i2s.c
 +++ b/sound/soc/s3c24xx/s3c24xx-i2s.c
-@@ -175,7 +175,7 @@
+@@ -175,7 +175,7 @@ static void s3c24xx_snd_rxctrl(int on)
  static int s3c24xx_snd_lrsync(void)
  {
        u32 iiscon;
@@ -149824,7 +149824,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  
        DBG("Entered %s\n", __func__);
  
-@@ -282,11 +282,14 @@
+@@ -282,11 +282,14 @@ static int s3c24xx_i2s_trigger(struct sn
        case SNDRV_PCM_TRIGGER_START:
        case SNDRV_PCM_TRIGGER_RESUME:
        case SNDRV_PCM_TRIGGER_PAUSE_RELEASE:
@@ -149844,7 +149844,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  
                if (substream->stream == SNDRV_PCM_STREAM_CAPTURE)
                        s3c24xx_snd_rxctrl(1);
-@@ -306,7 +309,6 @@
+@@ -306,7 +309,6 @@ static int s3c24xx_i2s_trigger(struct sn
                break;
        }
  
@@ -149854,7 +149854,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  
 --- a/sound/soc/s3c24xx/s3c24xx-pcm.c
 +++ b/sound/soc/s3c24xx/s3c24xx-pcm.c
-@@ -168,7 +168,7 @@
+@@ -168,7 +168,7 @@ static int s3c24xx_pcm_hw_params(struct 
                                          prtd->params->client, NULL);
  
                if (ret < 0) {
@@ -149865,7 +149865,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
        }
 --- a/sound/soc/soc-core.c
 +++ b/sound/soc/soc-core.c
-@@ -1003,6 +1003,38 @@
+@@ -1003,6 +1003,38 @@ static ssize_t codec_reg_show(struct dev
  }
  static DEVICE_ATTR(codec_reg, 0444, codec_reg_show, NULL);
  
@@ -149904,7 +149904,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  /**
   * snd_soc_new_ac97_codec - initailise AC97 device
   * @codec: audio codec
-@@ -1218,6 +1250,9 @@
+@@ -1218,6 +1250,9 @@ int snd_soc_register_card(struct snd_soc
  
        mutex_unlock(&codec->mutex);
  
@@ -149916,7 +149916,7 @@ mb@homer   Thu Jan  1 22:58:51 UTC 2009
  }
 --- a/sound/soc/soc-dapm.c
 +++ b/sound/soc/soc-dapm.c
-@@ -1525,6 +1525,56 @@
+@@ -1525,6 +1525,56 @@ int snd_soc_dapm_get_pin_status(struct s
  EXPORT_SYMBOL_GPL(snd_soc_dapm_get_pin_status);
  
  /**