diff -urNp linux-2.6.20-rc1-fix3/arch/arm/mach-s3c2410/cpu.c linux-2.6.20-rc1-fix4/arch/arm/mach-s3c2410/cpu.c
--- linux-2.6.20-rc1-fix3/arch/arm/mach-s3c2410/cpu.c	2006-11-29 21:57:37.000000000 +0000
+++ linux-2.6.20-rc1-fix4/arch/arm/mach-s3c2410/cpu.c	2006-12-17 22:16:28.000000000 +0000
@@ -26,6 +26,7 @@
 #include <linux/module.h>
 #include <linux/interrupt.h>
 #include <linux/ioport.h>
+#include <linux/serial_core.h>
 #include <linux/platform_device.h>
 
 #include <asm/hardware.h>
diff -urNp linux-2.6.20-rc1-fix3/arch/arm/mach-s3c2410/devs.c linux-2.6.20-rc1-fix4/arch/arm/mach-s3c2410/devs.c
--- linux-2.6.20-rc1-fix3/arch/arm/mach-s3c2410/devs.c	2006-11-29 21:57:37.000000000 +0000
+++ linux-2.6.20-rc1-fix4/arch/arm/mach-s3c2410/devs.c	2006-12-17 22:16:28.000000000 +0000
@@ -17,6 +17,7 @@
 #include <linux/list.h>
 #include <linux/timer.h>
 #include <linux/init.h>
+#include <linux/serial_core.h>
 #include <linux/platform_device.h>
 
 #include <asm/mach/arch.h>
diff -urNp linux-2.6.20-rc1-fix3/arch/arm/mach-s3c2410/mach-anubis.c linux-2.6.20-rc1-fix4/arch/arm/mach-s3c2410/mach-anubis.c
--- linux-2.6.20-rc1-fix3/arch/arm/mach-s3c2410/mach-anubis.c	2006-11-29 21:57:37.000000000 +0000
+++ linux-2.6.20-rc1-fix4/arch/arm/mach-s3c2410/mach-anubis.c	2006-12-17 22:16:28.000000000 +0000
@@ -15,6 +15,7 @@
 #include <linux/list.h>
 #include <linux/timer.h>
 #include <linux/init.h>
+#include <linux/serial_core.h>
 #include <linux/platform_device.h>
 
 #include <asm/mach/arch.h>
diff -urNp linux-2.6.20-rc1-fix3/arch/arm/mach-s3c2410/mach-bast.c linux-2.6.20-rc1-fix4/arch/arm/mach-s3c2410/mach-bast.c
--- linux-2.6.20-rc1-fix3/arch/arm/mach-s3c2410/mach-bast.c	2006-11-29 21:57:37.000000000 +0000
+++ linux-2.6.20-rc1-fix4/arch/arm/mach-s3c2410/mach-bast.c	2006-12-17 22:16:28.000000000 +0000
@@ -16,6 +16,7 @@
 #include <linux/list.h>
 #include <linux/timer.h>
 #include <linux/init.h>
+#include <linux/serial_core.h>
 #include <linux/platform_device.h>
 #include <linux/dm9000.h>
 
diff -urNp linux-2.6.20-rc1-fix3/arch/arm/mach-s3c2410/mach-h1940.c linux-2.6.20-rc1-fix4/arch/arm/mach-s3c2410/mach-h1940.c
--- linux-2.6.20-rc1-fix3/arch/arm/mach-s3c2410/mach-h1940.c	2006-12-17 18:38:23.000000000 +0000
+++ linux-2.6.20-rc1-fix4/arch/arm/mach-s3c2410/mach-h1940.c	2006-12-17 22:16:28.000000000 +0000
@@ -17,6 +17,7 @@
 #include <linux/list.h>
 #include <linux/timer.h>
 #include <linux/init.h>
+#include <linux/serial_core.h>
 #include <linux/platform_device.h>
 
 #include <asm/mach/arch.h>
@@ -37,8 +38,6 @@
 #include <asm/arch/h1940-latch.h>
 #include <asm/arch/fb.h>
 
-#include <linux/serial_core.h>
-
 #include "clock.h"
 #include "devs.h"
 #include "cpu.h"
