},
 };
 
-/* yart devices */
-
-static struct platform_device s3c24xx_uart_device0 = {
-       .id             = 0,
-};
-
-static struct platform_device s3c24xx_uart_device1 = {
-       .id             = 1,
-};
-
-static struct platform_device s3c24xx_uart_device2 = {
-       .id             = 2,
-};
-
-static struct platform_device s3c24xx_uart_device3 = {
-       .id             = 3,
-};
-
-struct platform_device *s3c24xx_uart_src[4] = {
-       &s3c24xx_uart_device0,
-       &s3c24xx_uart_device1,
-       &s3c24xx_uart_device2,
-       &s3c24xx_uart_device3,
-};
-
-struct platform_device *s3c24xx_uart_devs[4] = {
-};
-
 /* LCD Controller */
 
 static struct resource s3c_lcd_resource[] = {
 
                .nr_resources   = ARRAY_SIZE(s3c64xx_uart3_resource),
        },
 };
-
-/* uart devices */
-
-static struct platform_device s3c24xx_uart_device0 = {
-       .id             = 0,
-};
-
-static struct platform_device s3c24xx_uart_device1 = {
-       .id             = 1,
-};
-
-static struct platform_device s3c24xx_uart_device2 = {
-       .id             = 2,
-};
-
-static struct platform_device s3c24xx_uart_device3 = {
-       .id             = 3,
-};
-
-struct platform_device *s3c24xx_uart_src[4] = {
-       &s3c24xx_uart_device0,
-       &s3c24xx_uart_device1,
-       &s3c24xx_uart_device2,
-       &s3c24xx_uart_device3,
-};
-
-struct platform_device *s3c24xx_uart_devs[4] = {
-};
-
 
                .nr_resources   = ARRAY_SIZE(s5p_uart3_resource),
        },
 };
-
-/* uart devices */
-
-static struct platform_device s5p_uart_device0 = {
-       .id             = 0,
-};
-
-static struct platform_device s5p_uart_device1 = {
-       .id             = 1,
-};
-
-static struct platform_device s5p_uart_device2 = {
-       .id             = 2,
-};
-
-static struct platform_device s5p_uart_device3 = {
-       .id             = 3,
-};
-
-struct platform_device *s3c24xx_uart_src[4] = {
-       &s5p_uart_device0,
-       &s5p_uart_device1,
-       &s5p_uart_device2,
-       &s5p_uart_device3,
-};
-
-struct platform_device *s3c24xx_uart_devs[4] = {
-};
 
                .nr_resources   = ARRAY_SIZE(s5pc1xx_uart3_resource),
        },
 };
-
-/* uart devices */
-
-static struct platform_device s3c24xx_uart_device0 = {
-       .id             = 0,
-};
-
-static struct platform_device s3c24xx_uart_device1 = {
-       .id             = 1,
-};
-
-static struct platform_device s3c24xx_uart_device2 = {
-       .id             = 2,
-};
-
-static struct platform_device s3c24xx_uart_device3 = {
-       .id             = 3,
-};
-
-struct platform_device *s3c24xx_uart_src[4] = {
-       &s3c24xx_uart_device0,
-       &s3c24xx_uart_device1,
-       &s3c24xx_uart_device2,
-       &s3c24xx_uart_device3,
-};
-
-struct platform_device *s3c24xx_uart_devs[4] = {
-};
-
 
 obj-y                          += dev-i2c0.o
 obj-$(CONFIG_S3C_DEV_I2C1)     += dev-i2c1.o
 obj-$(CONFIG_S3C_DEV_FB)       += dev-fb.o
+obj-y                          += dev-uart.o
 obj-$(CONFIG_S3C_DEV_USB_HOST) += dev-usb.o
 obj-$(CONFIG_S3C_DEV_USB_HSOTG)        += dev-usb-hsotg.o
 obj-$(CONFIG_S3C_DEV_NAND)     += dev-nand.o
 
--- /dev/null
+/* linux/arch/arm/plat-samsung/dev-uart.c
+ *     originally from arch/arm/plat-s3c24xx/devs.c
+ *x
+ * Copyright (c) 2004 Simtec Electronics
+ *     Ben Dooks <ben@simtec.co.uk>
+ *
+ * Base S3C24XX platform device definitions
+ *
+ * This program is free software; you can redistribute it and/or modify
+ * it under the terms of the GNU General Public License version 2 as
+ * published by the Free Software Foundation.
+ *
+*/
+
+#include <linux/kernel.h>
+#include <linux/platform_device.h>
+
+/* uart devices */
+
+static struct platform_device s3c24xx_uart_device0 = {
+       .id             = 0,
+};
+
+static struct platform_device s3c24xx_uart_device1 = {
+       .id             = 1,
+};
+
+static struct platform_device s3c24xx_uart_device2 = {
+       .id             = 2,
+};
+
+static struct platform_device s3c24xx_uart_device3 = {
+       .id             = 3,
+};
+
+struct platform_device *s3c24xx_uart_src[4] = {
+       &s3c24xx_uart_device0,
+       &s3c24xx_uart_device1,
+       &s3c24xx_uart_device2,
+       &s3c24xx_uart_device3,
+};
+
+struct platform_device *s3c24xx_uart_devs[4] = {
+};