---
-Index: linux-2.6.28/arch/arm/common/vic.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/common/vic.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/common/vic.c 2009-01-02 00:01:56.000000000 +0100
-@@ -69,12 +69,12 @@ void __init vic_init(void __iomem *base,
+--- a/arch/arm/common/vic.c
++++ b/arch/arm/common/vic.c
+@@ -69,12 +69,12 @@
/*
* Make sure we clear all existing interrupts
*/
}
for (i = 0; i < 16; i++) {
-@@ -82,7 +82,7 @@ void __init vic_init(void __iomem *base,
+@@ -82,7 +82,7 @@
writel(VIC_VECT_CNTL_ENABLE | i, reg);
}
for (i = 0; i < 32; i++) {
unsigned int irq = irq_start + i;
-Index: linux-2.6.28/arch/arm/configs/gta02-moredrivers-defconfig
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/configs/gta02-moredrivers-defconfig 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/configs/gta02-moredrivers-defconfig
@@ -0,0 +1,2107 @@
+#
+# Automatically generated make config: don't edit
+CONFIG_PLIST=y
+CONFIG_HAS_IOMEM=y
+CONFIG_HAS_DMA=y
-Index: linux-2.6.28/arch/arm/configs/gta02-packaging-defconfig
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/configs/gta02-packaging-defconfig 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/configs/gta02-packaging-defconfig
@@ -0,0 +1,2111 @@
+#
+# Automatically generated make config: don't edit
+CONFIG_PLIST=y
+CONFIG_HAS_IOMEM=y
+CONFIG_HAS_DMA=y
-Index: linux-2.6.28/arch/arm/configs/gta03_defconfig
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/configs/gta03_defconfig 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/configs/gta03_defconfig
@@ -0,0 +1,1548 @@
+#
+# Automatically generated make config: don't edit
+CONFIG_PLIST=y
+CONFIG_HAS_IOMEM=y
+CONFIG_HAS_DMA=y
-Index: linux-2.6.28/arch/arm/configs/s3c6400_defconfig
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/configs/s3c6400_defconfig 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/configs/s3c6400_defconfig
@@ -0,0 +1,845 @@
+#
+# Automatically generated make config: don't edit
+CONFIG_PLIST=y
+CONFIG_HAS_IOMEM=y
+CONFIG_HAS_DMA=y
-Index: linux-2.6.28/arch/arm/Kconfig
-===================================================================
---- linux-2.6.28.orig/arch/arm/Kconfig 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/Kconfig 2009-01-02 00:01:56.000000000 +0100
-@@ -498,6 +498,13 @@ config ARCH_S3C2410
+--- a/arch/arm/Kconfig
++++ b/arch/arm/Kconfig
+@@ -498,6 +498,13 @@
BAST (<http://www.simtec.co.uk/products/EB110ITX/>), the IPAQ 1940 or
the Samsung SMDK2410 development board (and derivatives).
config ARCH_SHARK
bool "Shark"
select ISA
-@@ -590,6 +597,7 @@ source "arch/arm/mach-orion5x/Kconfig"
+@@ -590,6 +597,7 @@
source "arch/arm/mach-kirkwood/Kconfig"
source "arch/arm/plat-s3c24xx/Kconfig"
source "arch/arm/plat-s3c/Kconfig"
if ARCH_S3C2410
-@@ -601,6 +609,11 @@ source "arch/arm/mach-s3c2442/Kconfig"
+@@ -601,6 +609,11 @@
source "arch/arm/mach-s3c2443/Kconfig"
endif
source "arch/arm/mach-lh7a40x/Kconfig"
source "arch/arm/mach-imx/Kconfig"
-@@ -1256,6 +1269,8 @@ source "drivers/usb/Kconfig"
+@@ -1256,6 +1269,8 @@
source "drivers/uwb/Kconfig"
source "drivers/mmc/Kconfig"
source "drivers/memstick/Kconfig"
-@@ -1268,6 +1283,8 @@ source "drivers/rtc/Kconfig"
+@@ -1268,6 +1283,8 @@
source "drivers/dma/Kconfig"
source "drivers/dca/Kconfig"
source "drivers/auxdisplay/Kconfig"
-Index: linux-2.6.28/arch/arm/kernel/vmlinux.lds.S
-===================================================================
---- linux-2.6.28.orig/arch/arm/kernel/vmlinux.lds.S 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/kernel/vmlinux.lds.S 2009-01-02 00:01:56.000000000 +0100
-@@ -106,6 +106,8 @@ SECTIONS
+--- a/arch/arm/kernel/vmlinux.lds.S
++++ b/arch/arm/kernel/vmlinux.lds.S
+@@ -106,6 +106,8 @@
*(.got) /* Global offset table */
}
RODATA
_etext = .; /* End of text and rodata section */
-Index: linux-2.6.28/arch/arm/mach-s3c2410/clock.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2410/clock.c 2008-12-25 00:26:37.000000000 +0100
-+++ /dev/null 1970-01-01 00:00:00.000000000 +0000
+--- a/arch/arm/mach-s3c2410/clock.c
++++ /dev/null
@@ -1,276 +0,0 @@
-/* linux/arch/arm/mach-s3c2410/clock.c
- *
-
- return 0;
-}
-Index: linux-2.6.28/arch/arm/mach-s3c2410/dma.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2410/dma.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2410/dma.c 2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/mach-s3c2410/dma.c
++++ b/arch/arm/mach-s3c2410/dma.c
@@ -25,12 +25,12 @@
#include <plat/regs-serial.h>
static struct s3c24xx_dma_map __initdata s3c2410_dma_mappings[] = {
[DMACH_XD0] = {
-Index: linux-2.6.28/arch/arm/mach-s3c2410/include/mach/fiq_ipc_gta02.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c2410/include/mach/fiq_ipc_gta02.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c2410/include/mach/fiq_ipc_gta02.h
@@ -0,0 +1,60 @@
+#ifndef _LINUX_FIQ_IPC_H
+#define _LINUX_FIQ_IPC_H
+extern void fiq_kick(void); /* provoke a FIQ "immediately" */
+
+#endif /* _LINUX_FIQ_IPC_H */
-Index: linux-2.6.28/arch/arm/mach-s3c2410/include/mach/gpio-core.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c2410/include/mach/gpio-core.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c2410/include/mach/gpio-core.h
@@ -0,0 +1,21 @@
+/* arch/arm/mach-s3c24100/include/mach/gpio-core.h
+ *
+#include <plat/gpio-core.h>
+
+#endif /* __ASM_ARCH_GPIO_CORE_H */
-Index: linux-2.6.28/arch/arm/mach-s3c2410/include/mach/gpio.h
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2410/include/mach/gpio.h 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2410/include/mach/gpio.h 2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/mach-s3c2410/include/mach/gpio.h
++++ b/arch/arm/mach-s3c2410/include/mach/gpio.h
@@ -15,4 +15,14 @@
#define gpio_set_value __gpio_set_value
#define gpio_cansleep __gpio_cansleep
+#include <mach/gpio-nrs.h>
+
+#define S3C_GPIO_END (S3C2410_GPIO_BANKH + 32)
-Index: linux-2.6.28/arch/arm/mach-s3c2410/include/mach/gpio-nrs.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c2410/include/mach/gpio-nrs.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c2410/include/mach/gpio-nrs.h
@@ -0,0 +1,23 @@
+/* arch/arm/mach-s3c2410/include/mach/gpio-nrs.h
+ *
+#define S3C2410_GPIO_BANKF (32*5)
+#define S3C2410_GPIO_BANKG (32*6)
+#define S3C2410_GPIO_BANKH (32*7)
-Index: linux-2.6.28/arch/arm/mach-s3c2410/include/mach/gta01.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c2410/include/mach/gta01.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c2410/include/mach/gta01.h
@@ -0,0 +1,74 @@
+#ifndef _GTA01_H
+#define _GTA01_H
+#define GTA01Bv4_IRQ_PCF50606 IRQ_EINT9
+
+#endif /* _GTA01_H */
-Index: linux-2.6.28/arch/arm/mach-s3c2410/include/mach/gta02.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c2410/include/mach/gta02.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c2410/include/mach/gta02.h
@@ -0,0 +1,113 @@
+#ifndef _GTA02_H
+#define _GTA02_H
+extern struct pcf50633_platform_data gta02_pcf_pdata;
+
+#endif /* _GTA02_H */
-Index: linux-2.6.28/arch/arm/mach-s3c2410/include/mach/gta02-pm-wlan.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c2410/include/mach/gta02-pm-wlan.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c2410/include/mach/gta02-pm-wlan.h
@@ -0,0 +1 @@
+void gta02_wlan_power(int on);
-Index: linux-2.6.28/arch/arm/mach-s3c2410/include/mach/irqs.h
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2410/include/mach/irqs.h 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2410/include/mach/irqs.h 2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/mach-s3c2410/include/mach/irqs.h
++++ b/arch/arm/mach-s3c2410/include/mach/irqs.h
@@ -12,9 +12,9 @@
#ifndef __ASM_ARCH_IRQS_H
#define __ASM_ARCH_IRQS_H __FILE__
+#define IRQ_GLAMO_RISC IRQ_GLAMO(8)
+
#endif /* __ASM_ARCH_IRQ_H */
-Index: linux-2.6.28/arch/arm/mach-s3c2410/include/mach/map.h
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2410/include/mach/map.h 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2410/include/mach/map.h 2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/mach-s3c2410/include/mach/map.h
++++ b/arch/arm/mach-s3c2410/include/mach/map.h
@@ -13,34 +13,20 @@
#ifndef __ASM_ARCH_MAP_H
#define __ASM_ARCH_MAP_H
+#define S3C_PA_HSMMC0 S3C2443_PA_HSMMC
#endif /* __ASM_ARCH_MAP_H */
-Index: linux-2.6.28/arch/arm/mach-s3c2410/include/mach/mci.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c2410/include/mach/mci.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c2410/include/mach/mci.h
@@ -0,0 +1,13 @@
+#ifndef _ARCH_MCI_H
+#define _ARCH_MCI_H
+};
+
+#endif /* _ARCH_NCI_H */
-Index: linux-2.6.28/arch/arm/mach-s3c2410/include/mach/neo1973-pm-gsm.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c2410/include/mach/neo1973-pm-gsm.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c2410/include/mach/neo1973-pm-gsm.h
@@ -0,0 +1 @@
+extern int gta_gsm_interrupts;
-Index: linux-2.6.28/arch/arm/mach-s3c2410/include/mach/pwm.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c2410/include/mach/pwm.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c2410/include/mach/pwm.h
@@ -0,0 +1,46 @@
+#ifndef __S3C2410_PWM_H
+#define __S3C2410_PWM_H
+int s3c2410_pwm_dumpregs(void);
+
+#endif /* __S3C2410_PWM_H */
-Index: linux-2.6.28/arch/arm/mach-s3c2410/include/mach/regs-clock.h
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2410/include/mach/regs-clock.h 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2410/include/mach/regs-clock.h 2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/mach-s3c2410/include/mach/regs-clock.h
++++ b/arch/arm/mach-s3c2410/include/mach/regs-clock.h
@@ -42,13 +42,6 @@
#define S3C2410_CLKCON_IIS (1<<17)
#define S3C2410_CLKCON_SPI (1<<18)
#if defined(CONFIG_CPU_S3C2440) || defined(CONFIG_CPU_S3C2442)
/* extra registers */
-Index: linux-2.6.28/arch/arm/mach-s3c2410/include/mach/regs-gpio.h
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2410/include/mach/regs-gpio.h 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2410/include/mach/regs-gpio.h 2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/mach-s3c2410/include/mach/regs-gpio.h
++++ b/arch/arm/mach-s3c2410/include/mach/regs-gpio.h
@@ -14,16 +14,7 @@
#ifndef __ASM_ARCH_REGS_GPIO_H
#define __ASM_ARCH_REGS_GPIO_H
/* interrupt filtering conrrol for EINT16..EINT23 */
#define S3C2410_EINFLT0 S3C2410_GPIOREG(0x94)
#define S3C2410_EINFLT1 S3C2410_GPIOREG(0x98)
-Index: linux-2.6.28/arch/arm/mach-s3c2410/include/mach/regs-sdi.h
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2410/include/mach/regs-sdi.h 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2410/include/mach/regs-sdi.h 2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/mach-s3c2410/include/mach/regs-sdi.h
++++ b/arch/arm/mach-s3c2410/include/mach/regs-sdi.h
@@ -30,6 +30,7 @@
#define S3C2410_SDIFSTA (0x38)
#define S3C2410_SDICON_BYTEORDER (1<<4)
#define S3C2410_SDICON_SDIOIRQ (1<<3)
#define S3C2410_SDICON_RWAITEN (1<<2)
-Index: linux-2.6.28/arch/arm/mach-s3c2410/include/mach/s3c24xx-serial.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c2410/include/mach/s3c24xx-serial.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c2410/include/mach/s3c24xx-serial.h
@@ -0,0 +1,5 @@
+#include <linux/resume-dependency.h>
+
+extern void s3c24xx_serial_console_set_silence(int silence);
+extern void s3c24xx_serial_register_resume_dependency(struct resume_dependency *
+ resume_dependency, int uart_index);
-Index: linux-2.6.28/arch/arm/mach-s3c2410/include/mach/spi-gpio.h
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2410/include/mach/spi-gpio.h 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2410/include/mach/spi-gpio.h 2009-01-02 00:43:03.000000000 +0100
-@@ -21,7 +21,15 @@ struct s3c2410_spigpio_info {
+--- a/arch/arm/mach-s3c2410/include/mach/spi-gpio.h
++++ b/arch/arm/mach-s3c2410/include/mach/spi-gpio.h
+@@ -21,7 +21,15 @@
int num_chipselect;
int bus_num;
};
-Index: linux-2.6.28/arch/arm/mach-s3c2410/include/mach/spi.h
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2410/include/mach/spi.h 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2410/include/mach/spi.h 2009-01-02 00:01:56.000000000 +0100
-@@ -22,5 +22,12 @@ struct s3c2410_spi_info {
+--- a/arch/arm/mach-s3c2410/include/mach/spi.h
++++ b/arch/arm/mach-s3c2410/include/mach/spi.h
+@@ -22,5 +22,12 @@
void (*set_cs)(struct s3c2410_spi_info *spi, int cs, int pol);
};
+ int enable);
#endif /* __ASM_ARCH_SPI_H */
-Index: linux-2.6.28/arch/arm/mach-s3c2410/include/mach/system-reset.h
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2410/include/mach/system-reset.h 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2410/include/mach/system-reset.h 2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/mach-s3c2410/include/mach/system-reset.h
++++ b/arch/arm/mach-s3c2410/include/mach/system-reset.h
@@ -13,7 +13,7 @@
#include <mach/hardware.h>
#include <linux/io.h>
#include <mach/regs-clock.h>
#include <linux/clk.h>
-Index: linux-2.6.28/arch/arm/mach-s3c2410/include/mach/tick.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c2410/include/mach/tick.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c2410/include/mach/tick.h
@@ -0,0 +1,15 @@
+/* linux/arch/arm/mach-s3c2410/include/mach/tick.h
+ *
+{
+ return __raw_readl(S3C2410_SRCPND) & SRCPND_TIMER4;
+}
-Index: linux-2.6.28/arch/arm/mach-s3c2410/include/mach/timex.h
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2410/include/mach/timex.h 2008-12-25 00:26:37.000000000 +0100
-+++ /dev/null 1970-01-01 00:00:00.000000000 +0000
+--- a/arch/arm/mach-s3c2410/include/mach/timex.h
++++ /dev/null
@@ -1,26 +0,0 @@
-/* arch/arm/mach-s3c2410/include/mach/timex.h
- *
-
-
-#endif /* __ASM_ARCH_TIMEX_H */
-Index: linux-2.6.28/arch/arm/mach-s3c2410/include/mach/ts.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c2410/include/mach/ts.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c2410/include/mach/ts.h
@@ -0,0 +1,35 @@
+/* arch/arm/mach-s3c2410/include/mach/ts.h
+ *
+
+#endif /* __ASM_ARM_TS_H */
+
-Index: linux-2.6.28/arch/arm/mach-s3c2410/include/mach/uncompress.h
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2410/include/mach/uncompress.h 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2410/include/mach/uncompress.h 2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/mach-s3c2410/include/mach/uncompress.h
++++ b/arch/arm/mach-s3c2410/include/mach/uncompress.h
@@ -1,3 +1,4 @@
+
/* arch/arm/mach-s3c2410/include/mach/uncompress.h
*
* Copyright (c) 2003, 2007 Simtec Electronics
-Index: linux-2.6.28/arch/arm/mach-s3c2410/include/mach/vmalloc.h
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2410/include/mach/vmalloc.h 2008-12-25 00:26:37.000000000 +0100
-+++ /dev/null 1970-01-01 00:00:00.000000000 +0000
+--- a/arch/arm/mach-s3c2410/include/mach/vmalloc.h
++++ /dev/null
@@ -1,20 +0,0 @@
-/* arch/arm/mach-s3c2410/include/mach/vmalloc.h
- *
-#define VMALLOC_END (0xE0000000)
-
-#endif /* __ASM_ARCH_VMALLOC_H */
-Index: linux-2.6.28/arch/arm/mach-s3c2410/Kconfig
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2410/Kconfig 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2410/Kconfig 2009-01-02 00:01:56.000000000 +0100
-@@ -9,6 +9,7 @@ config CPU_S3C2410
+--- a/arch/arm/mach-s3c2410/Kconfig
++++ b/arch/arm/mach-s3c2410/Kconfig
+@@ -9,6 +9,7 @@
depends on ARCH_S3C2410
select S3C2410_CLOCK
select S3C2410_GPIO
select CPU_LLSERIAL_S3C2410
select S3C2410_PM if PM
help
-@@ -32,11 +33,6 @@ config S3C2410_GPIO
+@@ -32,11 +33,6 @@
help
GPIO code for S3C2410 and similar processors
config SIMTEC_NOR
bool
help
-@@ -49,6 +45,12 @@ config MACH_BAST_IDE
+@@ -49,6 +45,12 @@
Internal node for machines with an BAST style IDE
interface
menu "S3C2410 Machines"
config ARCH_SMDK2410
-@@ -84,6 +86,7 @@ config ARCH_BAST
+@@ -84,6 +86,7 @@
select PM_SIMTEC if PM
select SIMTEC_NOR
select MACH_BAST_IDE
select ISA
help
Say Y here if you are using the Simtec Electronics EB2410ITX
-@@ -121,6 +124,7 @@ config MACH_TCT_HAMMER
+@@ -121,6 +124,7 @@
config MACH_VR1000
bool "Thorcom VR1000"
select PM_SIMTEC if PM
select SIMTEC_NOR
select MACH_BAST_IDE
select CPU_S3C2410
-@@ -130,7 +134,16 @@ config MACH_VR1000
+@@ -130,7 +134,16 @@
config MACH_QT2410
bool "QT2410"
select CPU_S3C2410
+ Say Y here if you are using the FIC Neo1973 GSM Phone
+
endmenu
-Index: linux-2.6.28/arch/arm/mach-s3c2410/mach-amlm5900.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2410/mach-amlm5900.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2410/mach-amlm5900.c 2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/mach-s3c2410/mach-amlm5900.c
++++ b/arch/arm/mach-s3c2410/mach-amlm5900.c
@@ -52,6 +52,7 @@
#include <mach/regs-lcd.h>
#include <mach/regs-gpio.h>
#include <plat/devs.h>
#include <plat/cpu.h>
-@@ -150,7 +151,7 @@ static struct platform_device *amlm5900_
+@@ -150,7 +151,7 @@
#endif
&s3c_device_adc,
&s3c_device_wdt,
&s3c_device_usb,
&s3c_device_rtc,
&s3c_device_usbgadget,
-@@ -233,6 +234,7 @@ static void __init amlm5900_init(void)
+@@ -233,6 +234,7 @@
#ifdef CONFIG_FB_S3C2410
s3c24xx_fb_set_platdata(&amlm5900_fb_info);
#endif
platform_add_devices(amlm5900_devices, ARRAY_SIZE(amlm5900_devices));
}
-Index: linux-2.6.28/arch/arm/mach-s3c2410/mach-bast.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2410/mach-bast.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2410/mach-bast.c 2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/mach-s3c2410/mach-bast.c
++++ b/arch/arm/mach-s3c2410/mach-bast.c
@@ -44,8 +44,8 @@
#include <mach/regs-mem.h>
#include <mach/regs-lcd.h>
#include <mach/fb.h>
#include <linux/mtd/mtd.h>
-@@ -406,7 +406,7 @@ static struct platform_device bast_sio =
+@@ -406,7 +406,7 @@
* standard 100KHz i2c bus frequency
*/
.flags = 0,
.slave_addr = 0x10,
.bus_freq = 100*1000,
-@@ -553,7 +553,7 @@ static struct platform_device *bast_devi
+@@ -553,7 +553,7 @@
&s3c_device_usb,
&s3c_device_lcd,
&s3c_device_wdt,
&s3c_device_rtc,
&s3c_device_nand,
&bast_device_dm9k,
-@@ -588,7 +588,8 @@ static void __init bast_map_io(void)
+@@ -588,7 +588,8 @@
s3c24xx_register_clocks(bast_clocks, ARRAY_SIZE(bast_clocks));
s3c_device_nand.dev.platform_data = &bast_nand_info;
s3c24xx_init_io(bast_iodesc, ARRAY_SIZE(bast_iodesc));
s3c24xx_init_clocks(0);
-Index: linux-2.6.28/arch/arm/mach-s3c2410/mach-gta01.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c2410/mach-gta01.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c2410/mach-gta01.c
@@ -0,0 +1,786 @@
+/*
+ * linux/arch/arm/mach-s3c2410/mach-gta01.c
+ .init_machine = gta01_machine_init,
+ .timer = &s3c24xx_timer,
+MACHINE_END
-Index: linux-2.6.28/arch/arm/mach-s3c2410/mach-h1940.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2410/mach-h1940.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2410/mach-h1940.c 2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/mach-s3c2410/mach-h1940.c
++++ b/arch/arm/mach-s3c2410/mach-h1940.c
@@ -38,11 +38,13 @@
#include <mach/h1940.h>
#include <mach/h1940-latch.h>
#include <plat/pm.h>
static struct map_desc h1940_iodesc[] __initdata = {
-@@ -129,6 +131,11 @@ static struct s3c2410_udc_mach_info h194
+@@ -129,6 +131,11 @@
.vbus_pin_inverted = 1,
};
/**
* Set lcd on or off
-@@ -183,9 +190,10 @@ static struct platform_device *h1940_dev
+@@ -183,9 +190,10 @@
&s3c_device_usb,
&s3c_device_lcd,
&s3c_device_wdt,
&s3c_device_leds,
&s3c_device_bluetooth,
};
-@@ -201,7 +209,7 @@ static void __init h1940_map_io(void)
+@@ -201,7 +209,7 @@
#ifdef CONFIG_PM_H1940
memcpy(phys_to_virt(H1940_SUSPEND_RESUMEAT), h1940_pm_return, 1024);
#endif
}
static void __init h1940_init_irq(void)
-@@ -214,7 +222,9 @@ static void __init h1940_init(void)
+@@ -214,7 +222,9 @@
u32 tmp;
s3c24xx_fb_set_platdata(&h1940_fb_info);
/* Turn off suspend on both USB ports, and switch the
* selectable USB port to USB device mode. */
-@@ -223,10 +233,9 @@ static void __init h1940_init(void)
+@@ -223,10 +233,9 @@
S3C2410_MISCCR_USBSUSPND0 |
S3C2410_MISCCR_USBSUSPND1, 0x0);
writel(tmp, S3C2410_UPLLCON);
platform_add_devices(h1940_devices, ARRAY_SIZE(h1940_devices));
-Index: linux-2.6.28/arch/arm/mach-s3c2410/mach-n30.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2410/mach-n30.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2410/mach-n30.c 2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/mach-s3c2410/mach-n30.c
++++ b/arch/arm/mach-s3c2410/mach-n30.c
@@ -40,14 +40,14 @@
#include <asm/mach/irq.h>
#include <asm/mach/map.h>
static struct map_desc n30_iodesc[] __initdata = {
/* nothing here yet */
-@@ -320,7 +320,7 @@ static struct s3c2410fb_mach_info n30_fb
+@@ -320,7 +320,7 @@
static struct platform_device *n30_devices[] __initdata = {
&s3c_device_lcd,
&s3c_device_wdt,
&s3c_device_iis,
&s3c_device_usb,
&s3c_device_usbgadget,
-@@ -332,7 +332,7 @@ static struct platform_device *n30_devic
+@@ -332,7 +332,7 @@
static struct platform_device *n35_devices[] __initdata = {
&s3c_device_lcd,
&s3c_device_wdt,
&s3c_device_iis,
&s3c_device_usbgadget,
&n35_button_device,
-@@ -501,7 +501,7 @@ static void __init n30_init_irq(void)
+@@ -501,7 +501,7 @@
static void __init n30_init(void)
{
s3c24xx_fb_set_platdata(&n30_fb_info);
s3c24xx_udc_set_platdata(&n30_udc_cfg);
/* Turn off suspend on both USB ports, and switch the
-Index: linux-2.6.28/arch/arm/mach-s3c2410/mach-otom.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2410/mach-otom.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2410/mach-otom.c 2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/mach-s3c2410/mach-otom.c
++++ b/arch/arm/mach-s3c2410/mach-otom.c
@@ -35,6 +35,7 @@
#include <plat/s3c2410.h>
#include <plat/clock.h>
#include <plat/cpu.h>
static struct map_desc otom11_iodesc[] __initdata = {
-@@ -94,7 +95,7 @@ static struct platform_device *otom11_de
+@@ -94,7 +95,7 @@
&s3c_device_usb,
&s3c_device_lcd,
&s3c_device_wdt,
&s3c_device_iis,
&s3c_device_rtc,
&otom_device_nor,
-@@ -109,6 +110,7 @@ static void __init otom11_map_io(void)
+@@ -109,6 +110,7 @@
static void __init otom11_init(void)
{
platform_add_devices(otom11_devices, ARRAY_SIZE(otom11_devices));
}
-Index: linux-2.6.28/arch/arm/mach-s3c2410/mach-qt2410.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2410/mach-qt2410.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2410/mach-qt2410.c 2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/mach-s3c2410/mach-qt2410.c
++++ b/arch/arm/mach-s3c2410/mach-qt2410.c
@@ -1,6 +1,6 @@
/* linux/arch/arm/mach-s3c2410/mach-qt2410.c
*
#include <plat/common-smdk.h>
#include <plat/devs.h>
-@@ -213,7 +214,7 @@ static struct platform_device qt2410_led
+@@ -213,7 +214,7 @@
/* SPI */
{
switch (cs) {
case BITBANG_CS_ACTIVE:
-@@ -247,7 +248,7 @@ static struct platform_device *qt2410_de
+@@ -247,7 +248,7 @@
&s3c_device_usb,
&s3c_device_lcd,
&s3c_device_wdt,
&s3c_device_iis,
&s3c_device_sdi,
&s3c_device_usbgadget,
-@@ -320,6 +321,24 @@ static int __init qt2410_tft_setup(char
+@@ -320,6 +321,24 @@
__setup("tft=", qt2410_tft_setup);
static void __init qt2410_map_io(void)
{
s3c24xx_init_io(qt2410_iodesc, ARRAY_SIZE(qt2410_iodesc));
-@@ -349,11 +368,12 @@ static void __init qt2410_machine_init(v
+@@ -349,11 +368,12 @@
s3c2410_gpio_setpin(S3C2410_GPB0, 1);
s3c24xx_udc_set_platdata(&qt2410_udc_cfg);
}
MACHINE_START(QT2410, "QT2410")
-Index: linux-2.6.28/arch/arm/mach-s3c2410/mach-smdk2410.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2410/mach-smdk2410.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2410/mach-smdk2410.c 2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/mach-s3c2410/mach-smdk2410.c
++++ b/arch/arm/mach-s3c2410/mach-smdk2410.c
@@ -47,6 +47,7 @@
#include <asm/mach-types.h>
#include <plat/devs.h>
#include <plat/cpu.h>
-@@ -89,7 +90,7 @@ static struct platform_device *smdk2410_
+@@ -89,7 +90,7 @@
&s3c_device_usb,
&s3c_device_lcd,
&s3c_device_wdt,
&s3c_device_iis,
};
-@@ -102,6 +103,7 @@ static void __init smdk2410_map_io(void)
+@@ -102,6 +103,7 @@
static void __init smdk2410_init(void)
{
platform_add_devices(smdk2410_devices, ARRAY_SIZE(smdk2410_devices));
smdk_machine_init();
}
-Index: linux-2.6.28/arch/arm/mach-s3c2410/mach-tct_hammer.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2410/mach-tct_hammer.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2410/mach-tct_hammer.c 2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/mach-s3c2410/mach-tct_hammer.c
++++ b/arch/arm/mach-s3c2410/mach-tct_hammer.c
@@ -45,6 +45,7 @@
#include <asm/mach-types.h>
#include <plat/devs.h>
#include <plat/cpu.h>
-@@ -127,7 +128,7 @@ static struct s3c2410_uartcfg tct_hammer
+@@ -127,7 +128,7 @@
static struct platform_device *tct_hammer_devices[] __initdata = {
&s3c_device_adc,
&s3c_device_wdt,
&s3c_device_usb,
&s3c_device_rtc,
&s3c_device_usbgadget,
-@@ -146,6 +147,7 @@ static void __init tct_hammer_map_io(voi
+@@ -146,6 +147,7 @@
static void __init tct_hammer_init(void)
{
platform_add_devices(tct_hammer_devices, ARRAY_SIZE(tct_hammer_devices));
}
-Index: linux-2.6.28/arch/arm/mach-s3c2410/mach-vr1000.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2410/mach-vr1000.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2410/mach-vr1000.c 2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/mach-s3c2410/mach-vr1000.c
++++ b/arch/arm/mach-s3c2410/mach-vr1000.c
@@ -47,6 +47,7 @@
#include <plat/clock.h>
#include <plat/devs.h>
#include "usb-simtec.h"
#include "nor-simtec.h"
-@@ -334,7 +335,7 @@ static struct platform_device *vr1000_de
+@@ -334,7 +335,7 @@
&s3c_device_usb,
&s3c_device_lcd,
&s3c_device_wdt,
&s3c_device_adc,
&serial_device,
&vr1000_dm9k0,
-@@ -384,6 +385,7 @@ static void __init vr1000_map_io(void)
+@@ -384,6 +385,7 @@
static void __init vr1000_init(void)
{
platform_add_devices(vr1000_devices, ARRAY_SIZE(vr1000_devices));
i2c_register_board_info(0, vr1000_i2c_devs,
-Index: linux-2.6.28/arch/arm/mach-s3c2410/Makefile
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2410/Makefile 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2410/Makefile 2009-01-02 00:01:56.000000000 +0100
-@@ -15,7 +15,8 @@ obj-$(CONFIG_CPU_S3C2410_DMA) += dma.o
+--- a/arch/arm/mach-s3c2410/Makefile
++++ b/arch/arm/mach-s3c2410/Makefile
+@@ -15,7 +15,8 @@
obj-$(CONFIG_CPU_S3C2410_DMA) += dma.o
obj-$(CONFIG_S3C2410_PM) += pm.o sleep.o
obj-$(CONFIG_S3C2410_GPIO) += gpio.o
# Machine support
-@@ -38,3 +39,5 @@ obj-$(CONFIG_SIMTEC_NOR) += nor-simtec.o
+@@ -38,3 +39,5 @@
# machine additions
obj-$(CONFIG_MACH_BAST_IDE) += bast-ide.o
+obj-$(CONFIG_MACH_NEO1973_GTA01)+= mach-gta01.o
+
-Index: linux-2.6.28/arch/arm/mach-s3c2410/pm.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2410/pm.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2410/pm.c 2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/mach-s3c2410/pm.c
++++ b/arch/arm/mach-s3c2410/pm.c
@@ -37,21 +37,14 @@
#include <plat/cpu.h>
#include <plat/pm.h>
if (machine_is_h1940()) {
void *base = phys_to_virt(H1940_SUSPEND_CHECK);
-Index: linux-2.6.28/arch/arm/mach-s3c2410/pwm.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c2410/pwm.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c2410/pwm.c
@@ -0,0 +1,288 @@
+/*
+ * arch/arm/mach-s3c2410/3c2410-pwm.c
+
+module_init(s3c24xx_pwm_init);
+module_exit(s3c24xx_pwm_exit);
-Index: linux-2.6.28/arch/arm/mach-s3c2410/s3c2410.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2410/s3c2410.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2410/s3c2410.c 2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/mach-s3c2410/s3c2410.c
++++ b/arch/arm/mach-s3c2410/s3c2410.c
@@ -16,6 +16,7 @@
#include <linux/list.h>
#include <linux/timer.h>
/* Initial IO mappings */
-@@ -59,25 +63,28 @@ void __init s3c2410_init_uarts(struct s3
+@@ -59,25 +63,28 @@
* machine specific initialisation.
*/
tmp = __raw_readl(S3C2410_CLKDIVN);
-@@ -95,7 +102,13 @@ void __init s3c2410_init_clocks(int xtal
+@@ -95,7 +102,13 @@
* console to use them
*/
s3c2410_baseclk_add();
}
-Index: linux-2.6.28/arch/arm/mach-s3c2412/clock.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2412/clock.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2412/clock.c 2009-01-02 00:01:56.000000000 +0100
-@@ -93,12 +93,6 @@ static int s3c2412_upll_enable(struct cl
+--- a/arch/arm/mach-s3c2412/clock.c
++++ b/arch/arm/mach-s3c2412/clock.c
+@@ -93,12 +93,6 @@
/* clock selections */
static struct clk clk_erefclk = {
.name = "erefclk",
.id = -1,
-@@ -773,5 +767,6 @@ int __init s3c2412_baseclk_add(void)
+@@ -773,5 +767,6 @@
s3c2412_clkcon_enable(clkp, 0);
}
+ s3c_pwmclk_init();
return 0;
}
-Index: linux-2.6.28/arch/arm/mach-s3c2412/dma.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2412/dma.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2412/dma.c 2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/mach-s3c2412/dma.c
++++ b/arch/arm/mach-s3c2412/dma.c
@@ -26,13 +26,13 @@
#include <plat/regs-serial.h>
#define MAP(x) { (x)| DMA_CH_VALID, (x)| DMA_CH_VALID, (x)| DMA_CH_VALID, (x)| DMA_CH_VALID }
-Index: linux-2.6.28/arch/arm/mach-s3c2412/mach-jive.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2412/mach-jive.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2412/mach-jive.c 2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/mach-s3c2412/mach-jive.c
++++ b/arch/arm/mach-s3c2412/mach-jive.c
@@ -31,8 +31,8 @@
#include <asm/mach/irq.h>
static struct map_desc jive_iodesc[] __initdata = {
};
-@@ -450,14 +451,14 @@ static struct spi_board_info __initdata
+@@ -450,14 +451,14 @@
/* I2C bus and device configuration. */
[0] = {
I2C_BOARD_INFO("lis302dl", 0x1c),
.irq = IRQ_EINT14,
-@@ -470,7 +471,7 @@ static struct platform_device *jive_devi
+@@ -470,7 +471,7 @@
&s3c_device_usb,
&s3c_device_rtc,
&s3c_device_wdt,
&s3c_device_lcd,
&jive_device_lcdspi,
&jive_device_wm8750,
-@@ -492,7 +493,7 @@ static int jive_pm_suspend(struct sys_de
+@@ -492,7 +493,7 @@
* correct address to resume from. */
__raw_writel(0x2BED, S3C2412_INFORM0);
return 0;
}
-@@ -628,7 +629,7 @@ static void __init jive_machine_init(voi
+@@ -628,7 +629,7 @@
/* initialise the power management now we've setup everything. */
s3c_device_nand.dev.platform_data = &jive_nand_info;
-@@ -663,7 +664,7 @@ static void __init jive_machine_init(voi
+@@ -663,7 +664,7 @@
spi_register_board_info(jive_spi_devs, ARRAY_SIZE(jive_spi_devs));
i2c_register_board_info(0, jive_i2c_devs, ARRAY_SIZE(jive_i2c_devs));
pm_power_off = jive_power_off;
-Index: linux-2.6.28/arch/arm/mach-s3c2412/mach-smdk2413.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2412/mach-smdk2413.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2412/mach-smdk2413.c 2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/mach-s3c2412/mach-smdk2413.c
++++ b/arch/arm/mach-s3c2412/mach-smdk2413.c
@@ -37,7 +37,8 @@
#include <mach/regs-lcd.h>
#include <mach/fb.h>
#include <plat/s3c2410.h>
-@@ -105,7 +106,7 @@ static struct platform_device *smdk2413_
+@@ -105,7 +106,7 @@
&s3c_device_usb,
//&s3c_device_lcd,
&s3c_device_wdt,
&s3c_device_iis,
&s3c_device_usbgadget,
};
-@@ -142,6 +143,7 @@ static void __init smdk2413_machine_init
+@@ -142,6 +143,7 @@
s3c24xx_udc_set_platdata(&smdk2413_udc_cfg);
platform_add_devices(smdk2413_devices, ARRAY_SIZE(smdk2413_devices));
smdk_machine_init();
-Index: linux-2.6.28/arch/arm/mach-s3c2412/mach-vstms.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2412/mach-vstms.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2412/mach-vstms.c 2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/mach-s3c2412/mach-vstms.c
++++ b/arch/arm/mach-s3c2412/mach-vstms.c
@@ -39,7 +39,8 @@
#include <mach/idle.h>
#include <mach/fb.h>
#include <plat/s3c2410.h>
#include <plat/s3c2412.h>
-@@ -122,7 +123,7 @@ static struct s3c2410_platform_nand vstm
+@@ -122,7 +123,7 @@
static struct platform_device *vstms_devices[] __initdata = {
&s3c_device_usb,
&s3c_device_wdt,
&s3c_device_iis,
&s3c_device_rtc,
&s3c_device_nand,
-@@ -151,6 +152,7 @@ static void __init vstms_map_io(void)
+@@ -151,6 +152,7 @@
static void __init vstms_init(void)
{
platform_add_devices(vstms_devices, ARRAY_SIZE(vstms_devices));
}
-Index: linux-2.6.28/arch/arm/mach-s3c2412/pm.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2412/pm.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2412/pm.c 2009-01-02 00:01:56.000000000 +0100
-@@ -85,7 +85,7 @@ static struct sleep_save s3c2412_sleep[]
+--- a/arch/arm/mach-s3c2412/pm.c
++++ b/arch/arm/mach-s3c2412/pm.c
+@@ -85,7 +85,7 @@
static int s3c2412_pm_suspend(struct sys_device *dev, pm_message_t state)
{
return 0;
}
-@@ -98,7 +98,7 @@ static int s3c2412_pm_resume(struct sys_
+@@ -98,7 +98,7 @@
tmp |= S3C2412_PWRCFG_STANDBYWFI_IDLE;
__raw_writel(tmp, S3C2412_PWRCFG);
return 0;
}
-Index: linux-2.6.28/arch/arm/mach-s3c2412/s3c2412.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2412/s3c2412.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2412/s3c2412.c 2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/mach-s3c2412/s3c2412.c
++++ b/arch/arm/mach-s3c2412/s3c2412.c
@@ -16,6 +16,7 @@
#include <linux/list.h>
#include <linux/timer.h>
#ifndef CONFIG_CPU_S3C2412_ONLY
void __iomem *s3c24xx_va_gpio2 = S3C24XX_VA_GPIO;
-@@ -136,7 +140,7 @@ static void s3c2412_hard_reset(void)
+@@ -136,7 +140,7 @@
* machine specific initialisation.
*/
{
/* move base of IO */
-@@ -153,20 +157,25 @@ void __init s3c2412_map_io(struct map_de
+@@ -153,20 +157,25 @@
/* register our io-tables */
iotable_init(s3c2412_iodesc, ARRAY_SIZE(s3c2412_iodesc));
clk_mpll.rate = fclk;
-@@ -183,11 +192,17 @@ void __init s3c2412_init_clocks(int xtal
+@@ -183,11 +192,17 @@
printk("S3C2412: core %ld.%03ld MHz, memory %ld.%03ld MHz, peripheral %ld.%03ld MHz\n",
print_mhz(fclk), print_mhz(hclk), print_mhz(pclk));
s3c2412_baseclk_add();
}
-@@ -216,5 +231,8 @@ int __init s3c2412_init(void)
+@@ -216,5 +231,8 @@
{
printk("S3C2412: Initialising architecture\n");
+
return sysdev_register(&s3c2412_sysdev);
}
-Index: linux-2.6.28/arch/arm/mach-s3c2440/camera/bits.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c2440/camera/bits.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c2440/camera/bits.h
@@ -0,0 +1,48 @@
+/*
+ * Copyright (C) Samsung Electroincs 2003
+#define BIT31 0x80000000
+
+#endif
-Index: linux-2.6.28/arch/arm/mach-s3c2440/camera/camif.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c2440/camera/camif.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c2440/camera/camif.c
@@ -0,0 +1,1047 @@
+/*
+ * Copyright (C) 2004 Samsung Electronics
+ * c-set-style: "K&R"
+ * End:
+ */
-Index: linux-2.6.28/arch/arm/mach-s3c2440/camera/camif_fsm.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c2440/camera/camif_fsm.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c2440/camera/camif_fsm.c
@@ -0,0 +1,432 @@
+/*
+ Copyright (C) 2004 Samsung Electronics
+ * c-basic-offset: 8
+ * End:
+ */
-Index: linux-2.6.28/arch/arm/mach-s3c2440/camera/camif.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c2440/camera/camif.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c2440/camera/camif.h
@@ -0,0 +1,304 @@
+/*
+ FIMC2.0 Camera Header File
+ * c-set-style: "K&R"
+ * End:
+ */
-Index: linux-2.6.28/arch/arm/mach-s3c2440/camera/cam_reg.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c2440/camera/cam_reg.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c2440/camera/cam_reg.h
@@ -0,0 +1,234 @@
+ /*----------------------------------------------------------
+ * (C) 2004 Samsung Electronics
+
+
+#endif /* S3C2440_CAMER_H */
-Index: linux-2.6.28/arch/arm/mach-s3c2440/camera/imgsensor.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c2440/camera/imgsensor.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c2440/camera/imgsensor.c
@@ -0,0 +1,250 @@
+/*
+ * Copyright (C) 2004 Samsung Electronics
+ * c-basic-offset: 8
+ * End:
+ */
-Index: linux-2.6.28/arch/arm/mach-s3c2440/camera/Kconfig
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c2440/camera/Kconfig 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c2440/camera/Kconfig
@@ -0,0 +1,7 @@
+
+config S3C2440_CAMERA
+ help
+ Camera driver for S3C2440 camera unit
+
-Index: linux-2.6.28/arch/arm/mach-s3c2440/camera/Makefile
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c2440/camera/Makefile 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c2440/camera/Makefile
@@ -0,0 +1,8 @@
+obj-$(CONFIG_S3C2440_CAMERA) += \
+ videodev.o \
+ camif_fsm.o \
+ qt-driver.o
+
-Index: linux-2.6.28/arch/arm/mach-s3c2440/camera/miscdevice.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c2440/camera/miscdevice.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c2440/camera/miscdevice.h
@@ -0,0 +1,18 @@
+
+ /*----------------------------------------------------------
+
+
+#endif
-Index: linux-2.6.28/arch/arm/mach-s3c2440/camera/qt-driver.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c2440/camera/qt-driver.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c2440/camera/qt-driver.c
@@ -0,0 +1,172 @@
+/*
+ * SW.LEE <hitchcar@samsung.com>
+ return c;
+}
+
-Index: linux-2.6.28/arch/arm/mach-s3c2440/camera/qt.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c2440/camera/qt.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c2440/camera/qt.h
@@ -0,0 +1,18 @@
+/*
+ * SW.LEE <hitchcar@samsung.com>
+
+#endif
+
-Index: linux-2.6.28/arch/arm/mach-s3c2440/camera/s5x532.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c2440/camera/s5x532.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c2440/camera/s5x532.h
@@ -0,0 +1,143 @@
+/*
+ * 2004 (C) Samsung Electronics
+#endif
+
+
-Index: linux-2.6.28/arch/arm/mach-s3c2440/camera/s5x532_rev36.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c2440/camera/s5x532_rev36.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c2440/camera/s5x532_rev36.h
@@ -0,0 +1,208 @@
+/*
+ * 2004 (C) Samsung Electronics
+#endif
+
+
-Index: linux-2.6.28/arch/arm/mach-s3c2440/camera/sensor.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c2440/camera/sensor.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c2440/camera/sensor.h
@@ -0,0 +1,20 @@
+/*
+ *
+#define USER_EXIT BIT2
+
+#endif
-Index: linux-2.6.28/arch/arm/mach-s3c2440/camera/sxga.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c2440/camera/sxga.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c2440/camera/sxga.h
@@ -0,0 +1,504 @@
+/*
+ * 2004 (C) Samsung Electronics
+#endif
+
+
-Index: linux-2.6.28/arch/arm/mach-s3c2440/camera/userapp.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c2440/camera/userapp.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c2440/camera/userapp.h
@@ -0,0 +1,44 @@
+/*
+ Character Driver API Interface
+ * c-set-style: "K&R"
+ * End:
+ */
-Index: linux-2.6.28/arch/arm/mach-s3c2440/camera/v4l2_api.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c2440/camera/v4l2_api.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c2440/camera/v4l2_api.c
@@ -0,0 +1,311 @@
+/*
+ * . 2004-01-03: SW.LEE <hitchcar@sec.samsung.com>
+ * c-set-style: "K&R"
+ * End:
+ */
-Index: linux-2.6.28/arch/arm/mach-s3c2440/camera/videodev2.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c2440/camera/videodev2.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c2440/camera/videodev2.h
@@ -0,0 +1,938 @@
+#ifndef __LINUX_VIDEODEV2_H
+#define __LINUX_VIDEODEV2_H
+ * c-basic-offset: 8
+ * End:
+ */
-Index: linux-2.6.28/arch/arm/mach-s3c2440/camera/videodev.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c2440/camera/videodev.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c2440/camera/videodev.c
@@ -0,0 +1,332 @@
+/*
+ * Video capture interface for Linux Character Device Driver.
+ * c-basic-offset: 8
+ * End:
+ */
-Index: linux-2.6.28/arch/arm/mach-s3c2440/camera/videodev.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c2440/camera/videodev.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c2440/camera/videodev.h
@@ -0,0 +1,108 @@
+//#ifndef __LINUX_S3C_VIDEODEV_H
+//#define __LINUX_S3C_VIDEODEV_H
+ * c-basic-offset: 8
+ * End:
+ */
-Index: linux-2.6.28/arch/arm/mach-s3c2440/camera/video-driver.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c2440/camera/video-driver.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c2440/camera/video-driver.c
@@ -0,0 +1,624 @@
+/*
+ Copyright (C) 2004 Samsung Electronics
+ * c-basic-offset: 8
+ * End:
+ */
-Index: linux-2.6.28/arch/arm/mach-s3c2440/dma.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2440/dma.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2440/dma.c 2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/mach-s3c2440/dma.c
++++ b/arch/arm/mach-s3c2440/dma.c
@@ -25,12 +25,12 @@
#include <plat/regs-serial.h>
static struct s3c24xx_dma_map __initdata s3c2440_dma_mappings[] = {
[DMACH_XD0] = {
-Index: linux-2.6.28/arch/arm/mach-s3c2440/fiq_c_isr.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c2440/fiq_c_isr.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c2440/fiq_c_isr.c
@@ -0,0 +1,321 @@
+/*
+ * Copyright 2007 Andy Green <andy@warmcat.com>
+
+module_init(sc32440_fiq_init);
+module_exit(sc32440_fiq_exit);
-Index: linux-2.6.28/arch/arm/mach-s3c2440/fiq_c_isr.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c2440/fiq_c_isr.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c2440/fiq_c_isr.h
@@ -0,0 +1,76 @@
+#ifndef _LINUX_FIQ_C_ISR_H
+#define _LINUX_FIQ_C_ISR_H
+}
+
+#endif /* _LINUX_FIQ_C_ISR_H */
-Index: linux-2.6.28/arch/arm/mach-s3c2440/Kconfig
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2440/Kconfig 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2440/Kconfig 2009-01-02 00:01:56.000000000 +0100
-@@ -22,12 +22,20 @@ config S3C2440_DMA
+--- a/arch/arm/mach-s3c2440/Kconfig
++++ b/arch/arm/mach-s3c2440/Kconfig
+@@ -22,12 +22,20 @@
help
Support for S3C2440 specific DMA code5A
select PM_SIMTEC if PM
select HAVE_PATA_PLATFORM
help
-@@ -37,6 +45,7 @@ config MACH_ANUBIS
+@@ -37,6 +45,7 @@
config MACH_OSIRIS
bool "Simtec IM2440D20 (OSIRIS) module"
select CPU_S3C2440
select PM_SIMTEC if PM
help
Say Y here if you are using the Simtec IM2440D20 module, also
-@@ -74,5 +83,30 @@ config MACH_AT2440EVB
+@@ -74,5 +83,30 @@
help
Say Y here if you are using the AT2440EVB development board
endmenu
+#source "arch/arm/mach-s3c2440/camera/Kconfig"
-Index: linux-2.6.28/arch/arm/mach-s3c2440/mach-anubis.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2440/mach-anubis.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2440/mach-anubis.c 2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/mach-s3c2440/mach-anubis.c
++++ b/arch/arm/mach-s3c2440/mach-anubis.c
@@ -39,7 +39,8 @@
#include <mach/regs-gpio.h>
#include <mach/regs-mem.h>
#include <linux/mtd/mtd.h>
#include <linux/mtd/nand.h>
-@@ -404,7 +405,7 @@ static struct platform_device *anubis_de
+@@ -404,7 +405,7 @@
&s3c_device_usb,
&s3c_device_wdt,
&s3c_device_adc,
&s3c_device_rtc,
&s3c_device_nand,
&anubis_device_ide0,
-@@ -468,6 +469,7 @@ static void __init anubis_map_io(void)
+@@ -468,6 +469,7 @@
static void __init anubis_init(void)
{
platform_add_devices(anubis_devices, ARRAY_SIZE(anubis_devices));
i2c_register_board_info(0, anubis_i2c_devs,
-Index: linux-2.6.28/arch/arm/mach-s3c2440/mach-at2440evb.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2440/mach-at2440evb.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2440/mach-at2440evb.c 2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/mach-s3c2440/mach-at2440evb.c
++++ b/arch/arm/mach-s3c2440/mach-at2440evb.c
@@ -35,7 +35,8 @@
#include <mach/regs-gpio.h>
#include <mach/regs-mem.h>
#include <linux/mtd/mtd.h>
#include <linux/mtd/nand.h>
-@@ -166,7 +167,7 @@ static struct platform_device *at2440evb
+@@ -166,7 +167,7 @@
&s3c_device_usb,
&s3c_device_wdt,
&s3c_device_adc,
&s3c_device_rtc,
&s3c_device_nand,
&at2440evb_device_eth,
-@@ -183,6 +184,7 @@ static void __init at2440evb_map_io(void
+@@ -183,6 +184,7 @@
static void __init at2440evb_init(void)
{
platform_add_devices(at2440evb_devices, ARRAY_SIZE(at2440evb_devices));
}
-Index: linux-2.6.28/arch/arm/mach-s3c2440/mach-gta02.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c2440/mach-gta02.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c2440/mach-gta02.c
@@ -0,0 +1,1778 @@
+/*
+ * linux/arch/arm/mach-s3c2440/mach-gta02.c
+ .init_machine = gta02_machine_init,
+ .timer = &s3c24xx_timer,
+MACHINE_END
-Index: linux-2.6.28/arch/arm/mach-s3c2440/mach-nexcoder.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2440/mach-nexcoder.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2440/mach-nexcoder.c 2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/mach-s3c2440/mach-nexcoder.c
++++ b/arch/arm/mach-s3c2440/mach-nexcoder.c
@@ -37,6 +37,7 @@
//#include <asm/debug-ll.h>
#include <mach/regs-gpio.h>
#include <plat/s3c2410.h>
#include <plat/s3c2440.h>
-@@ -107,7 +108,7 @@ static struct platform_device *nexcoder_
+@@ -107,7 +108,7 @@
&s3c_device_usb,
&s3c_device_lcd,
&s3c_device_wdt,
&s3c_device_iis,
&s3c_device_rtc,
&s3c_device_camif,
-@@ -142,6 +143,7 @@ static void __init nexcoder_map_io(void)
+@@ -142,6 +143,7 @@
static void __init nexcoder_init(void)
{
platform_add_devices(nexcoder_devices, ARRAY_SIZE(nexcoder_devices));
};
-Index: linux-2.6.28/arch/arm/mach-s3c2440/mach-osiris.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2440/mach-osiris.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2440/mach-osiris.c 2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/mach-s3c2440/mach-osiris.c
++++ b/arch/arm/mach-s3c2440/mach-osiris.c
@@ -37,7 +37,8 @@
#include <mach/regs-gpio.h>
#include <mach/regs-mem.h>
#include <linux/mtd/mtd.h>
#include <linux/mtd/nand.h>
-@@ -335,7 +336,7 @@ static struct i2c_board_info osiris_i2c_
+@@ -335,7 +336,7 @@
/* Standard Osiris devices */
static struct platform_device *osiris_devices[] __initdata = {
&s3c_device_wdt,
&s3c_device_nand,
&osiris_pcmcia,
-@@ -398,6 +399,8 @@ static void __init osiris_init(void)
+@@ -398,6 +399,8 @@
sysdev_class_register(&osiris_pm_sysclass);
sysdev_register(&osiris_pm_sysdev);
i2c_register_board_info(0, osiris_i2c_devs,
ARRAY_SIZE(osiris_i2c_devs));
-Index: linux-2.6.28/arch/arm/mach-s3c2440/mach-rx3715.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2440/mach-rx3715.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2440/mach-rx3715.c 2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/mach-s3c2440/mach-rx3715.c
++++ b/arch/arm/mach-s3c2440/mach-rx3715.c
@@ -42,7 +42,7 @@
#include <mach/regs-lcd.h>
#include <mach/fb.h>
#include <plat/clock.h>
-@@ -179,7 +179,7 @@ static struct platform_device *rx3715_de
+@@ -179,7 +179,7 @@
&s3c_device_usb,
&s3c_device_lcd,
&s3c_device_wdt,
&s3c_device_iis,
&s3c_device_nand,
};
-@@ -203,7 +203,7 @@ static void __init rx3715_init_machine(v
+@@ -203,7 +203,7 @@
#ifdef CONFIG_PM_H1940
memcpy(phys_to_virt(H1940_SUSPEND_RESUMEAT), h1940_pm_return, 1024);
#endif
s3c24xx_fb_set_platdata(&rx3715_fb_info);
platform_add_devices(rx3715_devices, ARRAY_SIZE(rx3715_devices));
-Index: linux-2.6.28/arch/arm/mach-s3c2440/mach-smdk2440.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2440/mach-smdk2440.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2440/mach-smdk2440.c 2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/mach-s3c2440/mach-smdk2440.c
++++ b/arch/arm/mach-s3c2440/mach-smdk2440.c
@@ -37,6 +37,7 @@
#include <mach/idle.h>
#include <plat/s3c2410.h>
#include <plat/s3c2440.h>
-@@ -152,7 +153,7 @@ static struct platform_device *smdk2440_
+@@ -152,7 +153,7 @@
&s3c_device_usb,
&s3c_device_lcd,
&s3c_device_wdt,
&s3c_device_iis,
};
-@@ -166,6 +167,7 @@ static void __init smdk2440_map_io(void)
+@@ -166,6 +167,7 @@
static void __init smdk2440_machine_init(void)
{
s3c24xx_fb_set_platdata(&smdk2440_fb_info);
platform_add_devices(smdk2440_devices, ARRAY_SIZE(smdk2440_devices));
smdk_machine_init();
-Index: linux-2.6.28/arch/arm/mach-s3c2440/Makefile
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2440/Makefile 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2440/Makefile 2009-01-02 00:01:56.000000000 +0100
-@@ -13,6 +13,7 @@ obj-$(CONFIG_CPU_S3C2440) += s3c2440.o d
+--- a/arch/arm/mach-s3c2440/Makefile
++++ b/arch/arm/mach-s3c2440/Makefile
+@@ -13,6 +13,7 @@
obj-$(CONFIG_CPU_S3C2440) += irq.o
obj-$(CONFIG_CPU_S3C2440) += clock.o
obj-$(CONFIG_S3C2440_DMA) += dma.o
# Machine support
-@@ -22,3 +23,6 @@ obj-$(CONFIG_MACH_RX3715) += mach-rx3715
+@@ -22,3 +23,6 @@
obj-$(CONFIG_ARCH_S3C2440) += mach-smdk2440.o
obj-$(CONFIG_MACH_NEXCODER_2440) += mach-nexcoder.o
obj-$(CONFIG_MACH_AT2440EVB) += mach-at2440evb.o
+obj-$(CONFIG_MACH_HXD8) += mach-hxd8.o
+obj-$(CONFIG_MACH_NEO1973_GTA02) += mach-gta02.o
+
-Index: linux-2.6.28/arch/arm/mach-s3c2440/s3c2440.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2440/s3c2440.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2440/s3c2440.c 2009-01-02 00:01:56.000000000 +0100
-@@ -46,6 +46,9 @@ int __init s3c2440_init(void)
+--- a/arch/arm/mach-s3c2440/s3c2440.c
++++ b/arch/arm/mach-s3c2440/s3c2440.c
+@@ -46,6 +46,9 @@
s3c_device_wdt.resource[1].start = IRQ_S3C2440_WDT;
s3c_device_wdt.resource[1].end = IRQ_S3C2440_WDT;
/* register our system device for everything else */
return sysdev_register(&s3c2440_sysdev);
-Index: linux-2.6.28/arch/arm/mach-s3c2442/Kconfig
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2442/Kconfig 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2442/Kconfig 2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/mach-s3c2442/Kconfig
++++ b/arch/arm/mach-s3c2442/Kconfig
@@ -6,10 +6,11 @@
config CPU_S3C2442
select CPU_S3C244X
select CPU_LLSERIAL_S3C2440
help
-Index: linux-2.6.28/arch/arm/mach-s3c2442/s3c2442.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2442/s3c2442.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2442/s3c2442.c 2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/mach-s3c2442/s3c2442.c
++++ b/arch/arm/mach-s3c2442/s3c2442.c
@@ -21,6 +21,7 @@
#include <plat/s3c2442.h>
static struct sys_device s3c2442_sysdev = {
.cls = &s3c2442_sysclass,
-@@ -30,5 +31,8 @@ int __init s3c2442_init(void)
+@@ -30,5 +31,8 @@
{
printk("S3C2442: Initialising architecture\n");
+
return sysdev_register(&s3c2442_sysdev);
}
-Index: linux-2.6.28/arch/arm/mach-s3c2443/clock.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2443/clock.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2443/clock.c 2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/mach-s3c2443/clock.c
++++ b/arch/arm/mach-s3c2443/clock.c
@@ -39,6 +39,8 @@
#include <mach/regs-s3c2443-clock.h>
#include <plat/s3c2443.h>
#include <plat/clock.h>
#include <plat/cpu.h>
-@@ -145,12 +147,6 @@ static unsigned long s3c2443_roundrate_c
+@@ -145,12 +147,6 @@
/* clock selections */
static struct clk clk_mpllref = {
.name = "mpllref",
.parent = &clk_xtal,
-@@ -165,14 +161,6 @@ static struct clk clk_mpll = {
+@@ -165,14 +161,6 @@
};
#endif
static struct clk clk_i2s_ext = {
.name = "i2s-ext",
.id = -1,
-@@ -1011,22 +999,20 @@ static struct clk *clks[] __initdata = {
+@@ -1011,22 +999,20 @@
&clk_prediv,
};
pll = s3c2443_get_mpll(mpllcon, xtal);
clk_msysclk.rate = pll;
-@@ -1036,13 +1022,29 @@ void __init s3c2443_init_clocks(int xtal
+@@ -1036,13 +1022,29 @@
hclk /= s3c2443_get_hdiv(clkdiv0);
pclk = hclk / ((clkdiv0 & S3C2443_CLKDIV0_HALF_PCLK) ? 2 : 1);
s3c2443_clk_initparents();
for (ptr = 0; ptr < ARRAY_SIZE(clks); ptr++) {
-@@ -1056,7 +1058,7 @@ void __init s3c2443_init_clocks(int xtal
+@@ -1056,7 +1058,7 @@
}
clk_epll.rate = s3c2443_get_epll(epllcon, xtal);
clk_usb_bus.parent = &clk_usb_bus_host;
/* ensure usb bus clock is within correct rate of 48MHz */
-@@ -1105,4 +1107,6 @@ void __init s3c2443_init_clocks(int xtal
+@@ -1105,4 +1107,6 @@
(clkp->enable)(clkp, 0);
}
+
+ s3c_pwmclk_init();
}
-Index: linux-2.6.28/arch/arm/mach-s3c2443/dma.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2443/dma.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2443/dma.c 2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/mach-s3c2443/dma.c
++++ b/arch/arm/mach-s3c2443/dma.c
@@ -26,12 +26,12 @@
#include <plat/regs-serial.h>
#define MAP(x) { \
[0] = (x) | DMA_CH_VALID, \
-Index: linux-2.6.28/arch/arm/mach-s3c2443/Kconfig
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2443/Kconfig 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2443/Kconfig 2009-01-02 00:01:56.000000000 +0100
-@@ -24,6 +24,7 @@ config MACH_SMDK2443
+--- a/arch/arm/mach-s3c2443/Kconfig
++++ b/arch/arm/mach-s3c2443/Kconfig
+@@ -24,6 +24,7 @@
bool "SMDK2443"
select CPU_S3C2443
select MACH_SMDK
help
Say Y here if you are using an SMDK2443
-Index: linux-2.6.28/arch/arm/mach-s3c2443/mach-smdk2443.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2443/mach-smdk2443.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2443/mach-smdk2443.c 2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/mach-s3c2443/mach-smdk2443.c
++++ b/arch/arm/mach-s3c2443/mach-smdk2443.c
@@ -37,6 +37,7 @@
#include <mach/idle.h>
#include <plat/s3c2410.h>
#include <plat/s3c2440.h>
-@@ -103,8 +104,8 @@ static struct s3c2410_uartcfg smdk2443_u
+@@ -103,8 +104,8 @@
static struct platform_device *smdk2443_devices[] __initdata = {
&s3c_device_wdt,
};
static void __init smdk2443_map_io(void)
-@@ -116,6 +117,7 @@ static void __init smdk2443_map_io(void)
+@@ -116,6 +117,7 @@
static void __init smdk2443_machine_init(void)
{
platform_add_devices(smdk2443_devices, ARRAY_SIZE(smdk2443_devices));
smdk_machine_init();
}
-Index: linux-2.6.28/arch/arm/mach-s3c2443/s3c2443.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/mach-s3c2443/s3c2443.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mach-s3c2443/s3c2443.c 2009-01-02 00:01:56.000000000 +0100
-@@ -81,10 +81,9 @@ void __init s3c2443_init_uarts(struct s3
+--- a/arch/arm/mach-s3c2443/s3c2443.c
++++ b/arch/arm/mach-s3c2443/s3c2443.c
+@@ -81,10 +81,9 @@
* machine specific initialisation.
*/
}
/* need to register class before we actually register the device, and
-Index: linux-2.6.28/arch/arm/mach-s3c24a0/include/mach/debug-macro.S
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c24a0/include/mach/debug-macro.S 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c24a0/include/mach/debug-macro.S
@@ -0,0 +1,28 @@
+/* arch/arm/mach-s3c2410/include/mach/debug-macro.S
+ *
+ */
+
+#include <plat/debug-macro.S>
-Index: linux-2.6.28/arch/arm/mach-s3c24a0/include/mach/io.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c24a0/include/mach/io.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c24a0/include/mach/io.h
@@ -0,0 +1,16 @@
+/* arch/arm/mach-s3c24a0/include/mach/io.h
+ *
+#define __mem_pci(a) (a)
+
+#endif
-Index: linux-2.6.28/arch/arm/mach-s3c24a0/include/mach/irqs.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c24a0/include/mach/irqs.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c24a0/include/mach/irqs.h
@@ -0,0 +1,117 @@
+/* linux/arch/arm/mach-s3c24a0/include/mach/irqs.h
+ *
+#define NR_IRQS (IRQ_DMA3+1)
+
+#endif /* __ASM_ARCH_24A0_IRQS_H */
-Index: linux-2.6.28/arch/arm/mach-s3c24a0/include/mach/map.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c24a0/include/mach/map.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c24a0/include/mach/map.h
@@ -0,0 +1,85 @@
+/* linux/arch/arm/mach-s3c24a0/include/mach/map.h
+ *
+#define S3C_PA_IIC S3C24A0_PA_IIC
+
+#endif /* __ASM_ARCH_24A0_MAP_H */
-Index: linux-2.6.28/arch/arm/mach-s3c24a0/include/mach/memory.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c24a0/include/mach/memory.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c24a0/include/mach/memory.h
@@ -0,0 +1,19 @@
+/* linux/arch/arm/mach-s3c24a0/include/mach/memory.h
+ * from linux/include/asm-arm/arch-rpc/memory.h
+#define __bus_to_virt(x) __phys_to_virt(x)
+
+#endif
-Index: linux-2.6.28/arch/arm/mach-s3c24a0/include/mach/regs-clock.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c24a0/include/mach/regs-clock.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c24a0/include/mach/regs-clock.h
@@ -0,0 +1,88 @@
+/* linux/arch/arm/mach-s3c24a0/include/mach/regs-clock.h
+ *
+#define S3C2410_CLKSLOW_GET_SLOWVAL(x) (0x1)
+
+#endif /* __ASM_ARCH_24A0_REGS_CLOCK_H */
-Index: linux-2.6.28/arch/arm/mach-s3c24a0/include/mach/regs-irq.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c24a0/include/mach/regs-irq.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c24a0/include/mach/regs-irq.h
@@ -0,0 +1,25 @@
+/* linux/arch/arm/mach-s3c24a0/include/mach/regs-irq.h
+ *
+
+
+
-Index: linux-2.6.28/arch/arm/mach-s3c24a0/include/mach/system.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c24a0/include/mach/system.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c24a0/include/mach/system.h
@@ -0,0 +1,25 @@
+/* linux/arch/arm/mach-s3c24a0/include/mach/system.h
+ *
+void (*s3c24xx_reset_hook)(void);
+
+#include <asm/plat-s3c24xx/system-reset.h>
-Index: linux-2.6.28/arch/arm/mach-s3c24a0/include/mach/tick.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c24a0/include/mach/tick.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c24a0/include/mach/tick.h
@@ -0,0 +1,15 @@
+/* linux/arch/arm/mach-s3c24a0/include/mach/tick.h
+ *
+{
+ return __raw_readl(S3C2410_SUBSRCPND) & SUBSRC_TIMER4;
+}
-Index: linux-2.6.28/arch/arm/mach-s3c24a0/include/mach/timex.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c24a0/include/mach/timex.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c24a0/include/mach/timex.h
@@ -0,0 +1,18 @@
+/* linux/arch/arm/mach-s3c24a0/include/mach/timex.h
+ *
+#define CLOCK_TICK_RATE 12000000
+
+#endif /* __ASM_ARCH_TIMEX_H */
-Index: linux-2.6.28/arch/arm/mach-s3c24a0/include/mach/vmalloc.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c24a0/include/mach/vmalloc.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c24a0/include/mach/vmalloc.h
@@ -0,0 +1,17 @@
+/* linux/include/asm-arm/arch-s3c24ao/vmalloc.h
+ *
+#define VMALLOC_END (0xE0000000)
+
+#endif /* __ASM_ARCH_VMALLOC_H */
-Index: linux-2.6.28/arch/arm/mach-s3c6400/include/mach/debug-macro.S
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c6400/include/mach/debug-macro.S 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c6400/include/mach/debug-macro.S
@@ -0,0 +1,39 @@
+/* arch/arm/mach-s3c6400/include/mach/debug-macro.S
+ *
+ */
+
+#include <plat/debug-macro.S>
-Index: linux-2.6.28/arch/arm/mach-s3c6400/include/mach/dma.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c6400/include/mach/dma.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c6400/include/mach/dma.h
@@ -0,0 +1,16 @@
+/* linux/arch/arm/mach-s3c6400/include/mach/dma.h
+ *
+/* currently nothing here, placeholder */
+
+#endif /* __ASM_ARCH_IRQ_H */
-Index: linux-2.6.28/arch/arm/mach-s3c6400/include/mach/entry-macro.S
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c6400/include/mach/entry-macro.S 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c6400/include/mach/entry-macro.S
@@ -0,0 +1,44 @@
+/* arch/arm/mach-s3c6400/include/mach/entry-macro.S
+ *
+ clzne \irqstat, \irqstat
+ subne \irqnr, \irqnr, \irqstat
+ .endm
-Index: linux-2.6.28/arch/arm/mach-s3c6400/include/mach/gpio-core.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c6400/include/mach/gpio-core.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c6400/include/mach/gpio-core.h
@@ -0,0 +1,21 @@
+/* arch/arm/mach-s3c6400/include/mach/gpio-core.h
+ *
+#include <plat/gpio-core.h>
+
+#endif /* __ASM_ARCH_GPIO_CORE_H */
-Index: linux-2.6.28/arch/arm/mach-s3c6400/include/mach/gpio.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c6400/include/mach/gpio.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c6400/include/mach/gpio.h
@@ -0,0 +1,96 @@
+/* arch/arm/mach-s3c6400/include/mach/gpio.h
+ *
+#define ARCH_NR_GPIOS (S3C64XX_GPQ(S3C64XX_GPIO_Q_NR) + 1)
+
+#include <asm-generic/gpio.h>
-Index: linux-2.6.28/arch/arm/mach-s3c6400/include/mach/hardware.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c6400/include/mach/hardware.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c6400/include/mach/hardware.h
@@ -0,0 +1,16 @@
+/* linux/arch/arm/mach-s3c6400/include/mach/hardware.h
+ *
+/* currently nothing here, placeholder */
+
+#endif /* __ASM_ARCH_IRQ_H */
-Index: linux-2.6.28/arch/arm/mach-s3c6400/include/mach/irqs.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c6400/include/mach/irqs.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c6400/include/mach/irqs.h
@@ -0,0 +1,20 @@
+/* linux/arch/arm/mach-s3c6400/include/mach/irqs.h
+ *
+#include <plat/irqs.h>
+
+#endif /* __ASM_ARCH_IRQ_H */
-Index: linux-2.6.28/arch/arm/mach-s3c6400/include/mach/map.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c6400/include/mach/map.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c6400/include/mach/map.h
@@ -0,0 +1,71 @@
+/* linux/arch/arm/mach-s3c6400/include/mach/map.h
+ *
+#define S3C_PA_FB S3C64XX_PA_FB
+
+#endif /* __ASM_ARCH_6400_MAP_H */
-Index: linux-2.6.28/arch/arm/mach-s3c6400/include/mach/memory.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c6400/include/mach/memory.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c6400/include/mach/memory.h
@@ -0,0 +1,21 @@
+/* arch/arm/mach-s3c6400/include/mach/memory.h
+ *
+#define __bus_to_virt(x) __phys_to_virt(x)
+
+#endif
-Index: linux-2.6.28/arch/arm/mach-s3c6400/include/mach/pwm-clock.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c6400/include/mach/pwm-clock.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c6400/include/mach/pwm-clock.h
@@ -0,0 +1,56 @@
+/* linux/arch/arm/mach-s3c6400/include/mach/pwm-clock.h
+ *
+}
+
+#define S3C_TCFG1_MUX_TCLK S3C64XX_TCFG1_MUX_TCLK
-Index: linux-2.6.28/arch/arm/mach-s3c6400/include/mach/regs-clock.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c6400/include/mach/regs-clock.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c6400/include/mach/regs-clock.h
@@ -0,0 +1,16 @@
+/* linux/arch/arm/mach-s3c6400/include/mach/regs-clock.h
+ *
+
+#include <plat/regs-clock.h>
+
-Index: linux-2.6.28/arch/arm/mach-s3c6400/include/mach/regs-fb.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c6400/include/mach/regs-fb.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c6400/include/mach/regs-fb.h
@@ -0,0 +1,259 @@
+/* arch/arm/mach-s3c6400/include/mach/regs-fb.h
+ *
+ * 1110 -none- -none- -none- -none- -none-
+ * 1111 -none- -none- -none- -none- -none-
+*/
-Index: linux-2.6.28/arch/arm/mach-s3c6400/include/mach/regs-irq.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c6400/include/mach/regs-irq.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c6400/include/mach/regs-irq.h
@@ -0,0 +1,20 @@
+/* linux/arch/arm/mach-s3c6400/include/mach/regs-irq.h
+ *
+#include <asm/hardware/vic.h>
+
+#endif /* __ASM_ARCH_6400_REGS_IRQ_H */
-Index: linux-2.6.28/arch/arm/mach-s3c6400/include/mach/system.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c6400/include/mach/system.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c6400/include/mach/system.h
@@ -0,0 +1,44 @@
+/* linux/arch/arm/mach-s3c6400/include/mach/system.h
+ *
+}
+
+#endif /* __ASM_ARCH_IRQ_H */
-Index: linux-2.6.28/arch/arm/mach-s3c6400/include/mach/tick.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c6400/include/mach/tick.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c6400/include/mach/tick.h
@@ -0,0 +1,29 @@
+/* linux/arch/arm/mach-s3c6400/include/mach/tick.h
+ *
+#define TICK_MAX (0xffffffff)
+
+#endif /* __ASM_ARCH_6400_TICK_H */
-Index: linux-2.6.28/arch/arm/mach-s3c6400/include/mach/uncompress.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c6400/include/mach/uncompress.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c6400/include/mach/uncompress.h
@@ -0,0 +1,28 @@
+/* arch/arm/mach-s3c6400/include/mach/uncompress.h
+ *
+}
+
+#endif /* __ASM_ARCH_UNCOMPRESS_H */
-Index: linux-2.6.28/arch/arm/mach-s3c6400/Kconfig
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c6400/Kconfig 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c6400/Kconfig
@@ -0,0 +1,8 @@
+# arch/arm/mach-s3c6400/Kconfig
+#
+# Licensed under GPLv2
+
+# Currently nothing here, this will be added later
-Index: linux-2.6.28/arch/arm/mach-s3c6400/Makefile
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c6400/Makefile 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c6400/Makefile
@@ -0,0 +1,15 @@
+# arch/arm/mach-s3c6400/Makefile
+#
+# Core support for S3C6400 system
+
+obj-n += blank.o
-Index: linux-2.6.28/arch/arm/mach-s3c6400/Makefile.boot
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c6400/Makefile.boot 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c6400/Makefile.boot
@@ -0,0 +1,2 @@
+ zreladdr-y := 0x50008000
+params_phys-y := 0x50000100
-Index: linux-2.6.28/arch/arm/mach-s3c6410/cpu.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c6410/cpu.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c6410/cpu.c
@@ -0,0 +1,101 @@
+/* linux/arch/arm/mach-s3c6410/cpu.c
+ *
+
+ return sysdev_register(&s3c6410_sysdev);
+}
-Index: linux-2.6.28/arch/arm/mach-s3c6410/include/mach/om-gta03.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c6410/include/mach/om-gta03.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c6410/include/mach/om-gta03.h
@@ -0,0 +1,91 @@
+/*
+ * GTA03 GPIO Mappings
+#define GTA03_IRQ_NONKEYWAKE S3C_EINT(12)
+
+#endif /* _OM_GTA03_H */
-Index: linux-2.6.28/arch/arm/mach-s3c6410/Kconfig
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c6410/Kconfig 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c6410/Kconfig
@@ -0,0 +1,80 @@
+# arch/arm/mach-s3c6410/Kconfig
+#
+ help
+ Machine support for the Openmoko GTA03 Phone
+
-Index: linux-2.6.28/arch/arm/mach-s3c6410/mach-om-gta03.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c6410/mach-om-gta03.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c6410/mach-om-gta03.c
@@ -0,0 +1,654 @@
+/* linux/arch/arm/mach-s3c6410/mach-om_gta03.c
+ *
+ .timer = &s3c24xx_timer,
+MACHINE_END
+
-Index: linux-2.6.28/arch/arm/mach-s3c6410/mach-smdk6410.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c6410/mach-smdk6410.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c6410/mach-smdk6410.c
@@ -0,0 +1,205 @@
+/* linux/arch/arm/mach-s3c6410/mach-smdk6410.c
+ *
+ .init_machine = smdk6410_machine_init,
+ .timer = &s3c24xx_timer,
+MACHINE_END
-Index: linux-2.6.28/arch/arm/mach-s3c6410/Makefile
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c6410/Makefile 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c6410/Makefile
@@ -0,0 +1,26 @@
+# arch/arm/plat-s3c6410/Makefile
+#
+obj-$(CONFIG_MACH_OPENMOKO_GTA03) += mach-om-gta03.o \
+ om-gta03-features.o
+
-Index: linux-2.6.28/arch/arm/mach-s3c6410/om-gta03-features.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c6410/om-gta03-features.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c6410/om-gta03-features.c
@@ -0,0 +1,344 @@
+/*
+ * Support for features of Openmoko GTA03
+MODULE_LICENSE("GPL");
+MODULE_AUTHOR("Andy Green <andy@openmoko.com>");
+MODULE_DESCRIPTION("Openmoko GTA03 Feature Driver");
-Index: linux-2.6.28/arch/arm/mach-s3c6410/setup-sdhci.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/mach-s3c6410/setup-sdhci.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/mach-s3c6410/setup-sdhci.c
@@ -0,0 +1,103 @@
+/* linux/arch/arm/mach-s3c6410/setup-sdhci.c
+ *
+// s3c_gpio_setpull(S3C64XX_GPG(6), S3C_GPIO_PULL_UP);
+// s3c_gpio_cfgpin(S3C64XX_GPG(6), S3C_GPIO_SFN(3));
+}
-Index: linux-2.6.28/arch/arm/Makefile
-===================================================================
---- linux-2.6.28.orig/arch/arm/Makefile 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/Makefile 2009-01-02 00:01:56.000000000 +0100
-@@ -121,7 +121,10 @@ endif
+--- a/arch/arm/Makefile
++++ b/arch/arm/Makefile
+@@ -121,7 +121,10 @@
machine-$(CONFIG_ARCH_OMAP3) := omap2
plat-$(CONFIG_ARCH_OMAP) := omap
machine-$(CONFIG_ARCH_S3C2410) := s3c2410 s3c2400 s3c2412 s3c2440 s3c2442 s3c2443
machine-$(CONFIG_ARCH_LH7A40X) := lh7a40x
machine-$(CONFIG_ARCH_VERSATILE) := versatile
machine-$(CONFIG_ARCH_IMX) := imx
-Index: linux-2.6.28/arch/arm/mm/Kconfig
-===================================================================
---- linux-2.6.28.orig/arch/arm/mm/Kconfig 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/mm/Kconfig 2009-01-02 00:01:56.000000000 +0100
-@@ -183,14 +183,14 @@ config CPU_ARM926T
+--- a/arch/arm/mm/Kconfig
++++ b/arch/arm/mm/Kconfig
+@@ -183,14 +183,14 @@
depends on ARCH_INTEGRATOR || ARCH_VERSATILE_PB || \
MACH_VERSATILE_AB || ARCH_OMAP730 || \
ARCH_OMAP16XX || MACH_REALVIEW_EB || \
ARCH_AT91SAM9260 || ARCH_AT91SAM9261 || \
ARCH_AT91SAM9263 || ARCH_AT91SAM9RL || \
ARCH_AT91SAM9G20 || ARCH_AT91CAP9 || \
-@@ -400,9 +400,10 @@ config CPU_FEROCEON_OLD_ID
+@@ -400,9 +400,10 @@
# ARMv6
config CPU_V6
bool "Support ARM V6 processor"
select CPU_32v6
select CPU_ABRT_EV6
select CPU_PABRT_NOIFAR
-Index: linux-2.6.28/arch/arm/plat-s3c/clock.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c/clock.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c/clock.c
@@ -0,0 +1,369 @@
+/* linux/arch/arm/plat-s3c24xx/clock.c
+ *
+ return 0;
+}
+
-Index: linux-2.6.28/arch/arm/plat-s3c/dev-fb.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c/dev-fb.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c/dev-fb.c
@@ -0,0 +1,72 @@
+/* linux/arch/arm/plat-s3c/dev-fb.c
+ *
+
+ s3c_device_fb.dev.platform_data = npd;
+}
-Index: linux-2.6.28/arch/arm/plat-s3c/dev-hsmmc1.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c/dev-hsmmc1.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c/dev-hsmmc1.c
@@ -0,0 +1,68 @@
+/* linux/arch/arm/plat-s3c/dev-hsmmc1.c
+ *
+ if (pd->cfg_card)
+ set->cfg_card = pd->cfg_card;
+}
-Index: linux-2.6.28/arch/arm/plat-s3c/dev-hsmmc.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c/dev-hsmmc.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c/dev-hsmmc.c
@@ -0,0 +1,68 @@
+/* linux/arch/arm/plat-s3c/dev-hsmmc.c
+ *
+ if (pd->cfg_card)
+ set->cfg_card = pd->cfg_card;
+}
-Index: linux-2.6.28/arch/arm/plat-s3c/dev-i2c0.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c/dev-i2c0.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c/dev-i2c0.c
@@ -0,0 +1,71 @@
+/* linux/arch/arm/plat-s3c/dev-i2c0.c
+ *
+
+ s3c_device_i2c0.dev.platform_data = npd;
+}
-Index: linux-2.6.28/arch/arm/plat-s3c/dev-i2c1.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c/dev-i2c1.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c/dev-i2c1.c
@@ -0,0 +1,68 @@
+/* linux/arch/arm/plat-s3c/dev-i2c1.c
+ *
+
+ s3c_device_i2c1.dev.platform_data = npd;
+}
-Index: linux-2.6.28/arch/arm/plat-s3c/gpio.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c/gpio.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c/gpio.c
@@ -0,0 +1,156 @@
+/* linux/arch/arm/plat-s3c/gpio.c
+ *
+ if (ret >= 0)
+ s3c_gpiolib_track(chip);
+}
-Index: linux-2.6.28/arch/arm/plat-s3c/gpio-config.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c/gpio-config.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c/gpio-config.c
@@ -0,0 +1,163 @@
+/* linux/arch/arm/plat-s3c/gpio-config.c
+ *
+ return (__force s3c_gpio_pull_t)pup;
+}
+#endif
-Index: linux-2.6.28/arch/arm/plat-s3c/include/mach/io.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c/include/mach/io.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c/include/mach/io.h
@@ -0,0 +1,18 @@
+/* arch/arm/plat-s3c/include/mach/io.h
+ *
+#define IO_SPACE_LIMIT (0xFFFFFFFF)
+
+#endif
-Index: linux-2.6.28/arch/arm/plat-s3c/include/mach/timex.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c/include/mach/timex.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c/include/mach/timex.h
@@ -0,0 +1,26 @@
+/* arch/arm/mach-s3c2410/include/mach/timex.h
+ *
+
+
+#endif /* __ASM_ARCH_TIMEX_H */
-Index: linux-2.6.28/arch/arm/plat-s3c/include/mach/vmalloc.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c/include/mach/vmalloc.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c/include/mach/vmalloc.h
@@ -0,0 +1,20 @@
+/* arch/arm/plat-s3c/include/mach/vmalloc.h
+ *
+#define VMALLOC_END (0xE0000000)
+
+#endif /* __ASM_ARCH_VMALLOC_H */
-Index: linux-2.6.28/arch/arm/plat-s3c/include/plat/clock.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c/include/plat/clock.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c/include/plat/clock.h
@@ -0,0 +1,88 @@
+/* linux/arch/arm/plat-s3c/include/plat/clock.h
+ *
+
+extern void s3c_pwmclk_init(void);
+
-Index: linux-2.6.28/arch/arm/plat-s3c/include/plat/cpu-freq.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c/include/plat/cpu-freq.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c/include/plat/cpu-freq.h
@@ -0,0 +1,94 @@
+/* arch/arm/plat-s3c/include/plat/cpu-freq.h
+ *
+ return 0;
+}
+#endif /* CONFIG_CPU_FREQ_S3C */
-Index: linux-2.6.28/arch/arm/plat-s3c/include/plat/cpu.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c/include/plat/cpu.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c/include/plat/cpu.h
@@ -0,0 +1,74 @@
+/* linux/arch/arm/plat-s3c/include/plat/cpu.h
+ *
+extern struct sysdev_class s3c6410_sysclass;
+extern struct sysdev_class s3c64xx_sysclass;
+
-Index: linux-2.6.28/arch/arm/plat-s3c/include/plat/debug-macro.S
-===================================================================
---- linux-2.6.28.orig/arch/arm/plat-s3c/include/plat/debug-macro.S 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/plat-s3c/include/plat/debug-macro.S 2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/plat-s3c/include/plat/debug-macro.S
++++ b/arch/arm/plat-s3c/include/plat/debug-macro.S
@@ -20,7 +20,7 @@
.endm
#endif
.macro fifo_full_s3c2440 rd, rx
-Index: linux-2.6.28/arch/arm/plat-s3c/include/plat/devs.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c/include/plat/devs.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c/include/plat/devs.h
@@ -0,0 +1,55 @@
+/* linux/include/asm-arm/plat-s3c24xx/devs.h
+ *
+
+extern struct platform_device s3c_device_camif;
+#endif
-Index: linux-2.6.28/arch/arm/plat-s3c/include/plat/fb.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c/include/plat/fb.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c/include/plat/fb.h
@@ -0,0 +1,73 @@
+/* linux/arch/arm/plat-s3c/include/plat/fb.h
+ *
+extern void s3c64xx_fb_gpio_setup_24bpp(void);
+
+#endif /* __PLAT_S3C_FB_H */
-Index: linux-2.6.28/arch/arm/plat-s3c/include/plat/gpio-cfg.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c/include/plat/gpio-cfg.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c/include/plat/gpio-cfg.h
@@ -0,0 +1,110 @@
+/* linux/arch/arm/plat-s3c/include/plat/gpio-cfg.h
+ *
+extern s3c_gpio_pull_t s3c_gpio_getpull(unsigned int pin);
+
+#endif /* __PLAT_GPIO_CFG_H */
-Index: linux-2.6.28/arch/arm/plat-s3c/include/plat/gpio-cfg-helpers.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c/include/plat/gpio-cfg-helpers.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c/include/plat/gpio-cfg-helpers.h
@@ -0,0 +1,176 @@
+/* linux/arch/arm/plat-s3c/include/plat/gpio-cfg-helper.h
+ *
+
+#endif /* __PLAT_GPIO_CFG_HELPERS_H */
+
-Index: linux-2.6.28/arch/arm/plat-s3c/include/plat/gpio-core.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c/include/plat/gpio-core.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c/include/plat/gpio-core.h
@@ -0,0 +1,107 @@
+/* linux/arch/arm/plat-s3c/include/plat/gpio-core.h
+ *
+#define __gpio_pm(x) NULL
+
+#endif /* CONFIG_PM */
-Index: linux-2.6.28/arch/arm/plat-s3c/include/plat/iic-core.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c/include/plat/iic-core.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c/include/plat/iic-core.h
@@ -0,0 +1,35 @@
+/* arch/arm/mach-s3c2410/include/mach/iic-core.h
+ *
+}
+
+#endif /* __ASM_ARCH_IIC_H */
-Index: linux-2.6.28/arch/arm/plat-s3c/include/plat/iic.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c/include/plat/iic.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c/include/plat/iic.h
@@ -0,0 +1,57 @@
+/* arch/arm/mach-s3c2410/include/mach/iic.h
+ *
+extern void s3c_i2c1_cfg_gpio(struct platform_device *dev);
+
+#endif /* __ASM_ARCH_IIC_H */
-Index: linux-2.6.28/arch/arm/plat-s3c/include/plat/map-base.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c/include/plat/map-base.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c/include/plat/map-base.h
@@ -0,0 +1,40 @@
+/* linux/include/asm-arm/plat-s3c/map.h
+ *
+#define S3C_VA_UART S3C_ADDR(0x01000000) /* UART */
+
+#endif /* __ASM_PLAT_MAP_H */
-Index: linux-2.6.28/arch/arm/plat-s3c/include/plat/map.h
-===================================================================
---- linux-2.6.28.orig/arch/arm/plat-s3c/include/plat/map.h 2008-12-25 00:26:37.000000000 +0100
-+++ /dev/null 1970-01-01 00:00:00.000000000 +0000
+--- a/arch/arm/plat-s3c/include/plat/map.h
++++ /dev/null
@@ -1,40 +0,0 @@
-/* linux/include/asm-arm/plat-s3c/map.h
- *
-#define S3C_VA_UART S3C_ADDR(0x01000000) /* UART */
-
-#endif /* __ASM_PLAT_MAP_H */
-Index: linux-2.6.28/arch/arm/plat-s3c/include/plat/nand.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c/include/plat/nand.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c/include/plat/nand.h
@@ -0,0 +1,56 @@
+/* arch/arm/mach-s3c2410/include/mach/nand.h
+ *
+ int chip);
+};
+
-Index: linux-2.6.28/arch/arm/plat-s3c/include/plat/pm.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c/include/plat/pm.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c/include/plat/pm.h
@@ -0,0 +1,184 @@
+/* linux/include/asm-arm/plat-s3c24xx/pm.h
+ *
+extern void s3c_pm_save_core(void);
+extern void s3c_pm_restore_core(void);
+
-Index: linux-2.6.28/arch/arm/plat-s3c/include/plat/regs-ac97.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c/include/plat/regs-ac97.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c/include/plat/regs-ac97.h
@@ -0,0 +1,67 @@
+/* arch/arm/mach-s3c2410/include/mach/regs-ac97.h
+ *
+#define S3C_AC97_MIC_DATA (0x1C)
+
+#endif /* __ASM_ARCH_REGS_AC97_H */
-Index: linux-2.6.28/arch/arm/plat-s3c/include/plat/regs-fb.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c/include/plat/regs-fb.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c/include/plat/regs-fb.h
@@ -0,0 +1,366 @@
+/* arch/arm/plat-s3c/include/plat/regs-fb.h
+ *
+#define WPALCON_W0PAL_16BPP_A555 (0x5 << 0)
+#define WPALCON_W0PAL_16BPP_565 (0x6 << 0)
+
-Index: linux-2.6.28/arch/arm/plat-s3c/include/plat/regs-iic.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c/include/plat/regs-iic.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c/include/plat/regs-iic.h
@@ -0,0 +1,56 @@
+/* arch/arm/mach-s3c2410/include/mach/regs-iic.h
+ *
+#define S3C2410_IICLC_FILTER_ON (1<<2)
+
+#endif /* __ASM_ARCH_REGS_IIC_H */
-Index: linux-2.6.28/arch/arm/plat-s3c/include/plat/regs-irqtype.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c/include/plat/regs-irqtype.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c/include/plat/regs-irqtype.h
@@ -0,0 +1,21 @@
+/* arch/arm/plat-s3c/include/plat/regs-irqtype.h
+ *
+#define S3C2410_EXTINT_FALLEDGE (0x02)
+#define S3C2410_EXTINT_RISEEDGE (0x04)
+#define S3C2410_EXTINT_BOTHEDGE (0x06)
-Index: linux-2.6.28/arch/arm/plat-s3c/include/plat/regs-nand.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c/include/plat/regs-nand.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c/include/plat/regs-nand.h
@@ -0,0 +1,123 @@
+/* arch/arm/mach-s3c2410/include/mach/regs-nand.h
+ *
+
+#endif /* __ASM_ARM_REGS_NAND */
+
-Index: linux-2.6.28/arch/arm/plat-s3c/include/plat/regs-rtc.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c/include/plat/regs-rtc.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c/include/plat/regs-rtc.h
@@ -0,0 +1,61 @@
+/* arch/arm/mach-s3c2410/include/mach/regs-rtc.h
+ *
+
+
+#endif /* __ASM_ARCH_REGS_RTC_H */
-Index: linux-2.6.28/arch/arm/plat-s3c/include/plat/regs-sdhci.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c/include/plat/regs-sdhci.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c/include/plat/regs-sdhci.h
@@ -0,0 +1,87 @@
+/* linux/arch/arm/plat-s3c/include/plat/regs-sdhci.h
+ *
+#define S3C64XX_SDHCI_CONTROL4_BUSY (1)
+
+#endif /* __PLAT_S3C_SDHCI_REGS_H */
-Index: linux-2.6.28/arch/arm/plat-s3c/include/plat/regs-serial.h
-===================================================================
---- linux-2.6.28.orig/arch/arm/plat-s3c/include/plat/regs-serial.h 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/plat-s3c/include/plat/regs-serial.h 2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/plat-s3c/include/plat/regs-serial.h
++++ b/arch/arm/plat-s3c/include/plat/regs-serial.h
@@ -77,6 +77,12 @@
#define S3C2440_UCON_FCLK (3<<10)
#define S3C2443_UCON_EPLL (3<<10)
#ifndef __ASSEMBLY__
/* struct s3c24xx_uart_clksrc
-@@ -224,7 +243,7 @@ struct s3c2410_uartcfg {
+@@ -224,7 +243,7 @@
* or platform_add_device() before the console_initcall()
*/
#endif /* __ASSEMBLY__ */
-Index: linux-2.6.28/arch/arm/plat-s3c/include/plat/regs-timer.h
-===================================================================
---- linux-2.6.28.orig/arch/arm/plat-s3c/include/plat/regs-timer.h 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/plat-s3c/include/plat/regs-timer.h 2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/plat-s3c/include/plat/regs-timer.h
++++ b/arch/arm/plat-s3c/include/plat/regs-timer.h
@@ -10,7 +10,6 @@
* S3C2410 Timer configuration
*/
#define S3C2410_TCFG1_SHIFT(x) ((x) * 4)
/* for each timer, we have an count buffer, an compare buffer and
-Index: linux-2.6.28/arch/arm/plat-s3c/include/plat/regs-watchdog.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c/include/plat/regs-watchdog.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c/include/plat/regs-watchdog.h
@@ -0,0 +1,41 @@
+/* arch/arm/mach-s3c2410/include/mach/regs-watchdog.h
+ *
+#endif /* __ASM_ARCH_REGS_WATCHDOG_H */
+
+
-Index: linux-2.6.28/arch/arm/plat-s3c/include/plat/sdhci.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c/include/plat/sdhci.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c/include/plat/sdhci.h
@@ -0,0 +1,112 @@
+/* linux/arch/arm/plat-s3c/include/plat/sdhci.h
+ *
+#endif /* CONFIG_S3C6410_SETUP_SDHCI */
+
+#endif /* __PLAT_S3C_SDHCI_H */
-Index: linux-2.6.28/arch/arm/plat-s3c/include/plat/uncompress.h
-===================================================================
---- linux-2.6.28.orig/arch/arm/plat-s3c/include/plat/uncompress.h 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/plat-s3c/include/plat/uncompress.h 2009-01-02 00:01:56.000000000 +0100
-@@ -28,7 +28,7 @@ static void arch_detect_cpu(void);
+--- a/arch/arm/plat-s3c/include/plat/uncompress.h
++++ b/arch/arm/plat-s3c/include/plat/uncompress.h
+@@ -28,7 +28,7 @@
/* defines for UART registers */
#include <plat/regs-serial.h>
/* working in physical space... */
#undef S3C2410_WDOGREG
-@@ -37,7 +37,7 @@ static void arch_detect_cpu(void);
+@@ -37,7 +37,7 @@
/* how many bytes we allow into the FIFO at a time in FIFO mode */
#define FIFO_MAX (14)
static __inline__ void
uart_wr(unsigned int reg, unsigned int val)
-@@ -139,6 +139,28 @@ static void arch_decomp_error(const char
+@@ -139,6 +139,28 @@
static void error(char *err);
static void
arch_decomp_setup(void)
{
-@@ -149,6 +171,12 @@ arch_decomp_setup(void)
+@@ -149,6 +171,12 @@
arch_detect_cpu();
arch_decomp_wdog_start();
}
-Index: linux-2.6.28/arch/arm/plat-s3c/init.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c/init.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c/init.c
@@ -0,0 +1,161 @@
+/* linux/arch/arm/plat-s3c/init.c
+ *
+}
+
+arch_initcall(s3c_arch_init);
-Index: linux-2.6.28/arch/arm/plat-s3c/Kconfig
-===================================================================
---- linux-2.6.28.orig/arch/arm/plat-s3c/Kconfig 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/plat-s3c/Kconfig 2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/plat-s3c/Kconfig
++++ b/arch/arm/plat-s3c/Kconfig
@@ -6,8 +6,8 @@
config PLAT_S3C
select NO_IOPORT
help
Base platform code for any Samsung S3C device
-@@ -16,24 +16,24 @@ config PLAT_S3C
+@@ -16,24 +16,24 @@
config CPU_LLSERIAL_S3C2410_ONLY
bool
help
Selected if there is an S3C2440 (or register compatible) serial
low-level implementation needed
-@@ -57,6 +57,14 @@ config S3C_BOOT_ERROR_RESET
+@@ -57,6 +57,14 @@
Say y here to use the watchdog to reset the system if the
kernel decompressor detects an error during decompression.
comment "Power management"
config S3C2410_PM_DEBUG
-@@ -67,6 +75,15 @@ config S3C2410_PM_DEBUG
+@@ -67,6 +75,15 @@
Resume code. See <file:Documentation/arm/Samsung-S3C24XX/Suspend.txt>
for more information.
config S3C2410_PM_CHECK
bool "S3C2410 PM Suspend Memory CRC"
depends on PLAT_S3C && PM && CRC32
-@@ -102,3 +119,73 @@ config S3C_LOWLEVEL_UART_PORT
+@@ -102,3 +119,73 @@
such as the `Uncompressing...` at start time. The value of
this configuration should be between zero and two. The port
must have been initialised by the boot-loader before use.
+ depends on PLAT_S3C
+ help
+ Compile in platform device definition for framebuffer
-Index: linux-2.6.28/arch/arm/plat-s3c/Makefile
-===================================================================
---- linux-2.6.28.orig/arch/arm/plat-s3c/Makefile 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/plat-s3c/Makefile 2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/plat-s3c/Makefile
++++ b/arch/arm/plat-s3c/Makefile
@@ -1,3 +1,33 @@
-# dummy makefile, currently just including asm/arm/plat-s3c/include/plat
+# arch/arm/plat-s3c/Makefile
+obj-y += dev-i2c0.o
+obj-$(CONFIG_S3C_DEV_I2C1) += dev-i2c1.o
+obj-$(CONFIG_S3C_DEV_FB) += dev-fb.o
-Index: linux-2.6.28/arch/arm/plat-s3c/pm.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c/pm.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c/pm.c
@@ -0,0 +1,387 @@
+/* linux/arch/arm/plat-s3c/pm.c
+ *
+ suspend_set_ops(&s3c_pm_ops);
+ return 0;
+}
-Index: linux-2.6.28/arch/arm/plat-s3c/pm-check.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c/pm-check.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c/pm-check.c
@@ -0,0 +1,242 @@
+/* linux/arch/arm/plat-s3c/pm-check.c
+ * originally in linux/arch/arm/plat-s3c24xx/pm.c
+ crcs = NULL;
+}
+
-Index: linux-2.6.28/arch/arm/plat-s3c/pm-gpio.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c/pm-gpio.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c/pm-gpio.c
@@ -0,0 +1,378 @@
+/* linux/arch/arm/plat-s3c/pm-gpio.c
+ *
+ gpio_nr += CONFIG_S3C_GPIO_SPACE;
+ }
+}
-Index: linux-2.6.28/arch/arm/plat-s3c/pwm-clock.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c/pwm-clock.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c/pwm-clock.c
@@ -0,0 +1,463 @@
+/* linux/arch/arm/plat-s3c24xx/pwm-clock.c
+ *
+ }
+ }
+}
-Index: linux-2.6.28/arch/arm/plat-s3c/time.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c/time.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c/time.c
@@ -0,0 +1,285 @@
+/* linux/arch/arm/plat-s3c24xx/time.c
+ *
+ .offset = s3c2410_gettimeoffset,
+ .resume = s3c2410_timer_setup
+};
-Index: linux-2.6.28/arch/arm/plat-s3c24xx/clock.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/plat-s3c24xx/clock.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/plat-s3c24xx/clock.c 2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/plat-s3c24xx/clock.c
++++ b/arch/arm/plat-s3c24xx/clock.c
@@ -27,18 +27,8 @@
*/
-
- return 0;
}
-Index: linux-2.6.28/arch/arm/plat-s3c24xx/clock-dclk.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c24xx/clock-dclk.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c24xx/clock-dclk.c
@@ -0,0 +1,194 @@
+/* linux/arch/arm/plat-s3c24xx/clock-dclk.c
+ *
+ .id = -1,
+ .set_parent = s3c24xx_clkout_setparent,
+};
-Index: linux-2.6.28/arch/arm/plat-s3c24xx/common-smdk.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/plat-s3c24xx/common-smdk.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/plat-s3c24xx/common-smdk.c 2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/plat-s3c24xx/common-smdk.c
++++ b/arch/arm/plat-s3c24xx/common-smdk.c
@@ -38,7 +38,7 @@
#include <mach/regs-gpio.h>
#include <mach/leds-gpio.h>
#include <plat/common-smdk.h>
#include <plat/devs.h>
-@@ -201,5 +201,5 @@ void __init smdk_machine_init(void)
+@@ -201,5 +201,5 @@
platform_add_devices(smdk_devs, ARRAY_SIZE(smdk_devs));
- s3c2410_pm_init();
+ s3c_pm_init();
}
-Index: linux-2.6.28/arch/arm/plat-s3c24xx/cpu.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/plat-s3c24xx/cpu.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/plat-s3c24xx/cpu.c 2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/plat-s3c24xx/cpu.c
++++ b/arch/arm/plat-s3c24xx/cpu.c
@@ -55,16 +55,6 @@
#include <plat/s3c2442.h>
#include <plat/s3c2443.h>
/* table of supported CPUs */
static const char name_s3c2400[] = "S3C2400";
-@@ -72,6 +62,7 @@ static const char name_s3c2410[] = "S3C
+@@ -72,6 +62,7 @@
static const char name_s3c2412[] = "S3C2412";
static const char name_s3c2440[] = "S3C2440";
static const char name_s3c2442[] = "S3C2442";
static const char name_s3c2443[] = "S3C2443";
static const char name_s3c2410a[] = "S3C2410A";
static const char name_s3c2440a[] = "S3C2440A";
-@@ -123,6 +114,15 @@ static struct cpu_table cpu_ids[] __init
+@@ -123,6 +114,15 @@
.name = name_s3c2442
},
{
.idcode = 0x32412001,
.idmask = 0xffffffff,
.map_io = s3c2412_map_io,
-@@ -169,23 +169,7 @@ static struct map_desc s3c_iodesc[] __in
+@@ -169,23 +169,7 @@
IODESC_ENT(UART)
};
static unsigned long s3c24xx_read_idcode_v5(void)
{
-@@ -231,6 +215,7 @@ void __init s3c24xx_init_io(struct map_d
+@@ -231,6 +215,7 @@
unsigned long idcode = 0x0;
/* initialise the io descriptors we need for initialisation */
iotable_init(s3c_iodesc, ARRAY_SIZE(s3c_iodesc));
if (cpu_architecture() >= CPU_ARCH_ARMv5) {
-@@ -239,117 +224,7 @@ void __init s3c24xx_init_io(struct map_d
+@@ -239,117 +224,7 @@
idcode = s3c24xx_read_idcode_v4();
}
-}
-
-arch_initcall(s3c_arch_init);
-Index: linux-2.6.28/arch/arm/plat-s3c24xx/devs.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/plat-s3c24xx/devs.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/plat-s3c24xx/devs.c 2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/plat-s3c24xx/devs.c
++++ b/arch/arm/plat-s3c24xx/devs.c
@@ -26,14 +26,16 @@
#include <asm/mach/irq.h>
#include <mach/fb.h>
/* Serial port registrations */
-@@ -76,6 +78,19 @@ static struct resource s3c2410_uart2_res
+@@ -76,6 +78,19 @@
}
};
struct s3c24xx_uart_resources s3c2410_uart_resources[] __initdata = {
[0] = {
.resources = s3c2410_uart0_resource,
-@@ -89,6 +104,10 @@ struct s3c24xx_uart_resources s3c2410_ua
+@@ -89,6 +104,10 @@
.resources = s3c2410_uart2_resource,
.nr_resources = ARRAY_SIZE(s3c2410_uart2_resource),
},
};
/* yart devices */
-@@ -105,13 +124,18 @@ static struct platform_device s3c24xx_ua
+@@ -105,13 +124,18 @@
.id = 2,
};
};
/* USB Host Controller */
-@@ -192,8 +216,8 @@ void __init s3c24xx_fb_set_platdata(stru
+@@ -192,8 +216,8 @@
static struct resource s3c_nand_resource[] = {
[0] = {
.flags = IORESOURCE_MEM,
}
};
-@@ -207,6 +231,23 @@ struct platform_device s3c_device_nand =
+@@ -207,6 +231,23 @@
EXPORT_SYMBOL(s3c_device_nand);
/* USB Device (Gadget)*/
static struct resource s3c_usbgadget_resource[] = {
-@@ -271,31 +312,6 @@ struct platform_device s3c_device_wdt =
+@@ -271,31 +312,6 @@
EXPORT_SYMBOL(s3c_device_wdt);
/* IIS */
static struct resource s3c_iis_resource[] = {
-@@ -382,8 +398,8 @@ struct platform_device s3c_device_adc =
+@@ -382,8 +398,8 @@
static struct resource s3c_sdi_resource[] = {
[0] = {
.flags = IORESOURCE_MEM,
},
[1] = {
-@@ -403,36 +419,6 @@ struct platform_device s3c_device_sdi =
+@@ -403,36 +419,6 @@
EXPORT_SYMBOL(s3c_device_sdi);
/* SPI (0) */
static struct resource s3c_spi0_resource[] = {
-Index: linux-2.6.28/arch/arm/plat-s3c24xx/gpio.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/plat-s3c24xx/gpio.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/plat-s3c24xx/gpio.c 2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/plat-s3c24xx/gpio.c
++++ b/arch/arm/plat-s3c24xx/gpio.c
@@ -32,6 +32,7 @@
#include <asm/irq.h>
void s3c2410_gpio_cfgpin(unsigned int pin, unsigned int function)
{
-@@ -215,3 +216,423 @@ int s3c2410_gpio_irq2pin(unsigned int ir
+@@ -215,3 +216,423 @@
}
EXPORT_SYMBOL(s3c2410_gpio_irq2pin);
+}
+EXPORT_SYMBOL(s3c24xx_dump_gpio_states);
+
-Index: linux-2.6.28/arch/arm/plat-s3c24xx/gpiolib.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/plat-s3c24xx/gpiolib.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/plat-s3c24xx/gpiolib.c 2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/plat-s3c24xx/gpiolib.c
++++ b/arch/arm/plat-s3c24xx/gpiolib.c
@@ -19,104 +19,13 @@
#include <linux/io.h>
#include <linux/gpio.h>
static int s3c24xx_gpiolib_banka_input(struct gpio_chip *chip, unsigned offset)
{
return -EINVAL;
-@@ -125,7 +34,7 @@ static int s3c24xx_gpiolib_banka_input(s
+@@ -125,7 +34,7 @@
static int s3c24xx_gpiolib_banka_output(struct gpio_chip *chip,
unsigned offset, int value)
{
void __iomem *base = ourchip->base;
unsigned long flags;
unsigned long dat;
-@@ -151,9 +60,10 @@ static int s3c24xx_gpiolib_banka_output(
+@@ -151,9 +60,10 @@
return 0;
}
.chip = {
.base = S3C2410_GPA0,
.owner = THIS_MODULE,
-@@ -161,97 +71,87 @@ static struct s3c24xx_gpio_chip gpios[]
+@@ -161,97 +71,87 @@
.ngpio = 24,
.direction_input = s3c24xx_gpiolib_banka_input,
.direction_output = s3c24xx_gpiolib_banka_output,
return 0;
}
-Index: linux-2.6.28/arch/arm/plat-s3c24xx/gta02_pm_wlan.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c24xx/gta02_pm_wlan.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c24xx/gta02_pm_wlan.c
@@ -0,0 +1,161 @@
+/*
+ * GTA02 WLAN power management
+MODULE_LICENSE("GPL");
+MODULE_AUTHOR("Andy Green <andy@openmoko.com>");
+MODULE_DESCRIPTION("Openmoko GTA02 WLAN power management");
-Index: linux-2.6.28/arch/arm/plat-s3c24xx/include/mach/pwm-clock.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c24xx/include/mach/pwm-clock.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c24xx/include/mach/pwm-clock.h
@@ -0,0 +1,55 @@
+/* linux/arch/arm/plat-s3c24xx/include/mach/pwm-clock.h
+ *
+}
+
+#define S3C_TCFG1_MUX_TCLK S3C2410_TCFG1_MUX_TCLK
-Index: linux-2.6.28/arch/arm/plat-s3c24xx/include/plat/clock.h
-===================================================================
---- linux-2.6.28.orig/arch/arm/plat-s3c24xx/include/plat/clock.h 2008-12-25 00:26:37.000000000 +0100
-+++ /dev/null 1970-01-01 00:00:00.000000000 +0000
+--- a/arch/arm/plat-s3c24xx/include/plat/clock.h
++++ /dev/null
@@ -1,64 +0,0 @@
-/* linux/include/asm-arm/plat-s3c24xx/clock.h
- * linux/arch/arm/mach-s3c2410/clock.h
- unsigned long fclk,
- unsigned long hclk,
- unsigned long pclk);
-Index: linux-2.6.28/arch/arm/plat-s3c24xx/include/plat/cpu.h
-===================================================================
---- linux-2.6.28.orig/arch/arm/plat-s3c24xx/include/plat/cpu.h 2008-12-25 00:26:37.000000000 +0100
-+++ /dev/null 1970-01-01 00:00:00.000000000 +0000
+--- a/arch/arm/plat-s3c24xx/include/plat/cpu.h
++++ /dev/null
@@ -1,54 +0,0 @@
-/* linux/include/asm-arm/plat-s3c24xx/cpu.h
- *
-extern struct sysdev_class s3c2440_sysclass;
-extern struct sysdev_class s3c2442_sysclass;
-extern struct sysdev_class s3c2443_sysclass;
-Index: linux-2.6.28/arch/arm/plat-s3c24xx/include/plat/devs.h
-===================================================================
---- linux-2.6.28.orig/arch/arm/plat-s3c24xx/include/plat/devs.h 2008-12-25 00:26:37.000000000 +0100
-+++ /dev/null 1970-01-01 00:00:00.000000000 +0000
+--- a/arch/arm/plat-s3c24xx/include/plat/devs.h
++++ /dev/null
@@ -1,49 +0,0 @@
-/* linux/include/asm-arm/plat-s3c24xx/devs.h
- *
-extern struct platform_device s3c_device_camif;
-
-#endif
-Index: linux-2.6.28/arch/arm/plat-s3c24xx/include/plat/irq.h
-===================================================================
---- linux-2.6.28.orig/arch/arm/plat-s3c24xx/include/plat/irq.h 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/plat-s3c24xx/include/plat/irq.h 2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/plat-s3c24xx/include/plat/irq.h
++++ b/arch/arm/plat-s3c24xx/include/plat/irq.h
@@ -10,6 +10,12 @@
* published by the Free Software Foundation.
*/
#define irqdbf(x...)
#define irqdbf2(x...)
-@@ -25,8 +31,15 @@ s3c_irqsub_mask(unsigned int irqno, unsi
+@@ -25,8 +31,15 @@
{
unsigned long mask;
unsigned long submask;
mask = __raw_readl(S3C2410_INTMSK);
submask |= (1UL << (irqno - IRQ_S3CUART_RX0));
-@@ -39,6 +52,9 @@ s3c_irqsub_mask(unsigned int irqno, unsi
+@@ -39,6 +52,9 @@
/* write back masks */
__raw_writel(submask, S3C2410_INTSUBMSK);
}
-@@ -47,8 +63,15 @@ s3c_irqsub_unmask(unsigned int irqno, un
+@@ -47,8 +63,15 @@
{
unsigned long mask;
unsigned long submask;
mask = __raw_readl(S3C2410_INTMSK);
submask &= ~(1UL << (irqno - IRQ_S3CUART_RX0));
-@@ -57,6 +80,9 @@ s3c_irqsub_unmask(unsigned int irqno, un
+@@ -57,6 +80,9 @@
/* write back masks */
__raw_writel(submask, S3C2410_INTSUBMSK);
__raw_writel(mask, S3C2410_INTMSK);
}
-Index: linux-2.6.28/arch/arm/plat-s3c24xx/include/plat/map.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c24xx/include/plat/map.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c24xx/include/plat/map.h
@@ -0,0 +1,101 @@
+/* linux/include/asm-arm/plat-s3c24xx/map.h
+ *
+#endif
+
+#endif /* __ASM_PLAT_S3C24XX_MAP_H */
-Index: linux-2.6.28/arch/arm/plat-s3c24xx/include/plat/mci.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c24xx/include/plat/mci.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c24xx/include/plat/mci.h
@@ -0,0 +1,15 @@
+#ifndef _ARCH_MCI_H
+#define _ARCH_MCI_H
+};
+
+#endif /* _ARCH_NCI_H */
-Index: linux-2.6.28/arch/arm/plat-s3c24xx/include/plat/pll.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c24xx/include/plat/pll.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c24xx/include/plat/pll.h
@@ -0,0 +1,37 @@
+/* linux/arch/arm/plat-s3c24xx/include/plat/pll.h
+ *
+
+ return (unsigned int)fvco;
+}
-Index: linux-2.6.28/arch/arm/plat-s3c24xx/include/plat/pm-core.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c24xx/include/plat/pm-core.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c24xx/include/plat/pm-core.h
@@ -0,0 +1,64 @@
+/* linux/arch/arm/plat-s3c24xx/include/plat/pll.h
+ *
+ struct pm_uart_save *save)
+{
+}
-Index: linux-2.6.28/arch/arm/plat-s3c24xx/include/plat/pm.h
-===================================================================
---- linux-2.6.28.orig/arch/arm/plat-s3c24xx/include/plat/pm.h 2008-12-25 00:26:37.000000000 +0100
-+++ /dev/null 1970-01-01 00:00:00.000000000 +0000
+--- a/arch/arm/plat-s3c24xx/include/plat/pm.h
++++ /dev/null
@@ -1,73 +0,0 @@
-/* linux/include/asm-arm/plat-s3c24xx/pm.h
- *
-#define s3c24xx_irq_suspend NULL
-#define s3c24xx_irq_resume NULL
-#endif
-Index: linux-2.6.28/arch/arm/plat-s3c24xx/include/plat/regs-spi.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c24xx/include/plat/regs-spi.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c24xx/include/plat/regs-spi.h
@@ -0,0 +1,82 @@
+/* arch/arm/mach-s3c2410/include/mach/regs-spi.h
+ *
+
+
+#endif /* __ASM_ARCH_REGS_SPI_H */
-Index: linux-2.6.28/arch/arm/plat-s3c24xx/include/plat/regs-udc.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c24xx/include/plat/regs-udc.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c24xx/include/plat/regs-udc.h
@@ -0,0 +1,153 @@
+/* arch/arm/mach-s3c2410/include/mach/regs-udc.h
+ *
+
+
+#endif
-Index: linux-2.6.28/arch/arm/plat-s3c24xx/include/plat/s3c2400.h
-===================================================================
---- linux-2.6.28.orig/arch/arm/plat-s3c24xx/include/plat/s3c2400.h 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/plat-s3c24xx/include/plat/s3c2400.h 2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/plat-s3c24xx/include/plat/s3c2400.h
++++ b/arch/arm/plat-s3c24xx/include/plat/s3c2400.h
@@ -17,7 +17,7 @@
extern int s3c2400_init(void);
extern void s3c2400_init_uarts(struct s3c2410_uartcfg *cfg, int no);
-Index: linux-2.6.28/arch/arm/plat-s3c24xx/include/plat/s3c2410.h
-===================================================================
---- linux-2.6.28.orig/arch/arm/plat-s3c24xx/include/plat/s3c2410.h 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/plat-s3c24xx/include/plat/s3c2410.h 2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/plat-s3c24xx/include/plat/s3c2410.h
++++ b/arch/arm/plat-s3c24xx/include/plat/s3c2410.h
@@ -15,7 +15,7 @@
extern int s3c2410_init(void);
extern void s3c2410_init_uarts(struct s3c2410_uartcfg *cfg, int no);
-Index: linux-2.6.28/arch/arm/plat-s3c24xx/include/plat/s3c2412.h
-===================================================================
---- linux-2.6.28.orig/arch/arm/plat-s3c24xx/include/plat/s3c2412.h 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/plat-s3c24xx/include/plat/s3c2412.h 2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/plat-s3c24xx/include/plat/s3c2412.h
++++ b/arch/arm/plat-s3c24xx/include/plat/s3c2412.h
@@ -14,7 +14,7 @@
extern int s3c2412_init(void);
extern void s3c2412_init_uarts(struct s3c2410_uartcfg *cfg, int no);
-Index: linux-2.6.28/arch/arm/plat-s3c24xx/include/plat/s3c2443.h
-===================================================================
---- linux-2.6.28.orig/arch/arm/plat-s3c24xx/include/plat/s3c2443.h 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/plat-s3c24xx/include/plat/s3c2443.h 2009-01-02 00:01:56.000000000 +0100
-@@ -16,7 +16,7 @@ struct s3c2410_uartcfg;
+--- a/arch/arm/plat-s3c24xx/include/plat/s3c2443.h
++++ b/arch/arm/plat-s3c24xx/include/plat/s3c2443.h
+@@ -16,7 +16,7 @@
extern int s3c2443_init(void);
extern void s3c2443_init_uarts(struct s3c2410_uartcfg *cfg, int no);
-Index: linux-2.6.28/arch/arm/plat-s3c24xx/include/plat/udc.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c24xx/include/plat/udc.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c24xx/include/plat/udc.h
@@ -0,0 +1,36 @@
+/* arch/arm/mach-s3c2410/include/mach/udc.h
+ *
+extern void __init s3c24xx_udc_set_platdata(struct s3c2410_udc_mach_info *);
+
+#endif /* __ASM_ARM_ARCH_UDC_H */
-Index: linux-2.6.28/arch/arm/plat-s3c24xx/irq.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/plat-s3c24xx/irq.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/plat-s3c24xx/irq.c 2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/plat-s3c24xx/irq.c
++++ b/arch/arm/plat-s3c24xx/irq.c
@@ -1,6 +1,6 @@
/* linux/arch/arm/plat-s3c24xx/irq.c
*
}
static inline void
-@@ -155,9 +67,19 @@ s3c_irq_maskack(unsigned int irqno)
+@@ -155,9 +67,19 @@
{
unsigned long bitval = 1UL << (irqno - IRQ_EINT0);
unsigned long mask;
__raw_writel(bitval, S3C2410_SRCPND);
__raw_writel(bitval, S3C2410_INTPND);
-@@ -168,15 +90,25 @@ static void
+@@ -168,15 +90,25 @@
s3c_irq_unmask(unsigned int irqno)
{
unsigned long mask;
}
struct irq_chip s3c_irq_level_chip = {
-@@ -589,59 +521,6 @@ s3c_irq_demux_extint4t7(unsigned int irq
+@@ -589,59 +521,6 @@
}
}
/* s3c24xx_init_irq
*
* Initialise S3C2410 IRQ system
-@@ -672,26 +551,26 @@ void __init s3c24xx_init_irq(void)
+@@ -672,26 +551,26 @@
last = 0;
for (i = 0; i < 4; i++) {
last = pend;
}
-Index: linux-2.6.28/arch/arm/plat-s3c24xx/irq-pm.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c24xx/irq-pm.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c24xx/irq-pm.c
@@ -0,0 +1,118 @@
+/* linux/arch/arm/plat-s3c24xx/irq-om.c
+ *
+
+ return 0;
+}
-Index: linux-2.6.28/arch/arm/plat-s3c24xx/Kconfig
-===================================================================
---- linux-2.6.28.orig/arch/arm/plat-s3c24xx/Kconfig 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/plat-s3c24xx/Kconfig 2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/plat-s3c24xx/Kconfig
++++ b/arch/arm/plat-s3c24xx/Kconfig
@@ -6,18 +6,32 @@
config PLAT_S3C24XX
help
Support for S3C2440 and S3C2442 Samsung Mobile CPU based systems.
-@@ -49,9 +63,31 @@ config S3C2410_DMA_DEBUG
+@@ -49,9 +63,31 @@
Enable debugging output for the DMA code. This option sends info
to the kernel log, at priority KERN_DEBUG.
+ Common machine code for Neo1973 hardware
+
endif
-Index: linux-2.6.28/arch/arm/plat-s3c24xx/Makefile
-===================================================================
---- linux-2.6.28.orig/arch/arm/plat-s3c24xx/Makefile 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/plat-s3c24xx/Makefile 2009-01-02 00:01:56.000000000 +0100
-@@ -17,9 +17,8 @@ obj-y += irq.o
+--- a/arch/arm/plat-s3c24xx/Makefile
++++ b/arch/arm/plat-s3c24xx/Makefile
+@@ -17,9 +17,8 @@
obj-y += devs.o
obj-y += gpio.o
obj-y += gpiolib.o
# Architecture dependant builds
-@@ -28,7 +27,26 @@ obj-$(CONFIG_CPU_S3C244X) += s3c244x-irq
+@@ -28,7 +27,26 @@
obj-$(CONFIG_CPU_S3C244X) += s3c244x-clock.o
obj-$(CONFIG_PM_SIMTEC) += pm-simtec.o
obj-$(CONFIG_PM) += pm.o
+ neo1973_pm_bt.o \
+ gta02_pm_wlan.o \
+ neo1973_shadow.o
-Index: linux-2.6.28/arch/arm/plat-s3c24xx/neo1973_pm_bt.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c24xx/neo1973_pm_bt.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c24xx/neo1973_pm_bt.c
@@ -0,0 +1,323 @@
+/*
+ * Bluetooth PM code for the FIC Neo1973 GSM Phone
+MODULE_LICENSE("GPL");
+MODULE_AUTHOR("Harald Welte <laforge@openmoko.org>");
+MODULE_DESCRIPTION(DRVMSG);
-Index: linux-2.6.28/arch/arm/plat-s3c24xx/neo1973_pm_gps.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c24xx/neo1973_pm_gps.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c24xx/neo1973_pm_gps.c
@@ -0,0 +1,699 @@
+/*
+ * GPS Power Management code for the FIC Neo1973 GSM Phone
+MODULE_LICENSE("GPL");
+MODULE_AUTHOR("Harald Welte <laforge@openmoko.org>");
+MODULE_DESCRIPTION("FIC Neo1973 GPS Power Management");
-Index: linux-2.6.28/arch/arm/plat-s3c24xx/neo1973_pm_gps.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c24xx/neo1973_pm_gps.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c24xx/neo1973_pm_gps.h
@@ -0,0 +1 @@
+extern int neo1973_pm_gps_is_on(void);
-Index: linux-2.6.28/arch/arm/plat-s3c24xx/neo1973_pm_gsm.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c24xx/neo1973_pm_gsm.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c24xx/neo1973_pm_gsm.c
@@ -0,0 +1,360 @@
+/*
+ * GSM Management code for the FIC Neo1973 GSM Phone
+MODULE_LICENSE("GPL");
+MODULE_AUTHOR("Harald Welte <laforge@openmoko.org>");
+MODULE_DESCRIPTION("FIC Neo1973 GSM Power Management");
-Index: linux-2.6.28/arch/arm/plat-s3c24xx/neo1973_shadow.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c24xx/neo1973_shadow.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c24xx/neo1973_shadow.c
@@ -0,0 +1,88 @@
+/*
+ * include/asm-arm/plat-s3c24xx/neo1973.h
+ local_irq_restore(flags);
+}
+EXPORT_SYMBOL(neo1973_gpb_setpin);
-Index: linux-2.6.28/arch/arm/plat-s3c24xx/pm.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/plat-s3c24xx/pm.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/plat-s3c24xx/pm.c 2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/plat-s3c24xx/pm.c
++++ b/arch/arm/plat-s3c24xx/pm.c
@@ -31,14 +31,9 @@
#include <linux/errno.h>
#include <linux/time.h>
#define PFX "s3c24xx-pm: "
static struct sleep_save core_save[] = {
-@@ -76,371 +67,26 @@ static struct sleep_save core_save[] = {
+@@ -76,371 +67,26 @@
SAVE_ITEM(S3C2410_BANKCON4),
SAVE_ITEM(S3C2410_BANKCON5),
{
unsigned long irqstate;
unsigned long pinstate;
-@@ -455,21 +101,21 @@ static void s3c2410_pm_check_resume_pin(
+@@ -455,21 +101,21 @@
if (!irqstate) {
if (pinstate == S3C2410_GPIO_IRQ)
{
int pin;
-@@ -479,336 +125,24 @@ static void s3c2410_pm_configure_extint(
+@@ -479,336 +125,24 @@
*/
for (pin = S3C2410_GPF0; pin <= S3C2410_GPF7; pin++) {
- suspend_set_ops(&s3c2410_pm_ops);
- return 0;
-}
-Index: linux-2.6.28/arch/arm/plat-s3c24xx/pm-simtec.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/plat-s3c24xx/pm-simtec.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/plat-s3c24xx/pm-simtec.c 2009-01-02 00:01:56.000000000 +0100
-@@ -61,7 +61,7 @@ static __init int pm_simtec_init(void)
+--- a/arch/arm/plat-s3c24xx/pm-simtec.c
++++ b/arch/arm/plat-s3c24xx/pm-simtec.c
+@@ -61,7 +61,7 @@
__raw_writel(gstatus4, S3C2410_GSTATUS4);
}
arch_initcall(pm_simtec_init);
-Index: linux-2.6.28/arch/arm/plat-s3c24xx/pwm-clock.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/plat-s3c24xx/pwm-clock.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/plat-s3c24xx/pwm-clock.c 2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/plat-s3c24xx/pwm-clock.c
++++ b/arch/arm/plat-s3c24xx/pwm-clock.c
@@ -24,10 +24,10 @@
#include <mach/regs-clock.h>
#include <mach/regs-gpio.h>
/* Each of the timers 0 through 5 go through the following
* clock tree, with the inputs depending on the timers.
-Index: linux-2.6.28/arch/arm/plat-s3c24xx/s3c2410-clock.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c24xx/s3c2410-clock.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c24xx/s3c2410-clock.c
@@ -0,0 +1,277 @@
+/* linux/arch/arm/mach-s3c2410/clock.c
+ *
+ s3c_pwmclk_init();
+ return 0;
+}
-Index: linux-2.6.28/arch/arm/plat-s3c24xx/s3c244x.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/plat-s3c24xx/s3c244x.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/plat-s3c24xx/s3c244x.c 2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/plat-s3c24xx/s3c244x.c
++++ b/arch/arm/plat-s3c24xx/s3c244x.c
@@ -29,6 +29,8 @@
#include <mach/hardware.h>
#include <asm/irq.h>
static struct map_desc s3c244x_iodesc[] __initdata = {
IODESC_ENT(CLKPWR),
-@@ -56,32 +59,37 @@ void __init s3c244x_init_uarts(struct s3
+@@ -56,32 +59,37 @@
s3c24xx_init_uartdevs("s3c2440-uart", s3c2410_uart_resources, cfg, no);
}
clkdiv = __raw_readl(S3C2410_CLKDIVN);
camdiv = __raw_readl(S3C2440_CAMDIVN);
-@@ -107,18 +115,24 @@ void __init s3c244x_init_clocks(int xtal
+@@ -107,18 +115,24 @@
}
hclk = fclk / hdiv;
s3c2410_baseclk_add();
}
-@@ -134,13 +148,13 @@ static struct sleep_save s3c244x_sleep[]
+@@ -134,13 +148,13 @@
static int s3c244x_suspend(struct sys_device *dev, pm_message_t state)
{
return 0;
}
-Index: linux-2.6.28/arch/arm/plat-s3c24xx/s3c244x-clock.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/plat-s3c24xx/s3c244x-clock.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/plat-s3c24xx/s3c244x-clock.c 2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/plat-s3c24xx/s3c244x-clock.c
++++ b/arch/arm/plat-s3c24xx/s3c244x-clock.c
@@ -31,7 +31,6 @@
#include <linux/sysdev.h>
#include <linux/interrupt.h>
#include <linux/clk.h>
#include <linux/io.h>
-@@ -102,13 +101,13 @@ static int s3c244x_clk_add(struct sys_de
+@@ -102,13 +101,13 @@
if (clk_get_rate(clock_upll) > (94 * MHZ)) {
clk_usb_bus.rate = clk_get_rate(clock_upll) / 2;
}
return 0;
-Index: linux-2.6.28/arch/arm/plat-s3c24xx/s3c244x.h
-===================================================================
---- linux-2.6.28.orig/arch/arm/plat-s3c24xx/s3c244x.h 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/plat-s3c24xx/s3c244x.h 2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/plat-s3c24xx/s3c244x.h
++++ b/arch/arm/plat-s3c24xx/s3c244x.h
@@ -12,7 +12,7 @@
#if defined(CONFIG_CPU_S3C2440) || defined(CONFIG_CPU_S3C2442)
extern void s3c244x_init_uarts(struct s3c2410_uartcfg *cfg, int no);
-Index: linux-2.6.28/arch/arm/plat-s3c24xx/setup-i2c.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c24xx/setup-i2c.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c24xx/setup-i2c.c
@@ -0,0 +1,25 @@
+/* linux/arch/arm/plat-s3c24xx/setup-i2c.c
+ *
+ s3c2410_gpio_cfgpin(S3C2410_GPE15, S3C2410_GPE15_IICSDA);
+ s3c2410_gpio_cfgpin(S3C2410_GPE14, S3C2410_GPE14_IICSCL);
+}
-Index: linux-2.6.28/arch/arm/plat-s3c24xx/sleep.S
-===================================================================
---- linux-2.6.28.orig/arch/arm/plat-s3c24xx/sleep.S 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/plat-s3c24xx/sleep.S 2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/plat-s3c24xx/sleep.S
++++ b/arch/arm/plat-s3c24xx/sleep.S
@@ -41,7 +41,7 @@
.text
stmfd sp!, { r4 - r12, lr }
@@ store co-processor registers
-@@ -84,7 +84,7 @@ resume_with_mmu:
+@@ -84,7 +84,7 @@
.ltorg
@@ the next bits sit in the .data segment, even though they
@@ accessed by the resume code before it can restore the MMU.
@@ This means that the variable has to be close enough for the
@@ code to read it... since the .text segment needs to be RO,
-@@ -92,19 +92,19 @@ resume_with_mmu:
+@@ -92,19 +92,19 @@
.data
*
* resume code entry for bootloader to call
*
-@@ -113,7 +113,7 @@ s3c2410_sleep_save_phys:
+@@ -113,7 +113,7 @@
* must not write to the code segment (code is read-only)
*/
mov r0, #PSR_I_BIT | PSR_F_BIT | SVC_MODE
msr cpsr_c, r0
-@@ -145,7 +145,7 @@ ENTRY(s3c2410_cpu_resume)
+@@ -145,7 +145,7 @@
mcr p15, 0, r1, c8, c7, 0 @@ invalidate I & D TLBs
mcr p15, 0, r1, c7, c7, 0 @@ invalidate I & D caches
ldmia r0, { r4 - r13 }
mcr p15, 0, r4, c13, c0, 0 @ PID
-Index: linux-2.6.28/arch/arm/plat-s3c24xx/spi-bus0-gpe11_12_13.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c24xx/spi-bus0-gpe11_12_13.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c24xx/spi-bus0-gpe11_12_13.c
@@ -0,0 +1,37 @@
+/* linux/arch/arm/plat-s3c24xx/spi-bus0-gpe11_12_13.c
+ *
+ s3c2410_gpio_pullup(S3C2410_GPE13, 1);
+ }
+}
-Index: linux-2.6.28/arch/arm/plat-s3c24xx/spi-bus1-gpg5_6_7.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c24xx/spi-bus1-gpg5_6_7.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c24xx/spi-bus1-gpg5_6_7.c
@@ -0,0 +1,37 @@
+/* linux/arch/arm/plat-s3c24xx/spi-bus0-gpg5_6_7.c
+ *
+ s3c2410_gpio_pullup(S3C2410_GPG7, 1);
+ }
+}
-Index: linux-2.6.28/arch/arm/plat-s3c24xx/time.c
-===================================================================
---- linux-2.6.28.orig/arch/arm/plat-s3c24xx/time.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/arch/arm/plat-s3c24xx/time.c 2009-01-02 00:01:56.000000000 +0100
+--- a/arch/arm/plat-s3c24xx/time.c
++++ b/arch/arm/plat-s3c24xx/time.c
@@ -3,6 +3,8 @@
* Copyright (C) 2003-2005 Simtec Electronics
* Ben Dooks, <ben@simtec.co.uk>
#define TIMER_USEC_SHIFT 16
-@@ -177,11 +183,7 @@ static void s3c2410_timer_setup (void)
+@@ -177,11 +183,7 @@
tcfg1 &= ~S3C2410_TCFG1_MUX4_MASK;
tcfg1 |= S3C2410_TCFG1_MUX4_TCLK1;
} else {
* 70MHz are not values we can directly generate the timer
* value from, we need to pre-scale and divide before using it.
*
-@@ -189,19 +191,9 @@ static void s3c2410_timer_setup (void)
+@@ -189,19 +191,9 @@
* (8.45 ticks per usec)
*/
tcfg1 &= ~S3C2410_TCFG1_MUX4_MASK;
tcfg1 |= S3C2410_TCFG1_MUX4_DIV2;
-@@ -245,16 +237,244 @@ static void s3c2410_timer_setup (void)
+@@ -245,16 +237,244 @@
tcon |= S3C2410_TCON_T4START;
tcon &= ~S3C2410_TCON_T4MANUALUPD;
__raw_writel(tcon, S3C2410_TCON);
+ .dyn_tick = &s3c24xx_dyn_tick_timer,
+#endif
};
-Index: linux-2.6.28/arch/arm/plat-s3c64xx/clock.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c64xx/clock.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c64xx/clock.c
@@ -0,0 +1,282 @@
+/* linux/arch/arm/plat-s3c64xx/clock.c
+ *
+
+ s3c_pwmclk_init();
+}
-Index: linux-2.6.28/arch/arm/plat-s3c64xx/cpu.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c64xx/cpu.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c64xx/cpu.c
@@ -0,0 +1,139 @@
+/* linux/arch/arm/plat-s3c64xx/cpu.c
+ *
+}
+
+core_initcall(s3c64xx_sysdev_init);
-Index: linux-2.6.28/arch/arm/plat-s3c64xx/dev-uart.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c64xx/dev-uart.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c64xx/dev-uart.c
@@ -0,0 +1,176 @@
+/* linux/arch/arm/plat-s3c64xx/dev-uart.c
+ *
+struct platform_device *s3c24xx_uart_devs[4] = {
+};
+
-Index: linux-2.6.28/arch/arm/plat-s3c64xx/gpiolib.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c64xx/gpiolib.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c64xx/gpiolib.c
@@ -0,0 +1,428 @@
+/* arch/arm/plat-s3c64xx/gpiolib.c
+ *
+}
+
+arch_initcall(s3c64xx_gpiolib_init);
-Index: linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/gpio-bank-a.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/gpio-bank-a.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c64xx/include/plat/gpio-bank-a.h
@@ -0,0 +1,48 @@
+/* linux/arch/arm/plat-s3c64xx/include/plat/gpio-bank-a.h
+ *
+#define S3C64XX_GPA7_UART_nRTS1 (0x02 << 28)
+#define S3C64XX_GPA7_EINT_G1_7 (0x07 << 28)
+
-Index: linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/gpio-bank-b.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/gpio-bank-b.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c64xx/include/plat/gpio-bank-b.h
@@ -0,0 +1,60 @@
+/* linux/arch/arm/plat-s3c64xx/include/plat/gpio-bank-b.h
+ *
+#define S3C64XX_GPB6_I2C_SDA0 (0x02 << 24)
+#define S3C64XX_GPB6_EINT_G1_14 (0x07 << 24)
+
-Index: linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/gpio-bank-c.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/gpio-bank-c.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c64xx/include/plat/gpio-bank-c.h
@@ -0,0 +1,53 @@
+/* linux/arch/arm/plat-s3c64xx/include/plat/gpio-bank-c.h
+ *
+#define S3C64XX_GPC7_I2S2_V40_DO (0x05 << 28)
+#define S3C64XX_GPC7_EINT_G2_7 (0x07 << 28)
+
-Index: linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/gpio-bank-d.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/gpio-bank-d.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c64xx/include/plat/gpio-bank-d.h
@@ -0,0 +1,49 @@
+/* linux/arch/arm/plat-s3c64xx/include/plat/gpio-bank-d.h
+ *
+#define S3C64XX_GPD4_AC97_SDO (0x04 << 16)
+#define S3C64XX_GPD4_EINT_G3_4 (0x07 << 16)
+
-Index: linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/gpio-bank-e.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/gpio-bank-e.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c64xx/include/plat/gpio-bank-e.h
@@ -0,0 +1,44 @@
+/* linux/arch/arm/plat-s3c64xx/include/plat/gpio-bank-e.h
+ *
+#define S3C64XX_GPE4_I2S1_D0 (0x03 << 16)
+#define S3C64XX_GPE4_AC97_SDO (0x04 << 16)
+
-Index: linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/gpio-bank-f.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/gpio-bank-f.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c64xx/include/plat/gpio-bank-f.h
@@ -0,0 +1,71 @@
+/* linux/arch/arm/plat-s3c64xx/include/plat/gpio-bank-f.h
+ *
+
+#define S3C64XX_GPF15_PWM_TOUT1 (0x02 << 30)
+
-Index: linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/gpio-bank-g.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/gpio-bank-g.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c64xx/include/plat/gpio-bank-g.h
@@ -0,0 +1,42 @@
+/* linux/arch/arm/plat-s3c64xx/include/plat/gpio-bank-g.h
+ *
+#define S3C64XX_GPG5_MMC0_DATA3 (0x02 << 20)
+#define S3C64XX_GPG5_EINT_G5_5 (0x07 << 20)
+
-Index: linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/gpio-bank-h.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/gpio-bank-h.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c64xx/include/plat/gpio-bank-h.h
@@ -0,0 +1,74 @@
+/* linux/arch/arm/plat-s3c64xx/include/plat/gpio-bank-h.h
+ *
+#define S3C64XX_GPH9_I2S_V40_DI (0x05 << 36)
+#define S3C64XX_GPH9_EINT_G6_9 (0x07 << 36)
+
-Index: linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/gpio-bank-i.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/gpio-bank-i.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c64xx/include/plat/gpio-bank-i.h
@@ -0,0 +1,40 @@
+/* linux/arch/arm/plat-s3c64xx/include/plat/gpio-bank-i.h
+ *
+#define S3C64XX_GPI13_VD13 (0x02 << 26)
+#define S3C64XX_GPI14_VD14 (0x02 << 28)
+#define S3C64XX_GPI15_VD15 (0x02 << 30)
-Index: linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/gpio-bank-j.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/gpio-bank-j.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c64xx/include/plat/gpio-bank-j.h
@@ -0,0 +1,36 @@
+/* linux/arch/arm/plat-s3c64xx/include/plat/gpio-bank-j.h
+ *
+#define S3C64XX_GPJ9_LCD_VSYNC (0x02 << 18)
+#define S3C64XX_GPJ10_LCD_VDEN (0x02 << 20)
+#define S3C64XX_GPJ11_LCD_VCLK (0x02 << 22)
-Index: linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/gpio-bank-n.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/gpio-bank-n.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c64xx/include/plat/gpio-bank-n.h
@@ -0,0 +1,54 @@
+/* linux/arch/arm/plat-s3c64xx/include/plat/gpio-bank-n.h
+ *
+#define S3C64XX_GPN13_EINT13 (0x02 << 26)
+#define S3C64XX_GPN14_EINT14 (0x02 << 28)
+#define S3C64XX_GPN15_EINT15 (0x02 << 30)
-Index: linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/gpio-bank-o.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/gpio-bank-o.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c64xx/include/plat/gpio-bank-o.h
@@ -0,0 +1,70 @@
+/* linux/arch/arm/plat-s3c64xx/include/plat/gpio-bank-o.h
+ *
+#define S3C64XX_GPO15_MEM0_ADDR15 (0x02 << 30)
+#define S3C64XX_GPO15_EINT_G7_15 (0x03 << 30)
+
-Index: linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/gpio-bank-p.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/gpio-bank-p.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c64xx/include/plat/gpio-bank-p.h
@@ -0,0 +1,69 @@
+/* linux/arch/arm/plat-s3c64xx/include/plat/gpio-bank-p.h
+ *
+#define S3C64XX_GPP14_MEM0_ATA_CD (0x02 << 28)
+#define S3C64XX_GPP14_EINT_G8_14 (0x03 << 28)
+
-Index: linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/gpio-bank-q.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/gpio-bank-q.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c64xx/include/plat/gpio-bank-q.h
@@ -0,0 +1,46 @@
+/* linux/arch/arm/plat-s3c64xx/include/plat/gpio-bank-q.h
+ *
+#define S3C64XX_GPQ8_MEM0_ADDR16_APDMC (0x02 << 16)
+#define S3C64XX_GPQ8_EINT_G9_8 (0x03 << 16)
+
-Index: linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/irqs.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/irqs.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c64xx/include/plat/irqs.h
@@ -0,0 +1,202 @@
+/* linux/arch/arm/plat-s3c64xx/include/mach/irqs.h
+ *
+
+#endif /* __ASM_PLAT_S3C64XX_IRQS_H */
+
-Index: linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/pll.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/pll.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c64xx/include/plat/pll.h
@@ -0,0 +1,74 @@
+/* arch/arm/plat-s3c64xx/include/plat/pll.h
+ *
+
+ return result;
+}
-Index: linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/pm-core.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/pm-core.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c64xx/include/plat/pm-core.h
@@ -0,0 +1,106 @@
+/* linux/arch/arm/plat-s3c64xx/include/plat/pm-core.h
+ *
+ save->ucon = new_ucon;
+ }
+}
-Index: linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/regs-clock.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/regs-clock.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c64xx/include/plat/regs-clock.h
@@ -0,0 +1,225 @@
+/* arch/arm/plat-s3c64xx/include/plat/regs-clock.h
+ *
+
+
+#endif /* _PLAT_REGS_CLOCK_H */
-Index: linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/regs-gpio.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/regs-gpio.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c64xx/include/plat/regs-gpio.h
@@ -0,0 +1,187 @@
+/* linux/arch/arm/plat-s3c64xx/include/mach/regs-gpio.h
+ *
+
+#endif /* __ASM_PLAT_S3C64XX_REGS_GPIO_H */
+
-Index: linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/regs-gpio-memport.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/regs-gpio-memport.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c64xx/include/plat/regs-gpio-memport.h
@@ -0,0 +1,25 @@
+/* linux/arch/arm/plat-s3c64xx/include/mach/regs-gpio-memport.h
+ *
+
+#endif /* __ASM_PLAT_S3C64XX_REGS_GPIO_MEMPORT_H */
+
-Index: linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/regs-modem.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/regs-modem.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c64xx/include/plat/regs-modem.h
@@ -0,0 +1,31 @@
+/* arch/arm/plat-s3c64xx/include/plat/regs-modem.h
+ *
+#define MIFPCON_LCD_BYPASS (1 << 3)
+
+#endif /* __PLAT_S3C64XX_REGS_MODEM_H */
-Index: linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/regs-syscon-power.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/regs-syscon-power.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c64xx/include/plat/regs-syscon-power.h
@@ -0,0 +1,116 @@
+/* arch/arm/plat-s3c64xx/include/plat/regs-syscon-power.h
+ *
+#define S3C64XX_INFORM3 S3C_SYSREG(0xA0C)
+
+#endif /* __PLAT_S3C64XX_REGS_SYSCON_POWER_H */
-Index: linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/regs-sys.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/regs-sys.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c64xx/include/plat/regs-sys.h
@@ -0,0 +1,28 @@
+/* arch/arm/plat-s3c64xx/include/plat/regs-sys.h
+ *
+#define S3C64XX_OTHERS_USBMASK (1 << 16)
+
+#endif /* _PLAT_REGS_SYS_H */
-Index: linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/s3c6400.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/s3c6400.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c64xx/include/plat/s3c6400.h
@@ -0,0 +1,35 @@
+/* arch/arm/plat-s3c64xx/include/plat/s3c6400.h
+ *
+#define s3c6400_init NULL
+#endif
+
-Index: linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/s3c6410.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c64xx/include/plat/s3c6410.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c64xx/include/plat/s3c6410.h
@@ -0,0 +1,29 @@
+/* arch/arm/plat-s3c64xx/include/plat/s3c6410.h
+ *
+#define s3c6410_map_io NULL
+#define s3c6410_init NULL
+#endif
-Index: linux-2.6.28/arch/arm/plat-s3c64xx/irq.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c64xx/irq.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c64xx/irq.c
@@ -0,0 +1,256 @@
+/* arch/arm/plat-s3c64xx/irq.c
+ *
+}
+
+
-Index: linux-2.6.28/arch/arm/plat-s3c64xx/irq-eint.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c64xx/irq-eint.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c64xx/irq-eint.c
@@ -0,0 +1,204 @@
+/* arch/arm/plat-s3c64xx/irq-eint.c
+ *
+}
+
+arch_initcall(s3c64xx_init_irq_eint);
-Index: linux-2.6.28/arch/arm/plat-s3c64xx/irq-pm.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c64xx/irq-pm.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c64xx/irq-pm.c
@@ -0,0 +1,173 @@
+/* arch/arm/plat-s3c64xx/irq-pm.c
+ *
+
+arch_initcall(s3c64xx_irq_pm_init);
+
-Index: linux-2.6.28/arch/arm/plat-s3c64xx/Kconfig
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c64xx/Kconfig 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c64xx/Kconfig
@@ -0,0 +1,61 @@
+# arch/arm/plat-s3c64xx/Kconfig
+#
+ Common setup code for S3C64XX with an 24bpp RGB display helper.
+
+endif
-Index: linux-2.6.28/arch/arm/plat-s3c64xx/Makefile
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c64xx/Makefile 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c64xx/Makefile
@@ -0,0 +1,37 @@
+# arch/arm/plat-s3c64xx/Makefile
+#
+obj-$(CONFIG_S3C64XX_SETUP_I2C0) += setup-i2c0.o
+obj-$(CONFIG_S3C64XX_SETUP_I2C1) += setup-i2c1.o
+obj-$(CONFIG_S3C64XX_SETUP_FB_24BPP) += setup-fb-24bpp.o
-Index: linux-2.6.28/arch/arm/plat-s3c64xx/pm.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c64xx/pm.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c64xx/pm.c
@@ -0,0 +1,177 @@
+/* linux/arch/arm/plat-s3c64xx/pm.c
+ *
+}
+
+arch_initcall(s3c64xx_pm_init);
-Index: linux-2.6.28/arch/arm/plat-s3c64xx/s3c6400-clock.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c64xx/s3c6400-clock.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c64xx/s3c6400-clock.c
@@ -0,0 +1,654 @@
+/* linux/arch/arm/plat-s3c64xx/s3c6400-clock.c
+ *
+
+ clk_epll.parent = &clk_mout_epll.clk;
+}
-Index: linux-2.6.28/arch/arm/plat-s3c64xx/s3c6400-init.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c64xx/s3c6400-init.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c64xx/s3c6400-init.c
@@ -0,0 +1,29 @@
+/* linux/arch/arm/plat-s3c64xx/s3c6400-init.c
+ *
+{
+ s3c24xx_init_uartdevs("s3c6400-uart", s3c64xx_uart_resources, cfg, no);
+}
-Index: linux-2.6.28/arch/arm/plat-s3c64xx/setup-fb-24bpp.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c64xx/setup-fb-24bpp.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c64xx/setup-fb-24bpp.c
@@ -0,0 +1,37 @@
+/* linux/arch/arm/plat-s3c64xx/setup-fb-24bpp.c
+ *
+ s3c_gpio_setpull(gpio, S3C_GPIO_PULL_NONE);
+ }
+}
-Index: linux-2.6.28/arch/arm/plat-s3c64xx/setup-i2c0.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c64xx/setup-i2c0.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c64xx/setup-i2c0.c
@@ -0,0 +1,31 @@
+/* linux/arch/arm/plat-s3c64xx/setup-i2c0.c
+ *
+ s3c_gpio_setpull(S3C64XX_GPB(5), S3C_GPIO_PULL_UP);
+ s3c_gpio_setpull(S3C64XX_GPB(6), S3C_GPIO_PULL_UP);
+}
-Index: linux-2.6.28/arch/arm/plat-s3c64xx/setup-i2c1.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c64xx/setup-i2c1.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c64xx/setup-i2c1.c
@@ -0,0 +1,31 @@
+/* linux/arch/arm/plat-s3c64xx/setup-i2c1.c
+ *
+ s3c_gpio_setpull(S3C64XX_GPB(2), S3C_GPIO_PULL_UP);
+ s3c_gpio_setpull(S3C64XX_GPB(3), S3C_GPIO_PULL_UP);
+}
-Index: linux-2.6.28/arch/arm/plat-s3c64xx/sleep.S
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/arch/arm/plat-s3c64xx/sleep.S 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/arch/arm/plat-s3c64xx/sleep.S
@@ -0,0 +1,143 @@
+/* linux/0arch/arm/plat-s3c64xx/sleep.S
+ *
+ mov pc, r2 /* jump back */
+
+ .end
-Index: linux-2.6.28/dfu-kern
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/dfu-kern 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/dfu-kern
@@ -0,0 +1,14 @@
+#!/bin/bash
+
+fi
+
+
-Index: linux-2.6.28/Documentation/arm/Samsung-S3C24XX/Suspend.txt
-===================================================================
---- linux-2.6.28.orig/Documentation/arm/Samsung-S3C24XX/Suspend.txt 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/Documentation/arm/Samsung-S3C24XX/Suspend.txt 2009-01-02 00:01:56.000000000 +0100
-@@ -40,13 +40,13 @@ Resuming
+--- a/Documentation/arm/Samsung-S3C24XX/Suspend.txt
++++ b/Documentation/arm/Samsung-S3C24XX/Suspend.txt
+@@ -40,13 +40,13 @@
Machine Support
---------------
needs to setup anything else for power management support.
There is currently no support for over-riding the default method of
-@@ -74,7 +74,7 @@ statuc void __init machine_init(void)
+@@ -74,7 +74,7 @@
enable_irq_wake(IRQ_EINT0);
}
-Index: linux-2.6.28/drivers/android/alarm.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/android/alarm.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/android/alarm.c
@@ -0,0 +1,542 @@
+/* drivers/android/alarm.c
+ *
+module_init(alarm_init);
+module_exit(alarm_exit);
+
-Index: linux-2.6.28/drivers/android/binder.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/android/binder.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/android/binder.c
@@ -0,0 +1,3495 @@
+/* drivers/android/binder.c
+ *
+
+device_initcall(binder_init);
+
-Index: linux-2.6.28/drivers/android/Kconfig
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/android/Kconfig 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/android/Kconfig
@@ -0,0 +1,93 @@
+menu "Android"
+
+ default y
+
+endmenu
-Index: linux-2.6.28/drivers/android/logger.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/android/logger.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/android/logger.c
@@ -0,0 +1,607 @@
+/*
+ * drivers/android/logger.c
+ return ret;
+}
+device_initcall(logger_init);
-Index: linux-2.6.28/drivers/android/Makefile
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/android/Makefile 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/android/Makefile
@@ -0,0 +1,6 @@
+obj-$(CONFIG_ANDROID_BINDER_IPC) += binder.o
+obj-$(CONFIG_ANDROID_POWER) += power.o
+obj-$(CONFIG_ANDROID_LOGGER) += logger.o
+obj-$(CONFIG_ANDROID_RAM_CONSOLE) += ram_console.o
+obj-$(CONFIG_ANDROID_TIMED_GPIO) += timed_gpio.o
-Index: linux-2.6.28/drivers/android/power.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/android/power.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/android/power.c
@@ -0,0 +1,1336 @@
+/* drivers/android/power.c
+ *
+EXPORT_SYMBOL(android_unregister_early_suspend);
+
+
-Index: linux-2.6.28/drivers/android/ram_console.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/android/ram_console.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/android/ram_console.c
@@ -0,0 +1,395 @@
+/* drivers/android/ram_console.c
+ *
+#endif
+late_initcall(ram_console_late_init);
+
-Index: linux-2.6.28/drivers/android/timed_gpio.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/android/timed_gpio.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/android/timed_gpio.c
@@ -0,0 +1,177 @@
+/* drivers/android/timed_gpio.c
+ *
+MODULE_AUTHOR("Mike Lockwood <lockwood@android.com>");
+MODULE_DESCRIPTION("Android timed gpio driver");
+MODULE_LICENSE("GPL");
-Index: linux-2.6.28/drivers/ar6000/ar6000/ar6000_drv.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/ar6000/ar6000_drv.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/ar6000/ar6000_drv.c
@@ -0,0 +1,3124 @@
+/*
+ *
+ A_UINT32 targReplyArg)
+{
+}
-Index: linux-2.6.28/drivers/ar6000/ar6000/ar6000_drv.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/ar6000/ar6000_drv.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/ar6000/ar6000_drv.h
@@ -0,0 +1,361 @@
+/*
+ *
+#endif
+
+#endif /* _AR6000_H_ */
-Index: linux-2.6.28/drivers/ar6000/ar6000/ar6000_raw_if.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/ar6000/ar6000_raw_if.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/ar6000/ar6000_raw_if.c
@@ -0,0 +1,439 @@
+/*
+ *
+ return length;
+}
+#endif /* HTC_RAW_INTERFACE */
-Index: linux-2.6.28/drivers/ar6000/ar6000/ar6xapi_linux.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/ar6000/ar6xapi_linux.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/ar6000/ar6xapi_linux.h
@@ -0,0 +1,128 @@
+#ifndef _AR6XAPI_LINUX_H
+#define _AR6XAPI_LINUX_H
+#endif
+
+#endif
-Index: linux-2.6.28/drivers/ar6000/ar6000/athdrv_linux.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/ar6000/athdrv_linux.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/ar6000/athdrv_linux.h
@@ -0,0 +1,993 @@
+/*
+ * Copyright (c) 2004-2006 Atheros Communications Inc.
+}
+#endif
+#endif
-Index: linux-2.6.28/drivers/ar6000/ar6000/athtypes_linux.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/ar6000/athtypes_linux.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/ar6000/athtypes_linux.h
@@ -0,0 +1,47 @@
+/*
+ * $Id: //depot/sw/releases/olca2.0-GPL/host/os/linux/include/athtypes_linux.h#1 $
+
+
+#endif /* _ATHTYPES_LINUX_H_ */
-Index: linux-2.6.28/drivers/ar6000/ar6000/config_linux.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/ar6000/config_linux.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/ar6000/config_linux.h
@@ -0,0 +1,44 @@
+/*
+ * Copyright (c) 2004-2007 Atheros Communications Inc.
+#endif
+
+#endif
-Index: linux-2.6.28/drivers/ar6000/ar6000/debug_linux.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/ar6000/debug_linux.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/ar6000/debug_linux.h
@@ -0,0 +1,86 @@
+/*
+ * Copyright (c) 2004-2006 Atheros Communications Inc.
+#endif
+
+#endif /* _DEBUG_LINUX_H_ */
-Index: linux-2.6.28/drivers/ar6000/ar6000/ioctl.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/ar6000/ioctl.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/ar6000/ioctl.c
@@ -0,0 +1,2540 @@
+/*
+ *
+ return ret;
+}
+
-Index: linux-2.6.28/drivers/ar6000/ar6000/netbuf.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/ar6000/netbuf.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/ar6000/netbuf.c
@@ -0,0 +1,225 @@
+
+/*
+ return A_OK;
+}
+
-Index: linux-2.6.28/drivers/ar6000/ar6000/osapi_linux.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/ar6000/osapi_linux.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/ar6000/osapi_linux.h
@@ -0,0 +1,319 @@
+/*
+ * $Id: //depot/sw/releases/olca2.0-GPL/host/os/linux/include/osapi_linux.h#1 $
+#endif /* __KERNEL__ */
+
+#endif /* _OSAPI_LINUX_H_ */
-Index: linux-2.6.28/drivers/ar6000/ar6000/wireless_ext.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/ar6000/wireless_ext.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/ar6000/wireless_ext.c
@@ -0,0 +1,1972 @@
+/*
+ *
+};
+
+
-Index: linux-2.6.28/drivers/ar6000/bmi/bmi.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/bmi/bmi.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/bmi/bmi.c
@@ -0,0 +1,657 @@
+/*
+ * Copyright (c) 2004-2007 Atheros Communications Inc.
+
+ return status;
+}
-Index: linux-2.6.28/drivers/ar6000/bmi/bmi_internal.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/bmi/bmi_internal.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/bmi/bmi_internal.h
@@ -0,0 +1,45 @@
+#ifndef BMI_INTERNAL_H
+#define BMI_INTERNAL_H
+ A_UINT32 length);
+
+#endif
-Index: linux-2.6.28/drivers/ar6000/hif/hif2.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/hif/hif2.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/hif/hif2.c
@@ -0,0 +1,646 @@
+/*
+ * hif2.c - HIF layer re-implementation for the Linux SDIO stack
+ mutex_unlock(&shutdown_lock);
+ }
+}
-Index: linux-2.6.28/drivers/ar6000/hif/hif.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/hif/hif.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/hif/hif.c
@@ -0,0 +1,824 @@
+/*
+ * @file: hif.c
+
+ return;
+}
-Index: linux-2.6.28/drivers/ar6000/hif/hif_internal.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/hif/hif_internal.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/hif/hif_internal.h
@@ -0,0 +1,102 @@
+/*
+ * @file: hif_internal.h
+
+void
+delHifDevice(SDDEVICE *handle);
-Index: linux-2.6.28/drivers/ar6000/htc/ar6k.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/htc/ar6k.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/htc/ar6k.c
@@ -0,0 +1,991 @@
+/*
+ * AR6K device layer that handles register level I/O
+
+
+
-Index: linux-2.6.28/drivers/ar6000/htc/ar6k_events.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/htc/ar6k_events.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/htc/ar6k_events.c
@@ -0,0 +1,638 @@
+/*
+ * AR6K Driver layer event handling (i.e. interrupts, message polling)
+}
+
+
-Index: linux-2.6.28/drivers/ar6000/htc/ar6k.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/htc/ar6k.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/htc/ar6k.h
@@ -0,0 +1,191 @@
+/*
+ *
+#endif
+
+#endif /*AR6K_H_*/
-Index: linux-2.6.28/drivers/ar6000/htc/htc.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/htc/htc.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/htc/htc.c
@@ -0,0 +1,507 @@
+/*
+ *
+ return FALSE;
+#endif
+}
-Index: linux-2.6.28/drivers/ar6000/htc/htc_debug.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/htc/htc_debug.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/htc/htc_debug.h
@@ -0,0 +1,65 @@
+#ifndef HTC_DEBUG_H_
+#define HTC_DEBUG_H_
+void DebugDumpBytes(A_UCHAR *buffer, A_UINT16 length, char *pDescription);
+
+#endif /*HTC_DEBUG_H_*/
-Index: linux-2.6.28/drivers/ar6000/htc/htc_internal.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/htc/htc_internal.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/htc/htc_internal.h
@@ -0,0 +1,168 @@
+/*
+ *
+#endif
+
+#endif /* _HTC_INTERNAL_H_ */
-Index: linux-2.6.28/drivers/ar6000/htc/htc_recv.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/htc/htc_recv.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/htc/htc_recv.c
@@ -0,0 +1,703 @@
+/*
+ *
+}
+
+
-Index: linux-2.6.28/drivers/ar6000/htc/htc_send.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/htc/htc_send.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/htc/htc_send.c
@@ -0,0 +1,543 @@
+/*
+ *
+ UNLOCK_HTC_TX(target);
+
+}
-Index: linux-2.6.28/drivers/ar6000/htc/htc_services.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/htc/htc_services.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/htc/htc_services.c
@@ -0,0 +1,403 @@
+/*
+ *
+ }
+
+}
-Index: linux-2.6.28/drivers/ar6000/include/a_config.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/a_config.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/a_config.h
@@ -0,0 +1,27 @@
+#ifndef _A_CONFIG_H_
+#define _A_CONFIG_H_
+#include "../ar6000/config_linux.h"
+
+#endif
-Index: linux-2.6.28/drivers/ar6000/include/a_debug.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/a_debug.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/a_debug.h
@@ -0,0 +1,41 @@
+#ifndef _A_DEBUG_H_
+#define _A_DEBUG_H_
+#include "../ar6000/debug_linux.h"
+
+#endif
-Index: linux-2.6.28/drivers/ar6000/include/a_drv_api.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/a_drv_api.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/a_drv_api.h
@@ -0,0 +1,185 @@
+#ifndef _A_DRV_API_H_
+#define _A_DRV_API_H_
+#endif
+
+#endif
-Index: linux-2.6.28/drivers/ar6000/include/a_drv.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/a_drv.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/a_drv.h
@@ -0,0 +1,28 @@
+#ifndef _A_DRV_H_
+#define _A_DRV_H_
+#include "../ar6000/athdrv_linux.h"
+
+#endif /* _ADRV_H_ */
-Index: linux-2.6.28/drivers/ar6000/include/a_osapi.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/a_osapi.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/a_osapi.h
@@ -0,0 +1,28 @@
+#ifndef _A_OSAPI_H_
+#define _A_OSAPI_H_
+#include "../ar6000/osapi_linux.h"
+
+#endif /* _OSAPI_H_ */
-Index: linux-2.6.28/drivers/ar6000/include/ar6000_api.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/ar6000_api.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/ar6000_api.h
@@ -0,0 +1,29 @@
+#ifndef _AR6000_API_H_
+#define _AR6000_API_H_
+
+#endif /* _AR6000_API_H */
+
-Index: linux-2.6.28/drivers/ar6000/include/ar6000_diag.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/ar6000_diag.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/ar6000_diag.h
@@ -0,0 +1,38 @@
+/*
+ *
+ A_UCHAR *data, A_UINT32 length);
+
+#endif /*AR6000_DIAG_H_*/
-Index: linux-2.6.28/drivers/ar6000/include/AR6001_regdump.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/AR6001_regdump.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/AR6001_regdump.h
@@ -0,0 +1,100 @@
+/*
+ * Copyright (c) 2006 Atheros Communications Inc.
+#define RD_SIZE (34*4) /* Space for this number of words */
+
+#endif /* __AR6000_REGDUMP_H__ */
-Index: linux-2.6.28/drivers/ar6000/include/AR6Khwreg.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/AR6Khwreg.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/AR6Khwreg.h
@@ -0,0 +1,147 @@
+/*
+ * Copyright (c) 2004-2007 Atheros Communications Inc.
+#endif
+
+#endif /* __AR6KHWREG_H__ */
-Index: linux-2.6.28/drivers/ar6000/include/AR6K_version.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/AR6K_version.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/AR6K_version.h
@@ -0,0 +1,36 @@
+#define __VER_MAJOR_ 2
+#define __VER_MINOR_ 0
+#define AR6K_SW_VERSION ( ( __VER_MAJOR_ << VER_MAJOR_BIT_OFFSET ) + ( __VER_MINOR_ << VER_MINOR_BIT_OFFSET ) + ( __VER_PATCH_ << VER_PATCH_BIT_OFFSET ) + ( __BUILD_NUMBER_ << VER_BUILD_NUM_BIT_OFFSET ) )
+
+
-Index: linux-2.6.28/drivers/ar6000/include/AR6K_version.h.NEW
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/AR6K_version.h.NEW 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/AR6K_version.h.NEW
@@ -0,0 +1,36 @@
+#define __VER_MAJOR_ 2
+#define __VER_MINOR_ 0
+#define AR6K_SW_VERSION ( ( __VER_MAJOR_ << VER_MAJOR_BIT_OFFSET ) + ( __VER_MINOR_ << VER_MINOR_BIT_OFFSET ) + ( __VER_PATCH_ << VER_PATCH_BIT_OFFSET ) + ( __BUILD_NUMBER_ << VER_BUILD_NUM_BIT_OFFSET ) )
+
+
-Index: linux-2.6.28/drivers/ar6000/include/athdefs.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/athdefs.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/athdefs.h
@@ -0,0 +1,85 @@
+#ifndef __ATHDEFS_H__
+#define __ATHDEFS_H__
+}WLAN_CAPABILITY;
+
+#endif /* __ATHDEFS_H__ */
-Index: linux-2.6.28/drivers/ar6000/include/athdrv.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/athdrv.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/athdrv.h
@@ -0,0 +1,32 @@
+/*
+ * Copyright (c) 2004-2006 Atheros Communications Inc.
+#endif
+
+#endif /* _ATHDRV_H_ */
-Index: linux-2.6.28/drivers/ar6000/include/athendpack.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/athendpack.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/athendpack.h
@@ -0,0 +1,41 @@
+/*+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+ * @file: athendpack.h
+#include "../os/wince/include/athendpack_wince.h"
+#endif /* WINCE */
+
-Index: linux-2.6.28/drivers/ar6000/include/athstartpack.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/athstartpack.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/athstartpack.h
@@ -0,0 +1,42 @@
+/*+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
+ * @file: athstartpack.h
+#include "../os/wince/include/athstartpack_wince.h"
+#endif /* WINCE */
+
-Index: linux-2.6.28/drivers/ar6000/include/a_types.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/a_types.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/a_types.h
@@ -0,0 +1,28 @@
+#ifndef _A_TYPES_H_
+#define _A_TYPES_H_
+#include "../ar6000/athtypes_linux.h"
+
+#endif /* _ATHTYPES_H_ */
-Index: linux-2.6.28/drivers/ar6000/include/bmi.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/bmi.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/bmi.h
@@ -0,0 +1,100 @@
+#ifndef _BMI_H_
+#define _BMI_H_
+#endif
+
+#endif /* _BMI_H_ */
-Index: linux-2.6.28/drivers/ar6000/include/bmi_msg.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/bmi_msg.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/bmi_msg.h
@@ -0,0 +1,199 @@
+#ifndef __BMI_MSG_H__
+#define __BMI_MSG_H__
+
+
+#endif /* __BMI_MSG_H__ */
-Index: linux-2.6.28/drivers/ar6000/include/common_drv.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/common_drv.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/common_drv.h
@@ -0,0 +1,61 @@
+/*
+ *
+#endif
+
+#endif /*COMMON_DRV_H_*/
-Index: linux-2.6.28/drivers/ar6000/include/dbglog_api.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/dbglog_api.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/dbglog_api.h
@@ -0,0 +1,46 @@
+#ifndef _DBGLOG_API_H_
+#define _DBGLOG_API_H_
+#endif
+
+#endif /* _DBGLOG_API_H_ */
-Index: linux-2.6.28/drivers/ar6000/include/dbglog.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/dbglog.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/dbglog.h
@@ -0,0 +1,107 @@
+/*
+ * Copyright (c) 2004-2007 Atheros Communications Inc.
+#endif
+
+#endif /* _DBGLOG_H_ */
-Index: linux-2.6.28/drivers/ar6000/include/dbglog_id.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/dbglog_id.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/dbglog_id.h
@@ -0,0 +1,307 @@
+/*
+ *
+#endif
+
+#endif /* _DBGLOG_ID_H_ */
-Index: linux-2.6.28/drivers/ar6000/include/dl_list.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/dl_list.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/dl_list.h
@@ -0,0 +1,114 @@
+/*
+ *
+}
+
+#endif /* __DL_LIST_H___ */
-Index: linux-2.6.28/drivers/ar6000/include/dset_api.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/dset_api.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/dset_api.h
@@ -0,0 +1,63 @@
+/*
+ * Copyright (c) 2004-2006 Atheros Communications Inc.
+
+
+#endif /* _DSET_API_H_ */
-Index: linux-2.6.28/drivers/ar6000/include/dsetid.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/dsetid.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/dsetid.h
@@ -0,0 +1,110 @@
+/*
+ * Copyright (c) 2004-2007 Atheros Communications Inc.
+#define DSETID_BPATCH_FLAG 0x80000000
+
+#endif /* __DSETID_H__ */
-Index: linux-2.6.28/drivers/ar6000/include/dset_internal.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/dset_internal.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/dset_internal.h
@@ -0,0 +1,39 @@
+/*
+ * Copyright (c) 2007 Atheros Communications Inc.
+} dset_descriptor_t;
+
+#endif /* __DSET_INTERNAL_H__ */
-Index: linux-2.6.28/drivers/ar6000/include/gpio_api.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/gpio_api.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/gpio_api.h
@@ -0,0 +1,57 @@
+#ifndef _GPIO_API_H_
+#define _GPIO_API_H_
+A_STATUS wmi_gpio_intr_ack(struct wmi_t *wmip, A_UINT32 ack_mask);
+
+#endif /* _GPIO_API_H_ */
-Index: linux-2.6.28/drivers/ar6000/include/gpio.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/gpio.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/gpio.h
@@ -0,0 +1,34 @@
+/*
+ * Copyright (c) 2005 Atheros Communications Inc.
+
+#define GPIO_LAST_REGISTER_ID GPIO_ID_PIN(17)
+#define GPIO_ID_NONE 0xffffffff
-Index: linux-2.6.28/drivers/ar6000/include/hif.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/hif.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/hif.h
@@ -0,0 +1,296 @@
+/*
+ * Copyright (c) 2004-2007 Atheros Communications Inc.
+#endif
+
+#endif /* _HIF_H_ */
-Index: linux-2.6.28/drivers/ar6000/include/host_version.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/host_version.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/host_version.h
@@ -0,0 +1,49 @@
+#ifndef _HOST_VERSION_H_
+#define _HOST_VERSION_H_
+#endif
+
+#endif /* _HOST_VERSION_H_ */
-Index: linux-2.6.28/drivers/ar6000/include/htc_api.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/htc_api.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/htc_api.h
@@ -0,0 +1,436 @@
+/*
+ *
+#endif
+
+#endif /* _HTC_API_H_ */
-Index: linux-2.6.28/drivers/ar6000/include/htc.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/htc.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/htc.h
@@ -0,0 +1,190 @@
+/*
+ * Copyright (c) 2007 Atheros Communications Inc.
+
+#endif /* __HTC_H__ */
+
-Index: linux-2.6.28/drivers/ar6000/include/htc_packet.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/htc_packet.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/htc_packet.h
@@ -0,0 +1,138 @@
+/*
+ *
+}
+
+#endif /*HTC_PACKET_H_*/
-Index: linux-2.6.28/drivers/ar6000/include/htc_services.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/htc_services.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/htc_services.h
@@ -0,0 +1,37 @@
+/*
+ * Copyright (c) 2007 Atheros Communications Inc.
+#define HTC_RAW_STREAMS_SVC MAKE_SERVICE_ID(HTC_TEST_GROUP,0)
+
+#endif /*HTC_SERVICES_H_*/
-Index: linux-2.6.28/drivers/ar6000/include/ieee80211.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/ieee80211.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/ieee80211.h
@@ -0,0 +1,342 @@
+/*-
+ * Copyright (c) 2001 Atsushi Onoe
+#include "athendpack.h"
+
+#endif /* _NET80211_IEEE80211_H_ */
-Index: linux-2.6.28/drivers/ar6000/include/ieee80211_ioctl.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/ieee80211_ioctl.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/ieee80211_ioctl.h
@@ -0,0 +1,163 @@
+/*
+ * Copyright (c) 2004-2005 Atheros Communications Inc.
+#endif
+
+#endif /* _IEEE80211_IOCTL_H_ */
-Index: linux-2.6.28/drivers/ar6000/include/ieee80211_node.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/ieee80211_node.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/ieee80211_node.h
@@ -0,0 +1,77 @@
+/*-
+ * Copyright (c) 2001 Atsushi Onoe
+#define WLAN_NODE_INACT_TIMEOUT_MSEC 10000
+
+#endif /* _IEEE80211_NODE_H_ */
-Index: linux-2.6.28/drivers/ar6000/include/ini_dset.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/ini_dset.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/ini_dset.h
@@ -0,0 +1,40 @@
+/*
+ * Copyright (c) 2004-2007 Atheros Communications Inc.
+} POSTPACK INI_DSET_REG_OVERRIDE;
+
+#endif
-Index: linux-2.6.28/drivers/ar6000/include/regDb.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/regDb.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/regDb.h
@@ -0,0 +1,19 @@
+/*
+ * Copyright (c) 2005 Atheros Communications, Inc.
+#include "./regulatory/reg_dbvalues.h"
+
+#endif /* __REG_DB_H__ */
-Index: linux-2.6.28/drivers/ar6000/include/regdump.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/regdump.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/regdump.h
@@ -0,0 +1,33 @@
+#ifndef __REGDUMP_H__
+#define __REGDUMP_H__
+};
+#endif /* __ASSEMBLER__ */
+#endif /* __REGDUMP_H__ */
-Index: linux-2.6.28/drivers/ar6000/include/targaddrs.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/targaddrs.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/targaddrs.h
@@ -0,0 +1,158 @@
+/*
+ * Copyright (c) 2004-2007 Atheros Communications Inc.
+#endif /* !__ASSEMBLER__ */
+
+#endif /* __TARGADDRS_H__ */
-Index: linux-2.6.28/drivers/ar6000/include/testcmd.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/testcmd.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/testcmd.h
@@ -0,0 +1,144 @@
+/*
+ * Copyright (c) 2004-2005 Atheros Communications Inc.
+#endif
+
+#endif /* TESTCMD_H_ */
-Index: linux-2.6.28/drivers/ar6000/include/wlan_api.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/wlan_api.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/wlan_api.h
@@ -0,0 +1,101 @@
+#ifndef _HOST_WLAN_API_H_
+#define _HOST_WLAN_API_H_
+#endif
+
+#endif /* _HOST_WLAN_API_H_ */
-Index: linux-2.6.28/drivers/ar6000/include/wlan_dset.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/wlan_dset.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/wlan_dset.h
@@ -0,0 +1,20 @@
+/*
+ * Copyright (c) 2007 Atheros Communications, Inc.
+} POSTPACK WOW_CONFIG_DSET;
+
+#endif
-Index: linux-2.6.28/drivers/ar6000/include/wmi_api.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/wmi_api.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/wmi_api.h
@@ -0,0 +1,260 @@
+#ifndef _WMI_API_H_
+#define _WMI_API_H_
+#endif
+
+#endif /* _WMI_API_H_ */
-Index: linux-2.6.28/drivers/ar6000/include/wmi.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/wmi.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/wmi.h
@@ -0,0 +1,1743 @@
+/*
+ * Copyright (c) 2004-2006 Atheros Communications Inc.
+#endif
+
+#endif /* _WMI_H_ */
-Index: linux-2.6.28/drivers/ar6000/include/wmix.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/include/wmix.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/include/wmix.h
@@ -0,0 +1,233 @@
+/*
+ * Copyright (c) 2004-2005 Atheros Communications Inc.
+#endif
+
+#endif /* _WMIX_H_ */
-Index: linux-2.6.28/drivers/ar6000/Kconfig
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/Kconfig 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/Kconfig
@@ -0,0 +1,7 @@
+config AR6000_WLAN
+ tristate "AR6000 wireless networking over SDIO"
+ default m
+ help
+ good luck.
-Index: linux-2.6.28/drivers/ar6000/Makefile
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/Makefile 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/Makefile
@@ -0,0 +1,38 @@
+REV ?= 2
+
+ wlan/wlan_utils.o
+
+
-Index: linux-2.6.28/drivers/ar6000/miscdrv/common_drv.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/miscdrv/common_drv.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/miscdrv/common_drv.c
@@ -0,0 +1,467 @@
+
+/*
+
+}
+
-Index: linux-2.6.28/drivers/ar6000/miscdrv/credit_dist.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/miscdrv/credit_dist.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/miscdrv/credit_dist.c
@@ -0,0 +1,346 @@
+
+/*
+ return A_OK;
+}
+
-Index: linux-2.6.28/drivers/ar6000/wlan/wlan_node.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/wlan/wlan_node.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/wlan/wlan_node.c
@@ -0,0 +1,371 @@
+/*-
+ * Copyright (c) 2001 Atsushi Onoe
+ wlan_node_dec_free (ni);
+ IEEE80211_NODE_UNLOCK (nt);
+}
-Index: linux-2.6.28/drivers/ar6000/wlan/wlan_recv_beacon.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/wlan/wlan_recv_beacon.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/wlan/wlan_recv_beacon.c
@@ -0,0 +1,192 @@
+/*-
+ * Copyright (c) 2001 Atsushi Onoe
+
+ return A_OK;
+}
-Index: linux-2.6.28/drivers/ar6000/wlan/wlan_utils.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/wlan/wlan_utils.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/wlan/wlan_utils.c
@@ -0,0 +1,59 @@
+/*
+ * Copyright (c) 2004-2005 Atheros Communications Inc.
+ return 15 + ((freq - 2512) / 20);
+ return (freq - 5000) / 5;
+}
-Index: linux-2.6.28/drivers/ar6000/wmi/wmi.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/wmi/wmi.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/wmi/wmi.c
@@ -0,0 +1,3954 @@
+/*
+ * Copyright (c) 2004-2007 Atheros Communications Inc.
+ NO_SYNC_WMIFLAG));
+}
+
-Index: linux-2.6.28/drivers/ar6000/wmi/wmi_doc.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/wmi/wmi_doc.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/wmi/wmi_doc.h
@@ -0,0 +1,4421 @@
+/*
+ *
+
+=====================================================================
+#endif
-Index: linux-2.6.28/drivers/ar6000/wmi/wmi_host.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/ar6000/wmi/wmi_host.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/ar6000/wmi/wmi_host.h
@@ -0,0 +1,71 @@
+#ifndef _WMI_HOST_H_
+#define _WMI_HOST_H_
+#endif
+
+#endif /* _WMI_HOST_H_ */
-Index: linux-2.6.28/drivers/base/bus.c
-===================================================================
---- linux-2.6.28.orig/drivers/base/bus.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/base/bus.c 2009-01-02 00:01:56.000000000 +0100
-@@ -141,6 +141,29 @@ void bus_remove_file(struct bus_type *bu
+--- a/drivers/base/bus.c
++++ b/drivers/base/bus.c
+@@ -141,6 +141,29 @@
}
EXPORT_SYMBOL_GPL(bus_remove_file);
static struct kobj_type bus_ktype = {
.sysfs_ops = &bus_sysfs_ops,
};
-Index: linux-2.6.28/drivers/base/core.c
-===================================================================
---- linux-2.6.28.orig/drivers/base/core.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/base/core.c 2009-01-02 00:01:56.000000000 +0100
-@@ -55,6 +55,11 @@ static inline int device_is_not_partitio
+--- a/drivers/base/core.c
++++ b/drivers/base/core.c
+@@ -55,6 +55,11 @@
*/
const char *dev_driver_string(const struct device *dev)
{
return dev->driver ? dev->driver->name :
(dev->bus ? dev->bus->name :
(dev->class ? dev->class->name : ""));
-Index: linux-2.6.28/drivers/base/power/main.c
-===================================================================
---- linux-2.6.28.orig/drivers/base/power/main.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/base/power/main.c 2009-01-02 00:01:56.000000000 +0100
-@@ -69,9 +69,9 @@ void device_pm_unlock(void)
+--- a/drivers/base/power/main.c
++++ b/drivers/base/power/main.c
+@@ -69,9 +69,9 @@
*/
void device_pm_add(struct device *dev)
{
mutex_lock(&dpm_list_mtx);
if (dev->parent) {
if (dev->parent->power.status >= DPM_SUSPENDING)
-Index: linux-2.6.28/drivers/char/Kconfig
-===================================================================
---- linux-2.6.28.orig/drivers/char/Kconfig 2009-01-02 00:00:02.000000000 +0100
-+++ linux-2.6.28/drivers/char/Kconfig 2009-01-02 00:01:56.000000000 +0100
-@@ -66,6 +66,18 @@ config VT_CONSOLE
+--- a/drivers/char/Kconfig
++++ b/drivers/char/Kconfig
+@@ -66,6 +66,18 @@
If unsure, say Y.
config HW_CONSOLE
bool
depends on VT && !S390 && !UML
-Index: linux-2.6.28/drivers/gpio/gpiolib.c
-===================================================================
---- linux-2.6.28.orig/drivers/gpio/gpiolib.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/gpio/gpiolib.c 2009-01-02 00:01:56.000000000 +0100
+--- a/drivers/gpio/gpiolib.c
++++ b/drivers/gpio/gpiolib.c
@@ -6,8 +6,7 @@
#include <linux/err.h>
#include <linux/debugfs.h>
/* Optional implementation infrastructure for GPIO interfaces.
*
-Index: linux-2.6.28/drivers/i2c/busses/i2c-s3c2410.c
-===================================================================
---- linux-2.6.28.orig/drivers/i2c/busses/i2c-s3c2410.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/i2c/busses/i2c-s3c2410.c 2009-01-02 00:51:37.000000000 +0100
+--- a/drivers/i2c/busses/i2c-s3c2410.c
++++ b/drivers/i2c/busses/i2c-s3c2410.c
@@ -34,14 +34,12 @@
#include <linux/platform_device.h>
#include <linux/clk.h>
/* i2c controller state */
-@@ -64,6 +62,7 @@ struct s3c24xx_i2c {
+@@ -64,6 +62,7 @@
unsigned int msg_ptr;
unsigned int tx_setup;
enum s3c24xx_i2c_state state;
unsigned long clkrate;
-@@ -71,7 +70,6 @@ struct s3c24xx_i2c {
+@@ -71,7 +70,6 @@
void __iomem *regs;
struct clk *clk;
struct device *dev;
struct resource *ioarea;
struct i2c_adapter adap;
-@@ -80,16 +78,7 @@ struct s3c24xx_i2c {
+@@ -80,16 +78,7 @@
#endif
};
/* s3c24xx_i2c_is2440()
*
-@@ -103,21 +92,6 @@ static inline int s3c24xx_i2c_is2440(str
+@@ -103,21 +92,6 @@
return !strcmp(pdev->name, "s3c2440-i2c");
}
/* s3c24xx_i2c_master_complete
*
* complete the message and wake up the caller, using the given return code,
-@@ -130,7 +104,7 @@ static inline void s3c24xx_i2c_master_co
+@@ -130,7 +104,7 @@
i2c->msg_ptr = 0;
i2c->msg = NULL;
i2c->msg_num = 0;
if (ret)
i2c->msg_idx = ret;
-@@ -141,19 +115,17 @@ static inline void s3c24xx_i2c_master_co
+@@ -141,19 +115,17 @@
static inline void s3c24xx_i2c_disable_ack(struct s3c24xx_i2c *i2c)
{
unsigned long tmp;
}
/* irq enable/disable functions */
-@@ -161,15 +133,23 @@ static inline void s3c24xx_i2c_enable_ac
+@@ -161,15 +133,23 @@
static inline void s3c24xx_i2c_disable_irq(struct s3c24xx_i2c *i2c)
{
unsigned long tmp;
tmp = readl(i2c->regs + S3C2410_IICCON);
writel(tmp | S3C2410_IICCON_IRQEN, i2c->regs + S3C2410_IICCON);
}
-@@ -177,10 +157,10 @@ static inline void s3c24xx_i2c_enable_ir
+@@ -177,10 +157,10 @@
/* s3c24xx_i2c_message_start
*
struct i2c_msg *msg)
{
unsigned int addr = (msg->addr & 0x7f) << 1;
-@@ -199,15 +179,15 @@ static void s3c24xx_i2c_message_start(st
+@@ -199,15 +179,15 @@
if (msg->flags & I2C_M_REV_DIR_ADDR)
addr ^= 1;
/* delay here to ensure the data byte has gotten onto the bus
* before the transaction is started */
-@@ -215,8 +195,8 @@ static void s3c24xx_i2c_message_start(st
+@@ -215,8 +195,8 @@
dev_dbg(i2c->dev, "iiccon, %08lx\n", iiccon);
writel(iiccon, i2c->regs + S3C2410_IICCON);
writel(stat, i2c->regs + S3C2410_IICSTAT);
}
-@@ -227,11 +207,11 @@ static inline void s3c24xx_i2c_stop(stru
+@@ -227,11 +207,11 @@
dev_dbg(i2c->dev, "STOP\n");
/* stop the transfer */
s3c24xx_i2c_master_complete(i2c, ret);
s3c24xx_i2c_disable_irq(i2c);
}
-@@ -241,7 +221,7 @@ static inline void s3c24xx_i2c_stop(stru
+@@ -241,7 +221,7 @@
/* is_lastmsg()
*
*/
static inline int is_lastmsg(struct s3c24xx_i2c *i2c)
-@@ -289,14 +269,14 @@ static int i2s_s3c_irq_nextbyte(struct s
+@@ -289,14 +269,14 @@
case STATE_STOP:
dev_err(i2c->dev, "%s: called in STATE_STOP\n", __func__);
if (iicstat & S3C2410_IICSTAT_LASTBIT &&
!(i2c->msg->flags & I2C_M_IGNORE_NAK)) {
/* ack was not received... */
-@@ -322,7 +302,7 @@ static int i2s_s3c_irq_nextbyte(struct s
+@@ -322,7 +302,7 @@
if (i2c->state == STATE_READ)
goto prepare_read;
* send a byte as well */
case STATE_WRITE:
-@@ -339,7 +319,7 @@ static int i2s_s3c_irq_nextbyte(struct s
+@@ -339,7 +319,7 @@
}
}
if (!is_msgend(i2c)) {
byte = i2c->msg->buf[i2c->msg_ptr++];
-@@ -359,9 +339,9 @@ static int i2s_s3c_irq_nextbyte(struct s
+@@ -359,9 +339,9 @@
dev_dbg(i2c->dev, "WRITE: Next Message\n");
i2c->msg_ptr = 0;
/* check to see if we need to do another message */
if (i2c->msg->flags & I2C_M_NOSTART) {
-@@ -375,7 +355,6 @@ static int i2s_s3c_irq_nextbyte(struct s
+@@ -375,7 +355,6 @@
goto retry_write;
} else {
/* send the new start */
s3c24xx_i2c_message_start(i2c, i2c->msg);
i2c->state = STATE_START;
-@@ -389,7 +368,7 @@ static int i2s_s3c_irq_nextbyte(struct s
+@@ -389,7 +368,7 @@
break;
case STATE_READ:
* something with it, and then work out wether we are
* going to do any more read/write
*/
-@@ -397,13 +376,13 @@ static int i2s_s3c_irq_nextbyte(struct s
+@@ -397,13 +376,13 @@
byte = readb(i2c->regs + S3C2410_IICDS);
i2c->msg->buf[i2c->msg_ptr++] = byte;
} else if (is_msgend(i2c)) {
/* ok, we've read the entire buffer, see if there
* is anything else we need to do */
-@@ -429,7 +408,7 @@ static int i2s_s3c_irq_nextbyte(struct s
+@@ -429,7 +408,7 @@
/* acknowlegde the IRQ and get back on with the work */
out_ack:
tmp &= ~S3C2410_IICCON_IRQPEND;
writel(tmp, i2c->regs + S3C2410_IICCON);
out:
-@@ -450,19 +429,19 @@ static irqreturn_t s3c24xx_i2c_irq(int i
+@@ -450,19 +429,19 @@
status = readl(i2c->regs + S3C2410_IICSTAT);
if (status & S3C2410_IICSTAT_ARBITR) {
/* pretty much this leaves us with the fact that we've
* transmitted or received whatever byte we last sent */
-@@ -485,16 +464,13 @@ static int s3c24xx_i2c_set_master(struct
+@@ -485,16 +464,13 @@
while (timeout-- > 0) {
iicstat = readl(i2c->regs + S3C2410_IICSTAT);
return -ETIMEDOUT;
}
-@@ -503,7 +479,8 @@ static int s3c24xx_i2c_set_master(struct
+@@ -503,7 +479,8 @@
* this starts an i2c transfer
*/
{
unsigned long timeout;
int ret;
-@@ -511,6 +488,15 @@ static int s3c24xx_i2c_doxfer(struct s3c
+@@ -511,6 +488,15 @@
if (i2c->suspended)
return -EIO;
ret = s3c24xx_i2c_set_master(i2c);
if (ret != 0) {
dev_err(i2c->dev, "cannot get bus (error %d)\n", ret);
-@@ -529,12 +515,12 @@ static int s3c24xx_i2c_doxfer(struct s3c
+@@ -529,12 +515,12 @@
s3c24xx_i2c_enable_irq(i2c);
s3c24xx_i2c_message_start(i2c, msgs);
spin_unlock_irq(&i2c->lock);
* noisy when doing an i2cdetect */
if (timeout == 0)
-@@ -591,19 +577,6 @@ static const struct i2c_algorithm s3c24x
+@@ -591,19 +577,6 @@
.functionality = s3c24xx_i2c_func,
};
/* s3c24xx_i2c_calcdivisor
*
* return the divisor settings for a given frequency
-@@ -643,7 +616,7 @@ static inline int freq_acceptable(unsign
+@@ -643,7 +616,7 @@
{
int diff = freq - wanted;
}
/* s3c24xx_i2c_clockrate
-@@ -655,7 +628,7 @@ static inline int freq_acceptable(unsign
+@@ -655,7 +628,7 @@
static int s3c24xx_i2c_clockrate(struct s3c24xx_i2c *i2c, unsigned int *got)
{
unsigned long clkin = clk_get_rate(i2c->clk);
unsigned int divs, div1;
u32 iiccon;
-@@ -663,10 +636,8 @@ static int s3c24xx_i2c_clockrate(struct
+@@ -663,10 +636,8 @@
int start, end;
i2c->clkrate = clkin;
dev_dbg(i2c->dev, "pdata %p, freq %lu %lu..%lu\n",
pdata, pdata->bus_freq, pdata->min_freq, pdata->max_freq);
-@@ -774,7 +745,7 @@ static inline void s3c24xx_i2c_deregiste
+@@ -774,7 +745,7 @@
/* s3c24xx_i2c_init
*
*/
static int s3c24xx_i2c_init(struct s3c24xx_i2c *i2c)
-@@ -785,15 +756,15 @@ static int s3c24xx_i2c_init(struct s3c24
+@@ -785,15 +756,15 @@
/* get the plafrom data */
writeb(pdata->slave_addr, i2c->regs + S3C2410_IICADD);
dev_info(i2c->dev, "slave address 0x%02x\n", pdata->slave_addr);
-@@ -831,12 +802,32 @@ static int s3c24xx_i2c_init(struct s3c24
+@@ -831,12 +802,32 @@
static int s3c24xx_i2c_probe(struct platform_device *pdev)
{
/* find the clock and enable it */
-@@ -878,7 +869,8 @@ static int s3c24xx_i2c_probe(struct plat
+@@ -878,7 +869,8 @@
goto err_ioarea;
}
/* setup info block for the i2c core */
-@@ -892,29 +884,23 @@ static int s3c24xx_i2c_probe(struct plat
+@@ -892,29 +884,23 @@
goto err_iomap;
/* find the IRQ for this unit (note, this relies on the init call to
ret = s3c24xx_i2c_register_cpufreq(i2c);
if (ret < 0) {
dev_err(&pdev->dev, "failed to register cpufreq notifier\n");
-@@ -944,7 +930,7 @@ static int s3c24xx_i2c_probe(struct plat
+@@ -944,7 +930,7 @@
s3c24xx_i2c_deregister_cpufreq(i2c);
err_irq:
err_iomap:
iounmap(i2c->regs);
-@@ -958,6 +944,7 @@ static int s3c24xx_i2c_probe(struct plat
+@@ -958,6 +944,7 @@
clk_put(i2c->clk);
err_noclk:
return ret;
}
-@@ -973,7 +960,7 @@ static int s3c24xx_i2c_remove(struct pla
+@@ -973,7 +960,7 @@
s3c24xx_i2c_deregister_cpufreq(i2c);
i2c_del_adapter(&i2c->adap);
clk_disable(i2c->clk);
clk_put(i2c->clk);
-@@ -982,6 +969,7 @@ static int s3c24xx_i2c_remove(struct pla
+@@ -982,6 +969,7 @@
release_resource(i2c->ioarea);
kfree(i2c->ioarea);
return 0;
}
-Index: linux-2.6.28/drivers/i2c/busses/Kconfig
-===================================================================
---- linux-2.6.28.orig/drivers/i2c/busses/Kconfig 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/i2c/busses/Kconfig 2009-01-02 00:01:56.000000000 +0100
-@@ -455,11 +455,12 @@ config I2C_PXA_SLAVE
+--- a/drivers/i2c/busses/Kconfig
++++ b/drivers/i2c/busses/Kconfig
+@@ -455,11 +455,12 @@
I2C bus.
config I2C_S3C2410
config I2C_SH7760
tristate "Renesas SH7760 I2C Controller"
-Index: linux-2.6.28/drivers/i2c/chips/Kconfig
-===================================================================
---- linux-2.6.28.orig/drivers/i2c/chips/Kconfig 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/i2c/chips/Kconfig 2009-01-02 00:01:56.000000000 +0100
-@@ -53,6 +53,26 @@ config SENSORS_EEPROM
+--- a/drivers/i2c/chips/Kconfig
++++ b/drivers/i2c/chips/Kconfig
+@@ -53,6 +53,26 @@
This driver can also be built as a module. If so, the module
will be called eeprom.
config SENSORS_PCF8574
tristate "Philips PCF8574 and PCF8574A (DEPRECATED)"
depends on EXPERIMENTAL && GPIO_PCF857X = "n"
-@@ -185,4 +205,23 @@ config MCU_MPC8349EMITX
+@@ -185,4 +205,23 @@
also register MCU GPIOs with the generic GPIO API, so you'll able
to use MCU pins as GPIOs.
+ This driver can also be built as a module. If so, the module
+ will be called pca9632.
endmenu
-Index: linux-2.6.28/drivers/i2c/chips/Makefile
-===================================================================
---- linux-2.6.28.orig/drivers/i2c/chips/Makefile 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/i2c/chips/Makefile 2009-01-02 00:01:56.000000000 +0100
-@@ -15,6 +15,8 @@ obj-$(CONFIG_AT24) += at24.o
+--- a/drivers/i2c/chips/Makefile
++++ b/drivers/i2c/chips/Makefile
+@@ -15,6 +15,8 @@
obj-$(CONFIG_SENSORS_EEPROM) += eeprom.o
obj-$(CONFIG_SENSORS_MAX6875) += max6875.o
obj-$(CONFIG_SENSORS_PCA9539) += pca9539.o
obj-$(CONFIG_SENSORS_PCF8574) += pcf8574.o
obj-$(CONFIG_PCF8575) += pcf8575.o
obj-$(CONFIG_SENSORS_PCF8591) += pcf8591.o
-@@ -23,6 +25,8 @@ obj-$(CONFIG_TPS65010) += tps65010.o
+@@ -23,6 +25,8 @@
obj-$(CONFIG_MENELAUS) += menelaus.o
obj-$(CONFIG_SENSORS_TSL2550) += tsl2550.o
obj-$(CONFIG_MCU_MPC8349EMITX) += mcu_mpc8349emitx.o
ifeq ($(CONFIG_I2C_DEBUG_CHIP),y)
EXTRA_CFLAGS += -DDEBUG
-Index: linux-2.6.28/drivers/i2c/chips/pca9632.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/i2c/chips/pca9632.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/i2c/chips/pca9632.c
@@ -0,0 +1,551 @@
+/*
+ * Philips/NXP PCA9632 low power LED driver.
+
+module_init(pca9632_init);
+module_exit(pca9632_exit);
-Index: linux-2.6.28/drivers/i2c/chips/pca9632.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/i2c/chips/pca9632.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/i2c/chips/pca9632.h
@@ -0,0 +1,24 @@
+#ifndef _PCA9632_H
+#define _PCA9632_H
+#define PCA9632_DMBLNK_SHIFT 5
+
+#endif /* _PCA9632_H */
-Index: linux-2.6.28/drivers/i2c/chips/pcf50606.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/i2c/chips/pcf50606.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/i2c/chips/pcf50606.c
@@ -0,0 +1,2193 @@
+/* Philips/NXP PCF50606 Power Management Unit (PMU) driver
+ *
+
+module_init(pcf50606_init);
+module_exit(pcf50606_exit);
-Index: linux-2.6.28/drivers/i2c/chips/pcf50606.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/i2c/chips/pcf50606.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/i2c/chips/pcf50606.h
@@ -0,0 +1,302 @@
+#ifndef _PCF50606_H
+#define _PCF50606_H
+
+#endif /* _PCF50606_H */
+
-Index: linux-2.6.28/drivers/i2c/chips/pcf50633.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/i2c/chips/pcf50633.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/i2c/chips/pcf50633.c
@@ -0,0 +1,1883 @@
+/* Philips PCF50633 Power Management Unit (PMU) driver
+ *
+
+module_init(pcf50633_init);
+module_exit(pcf50633_exit);
-Index: linux-2.6.28/drivers/i2c/i2c-core.c
-===================================================================
---- linux-2.6.28.orig/drivers/i2c/i2c-core.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/i2c/i2c-core.c 2009-01-02 00:01:56.000000000 +0100
+--- a/drivers/i2c/i2c-core.c
++++ b/drivers/i2c/i2c-core.c
@@ -1,4 +1,3 @@
-/* i2c-core.c - a device driver for the iic-bus interface */
/* ------------------------------------------------------------------------- */
/* Copyright (C) 1995-99 Simon G. Vogl
-@@ -158,10 +157,16 @@ static int i2c_device_suspend(struct dev
+@@ -158,10 +157,16 @@
if (!dev->driver)
return 0;
}
static int i2c_device_resume(struct device * dev)
-@@ -170,10 +175,16 @@ static int i2c_device_resume(struct devi
+@@ -170,10 +175,16 @@
if (!dev->driver)
return 0;
}
static void i2c_client_release(struct device *dev)
-@@ -1129,11 +1140,11 @@ static int i2c_probe_address(struct i2c_
+@@ -1129,11 +1140,11 @@
int err;
/* Make sure the address is valid */
/* Skip if already in use */
if (i2c_check_addr(adapter, addr))
-Index: linux-2.6.28/drivers/input/keyboard/gpio_keys.c
-===================================================================
---- linux-2.6.28.orig/drivers/input/keyboard/gpio_keys.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/input/keyboard/gpio_keys.c 2009-01-02 00:01:56.000000000 +0100
+--- a/drivers/input/keyboard/gpio_keys.c
++++ b/drivers/input/keyboard/gpio_keys.c
@@ -23,7 +23,7 @@
#include <linux/input.h>
#include <linux/gpio_keys.h>
struct gpio_button_data {
struct gpio_keys_button *button;
-Index: linux-2.6.28/drivers/input/keyboard/Kconfig
-===================================================================
---- linux-2.6.28.orig/drivers/input/keyboard/Kconfig 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/input/keyboard/Kconfig 2009-01-02 00:01:56.000000000 +0100
-@@ -323,4 +323,21 @@ config KEYBOARD_SH_KEYSC
+--- a/drivers/input/keyboard/Kconfig
++++ b/drivers/input/keyboard/Kconfig
+@@ -323,4 +323,21 @@
To compile this driver as a module, choose M here: the
module will be called sh_keysc.
+
+
endif
-Index: linux-2.6.28/drivers/input/keyboard/Makefile
-===================================================================
---- linux-2.6.28.orig/drivers/input/keyboard/Makefile 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/input/keyboard/Makefile 2009-01-02 00:01:56.000000000 +0100
-@@ -14,6 +14,8 @@ obj-$(CONFIG_KEYBOARD_LOCOMO) += locomo
+--- a/drivers/input/keyboard/Makefile
++++ b/drivers/input/keyboard/Makefile
+@@ -14,6 +14,8 @@
obj-$(CONFIG_KEYBOARD_NEWTON) += newtonkbd.o
obj-$(CONFIG_KEYBOARD_STOWAWAY) += stowaway.o
obj-$(CONFIG_KEYBOARD_CORGI) += corgikbd.o
obj-$(CONFIG_KEYBOARD_SPITZ) += spitzkbd.o
obj-$(CONFIG_KEYBOARD_TOSA) += tosakbd.o
obj-$(CONFIG_KEYBOARD_HIL) += hil_kbd.o
-Index: linux-2.6.28/drivers/input/keyboard/neo1973kbd.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/input/keyboard/neo1973kbd.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/input/keyboard/neo1973kbd.c
@@ -0,0 +1,465 @@
+/*
+ * Keyboard driver for FIC Neo1973 GSM phone
+MODULE_AUTHOR("Harald Welte <laforge@openmoko.org>");
+MODULE_DESCRIPTION("FIC Neo1973 buttons input driver");
+MODULE_LICENSE("GPL");
-Index: linux-2.6.28/drivers/input/keyboard/qt2410kbd.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/input/keyboard/qt2410kbd.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/input/keyboard/qt2410kbd.c
@@ -0,0 +1,231 @@
+/*
+ * Keyboard driver for Armzone QT2410
+MODULE_AUTHOR("Harald Welte <laforge@openmoko.org>");
+MODULE_DESCRIPTION("Armzone QT2410 Buttons Driver");
+MODULE_LICENSE("GPL");
-Index: linux-2.6.28/drivers/input/misc/Kconfig
-===================================================================
---- linux-2.6.28.orig/drivers/input/misc/Kconfig 2009-01-02 00:00:02.000000000 +0100
-+++ linux-2.6.28/drivers/input/misc/Kconfig 2009-01-02 00:01:56.000000000 +0100
-@@ -236,4 +236,25 @@ config INPUT_GPIO_BUTTONS
+--- a/drivers/input/misc/Kconfig
++++ b/drivers/input/misc/Kconfig
+@@ -236,4 +236,25 @@
To compile this driver as a module, choose M here: the
module will be called gpio-buttons.
+ Say Y to include support for input events on NXP PCF50606.
+
endif
-Index: linux-2.6.28/drivers/input/misc/lis302dl.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/input/misc/lis302dl.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/input/misc/lis302dl.c
@@ -0,0 +1,874 @@
+/* Linux kernel driver for the ST LIS302D 3-axis accelerometer
+ *
+
+module_init(lis302dl_init);
+module_exit(lis302dl_exit);
-Index: linux-2.6.28/drivers/input/misc/Makefile
-===================================================================
---- linux-2.6.28.orig/drivers/input/misc/Makefile 2009-01-02 00:00:02.000000000 +0100
-+++ linux-2.6.28/drivers/input/misc/Makefile 2009-01-02 00:05:46.000000000 +0100
-@@ -22,3 +22,6 @@ obj-$(CONFIG_INPUT_UINPUT) += uinput.o
+--- a/drivers/input/misc/Makefile
++++ b/drivers/input/misc/Makefile
+@@ -22,3 +22,6 @@
obj-$(CONFIG_INPUT_APANEL) += apanel.o
obj-$(CONFIG_INPUT_SGI_BTNS) += sgi_btns.o
obj-$(CONFIG_INPUT_GPIO_BUTTONS) += gpio_buttons.o
+obj-$(CONFIG_INPUT_LIS302DL) += lis302dl.o
+obj-$(CONFIG_INPUT_PCF50633_PMU) += pcf50633-input.o
+obj-$(CONFIG_INPUT_PCF50606_PMU) += pcf50606-input.o
-Index: linux-2.6.28/drivers/input/misc/pcf50606-input.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/input/misc/pcf50606-input.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/input/misc/pcf50606-input.c
@@ -0,0 +1,123 @@
+/* Philips PCF50606 Input Driver
+ *
+MODULE_DESCRIPTION("PCF50606 input driver");
+MODULE_LICENSE("GPL");
+MODULE_ALIAS("platform:pcf50606-input");
-Index: linux-2.6.28/drivers/input/misc/pcf50633-input.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/input/misc/pcf50633-input.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/input/misc/pcf50633-input.c
@@ -0,0 +1,123 @@
+/* Philips PCF50633 Input Driver
+ *
+MODULE_DESCRIPTION("PCF50633 input driver");
+MODULE_LICENSE("GPL");
+MODULE_ALIAS("platform:pcf50633-input");
-Index: linux-2.6.28/drivers/input/mousedev.c
-===================================================================
---- linux-2.6.28.orig/drivers/input/mousedev.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/input/mousedev.c 2009-01-02 00:01:56.000000000 +0100
-@@ -1016,6 +1016,7 @@ static const struct input_device_id mous
+--- a/drivers/input/mousedev.c
++++ b/drivers/input/mousedev.c
+@@ -1016,6 +1016,7 @@
.evbit = { BIT_MASK(EV_KEY) | BIT_MASK(EV_REL) },
.relbit = { BIT_MASK(REL_WHEEL) },
}, /* A separate scrollwheel */
{
.flags = INPUT_DEVICE_ID_MATCH_EVBIT |
INPUT_DEVICE_ID_MATCH_KEYBIT |
-@@ -1025,6 +1026,7 @@ static const struct input_device_id mous
+@@ -1025,6 +1026,7 @@
.absbit = { BIT_MASK(ABS_X) | BIT_MASK(ABS_Y) },
}, /* A tablet like device, at least touch detection,
two absolute axes */
{
.flags = INPUT_DEVICE_ID_MATCH_EVBIT |
INPUT_DEVICE_ID_MATCH_KEYBIT |
-Index: linux-2.6.28/drivers/input/touchscreen/Kconfig
-===================================================================
---- linux-2.6.28.orig/drivers/input/touchscreen/Kconfig 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/input/touchscreen/Kconfig 2009-01-02 00:01:56.000000000 +0100
-@@ -11,6 +11,50 @@ menuconfig INPUT_TOUCHSCREEN
+--- a/drivers/input/touchscreen/Kconfig
++++ b/drivers/input/touchscreen/Kconfig
+@@ -11,6 +11,50 @@
if INPUT_TOUCHSCREEN
config TOUCHSCREEN_ADS7846
tristate "ADS7846/TSC2046 and ADS7843 based touchscreens"
depends on SPI_MASTER
-@@ -71,6 +115,25 @@ config TOUCHSCREEN_FUJITSU
+@@ -71,6 +115,25 @@
To compile this driver as a module, choose M here: the
module will be called fujitsu-ts.
config TOUCHSCREEN_GUNZE
tristate "Gunze AHL-51S touchscreen"
select SERIO
-@@ -376,4 +439,15 @@ config TOUCHSCREEN_TOUCHIT213
+@@ -376,4 +439,15 @@
To compile this driver as a module, choose M here: the
module will be called touchit213.
+ module will be called pcap7200.
endif
+
-Index: linux-2.6.28/drivers/input/touchscreen/Makefile
-===================================================================
---- linux-2.6.28.orig/drivers/input/touchscreen/Makefile 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/input/touchscreen/Makefile 2009-01-02 00:01:56.000000000 +0100
-@@ -31,3 +31,10 @@ wm97xx-ts-$(CONFIG_TOUCHSCREEN_WM9705) +
+--- a/drivers/input/touchscreen/Makefile
++++ b/drivers/input/touchscreen/Makefile
+@@ -31,3 +31,10 @@
wm97xx-ts-$(CONFIG_TOUCHSCREEN_WM9712) += wm9712.o
wm97xx-ts-$(CONFIG_TOUCHSCREEN_WM9713) += wm9713.o
obj-$(CONFIG_TOUCHSCREEN_WM97XX_MAINSTONE) += mainstone-wm97xx.o
+obj-$(CONFIG_TOUCHSCREEN_FILTER_MEDIAN) += ts_filter_median.o
+obj-$(CONFIG_TOUCHSCREEN_FILTER_MEAN) += ts_filter_mean.o
+obj-$(CONFIG_TOUCHSCREEN_PCAP7200) += pcap7200_ts.o
-Index: linux-2.6.28/drivers/input/touchscreen/s3c2410_ts.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/input/touchscreen/s3c2410_ts.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/input/touchscreen/s3c2410_ts.c
@@ -0,0 +1,618 @@
+/*
+ * This program is free software; you can redistribute it and/or modify
+module_init(s3c2410ts_init);
+module_exit(s3c2410ts_exit);
+
-Index: linux-2.6.28/drivers/input/touchscreen/ts_filter.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/input/touchscreen/ts_filter.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/input/touchscreen/ts_filter.c
@@ -0,0 +1,64 @@
+/*
+ * This program is free software; you can redistribute it and/or modify
+ *first = NULL;
+}
+EXPORT_SYMBOL_GPL(ts_filter_destroy_chain);
-Index: linux-2.6.28/drivers/input/touchscreen/ts_filter_group.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/input/touchscreen/ts_filter_group.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/input/touchscreen/ts_filter_group.c
@@ -0,0 +1,219 @@
+/*
+ * This program is free software; you can redistribute it and/or modify
+ .scale = ts_filter_group_scale,
+};
+
-Index: linux-2.6.28/drivers/input/touchscreen/ts_filter_linear.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/input/touchscreen/ts_filter_linear.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/input/touchscreen/ts_filter_linear.c
@@ -0,0 +1,178 @@
+/*
+ * This program is free software; you can redistribute it and/or modify
+ .process = ts_filter_linear_process,
+ .scale = ts_filter_linear_scale,
+};
-Index: linux-2.6.28/drivers/input/touchscreen/ts_filter_mean.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/input/touchscreen/ts_filter_mean.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/input/touchscreen/ts_filter_mean.c
@@ -0,0 +1,172 @@
+/*
+ * This program is free software; you can redistribute it and/or modify
+ .process = ts_filter_mean_process,
+ .scale = ts_filter_mean_scale,
+};
-Index: linux-2.6.28/drivers/input/touchscreen/ts_filter_median.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/input/touchscreen/ts_filter_median.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/input/touchscreen/ts_filter_median.c
@@ -0,0 +1,215 @@
+/*
+ * This program is free software; you can redistribute it and/or modify
+ .process = ts_filter_median_process,
+ .scale = ts_filter_median_scale,
+};
-Index: linux-2.6.28/drivers/Kconfig
-===================================================================
---- linux-2.6.28.orig/drivers/Kconfig 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/Kconfig 2009-01-02 00:01:56.000000000 +0100
-@@ -107,4 +107,6 @@ source "drivers/uio/Kconfig"
+--- a/drivers/Kconfig
++++ b/drivers/Kconfig
+@@ -107,4 +107,6 @@
source "drivers/xen/Kconfig"
source "drivers/staging/Kconfig"
+
+source "drivers/android/Kconfig"
endmenu
-Index: linux-2.6.28/drivers/leds/Kconfig
-===================================================================
---- linux-2.6.28.orig/drivers/leds/Kconfig 2009-01-02 00:00:02.000000000 +0100
-+++ linux-2.6.28/drivers/leds/Kconfig 2009-01-02 00:01:56.000000000 +0100
-@@ -33,7 +33,7 @@ config LEDS_LOCOMO
+--- a/drivers/leds/Kconfig
++++ b/drivers/leds/Kconfig
+@@ -33,7 +33,7 @@
config LEDS_S3C24XX
tristate "LED Support for Samsung S3C24XX GPIO LEDs"
help
This option enables support for LEDs connected to GPIO lines
on Samsung S3C24XX series CPUs, such as the S3C2410 and S3C2440.
-@@ -171,6 +171,18 @@ config LEDS_DA903X
+@@ -171,6 +171,18 @@
This option enables support for on-chip LED drivers found
on Dialog Semiconductor DA9030/DA9034 PMICs.
comment "LED Triggers"
config LEDS_TRIGGERS
-Index: linux-2.6.28/drivers/leds/led-class.c
-===================================================================
---- linux-2.6.28.orig/drivers/leds/led-class.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/leds/led-class.c 2009-01-02 00:01:56.000000000 +0100
-@@ -56,8 +56,10 @@ static ssize_t led_brightness_store(stru
+--- a/drivers/leds/led-class.c
++++ b/drivers/leds/led-class.c
+@@ -56,8 +56,10 @@
if (count == size) {
ret = count;
led_set_brightness(led_cdev, state);
}
-Index: linux-2.6.28/drivers/leds/leds-neo1973-gta02.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/leds/leds-neo1973-gta02.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/leds/leds-neo1973-gta02.c
@@ -0,0 +1,179 @@
+/*
+ * LED driver for the Openmoko GTA02 GSM phone
+MODULE_AUTHOR("Harald Welte <laforge@openmoko.org>");
+MODULE_DESCRIPTION("Openmoko GTA02 LED driver");
+MODULE_LICENSE("GPL");
-Index: linux-2.6.28/drivers/leds/leds-neo1973-vibrator.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/leds/leds-neo1973-vibrator.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/leds/leds-neo1973-vibrator.c
@@ -0,0 +1,209 @@
+/*
+ * LED driver for the vibrator of the Openmoko GTA01/GTA02 GSM Phones
+MODULE_AUTHOR("Harald Welte <laforge@openmoko.org>");
+MODULE_DESCRIPTION("Openmoko GTA01/GTA02 vibrator driver");
+MODULE_LICENSE("GPL");
-Index: linux-2.6.28/drivers/leds/Makefile
-===================================================================
---- linux-2.6.28.orig/drivers/leds/Makefile 2009-01-02 00:00:02.000000000 +0100
-+++ linux-2.6.28/drivers/leds/Makefile 2009-01-02 00:01:56.000000000 +0100
-@@ -24,6 +24,8 @@ obj-$(CONFIG_LEDS_FSG) += leds-fsg.o
+--- a/drivers/leds/Makefile
++++ b/drivers/leds/Makefile
+@@ -24,6 +24,8 @@
obj-$(CONFIG_LEDS_PCA955X) += leds-pca955x.o
obj-$(CONFIG_LEDS_DA903X) += leds-da903x.o
obj-$(CONFIG_LEDS_HP_DISK) += leds-hp-disk.o
# LED Triggers
obj-$(CONFIG_LEDS_TRIGGER_TIMER) += ledtrig-timer.o
-Index: linux-2.6.28/drivers/Makefile
-===================================================================
---- linux-2.6.28.orig/drivers/Makefile 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/Makefile 2009-01-02 00:01:56.000000000 +0100
-@@ -86,6 +86,7 @@ obj-$(CONFIG_CPU_IDLE) += cpuidle/
+--- a/drivers/Makefile
++++ b/drivers/Makefile
+@@ -86,6 +86,7 @@
obj-y += idle/
obj-$(CONFIG_MMC) += mmc/
obj-$(CONFIG_MEMSTICK) += memstick/
obj-$(CONFIG_NEW_LEDS) += leds/
obj-$(CONFIG_INFINIBAND) += infiniband/
obj-$(CONFIG_SGI_SN) += sn/
-@@ -98,6 +99,7 @@ obj-$(CONFIG_DCA) += dca/
+@@ -98,6 +99,7 @@
obj-$(CONFIG_HID) += hid/
obj-$(CONFIG_PPC_PS3) += ps3/
obj-$(CONFIG_OF) += of/
obj-$(CONFIG_SSB) += ssb/
obj-$(CONFIG_VIRTIO) += virtio/
obj-$(CONFIG_REGULATOR) += regulator/
-Index: linux-2.6.28/drivers/mfd/glamo/glamo-core.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/mfd/glamo/glamo-core.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/mfd/glamo/glamo-core.c
@@ -0,0 +1,1399 @@
+/* Smedia Glamo 336x/337x driver
+ *
+MODULE_AUTHOR("Harald Welte <laforge@openmoko.org>");
+MODULE_DESCRIPTION("Smedia Glamo 336x/337x core/resource driver");
+MODULE_LICENSE("GPL");
-Index: linux-2.6.28/drivers/mfd/glamo/glamo-core.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/mfd/glamo/glamo-core.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/mfd/glamo/glamo-core.h
@@ -0,0 +1,92 @@
+#ifndef __GLAMO_CORE_H
+#define __GLAMO_CORE_H
+u_int16_t glamo_engine_clkreg_get(struct glamo_core *glamo,
+ enum glamo_engine engine);
+#endif /* __GLAMO_CORE_H */
-Index: linux-2.6.28/drivers/mfd/glamo/glamo-fb.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/mfd/glamo/glamo-fb.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/mfd/glamo/glamo-fb.c
@@ -0,0 +1,1048 @@
+/* Smedia Glamo 336x/337x driver
+ *
+MODULE_AUTHOR("Harald Welte <laforge@openmoko.org>");
+MODULE_DESCRIPTION("Smedia Glamo 336x/337x framebuffer driver");
+MODULE_LICENSE("GPL");
-Index: linux-2.6.28/drivers/mfd/glamo/glamo-gpio.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/mfd/glamo/glamo-gpio.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/mfd/glamo/glamo-gpio.c
@@ -0,0 +1,62 @@
+
+#include <linux/kernel.h>
+}
+EXPORT_SYMBOL(glamo_gpio_cfgpin);
+
-Index: linux-2.6.28/drivers/mfd/glamo/glamo-lcm-spi.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/mfd/glamo/glamo-lcm-spi.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/mfd/glamo/glamo-lcm-spi.c
@@ -0,0 +1,240 @@
+/*
+ * Copyright (C) 2007 Openmoko, Inc.
+MODULE_DESCRIPTION("Smedia Glamo 336x/337x LCM serial command SPI Driver");
+MODULE_AUTHOR("Harald Welte <laforge@openmoko.org>")
+MODULE_LICENSE("GPL");
-Index: linux-2.6.28/drivers/mfd/glamo/glamo-mci.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/mfd/glamo/glamo-mci.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/mfd/glamo/glamo-mci.c
@@ -0,0 +1,1133 @@
+/*
+ * linux/drivers/mmc/host/glamo-mmc.c - Glamo MMC driver
+MODULE_DESCRIPTION("Glamo MMC/SD Card Interface driver");
+MODULE_LICENSE("GPL");
+MODULE_AUTHOR("Andy Green <andy@openmoko.com>");
-Index: linux-2.6.28/drivers/mfd/glamo/glamo-mci.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/mfd/glamo/glamo-mci.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/mfd/glamo/glamo-mci.h
@@ -0,0 +1,83 @@
+/*
+ * linux/drivers/mmc/host/glamo-mmc.h - GLAMO MCI driver
+
+ struct regulator *regulator;
+};
-Index: linux-2.6.28/drivers/mfd/glamo/glamo-regs.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/mfd/glamo/glamo-regs.h 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/mfd/glamo/glamo-regs.h
@@ -0,0 +1,632 @@
+#ifndef _GLAMO_REGS_H
+#define _GLAMO_REGS_H
+};
+
+#endif /* _GLAMO_REGS_H */
-Index: linux-2.6.28/drivers/mfd/glamo/glamo-spi-gpio.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/mfd/glamo/glamo-spi-gpio.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/mfd/glamo/glamo-spi-gpio.c
@@ -0,0 +1,288 @@
+/*
+ * Copyright (C) 2007 Openmoko, Inc.
+MODULE_DESCRIPTION("Smedia Glamo 336x/337x LCM serial command SPI Driver");
+MODULE_AUTHOR("Harald Welte <laforge@openmoko.org>")
+MODULE_LICENSE("GPL");
-Index: linux-2.6.28/drivers/mfd/glamo/Kconfig
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/mfd/glamo/Kconfig 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/mfd/glamo/Kconfig
@@ -0,0 +1,44 @@
+config MFD_GLAMO
+ bool "Smedia Glamo 336x/337x support"
+
+ If unsure, say N.
\ No newline at end of file
-Index: linux-2.6.28/drivers/mfd/glamo/Makefile
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/mfd/glamo/Makefile 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/mfd/glamo/Makefile
@@ -0,0 +1,12 @@
+#
+# Makefile for the Smedia Glamo framebuffer driver
+obj-$(CONFIG_MFD_GLAMO_SPI_FB) += glamo-lcm-spi.o
+obj-$(CONFIG_MFD_GLAMO_MCI) += glamo-mci.o
+
-Index: linux-2.6.28/drivers/mfd/Kconfig
-===================================================================
---- linux-2.6.28.orig/drivers/mfd/Kconfig 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/mfd/Kconfig 2009-01-02 00:01:56.000000000 +0100
-@@ -153,6 +153,55 @@ config MFD_WM8350_I2C
+--- a/drivers/mfd/Kconfig
++++ b/drivers/mfd/Kconfig
+@@ -153,6 +153,55 @@
I2C as the control interface. Additional options must be
selected to enable support for the functionality of the chip.
endmenu
menu "Multimedia Capabilities Port drivers"
-Index: linux-2.6.28/drivers/mfd/Makefile
-===================================================================
---- linux-2.6.28.orig/drivers/mfd/Makefile 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/mfd/Makefile 2009-01-02 00:01:56.000000000 +0100
+--- a/drivers/mfd/Makefile
++++ b/drivers/mfd/Makefile
@@ -4,6 +4,7 @@
obj-$(CONFIG_MFD_SM501) += sm501.o
obj-$(CONFIG_HTC_EGPIO) += htc-egpio.o
obj-$(CONFIG_HTC_PASIC3) += htc-pasic3.o
-@@ -31,4 +32,13 @@ obj-$(CONFIG_MCP_UCB1200) += ucb1x00-ass
+@@ -31,4 +32,13 @@
endif
obj-$(CONFIG_UCB1400_CORE) += ucb1400_core.o
+obj-$(CONFIG_PCF50606_ADC) += pcf50606-adc.o
+obj-$(CONFIG_PCF50606_GPO) += pcf50606-gpo.o
+
-Index: linux-2.6.28/drivers/mfd/pcf50606-adc.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/mfd/pcf50606-adc.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/mfd/pcf50606-adc.c
@@ -0,0 +1,239 @@
+/* Philips PCF50606 ADC Driver
+ *
+MODULE_LICENSE("GPL");
+MODULE_ALIAS("platform:pcf50606-adc");
+
-Index: linux-2.6.28/drivers/mfd/pcf50606-core.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/mfd/pcf50606-core.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/mfd/pcf50606-core.c
@@ -0,0 +1,580 @@
+/* Philips PCF50606 Power Management Unit (PMU) driver
+ *
+
+module_init(pcf50606_init);
+module_exit(pcf50606_exit);
-Index: linux-2.6.28/drivers/mfd/pcf50606-gpo.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/mfd/pcf50606-gpo.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/mfd/pcf50606-gpo.c
@@ -0,0 +1,128 @@
+/* Philips PCF50606 GPO Driver
+ *
+ return (value >> shift) & 0x01;
+}
+EXPORT_SYMBOL_GPL(pcf50606_gpo_invert_get);
-Index: linux-2.6.28/drivers/mfd/pcf50633-adc.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/mfd/pcf50633-adc.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/mfd/pcf50633-adc.c
@@ -0,0 +1,252 @@
+/* Philips PCF50633 ADC Driver
+ *
+MODULE_LICENSE("GPL");
+MODULE_ALIAS("platform:pcf50633-adc");
+
-Index: linux-2.6.28/drivers/mfd/pcf50633-core.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/mfd/pcf50633-core.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/mfd/pcf50633-core.c
@@ -0,0 +1,627 @@
+/* Philips PCF50633 Power Management Unit (PMU) driver
+ *
+
+module_init(pcf50633_init);
+module_exit(pcf50633_exit);
-Index: linux-2.6.28/drivers/mfd/pcf50633-gpio.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/mfd/pcf50633-gpio.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/mfd/pcf50633-gpio.c
@@ -0,0 +1,100 @@
+/* Philips PCF50633 GPIO Driver
+ *
+ pcf50633_reg_set_bit_mask(pcf, reg, mask, val);
+}
+EXPORT_SYMBOL_GPL(pcf50633_gpio_power_supply_set);
-Index: linux-2.6.28/drivers/mfd/pcf50633-i2c.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/mfd/pcf50633-i2c.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/mfd/pcf50633-i2c.c
@@ -0,0 +1,3 @@
+
+};
+
-Index: linux-2.6.28/drivers/misc/Kconfig
-===================================================================
---- linux-2.6.28.orig/drivers/misc/Kconfig 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/misc/Kconfig 2009-01-02 00:01:56.000000000 +0100
-@@ -401,6 +401,11 @@ config THINKPAD_ACPI_HOTKEY_POLL
+--- a/drivers/misc/Kconfig
++++ b/drivers/misc/Kconfig
+@@ -401,6 +401,11 @@
If you are not sure, say Y here. The driver enables polling only if
it is strictly necessary to do so.
config ATMEL_SSC
tristate "Device driver for Atmel SSC peripheral"
depends on AVR32 || ARCH_AT91
-@@ -500,4 +505,9 @@ config SGI_GRU_DEBUG
+@@ -500,4 +505,9 @@
source "drivers/misc/c2port/Kconfig"
+ Common machine code for Openmoko GTAxx hardware
+
endif # MISC_DEVICES
-Index: linux-2.6.28/drivers/misc/lowmemorykiller.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/misc/lowmemorykiller.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/misc/lowmemorykiller.c
@@ -0,0 +1,119 @@
+/* drivers/misc/lowmemorykiller.c
+ *
+
+MODULE_LICENSE("GPL");
+
-Index: linux-2.6.28/drivers/misc/Makefile
-===================================================================
---- linux-2.6.28.orig/drivers/misc/Makefile 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/misc/Makefile 2009-01-02 00:06:11.000000000 +0100
-@@ -33,3 +33,8 @@ obj-$(CONFIG_SGI_XP) += sgi-xp/
+--- a/drivers/misc/Makefile
++++ b/drivers/misc/Makefile
+@@ -33,3 +33,8 @@
obj-$(CONFIG_SGI_GRU) += sgi-gru/
obj-$(CONFIG_HP_ILO) += hpilo.o
obj-$(CONFIG_C2PORT) += c2port/
+obj-$(CONFIG_MACH_NEO1973) += neo1973_version.o \
+ neo1973_pm_host.o \
+ neo1973_pm_resume_reason.o
-Index: linux-2.6.28/drivers/misc/neo1973_pm_charging_led.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/misc/neo1973_pm_charging_led.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/misc/neo1973_pm_charging_led.c
@@ -0,0 +1,106 @@
+/*
+ * Charging LED sysfs for the FIC Neo1973 GSM Phone
+MODULE_AUTHOR("Andy Green <andy@openmoko.com>");
+MODULE_DESCRIPTION("Neo1973 PCB charging_led");
+#endif
-Index: linux-2.6.28/drivers/misc/neo1973_pm_host.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/misc/neo1973_pm_host.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/misc/neo1973_pm_host.c
@@ -0,0 +1,109 @@
+/*
+ * Bluetooth PM code for the FIC Neo1973 GSM Phone
+MODULE_AUTHOR("Andy Green <andy@openmoko.com>");
+MODULE_DESCRIPTION("Neo1973 USB Host Power Management");
+#endif
-Index: linux-2.6.28/drivers/misc/neo1973_pm_resume_reason.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/misc/neo1973_pm_resume_reason.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/misc/neo1973_pm_resume_reason.c
@@ -0,0 +1,147 @@
+/*
+ * Resume reason sysfs for the FIC Neo1973 GSM Phone
+MODULE_LICENSE("GPL");
+MODULE_AUTHOR("Andy Green <andy@openmoko.com>");
+MODULE_DESCRIPTION("Neo1973 resume_reason");
-Index: linux-2.6.28/drivers/misc/neo1973_pm_usbhost.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/misc/neo1973_pm_usbhost.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/misc/neo1973_pm_usbhost.c
@@ -0,0 +1,132 @@
+/*
+ * Bluetooth PM code for the FIC Neo1973 GSM Phone
+MODULE_LICENSE("GPL");
+MODULE_AUTHOR("Andy Green <andy@openmoko.com>");
+MODULE_DESCRIPTION("Neo1973 USB Host Power Management");
-Index: linux-2.6.28/drivers/misc/neo1973_version.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/misc/neo1973_version.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/misc/neo1973_version.c
@@ -0,0 +1,90 @@
+/*
+ * PCB version sysfs for the FIC Neo1973 GSM Phone
+MODULE_AUTHOR("Andy Green <andy@openmoko.com>");
+MODULE_DESCRIPTION("Neo1973 PCB version");
+#endif
-Index: linux-2.6.28/drivers/misc/smdk6410-sleeptest.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/misc/smdk6410-sleeptest.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/misc/smdk6410-sleeptest.c
@@ -0,0 +1,65 @@
+/* linux/drivers/misc/smdk6410-sleeptest.c
+ *
+
+MODULE_AUTHOR("Ben Dooks <ben@simtec.co.uk>");
+MODULE_LICENSE("GPL");
-Index: linux-2.6.28/drivers/mmc/core/core.c
-===================================================================
---- linux-2.6.28.orig/drivers/mmc/core/core.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/mmc/core/core.c 2009-01-02 00:01:56.000000000 +0100
-@@ -57,10 +57,11 @@ static int mmc_schedule_delayed_work(str
+--- a/drivers/mmc/core/core.c
++++ b/drivers/mmc/core/core.c
+@@ -57,10 +57,11 @@
/*
* Internal function. Flush all scheduled work from the MMC work queue.
*/
/**
* mmc_request_done - finish processing an MMC request
-@@ -495,7 +496,13 @@ void mmc_set_timing(struct mmc_host *hos
+@@ -495,7 +496,13 @@
*/
static void mmc_power_up(struct mmc_host *host)
{
host->ios.vdd = bit;
if (mmc_host_is_spi(host)) {
-Index: linux-2.6.28/drivers/mmc/host/Kconfig
-===================================================================
---- linux-2.6.28.orig/drivers/mmc/host/Kconfig 2009-01-02 00:00:02.000000000 +0100
-+++ linux-2.6.28/drivers/mmc/host/Kconfig 2009-01-02 00:01:56.000000000 +0100
-@@ -48,6 +48,18 @@ config MMC_SDHCI_PCI
+--- a/drivers/mmc/host/Kconfig
++++ b/drivers/mmc/host/Kconfig
+@@ -48,6 +48,18 @@
If unsure, say N.
config MMC_RICOH_MMC
tristate "Ricoh MMC Controller Disabler (EXPERIMENTAL)"
depends on MMC_SDHCI_PCI
-Index: linux-2.6.28/drivers/mmc/host/Makefile
-===================================================================
---- linux-2.6.28.orig/drivers/mmc/host/Makefile 2009-01-02 00:00:02.000000000 +0100
-+++ linux-2.6.28/drivers/mmc/host/Makefile 2009-01-02 00:01:56.000000000 +0100
-@@ -11,6 +11,7 @@ obj-$(CONFIG_MMC_PXA) += pxamci.o
+--- a/drivers/mmc/host/Makefile
++++ b/drivers/mmc/host/Makefile
+@@ -11,6 +11,7 @@
obj-$(CONFIG_MMC_IMX) += imxmmc.o
obj-$(CONFIG_MMC_SDHCI) += sdhci.o
obj-$(CONFIG_MMC_SDHCI_PCI) += sdhci-pci.o
obj-$(CONFIG_MMC_RICOH_MMC) += ricoh_mmc.o
obj-$(CONFIG_MMC_WBSD) += wbsd.o
obj-$(CONFIG_MMC_AU1X) += au1xmmc.o
-Index: linux-2.6.28/drivers/mmc/host/s3cmci.c
-===================================================================
---- linux-2.6.28.orig/drivers/mmc/host/s3cmci.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/mmc/host/s3cmci.c 2009-01-02 00:01:56.000000000 +0100
+--- a/drivers/mmc/host/s3cmci.c
++++ b/drivers/mmc/host/s3cmci.c
@@ -2,6 +2,7 @@
* linux/drivers/mmc/s3cmci.h - Samsung S3C MCI driver
*
#include "s3cmci.h"
-@@ -47,6 +56,9 @@ static const int dbgmap_err = dbg_fail
+@@ -47,6 +56,9 @@
static const int dbgmap_info = dbg_info | dbg_conf;
static const int dbgmap_debug = dbg_err | dbg_debug;
#define dbg(host, channels, args...) \
do { \
if (dbgmap_err & channels) \
-@@ -280,8 +292,11 @@ static void do_pio_read(struct s3cmci_ho
+@@ -280,8 +292,11 @@
* an even multiple of 4. */
if (fifo >= host->pio_bytes)
fifo = host->pio_bytes;
host->pio_bytes -= fifo;
host->pio_count += fifo;
-@@ -353,8 +368,11 @@ static void do_pio_write(struct s3cmci_h
+@@ -353,8 +368,11 @@
* words, so round down to an even multiple of 4. */
if (fifo >= host->pio_bytes)
fifo = host->pio_bytes;
host->pio_bytes -= fifo;
host->pio_count += fifo;
-@@ -373,7 +391,6 @@ static void pio_tasklet(unsigned long da
+@@ -373,7 +391,6 @@
{
struct s3cmci_host *host = (struct s3cmci_host *) data;
disable_irq(host->irq);
if (host->pio_active == XFER_WRITE)
-@@ -614,7 +631,6 @@ irq_out:
+@@ -614,7 +631,6 @@
spin_unlock_irqrestore(&host->complete_lock, iflags);
return IRQ_HANDLED;
}
/*
-@@ -1027,6 +1043,7 @@ static void s3cmci_send_request(struct m
+@@ -1026,6 +1042,7 @@
dbg(host, dbg_err, "data prepare error %d\n", res);
cmd->error = res;
cmd->data->error = res;
mmc_request_done(mmc, mrq);
return;
-@@ -1264,10 +1281,8 @@ static int __devinit s3cmci_probe(struct
+@@ -1263,10 +1280,8 @@
host->is2440 = is2440;
host->pdata = pdev->dev.platform_data;
spin_lock_init(&host->complete_lock);
tasklet_init(&host->pio_tasklet, pio_tasklet, (unsigned long) host);
-@@ -1380,6 +1395,18 @@ static int __devinit s3cmci_probe(struct
+@@ -1379,6 +1394,18 @@
mmc->f_min = host->clk_rate / (host->clk_div * 256);
mmc->f_max = host->clk_rate / host->clk_div;
if (host->pdata->ocr_avail)
mmc->ocr_avail = host->pdata->ocr_avail;
-@@ -1492,18 +1519,60 @@ static int __devinit s3cmci_2440_probe(s
+@@ -1491,18 +1518,60 @@
#ifdef CONFIG_PM
}
#else /* CONFIG_PM */
-@@ -1561,9 +1630,13 @@ static void __exit s3cmci_exit(void)
+@@ -1560,9 +1629,13 @@
module_init(s3cmci_init);
module_exit(s3cmci_exit);
MODULE_ALIAS("platform:s3c2412-sdi");
MODULE_ALIAS("platform:s3c2440-sdi");
+
-Index: linux-2.6.28/drivers/mmc/host/s3cmci.h
-===================================================================
---- linux-2.6.28.orig/drivers/mmc/host/s3cmci.h 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/mmc/host/s3cmci.h 2009-01-02 00:01:56.000000000 +0100
+--- a/drivers/mmc/host/s3cmci.h
++++ b/drivers/mmc/host/s3cmci.h
@@ -8,6 +8,9 @@
* published by the Free Software Foundation.
*/
/* FIXME: DMA Resource management ?! */
#define S3CMCI_DMA 0
-@@ -68,6 +71,13 @@ struct s3cmci_host {
+@@ -68,6 +71,13 @@
unsigned int ccnt, dcnt;
struct tasklet_struct pio_tasklet;
#ifdef CONFIG_CPU_FREQ
struct notifier_block freq_transition;
#endif
-Index: linux-2.6.28/drivers/mmc/host/sdhci.c
-===================================================================
---- linux-2.6.28.orig/drivers/mmc/host/sdhci.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/mmc/host/sdhci.c 2009-01-02 00:01:56.000000000 +0100
-@@ -73,6 +73,11 @@ static void sdhci_dumpregs(struct sdhci_
+--- a/drivers/mmc/host/sdhci.c
++++ b/drivers/mmc/host/sdhci.c
+@@ -73,6 +73,11 @@
readl(host->ioaddr + SDHCI_CAPABILITIES),
readl(host->ioaddr + SDHCI_MAX_CURRENT));
printk(KERN_DEBUG DRIVER_NAME ": ===========================================\n");
}
-@@ -731,6 +736,23 @@ static void sdhci_set_transfer_mode(stru
+@@ -731,6 +736,23 @@
writew(mode, host->ioaddr + SDHCI_TRANSFER_MODE);
}
static void sdhci_finish_data(struct sdhci_host *host)
{
struct mmc_data *data;
-@@ -744,6 +766,8 @@ static void sdhci_finish_data(struct sdh
+@@ -744,6 +766,8 @@
if (host->flags & SDHCI_USE_ADMA)
sdhci_adma_table_post(host, data);
else {
dma_unmap_sg(mmc_dev(host->mmc), data->sg,
data->sg_len, (data->flags & MMC_DATA_READ) ?
DMA_FROM_DEVICE : DMA_TO_DEVICE);
-@@ -883,13 +907,18 @@ static void sdhci_finish_command(struct
+@@ -883,13 +907,18 @@
static void sdhci_set_clock(struct sdhci_host *host, unsigned int clock)
{
writew(0, host->ioaddr + SDHCI_CLOCK_CONTROL);
if (clock == 0)
-@@ -926,6 +955,8 @@ out:
+@@ -926,6 +955,8 @@
host->clock = clock;
}
static void sdhci_set_power(struct sdhci_host *host, unsigned short power)
{
u8 pwr;
-@@ -999,12 +1030,13 @@ static void sdhci_request(struct mmc_hos
+@@ -999,12 +1030,13 @@
#endif
host->mrq = mrq;
sdhci_send_command(host, mrq->cmd);
mmiowb();
-@@ -1033,6 +1065,9 @@ static void sdhci_set_ios(struct mmc_hos
+@@ -1033,6 +1065,9 @@
sdhci_init(host);
}
sdhci_set_clock(host, ios->clock);
if (ios->power_mode == MMC_POWER_OFF)
-@@ -1136,7 +1171,7 @@ static void sdhci_tasklet_card(unsigned
+@@ -1136,7 +1171,7 @@
host = (struct sdhci_host*)param;
spin_lock_irqsave(&host->lock, flags);
if (!(readl(host->ioaddr + SDHCI_PRESENT_STATE) & SDHCI_CARD_PRESENT)) {
if (host->mrq) {
printk(KERN_ERR "%s: Card removed during transfer!\n",
-@@ -1151,7 +1186,7 @@ static void sdhci_tasklet_card(unsigned
+@@ -1151,7 +1186,7 @@
tasklet_schedule(&host->finish_tasklet);
}
}
spin_unlock_irqrestore(&host->lock, flags);
mmc_detect_change(host->mmc, msecs_to_jiffies(200));
-@@ -1283,11 +1318,24 @@ static void sdhci_cmd_irq(struct sdhci_h
- * controllers.
- */
- if (host->cmd->flags & MMC_RSP_BUSY) {
-+ u32 present;
-+
- if (host->cmd->data)
- DBG("Cannot wait for busy signal when also "
- "doing a data transfer");
-- else
-+ else if (!(host->quirks & SDHCI_QUIRK_NO_TCIRQ_ON_NOT_BUSY))
- return;
-+
-+ /* The Samsung SDHCI does not seem to provide an INT_DATA_END
-+ * when the system goes non-busy, so check the state of the
-+ * transfer by reading SDHCI_PRESENT_STATE to see if the
-+ * controller is ready
-+ */
-+
-+ present = readl(host->ioaddr + SDHCI_PRESENT_STATE);
-+ DBG("busy? present %08x, intstat %08x\n", present, intmask);
-+
-+ /* fall through and take the SDHCI_INT_RESPONSE */
- }
-
- if (intmask & SDHCI_INT_RESPONSE)
-@@ -1604,17 +1652,23 @@ int sdhci_add_host(struct sdhci_host *ho
+@@ -1607,17 +1642,23 @@
mmc_dev(host->mmc)->dma_mask = &host->dma_mask;
}
if (host->timeout_clk == 0) {
printk(KERN_ERR "%s: Hardware doesn't specify timeout clock "
"frequency.\n", mmc_hostname(mmc));
-Index: linux-2.6.28/drivers/mmc/host/sdhci.h
-===================================================================
---- linux-2.6.28.orig/drivers/mmc/host/sdhci.h 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/mmc/host/sdhci.h 2009-01-02 00:01:56.000000000 +0100
+--- a/drivers/mmc/host/sdhci.h
++++ b/drivers/mmc/host/sdhci.h
@@ -57,6 +57,7 @@
#define SDHCI_DATA_AVAILABLE 0x00000800
#define SDHCI_CARD_PRESENT 0x00010000
#define SDHCI_HOST_CONTROL 0x28
#define SDHCI_CTRL_LED 0x01
-@@ -210,6 +211,8 @@ struct sdhci_host {
- #define SDHCI_QUIRK_BROKEN_SMALL_PIO (1<<13)
- /* Controller supports high speed but doesn't have the caps bit set */
- #define SDHCI_QUIRK_FORCE_HIGHSPEED (1<<14)
-+/* Controller does not provide transfer-complete interrupt when not busy */
-+#define SDHCI_QUIRK_NO_TCIRQ_ON_NOT_BUSY (1<<15)
-
- int irq; /* Device IRQ */
- void __iomem * ioaddr; /* Mapped address */
-@@ -267,6 +270,14 @@ struct sdhci_host {
+@@ -270,6 +271,14 @@
struct sdhci_ops {
int (*enable_dma)(struct sdhci_host *host);
};
-@@ -274,6 +285,8 @@ extern struct sdhci_host *sdhci_alloc_ho
+@@ -277,6 +286,8 @@
size_t priv_size);
extern void sdhci_free_host(struct sdhci_host *host);
static inline void *sdhci_priv(struct sdhci_host *host)
{
return (void *)host->private;
-Index: linux-2.6.28/drivers/mmc/host/sdhci-pci.c
-===================================================================
---- linux-2.6.28.orig/drivers/mmc/host/sdhci-pci.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/mmc/host/sdhci-pci.c 2009-01-02 00:01:56.000000000 +0100
-@@ -391,6 +391,7 @@ static int sdhci_pci_enable_dma(struct s
+--- a/drivers/mmc/host/sdhci-pci.c
++++ b/drivers/mmc/host/sdhci-pci.c
+@@ -392,6 +392,7 @@
static struct sdhci_ops sdhci_pci_ops = {
.enable_dma = sdhci_pci_enable_dma,
};
/*****************************************************************************\
-Index: linux-2.6.28/drivers/mmc/host/sdhci-s3c.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/mmc/host/sdhci-s3c.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/mmc/host/sdhci-s3c.c
@@ -0,0 +1,419 @@
+/* linux/drivers/mmc/host/sdhci-s3c.c
+ *
+ /* It seems we do not get an DATA transfer complete on non-busy
+ * transfers, not sure if this is a problem with this specific
+ * SDHCI block, or a missing configuration that needs to be set. */
-+ host->quirks |= SDHCI_QUIRK_NO_TCIRQ_ON_NOT_BUSY;
++ host->quirks |= SDHCI_QUIRK_NO_BUSY_IRQ;
+
+ host->quirks |= (SDHCI_QUIRK_32BIT_DMA_ADDR |
+ SDHCI_QUIRK_32BIT_DMA_SIZE);
+MODULE_AUTHOR("Ben Dooks, <ben@simtec.co.uk>");
+MODULE_LICENSE("GPL v2");
+MODULE_ALIAS("platform:s3c-sdhci");
-Index: linux-2.6.28/drivers/mtd/nand/s3c2410.c
-===================================================================
---- linux-2.6.28.orig/drivers/mtd/nand/s3c2410.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/mtd/nand/s3c2410.c 2009-01-02 00:01:56.000000000 +0100
+--- a/drivers/mtd/nand/s3c2410.c
++++ b/drivers/mtd/nand/s3c2410.c
@@ -45,8 +45,8 @@
#include <asm/io.h>
#ifdef CONFIG_MTD_NAND_S3C2410_HWECC
static int hardware_ecc = 1;
-@@ -231,8 +231,6 @@ static int s3c2410_nand_setrate(struct s
+@@ -231,8 +231,6 @@
BUG();
}
local_irq_save(flags);
cfg = readl(info->regs + S3C2410_NFCONF);
-@@ -240,6 +238,8 @@ static int s3c2410_nand_setrate(struct s
+@@ -240,6 +238,8 @@
cfg |= set;
writel(cfg, info->regs + S3C2410_NFCONF);
local_irq_restore(flags);
return 0;
-@@ -438,7 +438,7 @@ static int s3c2410_nand_correct_data(str
+@@ -438,7 +438,7 @@
if ((diff0 & ~(1<<fls(diff0))) == 0)
return 1;
}
/* ECC functions
-@@ -530,7 +530,12 @@ static void s3c2410_nand_read_buf(struct
+@@ -530,7 +530,12 @@
static void s3c2440_nand_read_buf(struct mtd_info *mtd, u_char *buf, int len)
{
struct s3c2410_nand_info *info = s3c2410_nand_mtd_toinfo(mtd);
}
static void s3c2410_nand_write_buf(struct mtd_info *mtd, const u_char *buf, int len)
-@@ -645,17 +650,31 @@ static int s3c2410_nand_remove(struct pl
+@@ -645,17 +650,31 @@
}
#ifdef CONFIG_MTD_PARTITIONS
return add_mtd_device(&mtd->mtd);
}
#else
-@@ -684,9 +703,13 @@ static void s3c2410_nand_init_chip(struc
+@@ -684,9 +703,13 @@
chip->select_chip = s3c2410_nand_select_chip;
chip->chip_delay = 50;
chip->priv = nmtd;
switch (info->cpu_type) {
case TYPE_S3C2410:
chip->IO_ADDR_W = regs + S3C2410_NFDATA;
-@@ -726,7 +749,7 @@ static void s3c2410_nand_init_chip(struc
+@@ -726,7 +749,7 @@
nmtd->mtd.owner = THIS_MODULE;
nmtd->set = set;
chip->ecc.calculate = s3c2410_nand_calculate_ecc;
chip->ecc.correct = s3c2410_nand_correct_data;
chip->ecc.mode = NAND_ECC_HW;
-Index: linux-2.6.28/drivers/net/wireless/libertas/if_sdio.c
-===================================================================
---- linux-2.6.28.orig/drivers/net/wireless/libertas/if_sdio.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/net/wireless/libertas/if_sdio.c 2009-01-02 00:01:56.000000000 +0100
-@@ -48,6 +48,7 @@ module_param_named(fw_name, lbs_fw_name,
+--- a/drivers/net/wireless/libertas/if_sdio.c
++++ b/drivers/net/wireless/libertas/if_sdio.c
+@@ -48,6 +48,7 @@
static const struct sdio_device_id if_sdio_ids[] = {
{ SDIO_DEVICE(SDIO_VENDOR_ID_MARVELL, SDIO_DEVICE_ID_MARVELL_LIBERTAS) },
{ /* end: all zeroes */ },
};
-@@ -72,7 +73,12 @@ static struct if_sdio_model if_sdio_mode
+@@ -72,7 +73,12 @@
.helper = "sd8686_helper.bin",
.firmware = "sd8686.bin",
},
struct if_sdio_packet {
struct if_sdio_packet *next;
-Index: linux-2.6.28/drivers/pnp/Kconfig
-===================================================================
---- linux-2.6.28.orig/drivers/pnp/Kconfig 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/pnp/Kconfig 2009-01-02 00:01:56.000000000 +0100
+--- a/drivers/pnp/Kconfig
++++ b/drivers/pnp/Kconfig
@@ -5,7 +5,7 @@
menuconfig PNP
bool "Plug and Play support"
---help---
Plug and Play (PnP) is a standard for peripherals which allows those
peripherals to be configured by software, e.g. assign IRQ's or other
-Index: linux-2.6.28/drivers/pnp/resource.c
-===================================================================
---- linux-2.6.28.orig/drivers/pnp/resource.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/pnp/resource.c 2009-01-02 00:01:56.000000000 +0100
-@@ -436,6 +436,7 @@ int pnp_check_dma(struct pnp_dev *dev, s
+--- a/drivers/pnp/resource.c
++++ b/drivers/pnp/resource.c
+@@ -436,6 +436,7 @@
}
}
/* check if the resource is already in use, skip if the
* device is active because it itself may be in use */
if (!dev->active) {
-@@ -443,6 +444,7 @@ int pnp_check_dma(struct pnp_dev *dev, s
+@@ -443,6 +444,7 @@
return 0;
free_dma(*dma);
}
/* check for conflicts with other pnp devices */
pnp_for_each_dev(tdev) {
-Index: linux-2.6.28/drivers/power/bq27000_battery.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/power/bq27000_battery.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/power/bq27000_battery.c
@@ -0,0 +1,463 @@
+/*
+ * Driver for batteries with bq27000 chips inside via HDQ
+MODULE_LICENSE("GPL");
+MODULE_AUTHOR("Andy Green <andy@openmoko.com>");
+MODULE_DESCRIPTION("bq27000 battery driver");
-Index: linux-2.6.28/drivers/power/gta02_hdq.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/power/gta02_hdq.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/power/gta02_hdq.c
@@ -0,0 +1,292 @@
+/*
+ * HDQ driver for the FIC Neo1973 GTA02 GSM phone
+MODULE_AUTHOR("Andy Green <andy@openmoko.com>");
+MODULE_DESCRIPTION("GTA02 HDQ driver");
+MODULE_LICENSE("GPL");
-Index: linux-2.6.28/drivers/power/Kconfig
-===================================================================
---- linux-2.6.28.orig/drivers/power/Kconfig 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/power/Kconfig 2009-01-02 00:01:56.000000000 +0100
-@@ -68,4 +68,24 @@ config BATTERY_BQ27x00
+--- a/drivers/power/Kconfig
++++ b/drivers/power/Kconfig
+@@ -68,4 +68,24 @@
help
Say Y here to enable support for batteries with BQ27200(I2C) chip.
+
endif # POWER_SUPPLY
+
-Index: linux-2.6.28/drivers/power/Makefile
-===================================================================
---- linux-2.6.28.orig/drivers/power/Makefile 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/power/Makefile 2009-01-02 00:01:56.000000000 +0100
-@@ -23,3 +23,9 @@ obj-$(CONFIG_BATTERY_OLPC) += olpc_batte
+--- a/drivers/power/Makefile
++++ b/drivers/power/Makefile
+@@ -23,3 +23,9 @@
obj-$(CONFIG_BATTERY_TOSA) += tosa_battery.o
obj-$(CONFIG_BATTERY_WM97XX) += wm97xx_battery.o
obj-$(CONFIG_BATTERY_BQ27x00) += bq27x00_battery.o
+obj-$(CONFIG_GTA02_HDQ) += gta02_hdq.o
+
+obj-$(CONFIG_CHARGER_PCF50633) += pcf50633-charger.o
-Index: linux-2.6.28/drivers/power/pcf50633-charger.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/power/pcf50633-charger.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/power/pcf50633-charger.c
@@ -0,0 +1,415 @@
+/* Philips PCF50633 Main Battery Charger Driver
+ *
+MODULE_DESCRIPTION("PCF50633 mbc driver");
+MODULE_LICENSE("GPL");
+MODULE_ALIAS("platform:pcf50633-mbc");
-Index: linux-2.6.28/drivers/regulator/core.c
-===================================================================
---- linux-2.6.28.orig/drivers/regulator/core.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/regulator/core.c 2009-01-02 00:01:56.000000000 +0100
-@@ -1113,6 +1113,7 @@ int regulator_disable(struct regulator *
+--- a/drivers/regulator/core.c
++++ b/drivers/regulator/core.c
+@@ -1113,6 +1113,7 @@
if (!regulator->enabled) {
printk(KERN_ERR "%s: not in use by this consumer\n",
__func__);
return 0;
}
-Index: linux-2.6.28/drivers/regulator/Kconfig
-===================================================================
---- linux-2.6.28.orig/drivers/regulator/Kconfig 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/regulator/Kconfig 2009-01-02 00:01:56.000000000 +0100
-@@ -73,4 +73,10 @@ config REGULATOR_DA903X
+--- a/drivers/regulator/Kconfig
++++ b/drivers/regulator/Kconfig
+@@ -73,4 +73,10 @@
Say y here to support the BUCKs and LDOs regulators found on
Dialog Semiconductor DA9030/DA9034 PMIC.
+ Say Y here to support the voltage regulators and convertors
+ on PCF50633
endif
-Index: linux-2.6.28/drivers/regulator/Makefile
-===================================================================
---- linux-2.6.28.orig/drivers/regulator/Makefile 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/regulator/Makefile 2009-01-02 00:01:56.000000000 +0100
-@@ -11,5 +11,6 @@ obj-$(CONFIG_REGULATOR_BQ24022) += bq240
+--- a/drivers/regulator/Makefile
++++ b/drivers/regulator/Makefile
+@@ -11,5 +11,6 @@
obj-$(CONFIG_REGULATOR_WM8350) += wm8350-regulator.o
obj-$(CONFIG_REGULATOR_WM8400) += wm8400-regulator.o
obj-$(CONFIG_REGULATOR_DA903X) += da903x.o
+obj-$(CONFIG_REGULATOR_PCF50633) += pcf50633-regulator.o
ccflags-$(CONFIG_REGULATOR_DEBUG) += -DDEBUG
-Index: linux-2.6.28/drivers/regulator/pcf50633-regulator.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/regulator/pcf50633-regulator.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/regulator/pcf50633-regulator.c
@@ -0,0 +1,330 @@
+/* Philips PCF50633 PMIC Driver
+ *
+MODULE_DESCRIPTION("PCF50633 regulator driver");
+MODULE_LICENSE("GPL");
+MODULE_ALIAS("platform:pcf50633-regulator");
-Index: linux-2.6.28/drivers/rtc/Kconfig
-===================================================================
---- linux-2.6.28.orig/drivers/rtc/Kconfig 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/rtc/Kconfig 2009-01-02 00:01:56.000000000 +0100
-@@ -219,6 +219,18 @@ config RTC_DRV_PCF8583
+--- a/drivers/rtc/Kconfig
++++ b/drivers/rtc/Kconfig
+@@ -219,6 +219,18 @@
This driver can also be built as a module. If so, the module
will be called rtc-pcf8583.
config RTC_DRV_M41T80
tristate "ST M41T65/M41T80/81/82/83/84/85/87"
help
-Index: linux-2.6.28/drivers/rtc/Makefile
-===================================================================
---- linux-2.6.28.orig/drivers/rtc/Makefile 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/rtc/Makefile 2009-01-02 00:01:56.000000000 +0100
-@@ -50,6 +50,8 @@ obj-$(CONFIG_RTC_DRV_MAX6902) += rtc-max
+--- a/drivers/rtc/Makefile
++++ b/drivers/rtc/Makefile
+@@ -50,6 +50,8 @@
obj-$(CONFIG_RTC_DRV_OMAP) += rtc-omap.o
obj-$(CONFIG_RTC_DRV_PCF8563) += rtc-pcf8563.o
obj-$(CONFIG_RTC_DRV_PCF8583) += rtc-pcf8583.o
obj-$(CONFIG_RTC_DRV_PL030) += rtc-pl030.o
obj-$(CONFIG_RTC_DRV_PL031) += rtc-pl031.o
obj-$(CONFIG_RTC_DRV_PARISC) += rtc-parisc.o
-Index: linux-2.6.28/drivers/rtc/rtc-pcf50606.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/rtc/rtc-pcf50606.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/rtc/rtc-pcf50606.c
@@ -0,0 +1,300 @@
+/* Philips PCF50606 RTC Driver
+ *
+MODULE_AUTHOR("Balaji Rao <balajirrao@openmoko.org>");
+MODULE_LICENSE("GPL");
+
-Index: linux-2.6.28/drivers/rtc/rtc-pcf50633.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/rtc/rtc-pcf50633.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/rtc/rtc-pcf50633.c
@@ -0,0 +1,300 @@
+/* Philips PCF50633 RTC Driver
+ *
+MODULE_AUTHOR("Balaji Rao <balajirrao@openmoko.org>");
+MODULE_LICENSE("GPL");
+
-Index: linux-2.6.28/drivers/rtc/rtc-s3c.c
-===================================================================
---- linux-2.6.28.orig/drivers/rtc/rtc-s3c.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/rtc/rtc-s3c.c 2009-01-02 00:01:56.000000000 +0100
+--- a/drivers/rtc/rtc-s3c.c
++++ b/drivers/rtc/rtc-s3c.c
@@ -26,7 +26,7 @@
#include <asm/uaccess.h>
#include <asm/io.h>
/* I have yet to find an S3C implementation with more than one
* of these rtc blocks in */
-Index: linux-2.6.28/drivers/serial/Kconfig
-===================================================================
---- linux-2.6.28.orig/drivers/serial/Kconfig 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/serial/Kconfig 2009-01-02 00:01:56.000000000 +0100
-@@ -447,7 +447,7 @@ config SERIAL_CLPS711X_CONSOLE
+--- a/drivers/serial/Kconfig
++++ b/drivers/serial/Kconfig
+@@ -447,7 +447,7 @@
config SERIAL_SAMSUNG
tristate "Samsung SoC serial support"
select SERIAL_CORE
help
Support for the on-chip UARTs on the Samsung S3C24XX series CPUs,
-@@ -455,6 +455,16 @@ config SERIAL_SAMSUNG
+@@ -455,6 +455,16 @@
provide all of these ports, depending on how the serial port
pins are configured.
config SERIAL_SAMSUNG_DEBUG
bool "Samsung SoC serial debug"
depends on SERIAL_SAMSUNG && DEBUG_LL
-@@ -508,7 +518,20 @@ config SERIAL_S3C2440
+@@ -508,7 +518,20 @@
help
Serial port support for the Samsung S3C2440 and S3C2442 SoC
config SERIAL_DZ
bool "DECstation DZ serial driver"
-Index: linux-2.6.28/drivers/serial/Makefile
-===================================================================
---- linux-2.6.28.orig/drivers/serial/Makefile 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/serial/Makefile 2009-01-02 00:01:56.000000000 +0100
-@@ -41,6 +41,8 @@ obj-$(CONFIG_SERIAL_S3C2400) += s3c2400.
+--- a/drivers/serial/Makefile
++++ b/drivers/serial/Makefile
+@@ -41,6 +41,8 @@
obj-$(CONFIG_SERIAL_S3C2410) += s3c2410.o
obj-$(CONFIG_SERIAL_S3C2412) += s3c2412.o
obj-$(CONFIG_SERIAL_S3C2440) += s3c2440.o
obj-$(CONFIG_SERIAL_IP22_ZILOG) += ip22zilog.o
obj-$(CONFIG_SERIAL_MUX) += mux.o
obj-$(CONFIG_SERIAL_68328) += 68328serial.o
-Index: linux-2.6.28/drivers/serial/s3c2410.c
-===================================================================
---- linux-2.6.28.orig/drivers/serial/s3c2410.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/serial/s3c2410.c 2009-01-02 00:01:56.000000000 +0100
+--- a/drivers/serial/s3c2410.c
++++ b/drivers/serial/s3c2410.c
@@ -19,6 +19,7 @@
#include <linux/serial.h>
#include <mach/hardware.h>
#include <plat/regs-serial.h>
-Index: linux-2.6.28/drivers/serial/s3c24a0.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/serial/s3c24a0.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/serial/s3c24a0.c
@@ -0,0 +1,118 @@
+/* linux/drivers/serial/s3c24a0.c
+ *
+module_init(s3c24a0_serial_init);
+module_exit(s3c24a0_serial_exit);
+
-Index: linux-2.6.28/drivers/serial/s3c6400.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/serial/s3c6400.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/serial/s3c6400.c
@@ -0,0 +1,152 @@
+/* linux/drivers/serial/s3c6400.c
+ *
+MODULE_AUTHOR("Ben Dooks <ben@simtec.co.uk>");
+MODULE_LICENSE("GPL v2");
+MODULE_ALIAS("platform:s3c6400-uart");
-Index: linux-2.6.28/drivers/serial/samsung.c
-===================================================================
---- linux-2.6.28.orig/drivers/serial/samsung.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/serial/samsung.c 2009-01-02 00:01:56.000000000 +0100
+--- a/drivers/serial/samsung.c
++++ b/drivers/serial/samsung.c
@@ -42,13 +42,18 @@
#include <linux/serial.h>
#include <linux/delay.h>
/* macros to change one thing to another */
#define tx_enabled(port) ((port)->unused[0])
-@@ -136,8 +128,10 @@ static void s3c24xx_serial_rx_disable(st
+@@ -136,8 +128,10 @@
static void s3c24xx_serial_stop_tx(struct uart_port *port)
{
tx_enabled(port) = 0;
if (port->flags & UPF_CONS_FLOW)
s3c24xx_serial_rx_enable(port);
-@@ -146,11 +140,13 @@ static void s3c24xx_serial_stop_tx(struc
+@@ -146,11 +140,13 @@
static void s3c24xx_serial_start_tx(struct uart_port *port)
{
tx_enabled(port) = 1;
}
}
-@@ -158,9 +154,11 @@ static void s3c24xx_serial_start_tx(stru
+@@ -158,9 +154,11 @@
static void s3c24xx_serial_stop_rx(struct uart_port *port)
{
rx_enabled(port) = 0;
}
}
-@@ -241,7 +239,7 @@ s3c24xx_serial_rx_chars(int irq, void *d
+@@ -241,7 +239,7 @@
port->icount.rx++;
if (unlikely(uerstat & S3C2410_UERSTAT_ANY)) {
ch, uerstat);
/* check for break */
-@@ -384,13 +382,13 @@ static void s3c24xx_serial_shutdown(stru
+@@ -384,13 +382,13 @@
struct s3c24xx_uart_port *ourport = to_ourport(port);
if (ourport->tx_claimed) {
ourport->rx_claimed = 0;
rx_enabled(port) = 0;
}
-@@ -407,12 +405,11 @@ static int s3c24xx_serial_startup(struct
+@@ -407,12 +405,11 @@
rx_enabled(port) = 1;
return ret;
}
-@@ -422,12 +419,11 @@ static int s3c24xx_serial_startup(struct
+@@ -422,12 +419,11 @@
tx_enabled(port) = 1;
goto err;
}
-@@ -452,6 +448,8 @@ static void s3c24xx_serial_pm(struct uar
+@@ -452,6 +448,8 @@
{
struct s3c24xx_uart_port *ourport = to_ourport(port);
switch (level) {
case 3:
if (!IS_ERR(ourport->baudclk) && ourport->baudclk != NULL)
-@@ -514,6 +512,7 @@ s3c24xx_serial_setsource(struct uart_por
+@@ -514,6 +512,7 @@
struct baud_calc {
struct s3c24xx_uart_clksrc *clksrc;
unsigned int calc;
unsigned int quot;
struct clk *src;
};
-@@ -523,6 +522,7 @@ static int s3c24xx_serial_calcbaud(struc
+@@ -523,6 +522,7 @@
struct s3c24xx_uart_clksrc *clksrc,
unsigned int baud)
{
unsigned long rate;
calc->src = clk_get(port->dev, clksrc->name);
-@@ -533,8 +533,24 @@ static int s3c24xx_serial_calcbaud(struc
+@@ -533,8 +533,24 @@
rate /= clksrc->divisor;
calc->clksrc = clksrc;
calc->quot--;
return 1;
-@@ -617,6 +633,30 @@ static unsigned int s3c24xx_serial_getcl
+@@ -617,6 +633,30 @@
return best->quot;
}
static void s3c24xx_serial_set_termios(struct uart_port *port,
struct ktermios *termios,
struct ktermios *old)
-@@ -629,6 +669,7 @@ static void s3c24xx_serial_set_termios(s
+@@ -629,6 +669,7 @@
unsigned int baud, quot;
unsigned int ulcon;
unsigned int umcon;
/*
* We don't support modem control lines.
-@@ -650,6 +691,7 @@ static void s3c24xx_serial_set_termios(s
+@@ -650,6 +691,7 @@
/* check to see if we need to change clock source */
if (ourport->clksrc != clksrc || ourport->baudclk != clk) {
s3c24xx_serial_setsource(port, clksrc);
if (ourport->baudclk != NULL && !IS_ERR(ourport->baudclk)) {
-@@ -661,6 +703,14 @@ static void s3c24xx_serial_set_termios(s
+@@ -661,6 +703,14 @@
ourport->clksrc = clksrc;
ourport->baudclk = clk;
}
switch (termios->c_cflag & CSIZE) {
-@@ -702,12 +752,16 @@ static void s3c24xx_serial_set_termios(s
+@@ -702,12 +752,16 @@
spin_lock_irqsave(&port->lock, flags);
dbg("uart: ulcon = 0x%08x, ucon = 0x%08x, ufcon = 0x%08x\n",
rd_regl(port, S3C2410_ULCON),
rd_regl(port, S3C2410_UCON),
-@@ -752,6 +806,8 @@ static const char *s3c24xx_serial_type(s
+@@ -752,6 +806,8 @@
return "S3C2440";
case PORT_S3C2412:
return "S3C2412";
default:
return NULL;
}
-@@ -827,14 +883,14 @@ static struct uart_ops s3c24xx_serial_op
+@@ -827,14 +883,14 @@
static struct uart_driver s3c24xx_uart_drv = {
.owner = THIS_MODULE,
.dev_name = "s3c2410_serial",
[0] = {
.port = {
.lock = __SPIN_LOCK_UNLOCKED(s3c24xx_serial_ports[0].port.lock),
-@@ -859,7 +915,7 @@ static struct s3c24xx_uart_port s3c24xx_
+@@ -859,7 +915,7 @@
.line = 1,
}
},
[2] = {
.port = {
-@@ -872,10 +928,88 @@ static struct s3c24xx_uart_port s3c24xx_
+@@ -872,10 +928,88 @@
.flags = UPF_BOOT_AUTOCONF,
.line = 2,
}
/* s3c24xx_serial_resetport
*
* wrapper to call the specific reset for this port (reset the fifos
-@@ -890,6 +1024,93 @@ static inline int s3c24xx_serial_resetpo
+@@ -890,6 +1024,93 @@
return (info->reset_port)(port, cfg);
}
/* s3c24xx_serial_init_port
*
* initialise a single serial port from the platform device given
-@@ -914,8 +1135,11 @@ static int s3c24xx_serial_init_port(stru
+@@ -914,8 +1135,11 @@
if (port->mapbase != 0)
return 0;
/* setup info for port */
port->dev = &platdev->dev;
-@@ -943,18 +1167,26 @@ static int s3c24xx_serial_init_port(stru
+@@ -943,18 +1167,26 @@
dbg("resource %p (%lx..%lx)\n", res, res->start, res->end);
/* reset the fifos (and setup the uart) */
s3c24xx_serial_resetport(port, cfg);
-@@ -987,6 +1219,7 @@ int s3c24xx_serial_probe(struct platform
+@@ -987,6 +1219,7 @@
ourport = &s3c24xx_serial_ports[probe_index];
probe_index++;
dbg("%s: initialising port %p...\n", __func__, ourport);
-@@ -1002,6 +1235,10 @@ int s3c24xx_serial_probe(struct platform
+@@ -1002,6 +1235,10 @@
if (ret < 0)
printk(KERN_ERR "%s: failed to add clksrc attr.\n", __func__);
return 0;
probe_err:
-@@ -1015,6 +1252,7 @@ int s3c24xx_serial_remove(struct platfor
+@@ -1015,6 +1252,7 @@
struct uart_port *port = s3c24xx_dev_to_port(&dev->dev);
if (port) {
device_remove_file(&dev->dev, &dev_attr_clock_source);
uart_remove_one_port(&s3c24xx_uart_drv, port);
}
-@@ -1038,6 +1276,16 @@ static int s3c24xx_serial_suspend(struct
+@@ -1038,6 +1276,16 @@
return 0;
}
static int s3c24xx_serial_resume(struct platform_device *dev)
{
struct uart_port *port = s3c24xx_dev_to_port(&dev->dev);
-@@ -1049,6 +1297,9 @@ static int s3c24xx_serial_resume(struct
+@@ -1049,6 +1297,9 @@
clk_disable(ourport->clk);
uart_resume_port(&s3c24xx_uart_drv, port);
}
return 0;
-@@ -1059,6 +1310,12 @@ int s3c24xx_serial_init(struct platform_
+@@ -1059,6 +1310,12 @@
struct s3c24xx_uart_info *info)
{
dbg("s3c24xx_serial_init(%p,%p)\n", drv, info);
#ifdef CONFIG_PM
drv->suspend = s3c24xx_serial_suspend;
-@@ -1098,6 +1355,13 @@ module_exit(s3c24xx_serial_modexit);
+@@ -1098,6 +1355,13 @@
#ifdef CONFIG_SERIAL_SAMSUNG_CONSOLE
static struct uart_port *cons_uart;
static int
s3c24xx_serial_console_txrdy(struct uart_port *port, unsigned int ufcon)
-@@ -1122,9 +1386,21 @@ static void
+@@ -1122,9 +1386,21 @@
s3c24xx_serial_console_putchar(struct uart_port *port, int ch)
{
unsigned int ufcon = rd_regl(cons_uart, S3C2410_UFCON);
}
static void
-@@ -1219,7 +1495,7 @@ static int s3c24xx_serial_init_ports(str
+@@ -1219,7 +1495,7 @@
platdev_ptr = s3c24xx_uart_devs;
s3c24xx_serial_init_port(ptr, info, *platdev_ptr);
}
-@@ -1240,7 +1516,7 @@ s3c24xx_serial_console_setup(struct cons
+@@ -1240,7 +1516,7 @@
/* is this a valid port */
co->index = 0;
port = &s3c24xx_serial_ports[co->index].port;
-Index: linux-2.6.28/drivers/serial/samsung.h
-===================================================================
---- linux-2.6.28.orig/drivers/serial/samsung.h 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/serial/samsung.h 2009-01-02 00:01:56.000000000 +0100
+--- a/drivers/serial/samsung.h
++++ b/drivers/serial/samsung.h
@@ -10,6 +10,8 @@
* published by the Free Software Foundation.
*/
struct s3c24xx_uart_info {
char *name;
unsigned int type;
-@@ -21,6 +23,10 @@ struct s3c24xx_uart_info {
+@@ -21,6 +23,10 @@
unsigned long tx_fifoshift;
unsigned long tx_fifofull;
/* clock source control */
int (*get_clksrc)(struct uart_port *, struct s3c24xx_uart_clksrc *clk);
-@@ -33,12 +39,23 @@ struct s3c24xx_uart_info {
+@@ -33,12 +39,23 @@
struct s3c24xx_uart_port {
unsigned char rx_claimed;
unsigned char tx_claimed;
};
/* conversion functions */
-Index: linux-2.6.28/drivers/spi/spi_s3c24xx.c
-===================================================================
---- linux-2.6.28.orig/drivers/spi/spi_s3c24xx.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/spi/spi_s3c24xx.c 2009-01-02 00:01:56.000000000 +0100
+--- a/drivers/spi/spi_s3c24xx.c
++++ b/drivers/spi/spi_s3c24xx.c
@@ -28,7 +28,7 @@
#include <mach/hardware.h>
#include <mach/spi.h>
struct s3c24xx_spi {
-Index: linux-2.6.28/drivers/spi/spi_s3c24xx_gpio.c
-===================================================================
---- linux-2.6.28.orig/drivers/spi/spi_s3c24xx_gpio.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/spi/spi_s3c24xx_gpio.c 2009-01-02 00:01:56.000000000 +0100
-@@ -91,7 +91,7 @@ static void s3c2410_spigpio_chipselect(s
+--- a/drivers/spi/spi_s3c24xx_gpio.c
++++ b/drivers/spi/spi_s3c24xx_gpio.c
+@@ -91,7 +91,7 @@
struct s3c2410_spigpio *sg = spidev_to_sg(dev);
if (sg->info && sg->info->chip_select)
}
static int s3c2410_spigpio_probe(struct platform_device *dev)
-@@ -100,6 +100,7 @@ static int s3c2410_spigpio_probe(struct
+@@ -100,6 +100,7 @@
struct spi_master *master;
struct s3c2410_spigpio *sp;
int ret;
master = spi_alloc_master(&dev->dev, sizeof(struct s3c2410_spigpio));
if (master == NULL) {
-@@ -112,9 +113,11 @@ static int s3c2410_spigpio_probe(struct
+@@ -112,9 +113,11 @@
platform_set_drvdata(dev, sp);
/* setup spi bitbang adaptor */
sp->bitbang.master = spi_master_get(master);
sp->bitbang.master->bus_num = info->bus_num;
-@@ -143,6 +146,22 @@ static int s3c2410_spigpio_probe(struct
+@@ -143,6 +146,22 @@
if (ret)
goto err_no_bitbang;
return 0;
err_no_bitbang:
-Index: linux-2.6.28/drivers/usb/gadget/composite.c
-===================================================================
---- linux-2.6.28.orig/drivers/usb/gadget/composite.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/usb/gadget/composite.c 2009-01-02 00:01:56.000000000 +0100
-@@ -1045,7 +1045,11 @@ composite_resume(struct usb_gadget *gadg
+--- a/drivers/usb/gadget/composite.c
++++ b/drivers/usb/gadget/composite.c
+@@ -1045,7 +1045,11 @@
/*-------------------------------------------------------------------------*/
static struct usb_gadget_driver composite_driver = {
.bind = composite_bind,
.unbind = __exit_p(composite_unbind),
-Index: linux-2.6.28/drivers/usb/gadget/ether.c
-===================================================================
---- linux-2.6.28.orig/drivers/usb/gadget/ether.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/usb/gadget/ether.c 2009-01-02 00:01:56.000000000 +0100
-@@ -122,11 +122,16 @@ static inline bool has_rndis(void)
+--- a/drivers/usb/gadget/ether.c
++++ b/drivers/usb/gadget/ether.c
+@@ -122,11 +122,16 @@
* Instead: allocate your own, using normal USB-IF procedures.
*/
/* For hardware that can't talk CDC, we use the same vendor ID that
* ARM Linux has used for ethernet-over-usb, both with sa1100 and
-@@ -147,8 +152,8 @@ static inline bool has_rndis(void)
+@@ -147,8 +152,8 @@
* used with CDC Ethernet, Linux 2.4 hosts will need updates to choose
* the non-RNDIS configuration.
*/
/*-------------------------------------------------------------------------*/
-Index: linux-2.6.28/drivers/usb/gadget/s3c2410_udc.c
-===================================================================
---- linux-2.6.28.orig/drivers/usb/gadget/s3c2410_udc.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/usb/gadget/s3c2410_udc.c 2009-01-02 00:01:56.000000000 +0100
+--- a/drivers/usb/gadget/s3c2410_udc.c
++++ b/drivers/usb/gadget/s3c2410_udc.c
@@ -53,8 +53,8 @@
#include <mach/hardware.h>
#include <mach/regs-gpio.h>
#include "s3c2410_udc.h"
-@@ -134,6 +134,8 @@ static int dprintk(int level, const char
+@@ -134,6 +134,8 @@
return 0;
}
#endif
static int s3c2410_udc_debugfs_seq_show(struct seq_file *m, void *p)
{
u32 addr_reg,pwr_reg,ep_int_reg,usb_int_reg;
-@@ -197,6 +199,7 @@ static const struct file_operations s3c2
+@@ -197,6 +199,7 @@
.release = single_release,
.owner = THIS_MODULE,
};
/* io macros */
-@@ -843,6 +846,7 @@ static void s3c2410_udc_handle_ep(struct
+@@ -843,6 +846,7 @@
u32 ep_csr1;
u32 idx;
if (likely (!list_empty(&ep->queue)))
req = list_entry(ep->queue.next,
struct s3c2410_request, queue);
-@@ -882,6 +886,8 @@ static void s3c2410_udc_handle_ep(struct
+@@ -882,6 +886,8 @@
if ((ep_csr1 & S3C2410_UDC_OCSR1_PKTRDY) && req) {
s3c2410_udc_read_fifo(ep,req);
}
}
}
-@@ -1890,6 +1896,7 @@ static int s3c2410_udc_probe(struct plat
+@@ -1890,6 +1896,7 @@
udc->vbus = 1;
}
if (s3c2410_udc_debugfs_root) {
udc->regs_info = debugfs_create_file("registers", S_IRUGO,
s3c2410_udc_debugfs_root,
-@@ -1897,6 +1904,7 @@ static int s3c2410_udc_probe(struct plat
+@@ -1897,6 +1904,7 @@
if (!udc->regs_info)
dev_warn(dev, "debugfs file creation failed\n");
}
dev_dbg(dev, "probe ok\n");
-@@ -2003,12 +2011,14 @@ static int __init udc_init(void)
+@@ -2003,12 +2011,14 @@
dprintk(DEBUG_NORMAL, "%s: version %s\n", gadget_name, DRIVER_VERSION);
retval = platform_driver_register(&udc_driver_2410);
if (retval)
-Index: linux-2.6.28/drivers/usb/host/ohci-s3c2410.c
-===================================================================
---- linux-2.6.28.orig/drivers/usb/host/ohci-s3c2410.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/usb/host/ohci-s3c2410.c 2009-01-02 00:01:56.000000000 +0100
+--- a/drivers/usb/host/ohci-s3c2410.c
++++ b/drivers/usb/host/ohci-s3c2410.c
@@ -24,6 +24,7 @@
#include <mach/hardware.h>
#define valid_port(idx) ((idx) == 1 || (idx) == 2)
-@@ -308,6 +309,42 @@ static void s3c2410_hcd_oc(struct s3c241
+@@ -308,6 +309,42 @@
local_irq_restore(flags);
}
/* may be called without controller electrically present */
/* may be called with controller, bus, and devices active */
-@@ -325,6 +362,7 @@ static void s3c2410_hcd_oc(struct s3c241
+@@ -325,6 +362,7 @@
static void
usb_hcd_s3c2410_remove (struct usb_hcd *hcd, struct platform_device *dev)
{
usb_remove_hcd(hcd);
s3c2410_stop_hc(dev);
iounmap(hcd->regs);
-@@ -392,8 +430,15 @@ static int usb_hcd_s3c2410_probe (const
+@@ -392,8 +430,15 @@
if (retval != 0)
goto err_ioremap;
err_ioremap:
s3c2410_stop_hc(dev);
iounmap(hcd->regs);
-Index: linux-2.6.28/drivers/video/backlight/gta01_bl.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/video/backlight/gta01_bl.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/video/backlight/gta01_bl.c
@@ -0,0 +1,269 @@
+/*
+ * Backlight Driver for FIC GTA01 (Neo1973) GSM Phone
+MODULE_DESCRIPTION("FIC GTA01 (Neo1973) Backlight Driver");
+MODULE_AUTHOR("Harald Welte <laforge@openmoko.org>");
+MODULE_LICENSE("GPL");
-Index: linux-2.6.28/drivers/video/backlight/Kconfig
-===================================================================
---- linux-2.6.28.orig/drivers/video/backlight/Kconfig 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/video/backlight/Kconfig 2009-01-02 00:01:56.000000000 +0100
-@@ -152,6 +152,13 @@ config BACKLIGHT_OMAP1
+--- a/drivers/video/backlight/Kconfig
++++ b/drivers/video/backlight/Kconfig
+@@ -152,6 +152,13 @@
the PWL module of OMAP1 processors. Say Y if your board
uses this hardware.
config BACKLIGHT_HP680
tristate "HP Jornada 680 Backlight Driver"
depends on BACKLIGHT_CLASS_DEVICE && SH_HP6XX
-Index: linux-2.6.28/drivers/video/backlight/Makefile
-===================================================================
---- linux-2.6.28.orig/drivers/video/backlight/Makefile 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/video/backlight/Makefile 2009-01-02 00:01:56.000000000 +0100
-@@ -12,6 +12,7 @@ obj-$(CONFIG_LCD_TOSA) += tosa_lcd.o
+--- a/drivers/video/backlight/Makefile
++++ b/drivers/video/backlight/Makefile
+@@ -12,6 +12,7 @@
obj-$(CONFIG_BACKLIGHT_CLASS_DEVICE) += backlight.o
obj-$(CONFIG_BACKLIGHT_ATMEL_PWM) += atmel-pwm-bl.o
obj-$(CONFIG_BACKLIGHT_CORGI) += corgi_bl.o
obj-$(CONFIG_BACKLIGHT_HP680) += hp680_bl.o
obj-$(CONFIG_BACKLIGHT_LOCOMO) += locomolcd.o
obj-$(CONFIG_BACKLIGHT_OMAP1) += omap1_bl.o
-Index: linux-2.6.28/drivers/video/console/fbcon.c
-===================================================================
---- linux-2.6.28.orig/drivers/video/console/fbcon.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/video/console/fbcon.c 2009-01-02 00:01:56.000000000 +0100
-@@ -401,6 +401,9 @@ static void fb_flashcursor(struct work_s
+--- a/drivers/video/console/fbcon.c
++++ b/drivers/video/console/fbcon.c
+@@ -401,6 +401,9 @@
int c;
int mode;
acquire_console_sem();
if (ops && ops->currcon != -1)
vc = vc_cons[ops->currcon].d;
-@@ -3225,13 +3228,17 @@ static void fbcon_get_requirement(struct
+@@ -3225,13 +3228,17 @@
static int fbcon_event_notify(struct notifier_block *self,
unsigned long action, void *data)
{
/*
* ignore all events except driver registration and deregistration
* if fbcon is not active
-Index: linux-2.6.28/drivers/video/display/jbt6k74.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/video/display/jbt6k74.c 2009-01-02 00:01:56.000000000 +0100
+--- /dev/null
++++ b/drivers/video/display/jbt6k74.c
@@ -0,0 +1,809 @@
+/* Linux kernel driver for the tpo JBT6K74-AS LCM ASIC
+ *
+
+module_init(jbt_init);
+module_exit(jbt_exit);
-Index: linux-2.6.28/drivers/video/display/Kconfig
-===================================================================
---- linux-2.6.28.orig/drivers/video/display/Kconfig 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/video/display/Kconfig 2009-01-02 00:01:56.000000000 +0100
-@@ -21,4 +21,15 @@ config DISPLAY_SUPPORT
+--- a/drivers/video/display/Kconfig
++++ b/drivers/video/display/Kconfig
+@@ -21,4 +21,15 @@
comment "Display hardware drivers"
depends on DISPLAY_SUPPORT
+ controls power management, display timing and gamma calibration.
+
endmenu
-Index: linux-2.6.28/drivers/video/display/Makefile
-===================================================================
---- linux-2.6.28.orig/drivers/video/display/Makefile 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/video/display/Makefile 2009-01-02 00:01:56.000000000 +0100
+--- a/drivers/video/display/Makefile
++++ b/drivers/video/display/Makefile
@@ -3,4 +3,5 @@
display-objs := display-sysfs.o
obj-$(CONFIG_DISPLAY_SUPPORT) += display.o
+obj-$(CONFIG_DISPLAY_JBT6K74) += jbt6k74.o
-Index: linux-2.6.28/drivers/video/Kconfig
-===================================================================
---- linux-2.6.28.orig/drivers/video/Kconfig 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/video/Kconfig 2009-01-02 00:01:56.000000000 +0100
-@@ -1918,6 +1918,30 @@ config FB_TMIO_ACCELL
+--- a/drivers/video/Kconfig
++++ b/drivers/video/Kconfig
+@@ -1918,6 +1918,30 @@
depends on FB_TMIO
default y
config FB_S3C2410
tristate "S3C2410 LCD framebuffer support"
depends on FB && ARCH_S3C2410
-Index: linux-2.6.28/drivers/video/logo/Kconfig
-===================================================================
---- linux-2.6.28.orig/drivers/video/logo/Kconfig 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/video/logo/Kconfig 2009-01-02 00:01:56.000000000 +0100
-@@ -77,6 +77,11 @@ config LOGO_SUPERH_CLUT224
+--- a/drivers/video/logo/Kconfig
++++ b/drivers/video/logo/Kconfig
+@@ -77,6 +77,11 @@
depends on SUPERH
default y
config LOGO_M32R_CLUT224
bool "224-color M32R Linux logo"
depends on M32R
-Index: linux-2.6.28/drivers/video/logo/logo.c
-===================================================================
---- linux-2.6.28.orig/drivers/video/logo/logo.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/video/logo/logo.c 2009-01-02 00:01:56.000000000 +0100
-@@ -35,6 +35,7 @@ extern const struct linux_logo logo_supe
+--- a/drivers/video/logo/logo.c
++++ b/drivers/video/logo/logo.c
+@@ -35,6 +35,7 @@
extern const struct linux_logo logo_superh_vga16;
extern const struct linux_logo logo_superh_clut224;
extern const struct linux_logo logo_m32r_clut224;
static int nologo;
module_param(nologo, bool, 0);
-@@ -115,6 +116,10 @@ const struct linux_logo * __init_refok f
+@@ -115,6 +116,10 @@
/* M32R Linux logo */
logo = &logo_m32r_clut224;
#endif
}
return logo;
}
-Index: linux-2.6.28/drivers/video/logo/logo_openmoko_clut224.ppm
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/video/logo/logo_openmoko_clut224.ppm 2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/drivers/video/logo/logo_openmoko_clut224.ppm
@@ -0,0 +1,40003 @@
+P3
+480 500
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
+0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
-Index: linux-2.6.28/drivers/video/logo/Makefile
-===================================================================
---- linux-2.6.28.orig/drivers/video/logo/Makefile 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/video/logo/Makefile 2009-01-02 00:01:57.000000000 +0100
-@@ -15,6 +15,7 @@ obj-$(CONFIG_LOGO_SUPERH_MONO) += logo_
+--- a/drivers/video/logo/Makefile
++++ b/drivers/video/logo/Makefile
+@@ -15,6 +15,7 @@
obj-$(CONFIG_LOGO_SUPERH_VGA16) += logo_superh_vga16.o
obj-$(CONFIG_LOGO_SUPERH_CLUT224) += logo_superh_clut224.o
obj-$(CONFIG_LOGO_M32R_CLUT224) += logo_m32r_clut224.o
obj-$(CONFIG_SPU_BASE) += logo_spe_clut224.o
-Index: linux-2.6.28/drivers/video/Makefile
-===================================================================
---- linux-2.6.28.orig/drivers/video/Makefile 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/video/Makefile 2009-01-02 00:01:57.000000000 +0100
-@@ -109,6 +109,7 @@ obj-$(CONFIG_FB_METRONOME) += met
+--- a/drivers/video/Makefile
++++ b/drivers/video/Makefile
+@@ -109,6 +109,7 @@
obj-$(CONFIG_FB_S1D13XXX) += s1d13xxxfb.o
obj-$(CONFIG_FB_SH7760) += sh7760fb.o
obj-$(CONFIG_FB_IMX) += imxfb.o
obj-$(CONFIG_FB_S3C2410) += s3c2410fb.o
obj-$(CONFIG_FB_FSL_DIU) += fsl-diu-fb.o
obj-$(CONFIG_FB_COBALT) += cobalt_lcdfb.o
-Index: linux-2.6.28/drivers/video/s3c2410fb.c
-===================================================================
---- linux-2.6.28.orig/drivers/video/s3c2410fb.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/video/s3c2410fb.c 2009-01-02 00:01:57.000000000 +0100
-@@ -1017,6 +1017,8 @@ static int s3c2410fb_resume(struct platf
+--- a/drivers/video/s3c2410fb.c
++++ b/drivers/video/s3c2410fb.c
+@@ -1017,6 +1017,8 @@
s3c2410fb_init_registers(fbinfo);
return 0;
}
-Index: linux-2.6.28/drivers/video/s3c-fb.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/video/s3c-fb.c 2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/drivers/video/s3c-fb.c
@@ -0,0 +1,1036 @@
+/* linux/drivers/video/s3c-fb.c
+ *
+MODULE_DESCRIPTION("Samsung S3C SoC Framebuffer driver");
+MODULE_LICENSE("GPL");
+MODULE_ALIAS("platform:s3c-fb");
-Index: linux-2.6.28/drivers/watchdog/Kconfig
-===================================================================
---- linux-2.6.28.orig/drivers/watchdog/Kconfig 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/watchdog/Kconfig 2009-01-02 00:01:57.000000000 +0100
-@@ -233,6 +233,12 @@ config ORION5X_WATCHDOG
+--- a/drivers/watchdog/Kconfig
++++ b/drivers/watchdog/Kconfig
+@@ -233,6 +233,12 @@
To compile this driver as a module, choose M here: the
module will be called orion5x_wdt.
# ARM26 Architecture
# AVR32 Architecture
-@@ -784,7 +790,7 @@ config WATCHDOG_RTAS
+@@ -784,7 +790,7 @@
tristate "RTAS watchdog"
depends on PPC_RTAS
help
To compile this driver as a module, choose M here. The module
will be called wdrtas.
-Index: linux-2.6.28/drivers/watchdog/Makefile
-===================================================================
---- linux-2.6.28.orig/drivers/watchdog/Makefile 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/watchdog/Makefile 2009-01-02 00:01:57.000000000 +0100
-@@ -41,6 +41,7 @@ obj-$(CONFIG_PNX4008_WATCHDOG) += pnx400
+--- a/drivers/watchdog/Makefile
++++ b/drivers/watchdog/Makefile
+@@ -41,6 +41,7 @@
obj-$(CONFIG_IOP_WATCHDOG) += iop_wdt.o
obj-$(CONFIG_DAVINCI_WATCHDOG) += davinci_wdt.o
obj-$(CONFIG_ORION5X_WATCHDOG) += orion5x_wdt.o
# ARM26 Architecture
-Index: linux-2.6.28/drivers/watchdog/pcf50606_wdt.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/drivers/watchdog/pcf50606_wdt.c 2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/drivers/watchdog/pcf50606_wdt.c
@@ -0,0 +1,213 @@
+/* Philips PCF50606 Watchdog Timer Driver
+ *
+MODULE_LICENSE("GPL");
+MODULE_ALIAS("platform:pcf50606-wdt");
+
-Index: linux-2.6.28/drivers/watchdog/s3c2410_wdt.c
-===================================================================
---- linux-2.6.28.orig/drivers/watchdog/s3c2410_wdt.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/drivers/watchdog/s3c2410_wdt.c 2009-01-02 00:01:57.000000000 +0100
+--- a/drivers/watchdog/s3c2410_wdt.c
++++ b/drivers/watchdog/s3c2410_wdt.c
@@ -42,7 +42,7 @@
#undef S3C_VA_WATCHDOG
#define S3C_VA_WATCHDOG (0)
#define PFX "s3c2410-wdt: "
-Index: linux-2.6.28/fs/jffs2/background.c
-===================================================================
---- linux-2.6.28.orig/fs/jffs2/background.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/fs/jffs2/background.c 2009-01-02 00:01:57.000000000 +0100
-@@ -95,13 +95,17 @@ static int jffs2_garbage_collect_thread(
+--- a/fs/jffs2/background.c
++++ b/fs/jffs2/background.c
+@@ -95,13 +95,17 @@
spin_unlock(&c->erase_completion_lock);
/* Put_super will send a SIGKILL and then wait on the sem.
*/
-Index: linux-2.6.28/include/asm-arm/plat-s3c/iic.h
-===================================================================
---- linux-2.6.28.orig/include/asm-arm/plat-s3c/iic.h 2008-12-25 00:26:37.000000000 +0100
-+++ /dev/null 1970-01-01 00:00:00.000000000 +0000
+--- a/include/asm-arm/plat-s3c/iic.h
++++ /dev/null
@@ -1,33 +0,0 @@
-/* arch/arm/mach-s3c2410/include/mach/iic.h
- *
-};
-
-#endif /* __ASM_ARCH_IIC_H */
-Index: linux-2.6.28/include/asm-arm/plat-s3c/nand.h
-===================================================================
---- linux-2.6.28.orig/include/asm-arm/plat-s3c/nand.h 2008-12-25 00:26:37.000000000 +0100
-+++ /dev/null 1970-01-01 00:00:00.000000000 +0000
+--- a/include/asm-arm/plat-s3c/nand.h
++++ /dev/null
@@ -1,50 +0,0 @@
-/* arch/arm/mach-s3c2410/include/mach/nand.h
- *
- int chip);
-};
-
-Index: linux-2.6.28/include/asm-arm/plat-s3c/regs-ac97.h
-===================================================================
---- linux-2.6.28.orig/include/asm-arm/plat-s3c/regs-ac97.h 2008-12-25 00:26:37.000000000 +0100
-+++ /dev/null 1970-01-01 00:00:00.000000000 +0000
+--- a/include/asm-arm/plat-s3c/regs-ac97.h
++++ /dev/null
@@ -1,67 +0,0 @@
-/* arch/arm/mach-s3c2410/include/mach/regs-ac97.h
- *
-#define S3C_AC97_MIC_DATA (0x1C)
-
-#endif /* __ASM_ARCH_REGS_AC97_H */
-Index: linux-2.6.28/include/asm-arm/plat-s3c/regs-iic.h
-===================================================================
---- linux-2.6.28.orig/include/asm-arm/plat-s3c/regs-iic.h 2008-12-25 00:26:37.000000000 +0100
-+++ /dev/null 1970-01-01 00:00:00.000000000 +0000
+--- a/include/asm-arm/plat-s3c/regs-iic.h
++++ /dev/null
@@ -1,56 +0,0 @@
-/* arch/arm/mach-s3c2410/include/mach/regs-iic.h
- *
-#define S3C2410_IICLC_FILTER_ON (1<<2)
-
-#endif /* __ASM_ARCH_REGS_IIC_H */
-Index: linux-2.6.28/include/asm-arm/plat-s3c/regs-nand.h
-===================================================================
---- linux-2.6.28.orig/include/asm-arm/plat-s3c/regs-nand.h 2008-12-25 00:26:37.000000000 +0100
-+++ /dev/null 1970-01-01 00:00:00.000000000 +0000
+--- a/include/asm-arm/plat-s3c/regs-nand.h
++++ /dev/null
@@ -1,123 +0,0 @@
-/* arch/arm/mach-s3c2410/include/mach/regs-nand.h
- *
-
-#endif /* __ASM_ARM_REGS_NAND */
-
-Index: linux-2.6.28/include/asm-arm/plat-s3c/regs-rtc.h
-===================================================================
---- linux-2.6.28.orig/include/asm-arm/plat-s3c/regs-rtc.h 2008-12-25 00:26:37.000000000 +0100
-+++ /dev/null 1970-01-01 00:00:00.000000000 +0000
+--- a/include/asm-arm/plat-s3c/regs-rtc.h
++++ /dev/null
@@ -1,61 +0,0 @@
-/* arch/arm/mach-s3c2410/include/mach/regs-rtc.h
- *
-
-
-#endif /* __ASM_ARCH_REGS_RTC_H */
-Index: linux-2.6.28/include/asm-arm/plat-s3c/regs-watchdog.h
-===================================================================
---- linux-2.6.28.orig/include/asm-arm/plat-s3c/regs-watchdog.h 2008-12-25 00:26:37.000000000 +0100
-+++ /dev/null 1970-01-01 00:00:00.000000000 +0000
+--- a/include/asm-arm/plat-s3c/regs-watchdog.h
++++ /dev/null
@@ -1,41 +0,0 @@
-/* arch/arm/mach-s3c2410/include/mach/regs-watchdog.h
- *
-#endif /* __ASM_ARCH_REGS_WATCHDOG_H */
-
-
-Index: linux-2.6.28/include/asm-arm/plat-s3c24xx/mci.h
-===================================================================
---- linux-2.6.28.orig/include/asm-arm/plat-s3c24xx/mci.h 2008-12-25 00:26:37.000000000 +0100
-+++ /dev/null 1970-01-01 00:00:00.000000000 +0000
+--- a/include/asm-arm/plat-s3c24xx/mci.h
++++ /dev/null
@@ -1,15 +0,0 @@
-#ifndef _ARCH_MCI_H
-#define _ARCH_MCI_H
-};
-
-#endif /* _ARCH_NCI_H */
-Index: linux-2.6.28/include/asm-arm/plat-s3c24xx/neo1973.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/include/asm-arm/plat-s3c24xx/neo1973.h 2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/include/asm-arm/plat-s3c24xx/neo1973.h
@@ -0,0 +1,33 @@
+/*
+ * include/asm-arm/plat-s3c24xx/neo1973.h
+void neo1973_gpb_setpin(unsigned int pin, unsigned to);
+
+#endif
-Index: linux-2.6.28/include/asm-arm/plat-s3c24xx/regs-spi.h
-===================================================================
---- linux-2.6.28.orig/include/asm-arm/plat-s3c24xx/regs-spi.h 2008-12-25 00:26:37.000000000 +0100
-+++ /dev/null 1970-01-01 00:00:00.000000000 +0000
+--- a/include/asm-arm/plat-s3c24xx/regs-spi.h
++++ /dev/null
@@ -1,82 +0,0 @@
-/* arch/arm/mach-s3c2410/include/mach/regs-spi.h
- *
-
-
-#endif /* __ASM_ARCH_REGS_SPI_H */
-Index: linux-2.6.28/include/asm-arm/plat-s3c24xx/regs-udc.h
-===================================================================
---- linux-2.6.28.orig/include/asm-arm/plat-s3c24xx/regs-udc.h 2008-12-25 00:26:37.000000000 +0100
-+++ /dev/null 1970-01-01 00:00:00.000000000 +0000
+--- a/include/asm-arm/plat-s3c24xx/regs-udc.h
++++ /dev/null
@@ -1,153 +0,0 @@
-/* arch/arm/mach-s3c2410/include/mach/regs-udc.h
- *
-
-
-#endif
-Index: linux-2.6.28/include/asm-arm/plat-s3c24xx/udc.h
-===================================================================
---- linux-2.6.28.orig/include/asm-arm/plat-s3c24xx/udc.h 2008-12-25 00:26:37.000000000 +0100
-+++ /dev/null 1970-01-01 00:00:00.000000000 +0000
+--- a/include/asm-arm/plat-s3c24xx/udc.h
++++ /dev/null
@@ -1,36 +0,0 @@
-/* arch/arm/mach-s3c2410/include/mach/udc.h
- *
-extern void __init s3c24xx_udc_set_platdata(struct s3c2410_udc_mach_info *);
-
-#endif /* __ASM_ARM_ARCH_UDC_H */
-Index: linux-2.6.28/include/linux/android_aid.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/include/linux/android_aid.h 2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/include/linux/android_aid.h
@@ -0,0 +1,25 @@
+/* include/linux/android_aid.h
+ *
+#define AID_NET_RAW 3004
+
+#endif
-Index: linux-2.6.28/include/linux/android_alarm.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/include/linux/android_alarm.h 2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/include/linux/android_alarm.h
@@ -0,0 +1,59 @@
+/* include/linux/android_alarm.h
+ *
+#define ANDROID_ALARM_IOCTL_TO_TYPE(cmd) (_IOC_NR(cmd) >> 4)
+
+#endif
-Index: linux-2.6.28/include/linux/android_power.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/include/linux/android_power.h 2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/include/linux/android_power.h
@@ -0,0 +1,98 @@
+/* include/linux/android_power.h
+ *
+
+#endif
+
-Index: linux-2.6.28/include/linux/android_timed_gpio.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/include/linux/android_timed_gpio.h 2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/include/linux/android_timed_gpio.h
@@ -0,0 +1,31 @@
+/* include/linux/android_timed_gpio.h
+ *
+};
+
+#endif
-Index: linux-2.6.28/include/linux/ashmem.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/include/linux/ashmem.h 2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/include/linux/ashmem.h
@@ -0,0 +1,48 @@
+/*
+ * include/linux/ashmem.h
+#define ASHMEM_PURGE_ALL_CACHES _IO(__ASHMEMIOC, 10)
+
+#endif /* _LINUX_ASHMEM_H */
-Index: linux-2.6.28/include/linux/binder.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/include/linux/binder.h 2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/include/linux/binder.h
@@ -0,0 +1,330 @@
+/*
+ * Copyright (C) 2008 Google, Inc.
+
+#endif /* _LINUX_BINDER_H */
+
-Index: linux-2.6.28/include/linux/bq27000_battery.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/include/linux/bq27000_battery.h 2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/include/linux/bq27000_battery.h
@@ -0,0 +1,14 @@
+#ifndef __BQ27000_BATTERY_H__
+#define __BQ27000_BATTERY_H__
+};
+
+#endif
-Index: linux-2.6.28/include/linux/device.h
-===================================================================
---- linux-2.6.28.orig/include/linux/device.h 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/include/linux/device.h 2009-01-02 00:01:57.000000000 +0100
-@@ -48,6 +48,11 @@ extern int __must_check bus_create_file(
+--- a/include/linux/device.h
++++ b/include/linux/device.h
+@@ -48,6 +48,11 @@
struct bus_attribute *);
extern void bus_remove_file(struct bus_type *, struct bus_attribute *);
struct bus_type {
const char *name;
struct bus_attribute *bus_attrs;
-Index: linux-2.6.28/include/linux/fb.h
-===================================================================
---- linux-2.6.28.orig/include/linux/fb.h 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/include/linux/fb.h 2009-01-02 00:01:57.000000000 +0100
-@@ -123,6 +123,7 @@ struct dentry;
+--- a/include/linux/fb.h
++++ b/include/linux/fb.h
+@@ -123,6 +123,7 @@
#define FB_ACCEL_TRIDENT_3DIMAGE 51 /* Trident 3DImage */
#define FB_ACCEL_TRIDENT_BLADE3D 52 /* Trident Blade3D */
#define FB_ACCEL_TRIDENT_BLADEXP 53 /* Trident BladeXP */
#define FB_ACCEL_NEOMAGIC_NM2070 90 /* NeoMagic NM2070 */
#define FB_ACCEL_NEOMAGIC_NM2090 91 /* NeoMagic NM2090 */
#define FB_ACCEL_NEOMAGIC_NM2093 92 /* NeoMagic NM2093 */
-Index: linux-2.6.28/include/linux/glamofb.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/include/linux/glamofb.h 2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/include/linux/glamofb.h
@@ -0,0 +1,45 @@
+#ifndef _LINUX_GLAMOFB_H
+#define _LINUX_GLAMOFB_H
+void glamo_lcm_reset(int level);
+
+#endif
-Index: linux-2.6.28/include/linux/glamo-gpio.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/include/linux/glamo-gpio.h 2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/include/linux/glamo-gpio.h
@@ -0,0 +1,99 @@
+#ifndef __GLAMO_GPIO_H
+#define __GLAMO_GPIO_H
+
+
+#endif /* _GLAMO_GPIO */
-Index: linux-2.6.28/include/linux/gta02_hdq.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/include/linux/gta02_hdq.h 2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/include/linux/gta02_hdq.h
@@ -0,0 +1,18 @@
+#ifndef __GTA02HDQ_H__
+#define __GTA02HDQ_H__
+int gta02hdq_initialized(void);
+
+#endif
-Index: linux-2.6.28/include/linux/i2c-id.h
-===================================================================
---- linux-2.6.28.orig/include/linux/i2c-id.h 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/include/linux/i2c-id.h 2009-01-02 00:01:57.000000000 +0100
+--- a/include/linux/i2c-id.h
++++ b/include/linux/i2c-id.h
@@ -83,6 +83,9 @@
#define I2C_DRIVERID_CS5345 96 /* cs5345 audio processor */
/*
* ---- Adapter types ----------------------------------------------------
-Index: linux-2.6.28/include/linux/jbt6k74.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/include/linux/jbt6k74.h 2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/include/linux/jbt6k74.h
@@ -0,0 +1,14 @@
+#ifndef __JBT6K74_H__
+#define __JBT6K74_H__
+};
+
+#endif
-Index: linux-2.6.28/include/linux/kernel.h
-===================================================================
---- linux-2.6.28.orig/include/linux/kernel.h 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/include/linux/kernel.h 2009-01-02 00:01:57.000000000 +0100
-@@ -225,6 +225,8 @@ extern struct ratelimit_state printk_rat
+--- a/include/linux/kernel.h
++++ b/include/linux/kernel.h
+@@ -225,6 +225,8 @@
extern int printk_ratelimit(void);
extern bool printk_timed_ratelimit(unsigned long *caller_jiffies,
unsigned int interval_msec);
#else
static inline int vprintk(const char *s, va_list args)
__attribute__ ((format (printf, 1, 0)));
-Index: linux-2.6.28/include/linux/kexec.h
-===================================================================
---- linux-2.6.28.orig/include/linux/kexec.h 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/include/linux/kexec.h 2009-01-02 00:01:57.000000000 +0100
+--- a/include/linux/kexec.h
++++ b/include/linux/kexec.h
@@ -1,7 +1,6 @@
#ifndef LINUX_KEXEC_H
#define LINUX_KEXEC_H
/* Verify architecture specific macros are defined */
#ifndef KEXEC_SOURCE_MEMORY_LIMIT
-Index: linux-2.6.28/include/linux/lis302dl.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/include/linux/lis302dl.h 2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/include/linux/lis302dl.h
@@ -0,0 +1,154 @@
+#ifndef _LINUX_LIS302DL_H
+#define _LINUX_LIS302DL_H
+
+#endif /* _LINUX_LIS302DL_H */
+
-Index: linux-2.6.28/include/linux/logger.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/include/linux/logger.h 2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/include/linux/logger.h
@@ -0,0 +1,48 @@
+/* include/linux/logger.h
+ *
+#define LOGGER_FLUSH_LOG _IO(__LOGGERIO, 4) /* flush log */
+
+#endif /* _LINUX_LOGGER_H */
-Index: linux-2.6.28/include/linux/mfd/pcf50606/adc.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/include/linux/mfd/pcf50606/adc.h 2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/include/linux/mfd/pcf50606/adc.h
@@ -0,0 +1,87 @@
+/*
+ * adc.h -- Driver for NXP PCF50606 ADC
+pcf50606_adc_sync_read(struct pcf50606 *pcf, int mux, int avg);
+
+#endif /* __LINUX_PCF50606_ADC_H */
-Index: linux-2.6.28/include/linux/mfd/pcf50606/core.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/include/linux/mfd/pcf50606/core.h 2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/include/linux/mfd/pcf50606/core.h
@@ -0,0 +1,163 @@
+/*
+ * core.h -- Core driver for NXP PCF50606
+
+#endif
+
-Index: linux-2.6.28/include/linux/mfd/pcf50606/gpo.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/include/linux/mfd/pcf50606/gpo.h 2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/include/linux/mfd/pcf50606/gpo.h
@@ -0,0 +1,43 @@
+/*
+ * gpo.h -- GPO driver for NXP PCF50606
+#endif /* __LINUX_MFD_PCF50606_GPIO_H */
+
+
-Index: linux-2.6.28/include/linux/mfd/pcf50606/input.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/include/linux/mfd/pcf50606/input.h 2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/include/linux/mfd/pcf50606/input.h
@@ -0,0 +1,37 @@
+/*
+ * input.h -- Input driver for NXP PCF50606
+
+#endif
+
-Index: linux-2.6.28/include/linux/mfd/pcf50606/led.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/include/linux/mfd/pcf50606/led.h 2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/include/linux/mfd/pcf50606/led.h
@@ -0,0 +1,22 @@
+/*
+ * led.h -- LED driver for NXP PCF50606
+
+#endif
+
-Index: linux-2.6.28/include/linux/mfd/pcf50606/mbc.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/include/linux/mfd/pcf50606/mbc.h 2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/include/linux/mfd/pcf50606/mbc.h
@@ -0,0 +1,53 @@
+/*
+ * mbc.h -- Driver for NXP PCF50606 Main Battery Charger
+};
+#endif
+
-Index: linux-2.6.28/include/linux/mfd/pcf50606/pmic.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/include/linux/mfd/pcf50606/pmic.h 2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/include/linux/mfd/pcf50606/pmic.h
@@ -0,0 +1,82 @@
+#ifndef __LINUX_MFD_PCF50606_PMIC_H
+#define __LINUX_MFD_PCF50606_PMIC_H
+};
+#endif
+
-Index: linux-2.6.28/include/linux/mfd/pcf50606/rtc.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/include/linux/mfd/pcf50606/rtc.h 2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/include/linux/mfd/pcf50606/rtc.h
@@ -0,0 +1,43 @@
+/*
+ * rtc.h -- RTC driver for NXP PCF50606
+
+#endif
+
-Index: linux-2.6.28/include/linux/mfd/pcf50606/wdt.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/include/linux/mfd/pcf50606/wdt.h 2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/include/linux/mfd/pcf50606/wdt.h
@@ -0,0 +1,32 @@
+/*
+ * wdt.h -- WDT driver for NXP PCF50606
+#endif /* __LINUX_MFD_PCF50606_WDT_H */
+
+
-Index: linux-2.6.28/include/linux/mfd/pcf50633/adc.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/include/linux/mfd/pcf50633/adc.h 2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/include/linux/mfd/pcf50633/adc.h
@@ -0,0 +1,88 @@
+/*
+ * adc.h -- Driver for NXP PCF50633 ADC
+pcf50633_adc_sync_read(struct pcf50633 *pcf, int mux, int avg);
+
+#endif /* __LINUX_PCF50633_ADC_H */
-Index: linux-2.6.28/include/linux/mfd/pcf50633/core.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/include/linux/mfd/pcf50633/core.h 2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/include/linux/mfd/pcf50633/core.h
@@ -0,0 +1,212 @@
+/*
+ * core.h -- Core driver for NXP PCF50633
+
+#endif
+
-Index: linux-2.6.28/include/linux/mfd/pcf50633/gpio.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/include/linux/mfd/pcf50633/gpio.h 2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/include/linux/mfd/pcf50633/gpio.h
@@ -0,0 +1,51 @@
+/*
+ * gpio.h -- GPIO driver for NXP PCF50633
+#endif /* __LINUX_MFD_PCF50633_GPIO_H */
+
+
-Index: linux-2.6.28/include/linux/mfd/pcf50633/input.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/include/linux/mfd/pcf50633/input.h 2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/include/linux/mfd/pcf50633/input.h
@@ -0,0 +1,29 @@
+/*
+ * input.h -- Input driver for NXP PCF50633
+
+#endif
+
-Index: linux-2.6.28/include/linux/mfd/pcf50633/led.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/include/linux/mfd/pcf50633/led.h 2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/include/linux/mfd/pcf50633/led.h
@@ -0,0 +1,24 @@
+/*
+ * led.h -- LED driver for NXP PCF50633
+
+#endif
+
-Index: linux-2.6.28/include/linux/mfd/pcf50633/mbc.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/include/linux/mfd/pcf50633/mbc.h 2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/include/linux/mfd/pcf50633/mbc.h
@@ -0,0 +1,140 @@
+/*
+ * mbc.h -- Driver for NXP PCF50633 Main Battery Charger
+};
+#endif
+
-Index: linux-2.6.28/include/linux/mfd/pcf50633/pmic.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/include/linux/mfd/pcf50633/pmic.h 2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/include/linux/mfd/pcf50633/pmic.h
@@ -0,0 +1,73 @@
+#ifndef __LINUX_MFD_PCF50633_PMIC_H
+#define __LINUX_MFD_PCF50633_PMIC_H
+};
+#endif
+
-Index: linux-2.6.28/include/linux/mfd/pcf50633/rtc.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/include/linux/mfd/pcf50633/rtc.h 2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/include/linux/mfd/pcf50633/rtc.h
@@ -0,0 +1,43 @@
+/*
+ * rtc.h -- RTC driver for NXP PCF50633
+
+#endif
+
-Index: linux-2.6.28/include/linux/mmc/core.h
-===================================================================
---- linux-2.6.28.orig/include/linux/mmc/core.h 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/include/linux/mmc/core.h 2009-01-02 00:01:57.000000000 +0100
-@@ -129,6 +129,8 @@ struct mmc_request {
+--- a/include/linux/mmc/core.h
++++ b/include/linux/mmc/core.h
+@@ -129,6 +129,8 @@
struct mmc_host;
struct mmc_card;
extern void mmc_wait_for_req(struct mmc_host *, struct mmc_request *);
extern int mmc_wait_for_cmd(struct mmc_host *, struct mmc_command *, int);
extern int mmc_wait_for_app_cmd(struct mmc_host *, struct mmc_card *,
-Index: linux-2.6.28/include/linux/mmc/sdio_ids.h
-===================================================================
---- linux-2.6.28.orig/include/linux/mmc/sdio_ids.h 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/include/linux/mmc/sdio_ids.h 2009-01-02 00:01:57.000000000 +0100
+--- a/include/linux/mmc/sdio_ids.h
++++ b/include/linux/mmc/sdio_ids.h
@@ -25,5 +25,8 @@
#define SDIO_VENDOR_ID_MARVELL 0x02df
+#define SDIO_DEVICE_ID_ATHEROS_AR6000 0x0100
#endif
-Index: linux-2.6.28/include/linux/mm.h
-===================================================================
---- linux-2.6.28.orig/include/linux/mm.h 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/include/linux/mm.h 2009-01-02 00:01:57.000000000 +0100
-@@ -714,7 +714,7 @@ static inline int shmem_lock(struct file
+--- a/include/linux/mm.h
++++ b/include/linux/mm.h
+@@ -713,7 +713,7 @@
}
#endif
struct file *shmem_file_setup(char *name, loff_t size, unsigned long flags);
int shmem_zero_setup(struct vm_area_struct *);
#ifndef CONFIG_MMU
-Index: linux-2.6.28/include/linux/pcf50606.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/include/linux/pcf50606.h 2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/include/linux/pcf50606.h
@@ -0,0 +1,91 @@
+#ifndef _LINUX_PCF50606_H
+#define _LINUX_PCF50606_H
+};
+
+#endif
-Index: linux-2.6.28/include/linux/pcf50633.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/include/linux/pcf50633.h 2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/include/linux/pcf50633.h
@@ -0,0 +1,618 @@
+#ifndef _LINUX_PCF50633_H
+#define _LINUX_PCF50633_H
+void pcf50633_charge_autofast(int on);
+#endif /* _PCF50633_H */
+
-Index: linux-2.6.28/include/linux/pcf506xx.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/include/linux/pcf506xx.h 2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/include/linux/pcf506xx.h
@@ -0,0 +1,34 @@
+#ifndef _LINUX_PCF506XX_H
+#define _LINUX_PCF506XX_H
+
+
+#endif /* !_LINUX_PCF506XX_H */
-Index: linux-2.6.28/include/linux/regulator/pcf50633.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/include/linux/regulator/pcf50633.h 2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/include/linux/regulator/pcf50633.h
@@ -0,0 +1,3 @@
+#include <linux/pcf50633.h>
+
+int pcf50633_regulator_init(struct pcf50633_data *, int);
-Index: linux-2.6.28/include/linux/resume-dependency.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/include/linux/resume-dependency.h 2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/include/linux/resume-dependency.h
@@ -0,0 +1,114 @@
+#ifndef __RESUME_DEPENDENCY_H__
+#define __RESUME_DEPENDENCY_H__
+ */
+
+#endif
-Index: linux-2.6.28/include/linux/rtc/pcf50633.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/include/linux/rtc/pcf50633.h 2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/include/linux/rtc/pcf50633.h
@@ -0,0 +1,9 @@
+enum pcf50633_rtc_event {
+ PCF50633_RTC_EVENT_ALARM,
+ enum pcf50633_rtc_event evt);
+
+
-Index: linux-2.6.28/include/linux/serial_core.h
-===================================================================
---- linux-2.6.28.orig/include/linux/serial_core.h 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/include/linux/serial_core.h 2009-01-02 00:01:57.000000000 +0100
+--- a/include/linux/serial_core.h
++++ b/include/linux/serial_core.h
@@ -158,6 +158,8 @@
/* SH-SCI */
#define PORT_SCIFA 83
#ifdef __KERNEL__
#include <linux/compiler.h>
-Index: linux-2.6.28/include/linux/spi/glamo.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/include/linux/spi/glamo.h 2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/include/linux/spi/glamo.h
@@ -0,0 +1,28 @@
+#ifndef __GLAMO_SPI_H
+#define __GLAMO_SPI_H
+
+
+#endif
-Index: linux-2.6.28/include/linux/suspend.h
-===================================================================
---- linux-2.6.28.orig/include/linux/suspend.h 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/include/linux/suspend.h 2009-01-02 00:01:57.000000000 +0100
-@@ -146,6 +146,12 @@ struct pbe {
+--- a/include/linux/suspend.h
++++ b/include/linux/suspend.h
+@@ -146,6 +146,12 @@
struct pbe *next;
};
/* mm/page_alloc.c */
extern void mark_free_pages(struct zone *zone);
-Index: linux-2.6.28/include/linux/ts_filter_group.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/include/linux/ts_filter_group.h 2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/include/linux/ts_filter_group.h
@@ -0,0 +1,39 @@
+#ifndef __TS_FILTER_GROUP_H__
+#define __TS_FILTER_GROUP_H__
+extern struct ts_filter_api ts_filter_group_api;
+
+#endif
-Index: linux-2.6.28/include/linux/ts_filter.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/include/linux/ts_filter.h 2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/include/linux/ts_filter.h
@@ -0,0 +1,56 @@
+#ifndef __TS_FILTER_H__
+#define __TS_FILTER_H__
+ struct ts_filter **list);
+
+#endif
-Index: linux-2.6.28/include/linux/ts_filter_linear.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/include/linux/ts_filter_linear.h 2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/include/linux/ts_filter_linear.h
@@ -0,0 +1,64 @@
+#ifndef __TS_FILTER_LINEAR_H__
+#define __TS_FILTER_LINEAR_H__
+extern struct ts_filter_api ts_filter_linear_api;
+
+#endif
-Index: linux-2.6.28/include/linux/ts_filter_mean.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/include/linux/ts_filter_mean.h 2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/include/linux/ts_filter_mean.h
@@ -0,0 +1,34 @@
+#ifndef __TS_FILTER_MEAN_H__
+#define __TS_FILTER_MEAN_H__
+extern struct ts_filter_api ts_filter_mean_api;
+
+#endif
-Index: linux-2.6.28/include/linux/ts_filter_median.h
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/include/linux/ts_filter_median.h 2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/include/linux/ts_filter_median.h
@@ -0,0 +1,36 @@
+#ifndef __TS_FILTER_MEDIAN_H__
+#define __TS_FILTER_MEDIAN_H__
+extern struct ts_filter_api ts_filter_median_api;
+
+#endif
-Index: linux-2.6.28/include/linux/vt.h
-===================================================================
---- linux-2.6.28.orig/include/linux/vt.h 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/include/linux/vt.h 2009-01-02 00:01:57.000000000 +0100
-@@ -18,8 +18,19 @@ extern int unregister_vt_notifier(struct
+--- a/include/linux/vt.h
++++ b/include/linux/vt.h
+@@ -18,8 +18,19 @@
* resizing).
*/
#define MIN_NR_CONSOLES 1 /* must be at least 1 */
/* Note: the ioctl VT_GETSTATE does not work for
consoles 16 and higher (since it returns a short) */
-Index: linux-2.6.28/include/sound/soc-dapm.h
-===================================================================
---- linux-2.6.28.orig/include/sound/soc-dapm.h 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/include/sound/soc-dapm.h 2009-01-02 00:01:57.000000000 +0100
-@@ -244,6 +244,13 @@ int snd_soc_dapm_nc_pin(struct snd_soc_c
+--- a/include/sound/soc-dapm.h
++++ b/include/sound/soc-dapm.h
+@@ -244,6 +244,13 @@
int snd_soc_dapm_get_pin_status(struct snd_soc_codec *codec, char *pin);
int snd_soc_dapm_sync(struct snd_soc_codec *codec);
/* dapm widget types */
enum snd_soc_dapm_type {
snd_soc_dapm_input = 0, /* input pin */
-Index: linux-2.6.28/init/Kconfig
-===================================================================
---- linux-2.6.28.orig/init/Kconfig 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/init/Kconfig 2009-01-02 00:01:57.000000000 +0100
-@@ -732,6 +732,15 @@ config AIO
+--- a/init/Kconfig
++++ b/init/Kconfig
+@@ -732,6 +732,15 @@
by some high performance threaded applications. Disabling
this option saves about 7k.
config VM_EVENT_COUNTERS
default y
bool "Enable VM event counters for /proc/vmstat" if EMBEDDED
-Index: linux-2.6.28/kernel/irq/chip.c
-===================================================================
---- linux-2.6.28.orig/kernel/irq/chip.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/kernel/irq/chip.c 2009-01-02 00:01:57.000000000 +0100
-@@ -380,6 +380,7 @@ handle_level_irq(unsigned int irq, struc
+--- a/kernel/irq/chip.c
++++ b/kernel/irq/chip.c
+@@ -380,6 +380,7 @@
out_unlock:
spin_unlock(&desc->lock);
}
/**
* handle_fasteoi_irq - irq handler for transparent controllers
-@@ -583,6 +584,7 @@ __set_irq_handler(unsigned int irq, irq_
+@@ -583,6 +584,7 @@
}
spin_unlock_irqrestore(&desc->lock, flags);
}
void
set_irq_chip_and_handler(unsigned int irq, struct irq_chip *chip,
-Index: linux-2.6.28/kernel/power/main.c
-===================================================================
---- linux-2.6.28.orig/kernel/power/main.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/kernel/power/main.c 2009-01-02 00:01:57.000000000 +0100
-@@ -132,6 +132,9 @@ static inline int suspend_test(int level
+--- a/kernel/power/main.c
++++ b/kernel/power/main.c
+@@ -132,6 +132,9 @@
#endif /* CONFIG_PM_SLEEP */
#ifdef CONFIG_SUSPEND
#ifdef CONFIG_PM_TEST_SUSPEND
-@@ -322,6 +325,8 @@ int suspend_devices_and_enter(suspend_st
+@@ -322,6 +325,8 @@
if (!suspend_ops)
return -ENOSYS;
if (suspend_ops->begin) {
error = suspend_ops->begin(state);
if (error)
-@@ -365,6 +370,8 @@ int suspend_devices_and_enter(suspend_st
+@@ -365,6 +370,8 @@
Close:
if (suspend_ops->end)
suspend_ops->end();
return error;
Recover_platform:
-@@ -427,6 +434,8 @@ static int enter_state(suspend_state_t s
+@@ -427,6 +434,8 @@
return -EBUSY;
printk(KERN_INFO "PM: Syncing filesystems ... ");
sys_sync();
printk("done.\n");
-Index: linux-2.6.28/kernel/printk.c
-===================================================================
---- linux-2.6.28.orig/kernel/printk.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/kernel/printk.c 2009-01-02 00:01:57.000000000 +0100
+--- a/kernel/printk.c
++++ b/kernel/printk.c
@@ -32,8 +32,11 @@
#include <linux/security.h>
#include <linux/bootmem.h>
/*
* Architectures can override it:
-@@ -67,6 +70,12 @@ int console_printk[4] = {
+@@ -67,6 +70,12 @@
int oops_in_progress;
EXPORT_SYMBOL(oops_in_progress);
/*
* console_sem protects the console_drivers list, and also
* provides serialisation for access to the entire console
-@@ -667,8 +676,39 @@ asmlinkage int vprintk(const char *fmt,
+@@ -667,8 +676,39 @@
/* Emit the output into the temporary buffer */
printed_len += vscnprintf(printk_buf + printed_len,
sizeof(printk_buf) - printed_len, fmt, args);
/*
* Copy the output into log_buf. If the caller didn't provide
* appropriate log level tags, we insert them here
-Index: linux-2.6.28/kernel/timer.c
-===================================================================
---- linux-2.6.28.orig/kernel/timer.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/kernel/timer.c 2009-01-02 00:01:57.000000000 +0100
-@@ -813,7 +813,11 @@ static int cascade(struct tvec_base *bas
+--- a/kernel/timer.c
++++ b/kernel/timer.c
+@@ -813,7 +813,11 @@
* don't have to detach them individually.
*/
list_for_each_entry_safe(timer, tmp, &tv_list, entry) {
internal_add_timer(base, timer);
}
-Index: linux-2.6.28/MAINTAINERS
-===================================================================
---- linux-2.6.28.orig/MAINTAINERS 2009-01-02 00:00:02.000000000 +0100
-+++ linux-2.6.28/MAINTAINERS 2009-01-02 00:01:57.000000000 +0100
-@@ -1705,6 +1705,20 @@ FILE LOCKING (flock() and fcntl()/lockf(
+--- a/MAINTAINERS
++++ b/MAINTAINERS
+@@ -1705,6 +1705,20 @@
P: Matthew Wilcox
M: matthew@wil.cx
L: linux-fsdevel@vger.kernel.org
S: Maintained
FILESYSTEMS (VFS and infrastructure)
-Index: linux-2.6.28/makerecovery
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/makerecovery 2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/makerecovery
@@ -0,0 +1,17 @@
+#!/bin/sh
+#
+rm -f _spacer
+cat $1 >> recovery-$1
+
-Index: linux-2.6.28/mm/ashmem.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/mm/ashmem.c 2009-01-02 00:01:57.000000000 +0100
+--- /dev/null
++++ b/mm/ashmem.c
@@ -0,0 +1,657 @@
+/* drivers/android/ashmem.c
+**
+module_exit(ashmem_exit);
+
+MODULE_LICENSE("GPL");
-Index: linux-2.6.28/mm/Makefile
-===================================================================
---- linux-2.6.28.orig/mm/Makefile 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/mm/Makefile 2009-01-02 00:01:57.000000000 +0100
-@@ -22,6 +22,7 @@ obj-$(CONFIG_NUMA) += mempolicy.o
+--- a/mm/Makefile
++++ b/mm/Makefile
+@@ -22,6 +22,7 @@
obj-$(CONFIG_SPARSEMEM) += sparse.o
obj-$(CONFIG_SPARSEMEM_VMEMMAP) += sparse-vmemmap.o
obj-$(CONFIG_SHMEM) += shmem.o
obj-$(CONFIG_TMPFS_POSIX_ACL) += shmem_acl.o
obj-$(CONFIG_TINY_SHMEM) += tiny-shmem.o
obj-$(CONFIG_SLOB) += slob.o
-Index: linux-2.6.28/mm/shmem.c
-===================================================================
---- linux-2.6.28.orig/mm/shmem.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/mm/shmem.c 2009-01-02 00:01:57.000000000 +0100
-@@ -2587,6 +2587,14 @@ put_memory:
- }
- EXPORT_SYMBOL_GPL(shmem_file_setup);
-
-+void shmem_set_file(struct vm_area_struct *vma, struct file *file)
-+{
-+ if (vma->vm_file)
-+ fput(vma->vm_file);
-+ vma->vm_file = file;
-+ vma->vm_ops = &shmem_vm_ops;
-+}
-+
- /**
- * shmem_zero_setup - setup a shared anonymous mapping
- * @vma: the vma to be mmapped is prepared by do_mmap_pgoff
-@@ -2600,9 +2608,7 @@ int shmem_zero_setup(struct vm_area_stru
- if (IS_ERR(file))
- return PTR_ERR(file);
-
-- if (vma->vm_file)
-- fput(vma->vm_file);
-- vma->vm_file = file;
-- vma->vm_ops = &shmem_vm_ops;
-+ shmem_set_file(vma, file);
-+
- return 0;
- }
-Index: linux-2.6.28/mm/tiny-shmem.c
-===================================================================
---- linux-2.6.28.orig/mm/tiny-shmem.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/mm/tiny-shmem.c 2009-01-02 00:01:57.000000000 +0100
-@@ -97,6 +97,22 @@ put_memory:
+--- a/mm/tiny-shmem.c
++++ b/mm/tiny-shmem.c
+@@ -97,6 +97,22 @@
}
EXPORT_SYMBOL_GPL(shmem_file_setup);
/**
* shmem_zero_setup - setup a shared anonymous mapping
* @vma: the vma to be mmapped is prepared by do_mmap_pgoff
-@@ -110,10 +126,8 @@ int shmem_zero_setup(struct vm_area_stru
+@@ -110,10 +126,8 @@
if (IS_ERR(file))
return PTR_ERR(file);
return 0;
}
-Index: linux-2.6.28/remote_install_sdcard
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/remote_install_sdcard 2009-01-02 00:01:58.000000000 +0100
+--- /dev/null
++++ b/remote_install_sdcard
@@ -0,0 +1,18 @@
+#!/bin/sh
+
+scp uImage.bin root@$GTA_DEVICE_IP:/boot
+ssh root@$GTA_DEVICE_IP "mount /dev/mmcblk0p1 / -oremount,ro ; reboot -if &"
+
-Index: linux-2.6.28/scripts/mkuboot.sh
-===================================================================
---- linux-2.6.28.orig/scripts/mkuboot.sh 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/scripts/mkuboot.sh 2009-01-02 00:01:58.000000000 +0100
-@@ -11,7 +11,7 @@ if [ -z "${MKIMAGE}" ]; then
+--- a/scripts/mkuboot.sh
++++ b/scripts/mkuboot.sh
+@@ -11,7 +11,7 @@
if [ -z "${MKIMAGE}" ]; then
# Doesn't exist
echo '"mkimage" command not found - U-Boot images will not be built' >&2
fi
fi
-Index: linux-2.6.28/sound/soc/codecs/wm8753.c
-===================================================================
---- linux-2.6.28.orig/sound/soc/codecs/wm8753.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/sound/soc/codecs/wm8753.c 2009-01-02 00:01:58.000000000 +0100
-@@ -1584,6 +1584,9 @@ static int wm8753_init(struct snd_soc_de
+--- a/sound/soc/codecs/wm8753.c
++++ b/sound/soc/codecs/wm8753.c
+@@ -1584,6 +1584,9 @@
schedule_delayed_work(&codec->delayed_work,
msecs_to_jiffies(caps_charge));
/* set the update bits */
reg = wm8753_read_reg_cache(codec, WM8753_LDAC);
wm8753_write(codec, WM8753_LDAC, reg | 0x0100);
-@@ -1644,17 +1647,20 @@ static int wm8753_i2c_probe(struct i2c_c
+@@ -1644,17 +1647,20 @@
struct snd_soc_codec *codec = socdev->codec;
int ret;
{
struct snd_soc_codec *codec = i2c_get_clientdata(client);
kfree(codec->reg_cache);
-@@ -1675,6 +1681,7 @@ static struct i2c_driver wm8753_i2c_driv
+@@ -1675,6 +1681,7 @@
.probe = wm8753_i2c_probe,
.remove = wm8753_i2c_remove,
.id_table = wm8753_i2c_id,
};
static int wm8753_add_i2c_device(struct platform_device *pdev,
-@@ -1716,6 +1723,8 @@ err_driver:
+@@ -1716,6 +1723,8 @@
i2c_del_driver(&wm8753_i2c_driver);
return -ENODEV;
}
#endif
#if defined(CONFIG_SPI_MASTER)
-@@ -1783,7 +1792,7 @@ static int wm8753_probe(struct platform_
+@@ -1783,7 +1792,7 @@
struct wm8753_priv *wm8753;
int ret = 0;
setup = socdev->codec_data;
codec = kzalloc(sizeof(struct snd_soc_codec), GFP_KERNEL);
-@@ -1820,6 +1829,7 @@ static int wm8753_probe(struct platform_
+@@ -1820,6 +1829,7 @@
#endif
if (ret != 0) {
kfree(codec->private_data);
kfree(codec);
}
-@@ -1857,7 +1867,6 @@ static int wm8753_remove(struct platform
+@@ -1857,7 +1867,6 @@
snd_soc_free_pcms(socdev);
snd_soc_dapm_free(socdev);
#if defined(CONFIG_I2C) || defined(CONFIG_I2C_MODULE)
i2c_del_driver(&wm8753_i2c_driver);
#endif
#if defined(CONFIG_SPI_MASTER)
-Index: linux-2.6.28/sound/soc/s3c24xx/Kconfig
-===================================================================
---- linux-2.6.28.orig/sound/soc/s3c24xx/Kconfig 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/sound/soc/s3c24xx/Kconfig 2009-01-02 00:01:58.000000000 +0100
-@@ -26,6 +26,15 @@ config SND_S3C24XX_SOC_NEO1973_WM8753
+--- a/sound/soc/s3c24xx/Kconfig
++++ b/sound/soc/s3c24xx/Kconfig
+@@ -26,6 +26,15 @@
Say Y if you want to add support for SoC audio on smdk2440
with the WM8753.
config SND_S3C24XX_SOC_SMDK2443_WM9710
tristate "SoC AC97 Audio support for SMDK2443 - WM9710"
depends on SND_S3C24XX_SOC && MACH_SMDK2443
-Index: linux-2.6.28/sound/soc/s3c24xx/Makefile
-===================================================================
---- linux-2.6.28.orig/sound/soc/s3c24xx/Makefile 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/sound/soc/s3c24xx/Makefile 2009-01-02 00:01:58.000000000 +0100
-@@ -13,7 +13,10 @@ obj-$(CONFIG_SND_S3C2412_SOC_I2S) += snd
+--- a/sound/soc/s3c24xx/Makefile
++++ b/sound/soc/s3c24xx/Makefile
+@@ -13,7 +13,10 @@
snd-soc-neo1973-wm8753-objs := neo1973_wm8753.o
snd-soc-smdk2443-wm9710-objs := smdk2443_wm9710.o
snd-soc-ln2440sbc-alc650-objs := ln2440sbc_alc650.o
obj-$(CONFIG_SND_S3C24XX_SOC_LN2440SBC_ALC650) += snd-soc-ln2440sbc-alc650.o
+obj-$(CONFIG_SND_S3C24XX_SOC_NEO1973_GTA02_WM8753) += snd-soc-neo1973-gta02-wm8753.o
+
-Index: linux-2.6.28/sound/soc/s3c24xx/neo1973_gta02_wm8753.c
-===================================================================
---- /dev/null 1970-01-01 00:00:00.000000000 +0000
-+++ linux-2.6.28/sound/soc/s3c24xx/neo1973_gta02_wm8753.c 2009-01-02 00:01:58.000000000 +0100
+--- /dev/null
++++ b/sound/soc/s3c24xx/neo1973_gta02_wm8753.c
@@ -0,0 +1,673 @@
+/*
+ * neo1973_gta02_wm8753.c -- SoC audio for Neo1973
+MODULE_DESCRIPTION("ALSA SoC WM8753 Neo1973 GTA02");
+MODULE_LICENSE("GPL");
+
-Index: linux-2.6.28/sound/soc/s3c24xx/neo1973_wm8753.c
-===================================================================
---- linux-2.6.28.orig/sound/soc/s3c24xx/neo1973_wm8753.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/sound/soc/s3c24xx/neo1973_wm8753.c 2009-01-02 00:01:58.000000000 +0100
+--- a/sound/soc/s3c24xx/neo1973_wm8753.c
++++ b/sound/soc/s3c24xx/neo1973_wm8753.c
@@ -32,7 +32,7 @@
#include <mach/audio.h>
#include <linux/io.h>
#include <asm/plat-s3c24xx/regs-iis.h>
#include "../codecs/wm8753.h"
-@@ -585,7 +585,7 @@ static struct snd_soc_machine neo1973 =
+@@ -585,7 +585,7 @@
.num_links = ARRAY_SIZE(neo1973_dai),
};
.i2c_bus = 0,
.i2c_address = 0x1a,
};
-@@ -594,7 +594,7 @@ static struct snd_soc_device neo1973_snd
+@@ -594,7 +594,7 @@
.machine = &neo1973,
.platform = &s3c24xx_soc_platform,
.codec_dev = &soc_codec_dev_wm8753,
};
static int lm4857_i2c_probe(struct i2c_client *client,
-@@ -676,7 +676,7 @@ static int __init neo1973_init(void)
+@@ -676,7 +676,7 @@
{
int ret;
if (!machine_is_neo1973_gta01()) {
printk(KERN_INFO
-Index: linux-2.6.28/sound/soc/s3c24xx/s3c2443-ac97.c
-===================================================================
---- linux-2.6.28.orig/sound/soc/s3c24xx/s3c2443-ac97.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/sound/soc/s3c24xx/s3c2443-ac97.c 2009-01-02 00:01:58.000000000 +0100
+--- a/sound/soc/s3c24xx/s3c2443-ac97.c
++++ b/sound/soc/s3c24xx/s3c2443-ac97.c
@@ -28,7 +28,7 @@
#include <sound/soc.h>
#include <mach/regs-gpio.h>
#include <mach/regs-clock.h>
#include <mach/audio.h>
-Index: linux-2.6.28/sound/soc/s3c24xx/s3c24xx-i2s.c
-===================================================================
---- linux-2.6.28.orig/sound/soc/s3c24xx/s3c24xx-i2s.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/sound/soc/s3c24xx/s3c24xx-i2s.c 2009-01-02 00:01:58.000000000 +0100
-@@ -175,7 +175,7 @@ static void s3c24xx_snd_rxctrl(int on)
+--- a/sound/soc/s3c24xx/s3c24xx-i2s.c
++++ b/sound/soc/s3c24xx/s3c24xx-i2s.c
+@@ -175,7 +175,7 @@
static int s3c24xx_snd_lrsync(void)
{
u32 iiscon;
DBG("Entered %s\n", __func__);
-@@ -282,11 +282,14 @@ static int s3c24xx_i2s_trigger(struct sn
+@@ -282,11 +282,14 @@
case SNDRV_PCM_TRIGGER_START:
case SNDRV_PCM_TRIGGER_RESUME:
case SNDRV_PCM_TRIGGER_PAUSE_RELEASE:
if (substream->stream == SNDRV_PCM_STREAM_CAPTURE)
s3c24xx_snd_rxctrl(1);
-@@ -306,7 +309,6 @@ static int s3c24xx_i2s_trigger(struct sn
+@@ -306,7 +309,6 @@
break;
}
return ret;
}
-Index: linux-2.6.28/sound/soc/s3c24xx/s3c24xx-pcm.c
-===================================================================
---- linux-2.6.28.orig/sound/soc/s3c24xx/s3c24xx-pcm.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/sound/soc/s3c24xx/s3c24xx-pcm.c 2009-01-02 00:01:58.000000000 +0100
-@@ -168,7 +168,7 @@ static int s3c24xx_pcm_hw_params(struct
+--- a/sound/soc/s3c24xx/s3c24xx-pcm.c
++++ b/sound/soc/s3c24xx/s3c24xx-pcm.c
+@@ -168,7 +168,7 @@
prtd->params->client, NULL);
if (ret < 0) {
return ret;
}
}
-Index: linux-2.6.28/sound/soc/soc-core.c
-===================================================================
---- linux-2.6.28.orig/sound/soc/soc-core.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/sound/soc/soc-core.c 2009-01-02 00:01:58.000000000 +0100
-@@ -1003,6 +1003,38 @@ static ssize_t codec_reg_show(struct dev
+--- a/sound/soc/soc-core.c
++++ b/sound/soc/soc-core.c
+@@ -1003,6 +1003,38 @@
}
static DEVICE_ATTR(codec_reg, 0444, codec_reg_show, NULL);
/**
* snd_soc_new_ac97_codec - initailise AC97 device
* @codec: audio codec
-@@ -1218,6 +1250,9 @@ int snd_soc_register_card(struct snd_soc
+@@ -1218,6 +1250,9 @@
mutex_unlock(&codec->mutex);
out:
return ret;
}
-Index: linux-2.6.28/sound/soc/soc-dapm.c
-===================================================================
---- linux-2.6.28.orig/sound/soc/soc-dapm.c 2008-12-25 00:26:37.000000000 +0100
-+++ linux-2.6.28/sound/soc/soc-dapm.c 2009-01-02 00:01:58.000000000 +0100
-@@ -1525,6 +1525,56 @@ int snd_soc_dapm_get_pin_status(struct s
+--- a/sound/soc/soc-dapm.c
++++ b/sound/soc/soc-dapm.c
+@@ -1525,6 +1525,56 @@
EXPORT_SYMBOL_GPL(snd_soc_dapm_get_pin_status);
/**