diff -urNp linux-2.6.20-rc1-fix3/arch/arm/mach-s3c2410/mach-n30.c linux-2.6.20-rc1-fix4/arch/arm/mach-s3c2410/mach-n30.c
--- linux-2.6.20-rc1-fix3/arch/arm/mach-s3c2410/mach-n30.c	2006-11-29 21:57:37.000000000 +0000
+++ linux-2.6.20-rc1-fix4/arch/arm/mach-s3c2410/mach-n30.c	2006-12-17 22:16:28.000000000 +0000
@@ -20,6 +20,7 @@
 #include <linux/timer.h>
 #include <linux/init.h>
 #include <linux/delay.h>
+#include <linux/serial_core.h>
 #include <linux/platform_device.h>
 #include <linux/kthread.h>
 
@@ -37,8 +38,6 @@
 #include <asm/arch/regs-gpio.h>
 #include <asm/arch/iic.h>
 
-#include <linux/serial_core.h>
-
 #include "s3c2410.h"
 #include "clock.h"
 #include "devs.h"
diff -urNp linux-2.6.20-rc1-fix3/arch/arm/mach-s3c2410/mach-nexcoder.c linux-2.6.20-rc1-fix4/arch/arm/mach-s3c2410/mach-nexcoder.c
--- linux-2.6.20-rc1-fix3/arch/arm/mach-s3c2410/mach-nexcoder.c	2006-11-29 21:57:37.000000000 +0000
+++ linux-2.6.20-rc1-fix4/arch/arm/mach-s3c2410/mach-nexcoder.c	2006-12-17 22:16:28.000000000 +0000
@@ -19,6 +19,7 @@
 #include <linux/timer.h>
 #include <linux/init.h>
 #include <linux/string.h>
+#include <linux/serial_core.h>
 #include <linux/platform_device.h>
 
 #include <linux/mtd/map.h>
diff -urNp linux-2.6.20-rc1-fix3/arch/arm/mach-s3c2410/mach-osiris.c linux-2.6.20-rc1-fix4/arch/arm/mach-s3c2410/mach-osiris.c
--- linux-2.6.20-rc1-fix3/arch/arm/mach-s3c2410/mach-osiris.c	2006-12-17 18:38:23.000000000 +0000
+++ linux-2.6.20-rc1-fix4/arch/arm/mach-s3c2410/mach-osiris.c	2006-12-17 22:16:28.000000000 +0000
@@ -16,6 +16,7 @@
 #include <linux/timer.h>
 #include <linux/init.h>
 #include <linux/device.h>
+#include <linux/serial_core.h>
 
 #include <asm/mach/arch.h>
 #include <asm/mach/map.h>
diff -urNp linux-2.6.20-rc1-fix3/arch/arm/mach-s3c2410/mach-otom.c linux-2.6.20-rc1-fix4/arch/arm/mach-s3c2410/mach-otom.c
--- linux-2.6.20-rc1-fix3/arch/arm/mach-s3c2410/mach-otom.c	2006-11-29 21:57:37.000000000 +0000
+++ linux-2.6.20-rc1-fix4/arch/arm/mach-s3c2410/mach-otom.c	2006-12-17 22:16:28.000000000 +0000
@@ -15,6 +15,7 @@
 #include <linux/list.h>
 #include <linux/timer.h>
 #include <linux/init.h>
+#include <linux/serial_core.h>
 #include <linux/platform_device.h>
 
 #include <asm/mach/arch.h>
diff -urNp linux-2.6.20-rc1-fix3/arch/arm/mach-s3c2410/mach-smdk2410.c linux-2.6.20-rc1-fix4/arch/arm/mach-s3c2410/mach-smdk2410.c
--- linux-2.6.20-rc1-fix3/arch/arm/mach-s3c2410/mach-smdk2410.c	2006-11-29 21:57:37.000000000 +0000
+++ linux-2.6.20-rc1-fix4/arch/arm/mach-s3c2410/mach-smdk2410.c	2006-12-17 22:16:28.000000000 +0000
@@ -35,6 +35,7 @@
 #include <linux/list.h>
 #include <linux/timer.h>
 #include <linux/init.h>
+#include <linux/serial_core.h>
 #include <linux/platform_device.h>
 
 #include <asm/mach/arch.h>
diff -urNp linux-2.6.20-rc1-fix3/arch/arm/mach-s3c2410/mach-smdk2413.c linux-2.6.20-rc1-fix4/arch/arm/mach-s3c2410/mach-smdk2413.c
--- linux-2.6.20-rc1-fix3/arch/arm/mach-s3c2410/mach-smdk2413.c	2006-11-29 21:57:37.000000000 +0000
+++ linux-2.6.20-rc1-fix4/arch/arm/mach-s3c2410/mach-smdk2413.c	2006-12-17 22:16:28.000000000 +0000
@@ -17,6 +17,7 @@
 #include <linux/list.h>
 #include <linux/timer.h>
 #include <linux/init.h>
+#include <linux/serial_core.h>
 #include <linux/platform_device.h>
 
 #include <asm/mach/arch.h>
diff -urNp linux-2.6.20-rc1-fix3/arch/arm/mach-s3c2410/mach-smdk2440.c linux-2.6.20-rc1-fix4/arch/arm/mach-s3c2410/mach-smdk2440.c
--- linux-2.6.20-rc1-fix3/arch/arm/mach-s3c2410/mach-smdk2440.c	2006-11-29 21:57:37.000000000 +0000
+++ linux-2.6.20-rc1-fix4/arch/arm/mach-s3c2410/mach-smdk2440.c	2006-12-17 22:16:28.000000000 +0000
@@ -19,6 +19,7 @@
 #include <linux/list.h>
 #include <linux/timer.h>
 #include <linux/init.h>
+#include <linux/serial_core.h>
 #include <linux/platform_device.h>
 
 #include <asm/mach/arch.h>
diff -urNp linux-2.6.20-rc1-fix3/arch/arm/mach-s3c2410/mach-vstms.c linux-2.6.20-rc1-fix4/arch/arm/mach-s3c2410/mach-vstms.c
--- linux-2.6.20-rc1-fix3/arch/arm/mach-s3c2410/mach-vstms.c	2006-11-29 21:57:37.000000000 +0000
+++ linux-2.6.20-rc1-fix4/arch/arm/mach-s3c2410/mach-vstms.c	2006-12-17 22:16:28.000000000 +0000
@@ -15,6 +15,7 @@
 #include <linux/list.h>
 #include <linux/timer.h>
 #include <linux/init.h>
+#include <linux/serial_core.h>
 #include <linux/platform_device.h>
 
 #include <linux/mtd/mtd.h>
diff -urNp linux-2.6.20-rc1-fix3/arch/arm/mach-s3c2410/pm.c linux-2.6.20-rc1-fix4/arch/arm/mach-s3c2410/pm.c
--- linux-2.6.20-rc1-fix3/arch/arm/mach-s3c2410/pm.c	2006-11-29 21:57:37.000000000 +0000
+++ linux-2.6.20-rc1-fix4/arch/arm/mach-s3c2410/pm.c	2006-12-17 22:16:28.000000000 +0000
@@ -34,6 +34,7 @@
 #include <linux/crc32.h>
 #include <linux/ioport.h>
 #include <linux/delay.h>
+#include <linux/serial_core.h>
 
 #include <asm/cacheflush.h>
 #include <asm/hardware.h>
diff -urNp linux-2.6.20-rc1-fix3/arch/arm/mach-s3c2410/pm-simtec.c linux-2.6.20-rc1-fix4/arch/arm/mach-s3c2410/pm-simtec.c
--- linux-2.6.20-rc1-fix3/arch/arm/mach-s3c2410/pm-simtec.c	2006-11-29 21:57:37.000000000 +0000
+++ linux-2.6.20-rc1-fix4/arch/arm/mach-s3c2410/pm-simtec.c	2006-12-17 22:16:28.000000000 +0000
@@ -27,7 +27,6 @@
 #include <asm/io.h>
 
 #include <asm/arch/map.h>
-#include <asm/arch/regs-serial.h>
 #include <asm/arch/regs-gpio.h>
 #include <asm/arch/regs-mem.h>
 
diff -urNp linux-2.6.20-rc1-fix3/arch/arm/mach-s3c2410/s3c2410.c linux-2.6.20-rc1-fix4/arch/arm/mach-s3c2410/s3c2410.c
--- linux-2.6.20-rc1-fix3/arch/arm/mach-s3c2410/s3c2410.c	2006-12-17 21:03:05.000000000 +0000
+++ linux-2.6.20-rc1-fix4/arch/arm/mach-s3c2410/s3c2410.c	2006-12-17 22:16:28.000000000 +0000
@@ -17,6 +17,7 @@
 #include <linux/timer.h>
 #include <linux/init.h>
 #include <linux/sysdev.h>
+#include <linux/serial_core.h>
 #include <linux/platform_device.h>
 
 #include <asm/mach/arch.h>
diff -urNp linux-2.6.20-rc1-fix3/arch/arm/mach-s3c2410/s3c2410-clock.c linux-2.6.20-rc1-fix4/arch/arm/mach-s3c2410/s3c2410-clock.c
--- linux-2.6.20-rc1-fix3/arch/arm/mach-s3c2410/s3c2410-clock.c	2006-12-17 21:03:05.000000000 +0000
+++ linux-2.6.20-rc1-fix4/arch/arm/mach-s3c2410/s3c2410-clock.c	2006-12-17 22:16:28.000000000 +0000
@@ -30,6 +30,7 @@
 #include <linux/clk.h>
 #include <linux/mutex.h>
 #include <linux/delay.h>
+#include <linux/serial_core.h>
 
 #include <asm/mach/map.h>
 
diff -urNp linux-2.6.20-rc1-fix3/arch/arm/mach-s3c2410/s3c2410-dma.c linux-2.6.20-rc1-fix4/arch/arm/mach-s3c2410/s3c2410-dma.c
--- linux-2.6.20-rc1-fix3/arch/arm/mach-s3c2410/s3c2410-dma.c	2006-12-17 21:03:05.000000000 +0000
+++ linux-2.6.20-rc1-fix4/arch/arm/mach-s3c2410/s3c2410-dma.c	2006-12-17 22:16:28.000000000 +0000
@@ -15,6 +15,7 @@
 #include <linux/kernel.h>
 #include <linux/init.h>
 #include <linux/sysdev.h>
+#include <linux/serial_core.h>
 
 #include <asm/dma.h>
 #include <asm/arch/dma.h>
diff -urNp linux-2.6.20-rc1-fix3/arch/arm/mach-s3c2410/s3c2412.c linux-2.6.20-rc1-fix4/arch/arm/mach-s3c2410/s3c2412.c
--- linux-2.6.20-rc1-fix3/arch/arm/mach-s3c2410/s3c2412.c	2006-12-17 21:03:05.000000000 +0000
+++ linux-2.6.20-rc1-fix4/arch/arm/mach-s3c2410/s3c2412.c	2006-12-17 22:16:28.000000000 +0000
@@ -17,6 +17,7 @@
 #include <linux/timer.h>
 #include <linux/init.h>
 #include <linux/sysdev.h>
+#include <linux/serial_core.h>
 #include <linux/platform_device.h>
 
 #include <asm/mach/arch.h>
diff -urNp linux-2.6.20-rc1-fix3/arch/arm/mach-s3c2410/s3c2412-clock.c linux-2.6.20-rc1-fix4/arch/arm/mach-s3c2410/s3c2412-clock.c
--- linux-2.6.20-rc1-fix3/arch/arm/mach-s3c2410/s3c2412-clock.c	2006-12-17 21:03:05.000000000 +0000
+++ linux-2.6.20-rc1-fix4/arch/arm/mach-s3c2410/s3c2412-clock.c	2006-12-17 22:16:28.000000000 +0000
@@ -30,6 +30,7 @@
 #include <linux/clk.h>
 #include <linux/mutex.h>
 #include <linux/delay.h>
+#include <linux/serial_core.h>
 
 #include <asm/mach/map.h>
 
diff -urNp linux-2.6.20-rc1-fix3/arch/arm/mach-s3c2410/s3c2412-dma.c linux-2.6.20-rc1-fix4/arch/arm/mach-s3c2410/s3c2412-dma.c
--- linux-2.6.20-rc1-fix3/arch/arm/mach-s3c2410/s3c2412-dma.c	2006-12-17 21:03:05.000000000 +0000
+++ linux-2.6.20-rc1-fix4/arch/arm/mach-s3c2410/s3c2412-dma.c	2006-12-17 22:16:28.000000000 +0000
@@ -15,6 +15,7 @@
 #include <linux/kernel.h>
 #include <linux/init.h>
 #include <linux/sysdev.h>
+#include <linux/serial_core.h>
 
 #include <asm/dma.h>
 #include <asm/arch/dma.h>
diff -urNp linux-2.6.20-rc1-fix3/arch/arm/mach-s3c2410/s3c2440.c linux-2.6.20-rc1-fix4/arch/arm/mach-s3c2410/s3c2440.c
--- linux-2.6.20-rc1-fix3/arch/arm/mach-s3c2410/s3c2440.c	2006-11-29 21:57:37.000000000 +0000
+++ linux-2.6.20-rc1-fix4/arch/arm/mach-s3c2410/s3c2440.c	2006-12-17 22:16:28.000000000 +0000
@@ -17,6 +17,7 @@
 #include <linux/timer.h>
 #include <linux/init.h>
 #include <linux/platform_device.h>
+#include <linux/serial_core.h>
 #include <linux/sysdev.h>
 #include <linux/clk.h>
 
diff -urNp linux-2.6.20-rc1-fix3/arch/arm/mach-s3c2410/s3c2440-dma.c linux-2.6.20-rc1-fix4/arch/arm/mach-s3c2410/s3c2440-dma.c
--- linux-2.6.20-rc1-fix3/arch/arm/mach-s3c2410/s3c2440-dma.c	2006-12-17 21:03:05.000000000 +0000
+++ linux-2.6.20-rc1-fix4/arch/arm/mach-s3c2410/s3c2440-dma.c	2006-12-17 22:16:28.000000000 +0000
@@ -15,6 +15,7 @@
 #include <linux/kernel.h>
 #include <linux/init.h>
 #include <linux/sysdev.h>
+#include <linux/serial_core.h>
 
 #include <asm/dma.h>
 #include <asm/arch/dma.h>
diff -urNp linux-2.6.20-rc1-fix3/arch/arm/mach-s3c2410/s3c2442.c linux-2.6.20-rc1-fix4/arch/arm/mach-s3c2410/s3c2442.c
--- linux-2.6.20-rc1-fix3/arch/arm/mach-s3c2410/s3c2442.c	2006-11-29 21:57:37.000000000 +0000
+++ linux-2.6.20-rc1-fix4/arch/arm/mach-s3c2410/s3c2442.c	2006-12-17 22:16:28.000000000 +0000
@@ -17,6 +17,7 @@
 #include <linux/timer.h>
 #include <linux/init.h>
 #include <linux/platform_device.h>
+#include <linux/serial_core.h>
 #include <linux/sysdev.h>
 #include <linux/clk.h>
 
diff -urNp linux-2.6.20-rc1-fix3/arch/arm/mach-s3c2410/s3c244x.c linux-2.6.20-rc1-fix4/arch/arm/mach-s3c2410/s3c244x.c
--- linux-2.6.20-rc1-fix3/arch/arm/mach-s3c2410/s3c244x.c	2006-12-17 21:03:05.000000000 +0000
+++ linux-2.6.20-rc1-fix4/arch/arm/mach-s3c2410/s3c244x.c	2006-12-17 22:16:28.000000000 +0000
@@ -16,6 +16,7 @@
 #include <linux/list.h>
 #include <linux/timer.h>
 #include <linux/init.h>
+#include <linux/serial_core.h>
 #include <linux/platform_device.h>
 #include <linux/sysdev.h>
 #include <linux/clk.h>
diff -urNp linux-2.6.20-rc1-fix3/include/asm-arm/arch-s3c2410/regs-serial.h linux-2.6.20-rc1-fix4/include/asm-arm/arch-s3c2410/regs-serial.h
--- linux-2.6.20-rc1-fix3/include/asm-arm/arch-s3c2410/regs-serial.h	2006-11-29 21:57:37.000000000 +0000
+++ linux-2.6.20-rc1-fix4/include/asm-arm/arch-s3c2410/regs-serial.h	2006-12-17 22:16:28.000000000 +0000
@@ -197,7 +197,7 @@ struct s3c2410_uartcfg {
 	unsigned char	   hwport;	 /* hardware port number */
 	unsigned char	   unused;
 	unsigned short	   flags;
-	unsigned long	   uart_flags;	 /* default uart flags */
+	upf_t		   uart_flags;	 /* default uart flags */
 
 	unsigned long	   ucon;	 /* value of ucon for port */
 	unsigned long	   ulcon;	 /* value of ulcon for port */
diff -urNp linux-2.6.20-rc1-fix3/include/asm-arm/arch-s3c2410/uncompress.h linux-2.6.20-rc1-fix4/include/asm-arm/arch-s3c2410/uncompress.h
--- linux-2.6.20-rc1-fix3/include/asm-arm/arch-s3c2410/uncompress.h	2006-12-17 21:03:04.000000000 +0000
+++ linux-2.6.20-rc1-fix4/include/asm-arm/arch-s3c2410/uncompress.h	2006-12-17 22:16:28.000000000 +0000
@@ -13,6 +13,7 @@
 #ifndef __ASM_ARCH_UNCOMPRESS_H
 #define __ASM_ARCH_UNCOMPRESS_H
 
+typedef unsigned int upf_t;	/* cannot include linux/serial_core.h */
 
 /* defines for UART registers */
 #include "asm/arch/regs-serial.h"

