diff -urNp linux-2.6.20-patched-move.moved/arch/arm/Kconfig linux-2.6.20-patched-move/arch/arm/Kconfig
--- linux-2.6.20-patched-move.moved/arch/arm/Kconfig	2007-02-04 18:44:54.000000000 +0000
+++ linux-2.6.20-patched-move/arch/arm/Kconfig	2007-02-04 21:07:52.000000000 +0000
@@ -363,7 +363,15 @@ source "arch/arm/mach-omap1/Kconfig"
 
 source "arch/arm/mach-omap2/Kconfig"
 
+source "arch/arm/plat-s3c/Kconfig"
+
+if ARCH_S3C2410
+source "arch/arm/mach-s3c2400/Kconfig"
 source "arch/arm/mach-s3c2410/Kconfig"
+source "arch/arm/mach-s3c2412/Kconfig"
+source "arch/arm/mach-s3c2440/Kconfig"
+source "arch/arm/mach-s3c2442/Kconfig"
+endif
 
 source "arch/arm/mach-lh7a40x/Kconfig"
 
diff -urNp linux-2.6.20-patched-move.moved/arch/arm/Makefile linux-2.6.20-patched-move/arch/arm/Makefile
--- linux-2.6.20-patched-move.moved/arch/arm/Makefile	2007-02-04 18:44:54.000000000 +0000
+++ linux-2.6.20-patched-move/arch/arm/Makefile	2007-02-04 21:07:52.000000000 +0000
@@ -149,7 +149,13 @@ MACHINE  := arch/arm/mach-$(machine-y)/
 else
 MACHINE  :=
 endif
-  
+
+# items for plat-s3c that are not mach-s3c2410
+core-$(CONFIG_PLAT_S3C)		+= arch/arm/mach-s3c2400/
+core-$(CONFIG_PLAT_S3C)		+= arch/arm/mach-s3c2412/
+core-$(CONFIG_PLAT_S3C)		+= arch/arm/mach-s3c2440/
+core-$(CONFIG_PLAT_S3C)		+= arch/arm/mach-s3c2442/
+
 export	TEXT_OFFSET GZFLAGS MMUEXT
 
 # Do we have FASTFPE?
@@ -168,6 +174,7 @@ core-$(CONFIG_VFP)		+= arch/arm/vfp/
 # If we have a common platform directory, then include it in the build.
 core-$(CONFIG_PLAT_IOP)		+= arch/arm/plat-iop/
 core-$(CONFIG_ARCH_OMAP)	+= arch/arm/plat-omap/
+core-$(CONFIG_PLAT_S3C)		+= arch/arm/plat-s3c/
 
 drivers-$(CONFIG_OPROFILE)      += arch/arm/oprofile/
 drivers-$(CONFIG_ARCH_CLPS7500)	+= drivers/acorn/char/
diff -urNp linux-2.6.20-patched-move.moved/arch/arm/mach-s3c2400/Kconfig linux-2.6.20-patched-move/arch/arm/mach-s3c2400/Kconfig
--- linux-2.6.20-patched-move.moved/arch/arm/mach-s3c2400/Kconfig	1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.20-patched-move/arch/arm/mach-s3c2400/Kconfig	2007-02-04 21:07:52.000000000 +0000
@@ -0,0 +1,13 @@
+# arch/arm/mach-s3c2400/Kconfig
+#
+# Copyright 2007 Simtec Electronics
+#
+# Licensed under GPLv2
+
+
+
+menu "S3C2400 Machines"
+
+
+endmenu
+
diff -urNp linux-2.6.20-patched-move.moved/arch/arm/mach-s3c2400/Makefile linux-2.6.20-patched-move/arch/arm/mach-s3c2400/Makefile
--- linux-2.6.20-patched-move.moved/arch/arm/mach-s3c2400/Makefile	1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.20-patched-move/arch/arm/mach-s3c2400/Makefile	2007-02-04 21:07:52.000000000 +0000
@@ -0,0 +1,15 @@
+# arch/arm/mach-s3c2400/Makefile
+# 
+# Copyright 2007 Simtec Electronics
+#
+# Licensed under GPLv2
+
+obj-y				:=
+obj-m				:=
+obj-n				:=
+obj-				:=
+
+obj-$(CONFIG_CPU_S3C2400)	+= gpio.o
+
+# Machine support
+
diff -urNp linux-2.6.20-patched-move.moved/arch/arm/mach-s3c2410/Kconfig linux-2.6.20-patched-move/arch/arm/mach-s3c2410/Kconfig
--- linux-2.6.20-patched-move.moved/arch/arm/mach-s3c2410/Kconfig	2007-02-04 20:33:55.000000000 +0000
+++ linux-2.6.20-patched-move/arch/arm/mach-s3c2410/Kconfig	2007-02-04 21:07:52.000000000 +0000
@@ -1,76 +1,43 @@
-if ARCH_S3C2410
+# arch/arm/mach-s3c2410/Kconfig
+#
+# Copyright 2007 Simtec Electronics
+#
+# Licensed under GPLv2
 
-menu "S3C24XX Implementations"
-
-config MACH_AML_M5900
-	bool "AML M5900 Series"
-	select CPU_S3C2410
-	select PM_SIMTEC if PM
-	help
-	   Say Y here if you are using the American Microsystems M5900 Series
-           <http://www.amltd.com>
-
-config MACH_ANUBIS
-	bool "Simtec Electronics ANUBIS"
-	select CPU_S3C2440
-	select PM_SIMTEC if PM
-	help
-	  Say Y here if you are using the Simtec Electronics ANUBIS
-	  development system
-
-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
-	  known as the Osiris.
-
-config ARCH_BAST
-	bool "Simtec Electronics BAST (EB2410ITX)"
-	select CPU_S3C2410
-	select PM_SIMTEC if PM
-	select ISA
+config CPU_S3C2410
+	bool
+	depends on ARCH_S3C2410
+	select S3C2410_CLOCK
+	select S3C2410_GPIO
+	select S3C2410_PM if PM
 	help
-	  Say Y here if you are using the Simtec Electronics EB2410ITX
-	  development board (also known as BAST)
-
-	  Product page: <http://www.simtec.co.uk/products/EB2410ITX/>.
+	  Support for S3C2410 and S3C2410A family from the S3C24XX line
+	  of Samsung Mobile CPUs.
 
-config BAST_PC104_IRQ
-	bool "BAST PC104 IRQ support"
-	depends on ARCH_BAST
-	default y
+config CPU_S3C2410_DMA
+	bool
+	depends on S3C2410_DMA && (CPU_S3C2410 || CPU_S3C2442)
+	default y if CPU_S3C2410 || CPU_S3C2442
 	help
-	  Say Y	here to enable the PC104 IRQ routing on the
-	  Simtec BAST (EB2410ITX)
+	  DMA device selection for S3C2410 and compatible CPUs
 
-config PM_H1940
+config S3C2410_PM
 	bool
 	help
-	  Internal node for H1940 and related PM
+	  Power Management code common to S3C2410 and better
 
-config ARCH_H1940
-	bool "IPAQ H1940"
-	select CPU_S3C2410
-	select PM_H1940 if PM
+config S3C2410_GPIO
+	bool
 	help
-	  Say Y here if you are using the HP IPAQ H1940
-
-	  <http://www.handhelds.org/projects/h1940.html>.
+	  GPIO code for S3C2410 and similar processors
 
-config MACH_N30
-	bool "Acer N30"
-	select CPU_S3C2410
+config S3C2410_CLOCK
+	bool
 	help
-	  Say Y here if you are using the Acer N30
+	  Clock code for the S3C2410, and similar processors
 
-	  <http://zoo.weinigel.se/n30>.
 
-config MACH_SMDK
-	bool
-	help
-	  Common machine code for SMDK2410 and SMDK2440
+menu "S3C2410 Machines"
 
 config ARCH_SMDK2410
 	bool "SMDK2410/A9M2410"
@@ -80,58 +47,32 @@ config ARCH_SMDK2410
 	   Say Y here if you are using the SMDK2410 or the derived module A9M2410
            <http://www.fsforth.de>
 
-config ARCH_S3C2440
-	bool "SMDK2440"
-	select CPU_S3C2440
-	select MACH_SMDK
+config ARCH_H1940
+	bool "IPAQ H1940"
+	select CPU_S3C2410
+	select PM_H1940 if PM
 	help
-	  Say Y here if you are using the SMDK2440.
-
-config SMDK2440_CPU2440
-	bool "SMDK2440 with S3C2440 CPU module"
-	depends on ARCH_S3C2440
-	default y if ARCH_S3C2440
-	select CPU_S3C2440
-
-config SMDK2440_CPU2442
-	bool "SMDM2440 with S3C2442 CPU module"
-	depends on ARCH_S3C2440
-	select CPU_S3C2442
+	  Say Y here if you are using the HP IPAQ H1940
 
-config MACH_S3C2413
+config PM_H1940
 	bool
 	help
-	  Internal node for S3C2413 version of SMDK2413, so that
-	  machine_is_s3c2413() will work when MACH_SMDK2413 is
-	  selected
-
-config MACH_SMDK2413
-	bool "SMDK2413"
-	select CPU_S3C2412
-	select MACH_S3C2413
-	select MACH_SMDK
-	help
-	  Say Y here if you are using an SMDK2413
+	  Internal node for H1940 and related PM
 
-config MACH_VR1000
-	bool "Thorcom VR1000"
-	select PM_SIMTEC if PM
+config MACH_N30
+	bool "Acer N30"
 	select CPU_S3C2410
 	help
-	  Say Y here if you are using the Thorcom VR1000 board.
-
-	  This linux port is currently being maintained by Simtec, on behalf
-	  of Thorcom. Any queries, please contact Thorcom first.
+	  Say Y here if you are using the Acer N30
 
-config MACH_RX3715
-	bool "HP iPAQ rx3715"
-	select CPU_S3C2440
-	select PM_H1940 if PM
+config ARCH_BAST
+	bool "Simtec Electronics BAST (EB2410ITX)"
+	select CPU_S3C2410
+	select PM_SIMTEC if PM
+	select ISA
 	help
-	  Say Y here if you are using the HP iPAQ rx3715.
-
-	  See <http://www.handhelds.org/projects/rx3715.html> for more
-	  information on this project
+	  Say Y here if you are using the Simtec Electronics EB2410ITX
+	  development board (also known as BAST)
 
 config MACH_OTOM
  	bool "NexVision OTOM Board"
@@ -139,204 +80,29 @@ config MACH_OTOM
 	help
  	  Say Y here if you are using the Nex Vision OTOM board
 
-config MACH_NEXCODER_2440
- 	bool "NexVision NEXCODER 2440 Light Board"
- 	select CPU_S3C2440
-	help
- 	  Say Y here if you are using the Nex Vision NEXCODER 2440 Light Board
-
-config MACH_VSTMS
-	bool "VMSTMS"
-	select CPU_S3C2412
-	help
-	  Say Y here if you are using an VSTMS board
-
-endmenu
-
-config S3C2410_CLOCK
-	bool
-	help
-	  Clock code for the S3C2410, and similar processors
-
-config S3C2410_GPIO
-	bool
-	help
-	  GPIO code for S3C2410 and similar processors
-
-config S3C2410_PM
-	bool
-	help
-	  Power Management code common to S3C2410 and better
-
-config CPU_S3C2410_DMA
-	bool
-	depends on S3C2410_DMA && (CPU_S3C2410 || CPU_S3C2442)
-	default y if CPU_S3C2410 || CPU_S3C2442
-	help
-	  DMA device selection for S3C2410 and compatible CPUs
-
-config CPU_S3C2410
-	bool
-	depends on ARCH_S3C2410
-	select S3C2410_CLOCK
-	select S3C2410_GPIO
-	select S3C2410_PM if PM
-	help
-	  Support for S3C2410 and S3C2410A family from the S3C24XX line
-	  of Samsung Mobile CPUs.
-
-# internal node to signify if we are only dealing with an S3C2412
-
-config CPU_S3C2412_ONLY
-	bool
-	depends on ARCH_S3C2410 && !CPU_S3C2400 && !CPU_S3C2410 && \
-		   !CPU_S3C2440 && !CPU_S3C2442 && CPU_S3C2412
-	default y if CPU_S3C2412
-
-config S3C2412_PM
-	bool
-	help
-	  Internal config node to apply S3C2412 power management
-
-config S3C2412_DMA
-	bool
-	depends on CPU_S3C2412
-	help
-	  Internal config node for S3C2412 DMA support
-
-config CPU_S3C2412
-	bool
-	depends on ARCH_S3C2410
-	select S3C2412_PM if PM
-	select S3C2412_DMA if S3C2410_DMA
-	help
-	  Support for the S3C2412 and S3C2413 SoCs from the S3C24XX line
-
-config CPU_S3C244X
-	bool
-	depends on ARCH_S3C2410 && (CPU_S3C2440 || CPU_S3C2442)
-	help
-	  Support for S3C2440 and S3C2442 Samsung Mobile CPU based systems.
-
-config S3C2440_DMA
-	bool
-	depends on ARCH_S3C2410 && CPU_S3C24405B
-	help
-	  Support for S3C2440 specific DMA code5A
-
-config CPU_S3C2440
-	bool
-	depends on ARCH_S3C2410
-	select S3C2410_CLOCK
-	select S3C2410_PM if PM
-	select S3C2410_GPIO
-	select S3C2440_DMA if S3C2410_DMA
-	select CPU_S3C244X
-	help
-	  Support for S3C2440 Samsung Mobile CPU based systems.
-
-config CPU_S3C2442
-	bool
-	depends on ARCH_S3C2420
-	select S3C2410_CLOCK
-	select S3C2410_GPIO
-	select S3C2410_PM if PM
-	select CPU_S3C244X
-	help
-	  Support for S3C2442 Samsung Mobile CPU based systems.
-
-comment "S3C2410 Boot"
-
-config S3C2410_BOOT_WATCHDOG
-	bool "S3C2410 Initialisation watchdog"
-	depends on ARCH_S3C2410 && S3C2410_WATCHDOG
-	help
-	  Say y to enable the watchdog during the kernel decompression
-	  stage. If the kernel fails to uncompress, then the watchdog
-	  will trigger a reset and the system should restart.
-
-	  Although this uses the same hardware unit as the kernel watchdog
-	  driver, it is not a replacement for it. If you use this option,
-	  you will have to use the watchdg driver to either stop the timeout
-	  or restart it. If you do not, then your kernel will reboot after
-	  startup.
-
-	  The driver uses a fixed timeout value, so the exact time till the
-	  system resets depends on the value of PCLK. The timeout on an
-	  200MHz s3c2410 should be about 30 seconds.
-
-config S3C2410_BOOT_ERROR_RESET
-	bool "S3C2410 Reboot on decompression error"
-	depends on ARCH_S3C2410
+config MACH_AML_M5900
+	bool "AML M5900 Series"
+	select CPU_S3C2410
+	select PM_SIMTEC if PM
 	help
-	  Say y here to use the watchdog to reset the system if the
-	  kernel decompressor detects an error during decompression.
-
-
-comment "S3C2410 Setup"
+	   Say Y here if you are using the American Microsystems M5900 Series
+           <http://www.amltd.com>
 
-config S3C2410_DMA
-	bool "S3C2410 DMA support"
-	depends on ARCH_S3C2410
+config BAST_PC104_IRQ
+	bool "BAST PC104 IRQ support"
+	depends on ARCH_BAST
+	default y
 	help
-	  S3C2410 DMA support. This is needed for drivers like sound which
-	  use the S3C2410's DMA system to move data to and from the
-	  peripheral blocks.
-
-config S3C2410_DMA_DEBUG
-	bool "S3C2410 DMA support debug"
-	depends on ARCH_S3C2410 && S3C2410_DMA
-	help
-	  Enable debugging output for the DMA code. This option sends info
-	  to the kernel log, at priority KERN_DEBUG.
-
-	  Note, it is easy to create and fill the log buffer in a small
-	  amount of time, as well as using an significant percentage of
-	  the CPU time doing so.
-
-config S3C2410_PM_DEBUG
-	bool "S3C2410 PM Suspend debug"
-	depends on ARCH_S3C2410 && PM
-	help
-	  Say Y here if you want verbose debugging from the PM Suspend and
-	  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 ARCH_S3C2410 && PM && CRC32
-	help
- 	  Enable the PM code's memory area checksum over sleep. This option
-	  will generate CRCs of all blocks of memory, and store them before
-	  going to sleep. The blocks are then checked on resume for any
-	  errors.
-
-config S3C2410_PM_CHECK_CHUNKSIZE
-	int "S3C2410 PM Suspend CRC Chunksize (KiB)"
-	depends on ARCH_S3C2410 && PM && S3C2410_PM_CHECK
-	default 64
-	help
-	  Set the chunksize in Kilobytes of the CRC for checking memory
-	  corruption over suspend and resume. A smaller value will mean that
-	  the CRC data block will take more memory, but wil identify any
-	  faults with better precision.
+	  Say Y	here to enable the PC104 IRQ routing on the
+	  Simtec BAST (EB2410ITX)
 
-config PM_SIMTEC
-	bool
+config MACH_VR1000
+	bool "Thorcom VR1000"
+	select PM_SIMTEC if PM
+	select CPU_S3C2410
 	help
-	  Common power management code for systems that are
-	  compatible with the Simtec style of power management
+	  Say Y here if you are using the Thorcom VR1000 board.
 
-config S3C2410_LOWLEVEL_UART_PORT
-	int "S3C2410 UART to use for low-level messages"
-	default 0
-	help
-	  Choice of which UART port to use for the low-level messages,
-	  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.
 
-	  Note, this does not affect the port used by the debug messages,
-	  which is a separate configuration.
+endmenu
 
-endif
diff -urNp linux-2.6.20-patched-move.moved/arch/arm/mach-s3c2410/Makefile linux-2.6.20-patched-move/arch/arm/mach-s3c2410/Makefile
--- linux-2.6.20-patched-move.moved/arch/arm/mach-s3c2410/Makefile	2007-02-04 20:33:55.000000000 +0000
+++ linux-2.6.20-patched-move/arch/arm/mach-s3c2410/Makefile	2007-02-04 21:07:52.000000000 +0000
@@ -1,85 +1,30 @@
-
-#
-# Makefile for the linux kernel.
+# arch/arm/mach-s3c2410/Makefile
+# 
+# Copyright 2007 Simtec Electronics
 #
+# Licensed under GPLv2
 
-# Object file lists.
-
-obj-y			:= cpu.o irq.o time.o gpio.o clock.o devs.o
-obj-m			:=
-obj-n			:=
-obj-			:=
-
-# DMA
-obj-$(CONFIG_S3C2410_DMA)	+= dma.o
-
-# S3C2400 support files
-obj-$(CONFIG_CPU_S3C2400)	+= s3c2400-gpio.o
-
-# S3C2410 support files
+obj-y				:=
+obj-m				:=
+obj-n				:=
+obj-				:=
 
 obj-$(CONFIG_CPU_S3C2410)	+= s3c2410.o
-obj-$(CONFIG_CPU_S3C2410)	+= s3c2410-irq.o
-
-obj-$(CONFIG_S3C2410_PM)	+= s3c2410-pm.o s3c2410-sleep.o
-obj-$(CONFIG_S3C2410_GPIO)	+= s3c2410-gpio.o
-obj-$(CONFIG_CPU_S3C2410_DMA)	+= s3c2410-dma.o
-
-# Power Management support
-
-obj-$(CONFIG_PM)		+= pm.o sleep.o
-obj-$(CONFIG_PM_SIMTEC)		+= pm-simtec.o
-obj-$(CONFIG_PM_H1940)		+= pm-h1940.o
-
-# S3C2412 support
-obj-$(CONFIG_CPU_S3C2412)	+= s3c2412.o
-obj-$(CONFIG_CPU_S3C2412)	+= s3c2412-irq.o
-obj-$(CONFIG_CPU_S3C2412)	+= s3c2412-clock.o
-
-obj-$(CONFIG_S3C2412_PM)	+= s3c2412-pm.o
-obj-$(CONFIG_S3C2412_DMA)	+= s3c2412-dma.o
-
-#
-# S3C244X support
-
-obj-$(CONFIG_CPU_S3C244X)	+= s3c244x.o
-obj-$(CONFIG_CPU_S3C244X)	+= s3c244x-irq.o
-
-# Clock control
-
-obj-$(CONFIG_S3C2410_CLOCK)	+= s3c2410-clock.o
-
-# S3C2440 support
+obj-$(CONFIG_CPU_S3C2410)	+= irq.o
+obj-$(CONFIG_CPU_S3C2410_DMA)	+= dma.o
+obj-$(CONFIG_CPU_S3C2410_DMA)	+= dma.o
+obj-$(CONFIG_S3C2410_PM)	+= pm.o sleep.o
+obj-$(CONFIG_S3C2410_GPIO)	+= gpio.o
+obj-$(CONFIG_S3C2410_CLOCK)	+= clock.o
 
-obj-$(CONFIG_CPU_S3C2440)	+= s3c2440.o s3c2440-dsc.o
-obj-$(CONFIG_CPU_S3C2440)	+= s3c2440-irq.o
-obj-$(CONFIG_CPU_S3C2440)	+= s3c2440-clock.o
-obj-$(CONFIG_S3C2440_DMA)	+= s3c2440-dma.o
+# Machine support
 
-# S3C2442 support
-
-obj-$(CONFIG_CPU_S3C2442)	+= s3c2442.o
-obj-$(CONFIG_CPU_S3C2442)	+= s3c2442-clock.o
-
-# bast extras
-
-obj-$(CONFIG_BAST_PC104_IRQ)	+= bast-irq.o
-
-# machine specific support
-
-obj-$(CONFIG_MACH_AML_M5900)	+= mach-amlm5900.o
-obj-$(CONFIG_MACH_ANUBIS)	+= mach-anubis.o
-obj-$(CONFIG_MACH_OSIRIS)	+= mach-osiris.o
-obj-$(CONFIG_ARCH_BAST)		+= mach-bast.o usb-simtec.o
+obj-$(CONFIG_ARCH_SMDK2410)	+= mach-smdk2410.o
 obj-$(CONFIG_ARCH_H1940)	+= mach-h1940.o
+obj-$(CONFIG_PM_H1940)		+= pm-h1940.o
 obj-$(CONFIG_MACH_N30)		+= mach-n30.o
-obj-$(CONFIG_ARCH_SMDK2410)	+= mach-smdk2410.o
-obj-$(CONFIG_MACH_SMDK2413)	+= mach-smdk2413.o
-obj-$(CONFIG_ARCH_S3C2440)	+= mach-smdk2440.o
-obj-$(CONFIG_MACH_VR1000)	+= mach-vr1000.o usb-simtec.o
-obj-$(CONFIG_MACH_RX3715)	+= mach-rx3715.o
+obj-$(CONFIG_ARCH_BAST)		+= mach-bast.o usb-simtec.o
 obj-$(CONFIG_MACH_OTOM)		+= mach-otom.o
-obj-$(CONFIG_MACH_NEXCODER_2440) += mach-nexcoder.o
-obj-$(CONFIG_MACH_VSTMS)	+= mach-vstms.o
-
-obj-$(CONFIG_MACH_SMDK)		+= common-smdk.o
\ No newline at end of file
+obj-$(CONFIG_MACH_AML_M5900)	+= mach-amlm5900.o
+obj-$(CONFIG_BAST_PC104_IRQ)	+= bast-irq.o
+obj-$(CONFIG_MACH_VR1000)	+= mach-vr1000.o usb-simtec.o
diff -urNp linux-2.6.20-patched-move.moved/arch/arm/mach-s3c2410/bast-irq.c linux-2.6.20-patched-move/arch/arm/mach-s3c2410/bast-irq.c
--- linux-2.6.20-patched-move.moved/arch/arm/mach-s3c2410/bast-irq.c	2007-02-04 18:44:54.000000000 +0000
+++ linux-2.6.20-patched-move/arch/arm/mach-s3c2410/bast-irq.c	2007-02-04 21:07:52.000000000 +0000
@@ -39,7 +39,7 @@
 #include <asm/arch/bast-map.h>
 #include <asm/arch/bast-irq.h>
 
-#include "irq.h"
+#include <asm/plat-s3c/irq.h>
 
 #if 0
 #include <asm/debug-ll.h>
diff -urNp linux-2.6.20-patched-move.moved/arch/arm/mach-s3c2410/clock.c linux-2.6.20-patched-move/arch/arm/mach-s3c2410/clock.c
--- linux-2.6.20-patched-move.moved/arch/arm/mach-s3c2410/clock.c	2007-02-04 18:44:54.000000000 +0000
+++ linux-2.6.20-patched-move/arch/arm/mach-s3c2410/clock.c	2007-02-04 21:07:52.000000000 +0000
@@ -41,9 +41,9 @@
 #include <asm/arch/regs-clock.h>
 #include <asm/arch/regs-gpio.h>
 
-#include "s3c2410.h"
-#include "clock.h"
-#include "cpu.h"
+#include <asm/plat-s3c/s3c2410.h>
+#include <asm/plat-s3c/clock.h>
+#include <asm/plat-s3c/cpu.h>
 
 int s3c2410_clkcon_enable(struct clk *clk, int enable)
 {
diff -urNp linux-2.6.20-patched-move.moved/arch/arm/mach-s3c2410/dma.c linux-2.6.20-patched-move/arch/arm/mach-s3c2410/dma.c
--- linux-2.6.20-patched-move.moved/arch/arm/mach-s3c2410/dma.c	2007-02-04 18:44:54.000000000 +0000
+++ linux-2.6.20-patched-move/arch/arm/mach-s3c2410/dma.c	2007-02-04 21:07:52.000000000 +0000
@@ -19,9 +19,9 @@
 
 #include <asm/dma.h>
 #include <asm/arch/dma.h>
-#include "dma.h"
+#include <asm/plat-s3c/dma.h>
 
-#include "cpu.h"
+#include <asm/plat-s3c/cpu.h>
 
 #include <asm/arch/regs-serial.h>
 #include <asm/arch/regs-gpio.h>
diff -urNp linux-2.6.20-patched-move.moved/arch/arm/mach-s3c2410/irq.c linux-2.6.20-patched-move/arch/arm/mach-s3c2410/irq.c
--- linux-2.6.20-patched-move.moved/arch/arm/mach-s3c2410/irq.c	2007-02-04 18:44:54.000000000 +0000
+++ linux-2.6.20-patched-move/arch/arm/mach-s3c2410/irq.c	2007-02-04 21:07:52.000000000 +0000
@@ -26,8 +26,8 @@
 #include <linux/ptrace.h>
 #include <linux/sysdev.h>
 
-#include "cpu.h"
-#include "pm.h"
+#include <asm/plat-s3c/cpu.h>
+#include <asm/plat-s3c/pm.h>
 
 static int s3c2410_irq_add(struct sys_device *sysdev)
 {
diff -urNp linux-2.6.20-patched-move.moved/arch/arm/mach-s3c2410/mach-amlm5900.c linux-2.6.20-patched-move/arch/arm/mach-s3c2410/mach-amlm5900.c
--- linux-2.6.20-patched-move.moved/arch/arm/mach-s3c2410/mach-amlm5900.c	2007-02-04 18:44:54.000000000 +0000
+++ linux-2.6.20-patched-move/arch/arm/mach-s3c2410/mach-amlm5900.c	2007-02-04 21:07:52.000000000 +0000
@@ -52,8 +52,8 @@
 #include <asm/arch/regs-lcd.h>
 #include <asm/arch/regs-gpio.h>
 
-#include "devs.h"
-#include "cpu.h"
+#include <asm/plat-s3c/devs.h>
+#include <asm/plat-s3c/cpu.h>
 
 #ifdef CONFIG_MTD_PARTITIONS
 
diff -urNp linux-2.6.20-patched-move.moved/arch/arm/mach-s3c2410/mach-bast.c linux-2.6.20-patched-move/arch/arm/mach-s3c2410/mach-bast.c
--- linux-2.6.20-patched-move.moved/arch/arm/mach-s3c2410/mach-bast.c	2007-02-04 18:44:54.000000000 +0000
+++ linux-2.6.20-patched-move/arch/arm/mach-s3c2410/mach-bast.c	2007-02-04 21:07:52.000000000 +0000
@@ -50,9 +50,9 @@
 
 #include <linux/serial_8250.h>
 
-#include "clock.h"
-#include "devs.h"
-#include "cpu.h"
+#include <asm/plat-s3c/clock.h>
+#include <asm/plat-s3c/devs.h>
+#include <asm/plat-s3c/cpu.h>
 #include "usb-simtec.h"
 
 #define COPYRIGHT ", (c) 2004-2005 Simtec Electronics"
diff -urNp linux-2.6.20-patched-move.moved/arch/arm/mach-s3c2410/mach-h1940.c linux-2.6.20-patched-move/arch/arm/mach-s3c2410/mach-h1940.c
--- linux-2.6.20-patched-move.moved/arch/arm/mach-s3c2410/mach-h1940.c	2007-02-04 18:44:54.000000000 +0000
+++ linux-2.6.20-patched-move/arch/arm/mach-s3c2410/mach-h1940.c	2007-02-04 21:07:53.000000000 +0000
@@ -38,10 +38,10 @@
 #include <asm/arch/h1940-latch.h>
 #include <asm/arch/fb.h>
 
-#include "clock.h"
-#include "devs.h"
-#include "cpu.h"
-#include "pm.h"
+#include <asm/plat-s3c/clock.h>
+#include <asm/plat-s3c/devs.h>
+#include <asm/plat-s3c/cpu.h>
+#include <asm/plat-s3c/pm.h>
 
 static struct map_desc h1940_iodesc[] __initdata = {
 	[0] = {
diff -urNp linux-2.6.20-patched-move.moved/arch/arm/mach-s3c2410/mach-n30.c linux-2.6.20-patched-move/arch/arm/mach-s3c2410/mach-n30.c
--- linux-2.6.20-patched-move.moved/arch/arm/mach-s3c2410/mach-n30.c	2007-02-04 18:44:54.000000000 +0000
+++ linux-2.6.20-patched-move/arch/arm/mach-s3c2410/mach-n30.c	2007-02-04 21:07:53.000000000 +0000
@@ -38,10 +38,10 @@
 #include <asm/arch/regs-gpio.h>
 #include <asm/arch/iic.h>
 
-#include "s3c2410.h"
-#include "clock.h"
-#include "devs.h"
-#include "cpu.h"
+#include <asm/plat-s3c/s3c2410.h>
+#include <asm/plat-s3c/clock.h>
+#include <asm/plat-s3c/devs.h>
+#include <asm/plat-s3c/cpu.h>
 
 static struct map_desc n30_iodesc[] __initdata = {
 	/* nothing here yet */
diff -urNp linux-2.6.20-patched-move.moved/arch/arm/mach-s3c2410/mach-otom.c linux-2.6.20-patched-move/arch/arm/mach-s3c2410/mach-otom.c
--- linux-2.6.20-patched-move.moved/arch/arm/mach-s3c2410/mach-otom.c	2007-02-04 18:44:54.000000000 +0000
+++ linux-2.6.20-patched-move/arch/arm/mach-s3c2410/mach-otom.c	2007-02-04 21:07:53.000000000 +0000
@@ -32,10 +32,10 @@
 #include <asm/arch/regs-serial.h>
 #include <asm/arch/regs-gpio.h>
 
-#include "s3c2410.h"
-#include "clock.h"
-#include "devs.h"
-#include "cpu.h"
+#include <asm/plat-s3c/s3c2410.h>
+#include <asm/plat-s3c/clock.h>
+#include <asm/plat-s3c/devs.h>
+#include <asm/plat-s3c/cpu.h>
 
 static struct map_desc otom11_iodesc[] __initdata = {
   /* Device area */
diff -urNp linux-2.6.20-patched-move.moved/arch/arm/mach-s3c2410/mach-smdk2410.c linux-2.6.20-patched-move/arch/arm/mach-s3c2410/mach-smdk2410.c
--- linux-2.6.20-patched-move.moved/arch/arm/mach-s3c2410/mach-smdk2410.c	2007-02-04 18:44:54.000000000 +0000
+++ linux-2.6.20-patched-move/arch/arm/mach-s3c2410/mach-smdk2410.c	2007-02-04 21:07:53.000000000 +0000
@@ -49,10 +49,10 @@
 
 #include <asm/arch/regs-serial.h>
 
-#include "devs.h"
-#include "cpu.h"
+#include <asm/plat-s3c/devs.h>
+#include <asm/plat-s3c/cpu.h>
 
-#include "common-smdk.h"
+#include <asm/plat-s3c/common-smdk.h>
 
 static struct map_desc smdk2410_iodesc[] __initdata = {
   /* nothing here yet */
diff -urNp linux-2.6.20-patched-move.moved/arch/arm/mach-s3c2410/mach-vr1000.c linux-2.6.20-patched-move/arch/arm/mach-s3c2410/mach-vr1000.c
--- linux-2.6.20-patched-move.moved/arch/arm/mach-s3c2410/mach-vr1000.c	2007-02-04 18:44:54.000000000 +0000
+++ linux-2.6.20-patched-move/arch/arm/mach-s3c2410/mach-vr1000.c	2007-02-04 21:07:53.000000000 +0000
@@ -43,9 +43,9 @@
 #include <asm/arch/regs-gpio.h>
 #include <asm/arch/leds-gpio.h>
 
-#include "clock.h"
-#include "devs.h"
-#include "cpu.h"
+#include <asm/plat-s3c/clock.h>
+#include <asm/plat-s3c/devs.h>
+#include <asm/plat-s3c/cpu.h>
 #include "usb-simtec.h"
 
 /* macros for virtual address mods for the io space entries */
diff -urNp linux-2.6.20-patched-move.moved/arch/arm/mach-s3c2410/pm.c linux-2.6.20-patched-move/arch/arm/mach-s3c2410/pm.c
--- linux-2.6.20-patched-move.moved/arch/arm/mach-s3c2410/pm.c	2007-02-04 18:44:54.000000000 +0000
+++ linux-2.6.20-patched-move/arch/arm/mach-s3c2410/pm.c	2007-02-04 21:07:53.000000000 +0000
@@ -34,8 +34,8 @@
 #include <asm/arch/regs-gpio.h>
 #include <asm/arch/h1940.h>
 
-#include "cpu.h"
-#include "pm.h"
+#include <asm/plat-s3c/cpu.h>
+#include <asm/plat-s3c/pm.h>
 
 #ifdef CONFIG_S3C2410_PM_DEBUG
 extern void pm_dbg(const char *fmt, ...);
diff -urNp linux-2.6.20-patched-move.moved/arch/arm/mach-s3c2410/s3c2410.c linux-2.6.20-patched-move/arch/arm/mach-s3c2410/s3c2410.c
--- linux-2.6.20-patched-move.moved/arch/arm/mach-s3c2410/s3c2410.c	2007-02-04 18:44:54.000000000 +0000
+++ linux-2.6.20-patched-move/arch/arm/mach-s3c2410/s3c2410.c	2007-02-04 21:07:53.000000000 +0000
@@ -31,10 +31,10 @@
 #include <asm/arch/regs-clock.h>
 #include <asm/arch/regs-serial.h>
 
-#include "s3c2410.h"
-#include "cpu.h"
-#include "devs.h"
-#include "clock.h"
+#include <asm/plat-s3c/s3c2410.h>
+#include <asm/plat-s3c/cpu.h>
+#include <asm/plat-s3c/devs.h>
+#include <asm/plat-s3c/clock.h>
 
 /* Initial IO mappings */
 
diff -urNp linux-2.6.20-patched-move.moved/arch/arm/mach-s3c2410/usb-simtec.c linux-2.6.20-patched-move/arch/arm/mach-s3c2410/usb-simtec.c
--- linux-2.6.20-patched-move.moved/arch/arm/mach-s3c2410/usb-simtec.c	2007-02-04 18:44:54.000000000 +0000
+++ linux-2.6.20-patched-move/arch/arm/mach-s3c2410/usb-simtec.c	2007-02-04 21:07:53.000000000 +0000
@@ -35,7 +35,7 @@
 #include <asm/io.h>
 #include <asm/irq.h>
 
-#include "devs.h"
+#include <asm/plat-s3c/devs.h>
 #include "usb-simtec.h"
 
 /* control power and monitor over-current events on various Simtec
diff -urNp linux-2.6.20-patched-move.moved/arch/arm/mach-s3c2412/Kconfig linux-2.6.20-patched-move/arch/arm/mach-s3c2412/Kconfig
--- linux-2.6.20-patched-move.moved/arch/arm/mach-s3c2412/Kconfig	1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.20-patched-move/arch/arm/mach-s3c2412/Kconfig	2007-02-04 21:07:52.000000000 +0000
@@ -0,0 +1,58 @@
+# arch/arm/mach-s3c2412/Kconfig
+#
+# Copyright 2007 Simtec Electronics
+#
+# Licensed under GPLv2
+
+config CPU_S3C2412
+	bool
+	depends on ARCH_S3C2410
+	select S3C2412_PM if PM
+	select S3C2412_DMA if S3C2410_DMA
+	help
+	  Support for the S3C2412 and S3C2413 SoCs from the S3C24XX line
+
+config CPU_S3C2412_ONLY
+	bool
+	depends on ARCH_S3C2410 && !CPU_S3C2400 && !CPU_S3C2410 && \
+		   !CPU_S3C2440 && !CPU_S3C2442 && CPU_S3C2412
+	default y if CPU_S3C2412
+
+config S3C2412_DMA
+	bool
+	depends on CPU_S3C2412
+	help
+	  Internal config node for S3C2412 DMA support
+
+config S3C2412_PM
+	bool
+	help
+	  Internal config node to apply S3C2412 power management
+
+
+menu "S3C2412 Machines"
+
+config MACH_SMDK2413
+	bool "SMDK2413"
+	select CPU_S3C2412
+	select MACH_S3C2413
+	select MACH_SMDK
+	help
+	  Say Y here if you are using an SMDK2413
+
+config MACH_S3C2413
+	bool
+	help
+	  Internal node for S3C2413 version of SMDK2413, so that
+	  machine_is_s3c2413() will work when MACH_SMDK2413 is
+	  selected
+
+config MACH_VSTMS
+	bool "VMSTMS"
+	select CPU_S3C2412
+	help
+	  Say Y here if you are using an VSTMS board
+
+
+endmenu
+
diff -urNp linux-2.6.20-patched-move.moved/arch/arm/mach-s3c2412/Makefile linux-2.6.20-patched-move/arch/arm/mach-s3c2412/Makefile
--- linux-2.6.20-patched-move.moved/arch/arm/mach-s3c2412/Makefile	1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.20-patched-move/arch/arm/mach-s3c2412/Makefile	2007-02-04 21:07:52.000000000 +0000
@@ -0,0 +1,21 @@
+# arch/arm/mach-s3c2412/Makefile
+# 
+# Copyright 2007 Simtec Electronics
+#
+# Licensed under GPLv2
+
+obj-y				:=
+obj-m				:=
+obj-n				:=
+obj-				:=
+
+obj-$(CONFIG_CPU_S3C2412)	+= s3c2412.o
+obj-$(CONFIG_CPU_S3C2412)	+= irq.o
+obj-$(CONFIG_CPU_S3C2412)	+= clock.o
+obj-$(CONFIG_S3C2412_DMA)	+= dma.o
+obj-$(CONFIG_S3C2412_PM)	+= pm.o
+
+# Machine support
+
+obj-$(CONFIG_MACH_SMDK2413)	+= mach-smdk2413.o
+obj-$(CONFIG_MACH_VSTMS)	+= mach-vstms.o
diff -urNp linux-2.6.20-patched-move.moved/arch/arm/mach-s3c2412/clock.c linux-2.6.20-patched-move/arch/arm/mach-s3c2412/clock.c
--- linux-2.6.20-patched-move.moved/arch/arm/mach-s3c2412/clock.c	2007-02-04 18:44:54.000000000 +0000
+++ linux-2.6.20-patched-move/arch/arm/mach-s3c2412/clock.c	2007-02-04 21:07:53.000000000 +0000
@@ -41,9 +41,9 @@
 #include <asm/arch/regs-clock.h>
 #include <asm/arch/regs-gpio.h>
 
-#include "s3c2412.h"
-#include "clock.h"
-#include "cpu.h"
+#include <asm/plat-s3c/s3c2412.h>
+#include <asm/plat-s3c/clock.h>
+#include <asm/plat-s3c/cpu.h>
 
 /* We currently have to assume that the system is running
  * from the XTPll input, and that all ***REFCLKs are being
diff -urNp linux-2.6.20-patched-move.moved/arch/arm/mach-s3c2412/dma.c linux-2.6.20-patched-move/arch/arm/mach-s3c2412/dma.c
--- linux-2.6.20-patched-move.moved/arch/arm/mach-s3c2412/dma.c	2007-02-04 18:44:54.000000000 +0000
+++ linux-2.6.20-patched-move/arch/arm/mach-s3c2412/dma.c	2007-02-04 21:07:53.000000000 +0000
@@ -21,8 +21,8 @@
 #include <asm/arch/dma.h>
 #include <asm/io.h>
 
-#include "dma.h"
-#include "cpu.h"
+#include <asm/plat-s3c/dma.h>
+#include <asm/plat-s3c/cpu.h>
 
 #include <asm/arch/regs-serial.h>
 #include <asm/arch/regs-gpio.h>
diff -urNp linux-2.6.20-patched-move.moved/arch/arm/mach-s3c2412/irq.c linux-2.6.20-patched-move/arch/arm/mach-s3c2412/irq.c
--- linux-2.6.20-patched-move.moved/arch/arm/mach-s3c2412/irq.c	2007-02-04 18:44:54.000000000 +0000
+++ linux-2.6.20-patched-move/arch/arm/mach-s3c2412/irq.c	2007-02-04 21:07:53.000000000 +0000
@@ -35,9 +35,9 @@
 #include <asm/arch/regs-irq.h>
 #include <asm/arch/regs-gpio.h>
 
-#include "cpu.h"
-#include "irq.h"
-#include "pm.h"
+#include <asm/plat-s3c/cpu.h>
+#include <asm/plat-s3c/irq.h>
+#include <asm/plat-s3c/pm.h>
 
 /* the s3c2412 changes the behaviour of IRQ_EINT0 through IRQ_EINT3 by
  * having them turn up in both the INT* and the EINT* registers. Whilst
diff -urNp linux-2.6.20-patched-move.moved/arch/arm/mach-s3c2412/mach-smdk2413.c linux-2.6.20-patched-move/arch/arm/mach-s3c2412/mach-smdk2413.c
--- linux-2.6.20-patched-move.moved/arch/arm/mach-s3c2412/mach-smdk2413.c	2007-02-04 18:44:54.000000000 +0000
+++ linux-2.6.20-patched-move/arch/arm/mach-s3c2412/mach-smdk2413.c	2007-02-04 21:07:53.000000000 +0000
@@ -39,13 +39,13 @@
 #include <asm/arch/idle.h>
 #include <asm/arch/fb.h>
 
-#include "s3c2410.h"
-#include "s3c2412.h"
-#include "clock.h"
-#include "devs.h"
-#include "cpu.h"
+#include <asm/plat-s3c/s3c2410.h>
+#include <asm/plat-s3c/s3c2412.h>
+#include <asm/plat-s3c/clock.h>
+#include <asm/plat-s3c/devs.h>
+#include <asm/plat-s3c/cpu.h>
 
-#include "common-smdk.h"
+#include <asm/plat-s3c/common-smdk.h>
 
 static struct map_desc smdk2413_iodesc[] __initdata = {
 };
diff -urNp linux-2.6.20-patched-move.moved/arch/arm/mach-s3c2412/mach-vstms.c linux-2.6.20-patched-move/arch/arm/mach-s3c2412/mach-vstms.c
--- linux-2.6.20-patched-move.moved/arch/arm/mach-s3c2412/mach-vstms.c	2007-02-04 18:44:54.000000000 +0000
+++ linux-2.6.20-patched-move/arch/arm/mach-s3c2412/mach-vstms.c	2007-02-04 21:07:53.000000000 +0000
@@ -43,11 +43,11 @@
 
 #include <asm/arch/nand.h>
 
-#include "s3c2410.h"
-#include "s3c2412.h"
-#include "clock.h"
-#include "devs.h"
-#include "cpu.h"
+#include <asm/plat-s3c/s3c2410.h>
+#include <asm/plat-s3c/s3c2412.h>
+#include <asm/plat-s3c/clock.h>
+#include <asm/plat-s3c/devs.h>
+#include <asm/plat-s3c/cpu.h>
 
 
 static struct map_desc vstms_iodesc[] __initdata = {
diff -urNp linux-2.6.20-patched-move.moved/arch/arm/mach-s3c2412/pm.c linux-2.6.20-patched-move/arch/arm/mach-s3c2412/pm.c
--- linux-2.6.20-patched-move.moved/arch/arm/mach-s3c2412/pm.c	2007-02-04 18:44:54.000000000 +0000
+++ linux-2.6.20-patched-move/arch/arm/mach-s3c2412/pm.c	2007-02-04 21:07:53.000000000 +0000
@@ -28,10 +28,10 @@
 #include <asm/arch/regs-gpio.h>
 #include <asm/arch/regs-dsc.h>
 
-#include "cpu.h"
-#include "pm.h"
+#include <asm/plat-s3c/cpu.h>
+#include <asm/plat-s3c/pm.h>
 
-#include "s3c2412.h"
+#include <asm/plat-s3c/s3c2412.h>
 
 static void s3c2412_cpu_suspend(void)
 {
diff -urNp linux-2.6.20-patched-move.moved/arch/arm/mach-s3c2412/s3c2412.c linux-2.6.20-patched-move/arch/arm/mach-s3c2412/s3c2412.c
--- linux-2.6.20-patched-move.moved/arch/arm/mach-s3c2412/s3c2412.c	2007-02-04 18:44:54.000000000 +0000
+++ linux-2.6.20-patched-move/arch/arm/mach-s3c2412/s3c2412.c	2007-02-04 21:07:53.000000000 +0000
@@ -38,11 +38,11 @@
 #include <asm/arch/regs-gpioj.h>
 #include <asm/arch/regs-dsc.h>
 
-#include "s3c2412.h"
-#include "cpu.h"
-#include "devs.h"
-#include "clock.h"
-#include "pm.h"
+#include <asm/plat-s3c/s3c2412.h>
+#include <asm/plat-s3c/cpu.h>
+#include <asm/plat-s3c/devs.h>
+#include <asm/plat-s3c/clock.h>
+#include <asm/plat-s3c/pm.h>
 
 #ifndef CONFIG_CPU_S3C2412_ONLY
 void __iomem *s3c24xx_va_gpio2 = S3C24XX_VA_GPIO;
diff -urNp linux-2.6.20-patched-move.moved/arch/arm/mach-s3c2440/Kconfig linux-2.6.20-patched-move/arch/arm/mach-s3c2440/Kconfig
--- linux-2.6.20-patched-move.moved/arch/arm/mach-s3c2440/Kconfig	1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.20-patched-move/arch/arm/mach-s3c2440/Kconfig	2007-02-04 21:07:52.000000000 +0000
@@ -0,0 +1,71 @@
+# arch/arm/mach-s3c2440/Kconfig
+#
+# Copyright 2007 Simtec Electronics
+#
+# Licensed under GPLv2
+
+config CPU_S3C2440
+	bool
+	depends on ARCH_S3C2410
+	select S3C2410_CLOCK
+	select S3C2410_PM if PM
+	select S3C2410_GPIO
+	select S3C2440_DMA if S3C2410_DMA
+	select CPU_S3C244X
+	help
+	  Support for S3C2440 Samsung Mobile CPU based systems.
+
+config S3C2440_DMA
+	bool
+	depends on ARCH_S3C2410 && CPU_S3C24405B
+	help
+	  Support for S3C2440 specific DMA code5A
+
+
+menu "S3C2440 Machines"
+
+config MACH_ANUBIS
+	bool "Simtec Electronics ANUBIS"
+	select CPU_S3C2440
+	select PM_SIMTEC if PM
+	help
+	  Say Y here if you are using the Simtec Electronics ANUBIS
+	  development system
+
+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
+	  known as the Osiris.
+
+config MACH_RX3715
+	bool "HP iPAQ rx3715"
+	select CPU_S3C2440
+	select PM_H1940 if PM
+	help
+	  Say Y here if you are using the HP iPAQ rx3715.
+
+config ARCH_S3C2440
+	bool "SMDK2440"
+	select CPU_S3C2440
+	select MACH_SMDK
+	help
+	  Say Y here if you are using the SMDK2440.
+
+config MACH_NEXCODER_2440
+ 	bool "NexVision NEXCODER 2440 Light Board"
+ 	select CPU_S3C2440
+	help
+ 	  Say Y here if you are using the Nex Vision NEXCODER 2440 Light Board
+
+config SMDK2440_CPU2440
+	bool "SMDK2440 with S3C2440 CPU module"
+	depends on ARCH_S3C2440
+	default y if ARCH_S3C2440
+	select CPU_S3C2440
+
+
+endmenu
+
diff -urNp linux-2.6.20-patched-move.moved/arch/arm/mach-s3c2440/Makefile linux-2.6.20-patched-move/arch/arm/mach-s3c2440/Makefile
--- linux-2.6.20-patched-move.moved/arch/arm/mach-s3c2440/Makefile	1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.20-patched-move/arch/arm/mach-s3c2440/Makefile	2007-02-04 21:07:52.000000000 +0000
@@ -0,0 +1,23 @@
+# arch/arm/mach-s3c2440/Makefile
+# 
+# Copyright 2007 Simtec Electronics
+#
+# Licensed under GPLv2
+
+obj-y				:=
+obj-m				:=
+obj-n				:=
+obj-				:=
+
+obj-$(CONFIG_CPU_S3C2440)	+= s3c2440.o dsc.o
+obj-$(CONFIG_CPU_S3C2440)	+= irq.o
+obj-$(CONFIG_CPU_S3C2440)	+= clock.o
+obj-$(CONFIG_S3C2440_DMA)	+= dma.o
+
+# Machine support
+
+obj-$(CONFIG_MACH_ANUBIS)	+= mach-anubis.o
+obj-$(CONFIG_MACH_OSIRIS)	+= mach-osiris.o
+obj-$(CONFIG_MACH_RX3715)	+= mach-rx3715.o
+obj-$(CONFIG_ARCH_S3C2440)	+= mach-smdk2440.o
+obj-$(CONFIG_MACH_NEXCODER_2440) += mach-nexcoder.o
diff -urNp linux-2.6.20-patched-move.moved/arch/arm/mach-s3c2440/clock.c linux-2.6.20-patched-move/arch/arm/mach-s3c2440/clock.c
--- linux-2.6.20-patched-move.moved/arch/arm/mach-s3c2440/clock.c	2007-02-04 18:44:54.000000000 +0000
+++ linux-2.6.20-patched-move/arch/arm/mach-s3c2440/clock.c	2007-02-04 21:07:53.000000000 +0000
@@ -41,8 +41,8 @@
 
 #include <asm/arch/regs-clock.h>
 
-#include "clock.h"
-#include "cpu.h"
+#include <asm/plat-s3c/clock.h>
+#include <asm/plat-s3c/cpu.h>
 
 /* S3C2440 extended clock support */
 
diff -urNp linux-2.6.20-patched-move.moved/arch/arm/mach-s3c2440/dma.c linux-2.6.20-patched-move/arch/arm/mach-s3c2440/dma.c
--- linux-2.6.20-patched-move.moved/arch/arm/mach-s3c2440/dma.c	2007-02-04 18:44:54.000000000 +0000
+++ linux-2.6.20-patched-move/arch/arm/mach-s3c2440/dma.c	2007-02-04 21:07:53.000000000 +0000
@@ -19,9 +19,9 @@
 
 #include <asm/dma.h>
 #include <asm/arch/dma.h>
-#include "dma.h"
+#include <asm/plat-s3c/dma.h>
 
-#include "cpu.h"
+#include <asm/plat-s3c/cpu.h>
 
 #include <asm/arch/regs-serial.h>
 #include <asm/arch/regs-gpio.h>
diff -urNp linux-2.6.20-patched-move.moved/arch/arm/mach-s3c2440/dsc.c linux-2.6.20-patched-move/arch/arm/mach-s3c2440/dsc.c
--- linux-2.6.20-patched-move.moved/arch/arm/mach-s3c2440/dsc.c	2007-02-04 18:44:54.000000000 +0000
+++ linux-2.6.20-patched-move/arch/arm/mach-s3c2440/dsc.c	2007-02-04 21:07:53.000000000 +0000
@@ -27,8 +27,8 @@
 #include <asm/arch/regs-gpio.h>
 #include <asm/arch/regs-dsc.h>
 
-#include "cpu.h"
-#include "s3c2440.h"
+#include <asm/plat-s3c/cpu.h>
+#include <asm/plat-s3c/s3c2440.h>
 
 int s3c2440_set_dsc(unsigned int pin, unsigned int value)
 {
diff -urNp linux-2.6.20-patched-move.moved/arch/arm/mach-s3c2440/irq.c linux-2.6.20-patched-move/arch/arm/mach-s3c2440/irq.c
--- linux-2.6.20-patched-move.moved/arch/arm/mach-s3c2440/irq.c	2007-02-04 18:44:54.000000000 +0000
+++ linux-2.6.20-patched-move/arch/arm/mach-s3c2440/irq.c	2007-02-04 21:07:53.000000000 +0000
@@ -35,9 +35,9 @@
 #include <asm/arch/regs-irq.h>
 #include <asm/arch/regs-gpio.h>
 
-#include "cpu.h"
-#include "pm.h"
-#include "irq.h"
+#include <asm/plat-s3c/cpu.h>
+#include <asm/plat-s3c/pm.h>
+#include <asm/plat-s3c/irq.h>
 
 /* WDT/AC97 */
 
diff -urNp linux-2.6.20-patched-move.moved/arch/arm/mach-s3c2440/mach-anubis.c linux-2.6.20-patched-move/arch/arm/mach-s3c2440/mach-anubis.c
--- linux-2.6.20-patched-move.moved/arch/arm/mach-s3c2440/mach-anubis.c	2007-02-04 18:44:54.000000000 +0000
+++ linux-2.6.20-patched-move/arch/arm/mach-s3c2440/mach-anubis.c	2007-02-04 21:07:53.000000000 +0000
@@ -42,9 +42,9 @@
 #include <linux/mtd/nand_ecc.h>
 #include <linux/mtd/partitions.h>
 
-#include "clock.h"
-#include "devs.h"
-#include "cpu.h"
+#include <asm/plat-s3c/clock.h>
+#include <asm/plat-s3c/devs.h>
+#include <asm/plat-s3c/cpu.h>
 
 #define COPYRIGHT ", (c) 2005 Simtec Electronics"
 
diff -urNp linux-2.6.20-patched-move.moved/arch/arm/mach-s3c2440/mach-nexcoder.c linux-2.6.20-patched-move/arch/arm/mach-s3c2440/mach-nexcoder.c
--- linux-2.6.20-patched-move.moved/arch/arm/mach-s3c2440/mach-nexcoder.c	2007-02-04 18:44:54.000000000 +0000
+++ linux-2.6.20-patched-move/arch/arm/mach-s3c2440/mach-nexcoder.c	2007-02-04 21:07:54.000000000 +0000
@@ -38,11 +38,11 @@
 #include <asm/arch/regs-gpio.h>
 #include <asm/arch/regs-serial.h>
 
-#include "s3c2410.h"
-#include "s3c2440.h"
-#include "clock.h"
-#include "devs.h"
-#include "cpu.h"
+#include <asm/plat-s3c/s3c2410.h>
+#include <asm/plat-s3c/s3c2440.h>
+#include <asm/plat-s3c/clock.h>
+#include <asm/plat-s3c/devs.h>
+#include <asm/plat-s3c/cpu.h>
 
 static struct map_desc nexcoder_iodesc[] __initdata = {
 	/* nothing here yet */
diff -urNp linux-2.6.20-patched-move.moved/arch/arm/mach-s3c2440/mach-osiris.c linux-2.6.20-patched-move/arch/arm/mach-s3c2440/mach-osiris.c
--- linux-2.6.20-patched-move.moved/arch/arm/mach-s3c2440/mach-osiris.c	2007-02-04 18:44:54.000000000 +0000
+++ linux-2.6.20-patched-move/arch/arm/mach-s3c2440/mach-osiris.c	2007-02-04 21:07:54.000000000 +0000
@@ -41,9 +41,9 @@
 #include <linux/mtd/nand_ecc.h>
 #include <linux/mtd/partitions.h>
 
-#include "clock.h"
-#include "devs.h"
-#include "cpu.h"
+#include <asm/plat-s3c/clock.h>
+#include <asm/plat-s3c/devs.h>
+#include <asm/plat-s3c/cpu.h>
 
 /* onboard perihpheral map */
 
diff -urNp linux-2.6.20-patched-move.moved/arch/arm/mach-s3c2440/mach-rx3715.c linux-2.6.20-patched-move/arch/arm/mach-s3c2440/mach-rx3715.c
--- linux-2.6.20-patched-move.moved/arch/arm/mach-s3c2440/mach-rx3715.c	2007-02-04 18:44:54.000000000 +0000
+++ linux-2.6.20-patched-move/arch/arm/mach-s3c2440/mach-rx3715.c	2007-02-04 21:07:54.000000000 +0000
@@ -46,10 +46,10 @@
 #include <asm/arch/nand.h>
 #include <asm/arch/fb.h>
 
-#include "clock.h"
-#include "devs.h"
-#include "cpu.h"
-#include "pm.h"
+#include <asm/plat-s3c/clock.h>
+#include <asm/plat-s3c/devs.h>
+#include <asm/plat-s3c/cpu.h>
+#include <asm/plat-s3c/pm.h>
 
 static struct map_desc rx3715_iodesc[] __initdata = {
 	/* dump ISA space somewhere unused */
diff -urNp linux-2.6.20-patched-move.moved/arch/arm/mach-s3c2440/mach-smdk2440.c linux-2.6.20-patched-move/arch/arm/mach-s3c2440/mach-smdk2440.c
--- linux-2.6.20-patched-move.moved/arch/arm/mach-s3c2440/mach-smdk2440.c	2007-02-04 18:44:54.000000000 +0000
+++ linux-2.6.20-patched-move/arch/arm/mach-s3c2440/mach-smdk2440.c	2007-02-04 21:07:54.000000000 +0000
@@ -40,13 +40,13 @@
 #include <asm/arch/idle.h>
 #include <asm/arch/fb.h>
 
-#include "s3c2410.h"
-#include "s3c2440.h"
-#include "clock.h"
-#include "devs.h"
-#include "cpu.h"
+#include <asm/plat-s3c/s3c2410.h>
+#include <asm/plat-s3c/s3c2440.h>
+#include <asm/plat-s3c/clock.h>
+#include <asm/plat-s3c/devs.h>
+#include <asm/plat-s3c/cpu.h>
 
-#include "common-smdk.h"
+#include <asm/plat-s3c/common-smdk.h>
 
 static struct map_desc smdk2440_iodesc[] __initdata = {
 	/* ISA IO Space map (memory space selected by A24) */
diff -urNp linux-2.6.20-patched-move.moved/arch/arm/mach-s3c2440/s3c2440.c linux-2.6.20-patched-move/arch/arm/mach-s3c2440/s3c2440.c
--- linux-2.6.20-patched-move.moved/arch/arm/mach-s3c2440/s3c2440.c	2007-02-04 18:44:54.000000000 +0000
+++ linux-2.6.20-patched-move/arch/arm/mach-s3c2440/s3c2440.c	2007-02-04 21:07:54.000000000 +0000
@@ -29,9 +29,9 @@
 #include <asm/io.h>
 #include <asm/irq.h>
 
-#include "s3c2440.h"
-#include "devs.h"
-#include "cpu.h"
+#include <asm/plat-s3c/s3c2440.h>
+#include <asm/plat-s3c/devs.h>
+#include <asm/plat-s3c/cpu.h>
 
 static struct sys_device s3c2440_sysdev = {
 	.cls		= &s3c2440_sysclass,
diff -urNp linux-2.6.20-patched-move.moved/arch/arm/mach-s3c2442/Kconfig linux-2.6.20-patched-move/arch/arm/mach-s3c2442/Kconfig
--- linux-2.6.20-patched-move.moved/arch/arm/mach-s3c2442/Kconfig	1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.20-patched-move/arch/arm/mach-s3c2442/Kconfig	2007-02-04 21:07:52.000000000 +0000
@@ -0,0 +1,27 @@
+# arch/arm/mach-s3c2442/Kconfig
+#
+# Copyright 2007 Simtec Electronics
+#
+# Licensed under GPLv2
+
+config CPU_S3C2442
+	bool
+	depends on ARCH_S3C2420
+	select S3C2410_CLOCK
+	select S3C2410_GPIO
+	select S3C2410_PM if PM
+	select CPU_S3C244X
+	help
+	  Support for S3C2442 Samsung Mobile CPU based systems.
+
+
+menu "S3C2442 Machines"
+
+config SMDK2440_CPU2442
+	bool "SMDM2440 with S3C2442 CPU module"
+	depends on ARCH_S3C2440
+	select CPU_S3C2442
+
+
+endmenu
+
diff -urNp linux-2.6.20-patched-move.moved/arch/arm/mach-s3c2442/Makefile linux-2.6.20-patched-move/arch/arm/mach-s3c2442/Makefile
--- linux-2.6.20-patched-move.moved/arch/arm/mach-s3c2442/Makefile	1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.20-patched-move/arch/arm/mach-s3c2442/Makefile	2007-02-04 21:07:52.000000000 +0000
@@ -0,0 +1,16 @@
+# arch/arm/mach-s3c2442/Makefile
+# 
+# Copyright 2007 Simtec Electronics
+#
+# Licensed under GPLv2
+
+obj-y				:=
+obj-m				:=
+obj-n				:=
+obj-				:=
+
+obj-$(CONFIG_CPU_S3C2442)	+= s3c2442.o
+obj-$(CONFIG_CPU_S3C2442)	+= clock.o
+
+# Machine support
+
diff -urNp linux-2.6.20-patched-move.moved/arch/arm/mach-s3c2442/clock.c linux-2.6.20-patched-move/arch/arm/mach-s3c2442/clock.c
--- linux-2.6.20-patched-move.moved/arch/arm/mach-s3c2442/clock.c	2007-02-04 18:44:54.000000000 +0000
+++ linux-2.6.20-patched-move/arch/arm/mach-s3c2442/clock.c	2007-02-04 21:07:54.000000000 +0000
@@ -41,8 +41,8 @@
 
 #include <asm/arch/regs-clock.h>
 
-#include "clock.h"
-#include "cpu.h"
+#include <asm/plat-s3c/clock.h>
+#include <asm/plat-s3c/cpu.h>
 
 /* S3C2442 extended clock support */
 
diff -urNp linux-2.6.20-patched-move.moved/arch/arm/mach-s3c2442/s3c2442.c linux-2.6.20-patched-move/arch/arm/mach-s3c2442/s3c2442.c
--- linux-2.6.20-patched-move.moved/arch/arm/mach-s3c2442/s3c2442.c	2007-02-04 18:44:54.000000000 +0000
+++ linux-2.6.20-patched-move/arch/arm/mach-s3c2442/s3c2442.c	2007-02-04 21:07:54.000000000 +0000
@@ -19,8 +19,8 @@
 #include <linux/serial_core.h>
 #include <linux/sysdev.h>
 
-#include "s3c2442.h"
-#include "cpu.h"
+#include <asm/plat-s3c/s3c2442.h>
+#include <asm/plat-s3c/cpu.h>
 
 static struct sys_device s3c2442_sysdev = {
 	.cls		= &s3c2442_sysclass,
diff -urNp linux-2.6.20-patched-move.moved/arch/arm/plat-s3c/Kconfig linux-2.6.20-patched-move/arch/arm/plat-s3c/Kconfig
--- linux-2.6.20-patched-move.moved/arch/arm/plat-s3c/Kconfig	1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.20-patched-move/arch/arm/plat-s3c/Kconfig	2007-02-04 21:07:52.000000000 +0000
@@ -0,0 +1,96 @@
+# arch/arm/plat-s3c/Kconfig
+#
+# Copyright 2007 Simtec Electronics
+#
+# Licensed under GPLv2
+
+config PLAT_S3C
+	bool
+	depends on ARCH_S3C2410
+	default y
+	help
+	  Base platform code for any Samsung S3C device
+
+config CPU_S3C244X
+	bool
+	depends on ARCH_S3C2410 && (CPU_S3C2440 || CPU_S3C2442)
+	help
+	  Support for S3C2440 and S3C2442 Samsung Mobile CPU based systems.
+
+config PM_SIMTEC
+	bool
+	help
+	  Common power management code for systems that are
+	  compatible with the Simtec style of power management
+
+config S3C2410_BOOT_WATCHDOG
+	bool "S3C2410 Initialisation watchdog"
+	depends on ARCH_S3C2410 && S3C2410_WATCHDOG
+	help
+	  Say y to enable the watchdog during the kernel decompression
+	  stage. If the kernel fails to uncompress, then the watchdog
+	  will trigger a reset and the system should restart.
+
+config S3C2410_BOOT_ERROR_RESET
+	bool "S3C2410 Reboot on decompression error"
+	depends on ARCH_S3C2410
+	help
+	  Say y here to use the watchdog to reset the system if the
+	  kernel decompressor detects an error during decompression.
+
+config S3C2410_PM_DEBUG
+	bool "S3C2410 PM Suspend debug"
+	depends on ARCH_S3C2410 && PM
+	help
+	  Say Y here if you want verbose debugging from the PM Suspend and
+	  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 ARCH_S3C2410 && PM && CRC32
+	help
+ 	  Enable the PM code's memory area checksum over sleep. This option
+	  will generate CRCs of all blocks of memory, and store them before
+	  going to sleep. The blocks are then checked on resume for any
+	  errors.
+
+config S3C2410_PM_CHECK_CHUNKSIZE
+	int "S3C2410 PM Suspend CRC Chunksize (KiB)"
+	depends on ARCH_S3C2410 && PM && S3C2410_PM_CHECK
+	default 64
+	help
+	  Set the chunksize in Kilobytes of the CRC for checking memory
+	  corruption over suspend and resume. A smaller value will mean that
+	  the CRC data block will take more memory, but wil identify any
+	  faults with better precision.
+
+config S3C2410_LOWLEVEL_UART_PORT
+	int "S3C2410 UART to use for low-level messages"
+	default 0
+	help
+	  Choice of which UART port to use for the low-level messages,
+	  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.
+
+config S3C2410_DMA
+	bool "S3C2410 DMA support"
+	depends on ARCH_S3C2410
+	help
+	  S3C2410 DMA support. This is needed for drivers like sound which
+	  use the S3C2410's DMA system to move data to and from the
+	  peripheral blocks.
+
+config S3C2410_DMA_DEBUG
+	bool "S3C2410 DMA support debug"
+	depends on ARCH_S3C2410 && S3C2410_DMA
+	help
+	  Enable debugging output for the DMA code. This option sends info
+	  to the kernel log, at priority KERN_DEBUG.
+
+config MACH_SMDK
+	bool
+	help
+	  Common machine code for SMDK2410 and SMDK2440
+
diff -urNp linux-2.6.20-patched-move.moved/arch/arm/plat-s3c/Makefile linux-2.6.20-patched-move/arch/arm/plat-s3c/Makefile
--- linux-2.6.20-patched-move.moved/arch/arm/plat-s3c/Makefile	1970-01-01 01:00:00.000000000 +0100
+++ linux-2.6.20-patched-move/arch/arm/plat-s3c/Makefile	2007-02-04 21:07:52.000000000 +0000
@@ -0,0 +1,30 @@
+# arch/arm/plat-s3c/Makefile
+# 
+# Copyright 2007 Simtec Electronics
+#
+# Licensed under GPLv2
+
+obj-y				:=
+obj-m				:=
+obj-n				:=
+obj-				:=
+
+
+# Core files
+
+obj-y				+= cpu.o
+obj-y				+= irq.o
+obj-y				+= devs.o
+obj-y				+= gpio.o
+obj-y				+= time.o
+obj-y				+= clock.o
+
+# Architecture dependant builds
+
+obj-$(CONFIG_CPU_S3C244X)	+= s3c244x.o
+obj-$(CONFIG_CPU_S3C244X)	+= s3c244x-irq.o
+obj-$(CONFIG_PM_SIMTEC)		+= pm-simtec.o
+obj-$(CONFIG_PM)		+= pm.o
+obj-$(CONFIG_PM)		+= sleep.o
+obj-$(CONFIG_S3C2410_DMA)	+= dma.o
+obj-$(CONFIG_MACH_SMDK)		+= common-smdk.o
diff -urNp linux-2.6.20-patched-move.moved/arch/arm/plat-s3c/clock.c linux-2.6.20-patched-move/arch/arm/plat-s3c/clock.c
--- linux-2.6.20-patched-move.moved/arch/arm/plat-s3c/clock.c	2007-02-04 18:44:54.000000000 +0000
+++ linux-2.6.20-patched-move/arch/arm/plat-s3c/clock.c	2007-02-04 21:07:54.000000000 +0000
@@ -47,8 +47,8 @@
 #include <asm/arch/regs-clock.h>
 #include <asm/arch/regs-gpio.h>
 
-#include "clock.h"
-#include "cpu.h"
+#include <asm/plat-s3c/clock.h>
+#include <asm/plat-s3c/cpu.h>
 
 /* clock information */
 
diff -urNp linux-2.6.20-patched-move.moved/arch/arm/plat-s3c/common-smdk.c linux-2.6.20-patched-move/arch/arm/plat-s3c/common-smdk.c
--- linux-2.6.20-patched-move.moved/arch/arm/plat-s3c/common-smdk.c	2007-02-04 18:44:54.000000000 +0000
+++ linux-2.6.20-patched-move/arch/arm/plat-s3c/common-smdk.c	2007-02-04 21:07:54.000000000 +0000
@@ -38,9 +38,9 @@
 
 #include <asm/arch/nand.h>
 
-#include "common-smdk.h"
-#include "devs.h"
-#include "pm.h"
+#include <asm/plat-s3c/common-smdk.h>
+#include <asm/plat-s3c/devs.h>
+#include <asm/plat-s3c/pm.h>
 
 /* LED devices */
 
diff -urNp linux-2.6.20-patched-move.moved/arch/arm/plat-s3c/cpu.c linux-2.6.20-patched-move/arch/arm/plat-s3c/cpu.c
--- linux-2.6.20-patched-move.moved/arch/arm/plat-s3c/cpu.c	2007-02-04 18:44:54.000000000 +0000
+++ linux-2.6.20-patched-move/arch/arm/plat-s3c/cpu.c	2007-02-04 21:07:54.000000000 +0000
@@ -40,15 +40,15 @@
 #include <asm/arch/regs-gpio.h>
 #include <asm/arch/regs-serial.h>
 
-#include "cpu.h"
-#include "devs.h"
-#include "clock.h"
-#include "s3c2400.h"
-#include "s3c2410.h"
-#include "s3c2412.h"
+#include <asm/plat-s3c/cpu.h>
+#include <asm/plat-s3c/devs.h>
+#include <asm/plat-s3c/clock.h>
+#include <asm/plat-s3c/s3c2400.h>
+#include <asm/plat-s3c/s3c2410.h>
+#include <asm/plat-s3c/s3c2412.h>
 #include "s3c244x.h"
-#include "s3c2440.h"
-#include "s3c2442.h"
+#include <asm/plat-s3c/s3c2440.h>
+#include <asm/plat-s3c/s3c2442.h>
 
 struct cpu_table {
 	unsigned long	idcode;
diff -urNp linux-2.6.20-patched-move.moved/arch/arm/plat-s3c/devs.c linux-2.6.20-patched-move/arch/arm/plat-s3c/devs.c
--- linux-2.6.20-patched-move.moved/arch/arm/plat-s3c/devs.c	2007-02-04 18:44:54.000000000 +0000
+++ linux-2.6.20-patched-move/arch/arm/plat-s3c/devs.c	2007-02-04 21:07:54.000000000 +0000
@@ -30,8 +30,8 @@
 
 #include <asm/arch/regs-serial.h>
 
-#include "devs.h"
-#include "cpu.h"
+#include <asm/plat-s3c/devs.h>
+#include <asm/plat-s3c/cpu.h>
 
 /* Serial port registrations */
 
diff -urNp linux-2.6.20-patched-move.moved/arch/arm/plat-s3c/dma.c linux-2.6.20-patched-move/arch/arm/plat-s3c/dma.c
--- linux-2.6.20-patched-move.moved/arch/arm/plat-s3c/dma.c	2007-02-04 18:44:54.000000000 +0000
+++ linux-2.6.20-patched-move/arch/arm/plat-s3c/dma.c	2007-02-04 21:07:54.000000000 +0000
@@ -36,7 +36,7 @@
 #include <asm/mach/dma.h>
 #include <asm/arch/map.h>
 
-#include "dma.h"
+#include <asm/plat-s3c/dma.h>
 
 /* io map for dma */
 static void __iomem *dma_base;
diff -urNp linux-2.6.20-patched-move.moved/arch/arm/plat-s3c/irq.c linux-2.6.20-patched-move/arch/arm/plat-s3c/irq.c
--- linux-2.6.20-patched-move.moved/arch/arm/plat-s3c/irq.c	2007-02-04 18:44:54.000000000 +0000
+++ linux-2.6.20-patched-move/arch/arm/plat-s3c/irq.c	2007-02-04 21:07:54.000000000 +0000
@@ -66,9 +66,9 @@
 #include <asm/arch/regs-irq.h>
 #include <asm/arch/regs-gpio.h>
 
-#include "cpu.h"
-#include "pm.h"
-#include "irq.h"
+#include <asm/plat-s3c/cpu.h>
+#include <asm/plat-s3c/pm.h>
+#include <asm/plat-s3c/irq.h>
 
 /* wakeup irq control */
 
diff -urNp linux-2.6.20-patched-move.moved/arch/arm/plat-s3c/pm-simtec.c linux-2.6.20-patched-move/arch/arm/plat-s3c/pm-simtec.c
--- linux-2.6.20-patched-move.moved/arch/arm/plat-s3c/pm-simtec.c	2007-02-04 18:44:54.000000000 +0000
+++ linux-2.6.20-patched-move/arch/arm/plat-s3c/pm-simtec.c	2007-02-04 21:07:54.000000000 +0000
@@ -32,7 +32,7 @@
 
 #include <asm/mach-types.h>
 
-#include "pm.h"
+#include <asm/plat-s3c/pm.h>
 
 #define COPYRIGHT ", (c) 2005 Simtec Electronics"
 
diff -urNp linux-2.6.20-patched-move.moved/arch/arm/plat-s3c/pm.c linux-2.6.20-patched-move/arch/arm/plat-s3c/pm.c
--- linux-2.6.20-patched-move.moved/arch/arm/plat-s3c/pm.c	2007-02-04 18:44:54.000000000 +0000
+++ linux-2.6.20-patched-move/arch/arm/plat-s3c/pm.c	2007-02-04 21:07:54.000000000 +0000
@@ -48,7 +48,7 @@
 
 #include <asm/mach/time.h>
 
-#include "pm.h"
+#include <asm/plat-s3c/pm.h>
 
 /* for external use */
 
diff -urNp linux-2.6.20-patched-move.moved/arch/arm/plat-s3c/s3c244x-irq.c linux-2.6.20-patched-move/arch/arm/plat-s3c/s3c244x-irq.c
--- linux-2.6.20-patched-move.moved/arch/arm/plat-s3c/s3c244x-irq.c	2007-02-04 18:44:54.000000000 +0000
+++ linux-2.6.20-patched-move/arch/arm/plat-s3c/s3c244x-irq.c	2007-02-04 21:07:54.000000000 +0000
@@ -35,9 +35,9 @@
 #include <asm/arch/regs-irq.h>
 #include <asm/arch/regs-gpio.h>
 
-#include "cpu.h"
-#include "pm.h"
-#include "irq.h"
+#include <asm/plat-s3c/cpu.h>
+#include <asm/plat-s3c/pm.h>
+#include <asm/plat-s3c/irq.h>
 
 /* camera irq */
 
diff -urNp linux-2.6.20-patched-move.moved/arch/arm/plat-s3c/s3c244x.c linux-2.6.20-patched-move/arch/arm/plat-s3c/s3c244x.c
--- linux-2.6.20-patched-move.moved/arch/arm/plat-s3c/s3c244x.c	2007-02-04 18:44:54.000000000 +0000
+++ linux-2.6.20-patched-move/arch/arm/plat-s3c/s3c244x.c	2007-02-04 21:07:54.000000000 +0000
@@ -35,13 +35,13 @@
 #include <asm/arch/regs-gpioj.h>
 #include <asm/arch/regs-dsc.h>
 
-#include "s3c2410.h"
-#include "s3c2440.h"
+#include <asm/plat-s3c/s3c2410.h>
+#include <asm/plat-s3c/s3c2440.h>
 #include "s3c244x.h"
-#include "clock.h"
-#include "devs.h"
-#include "cpu.h"
-#include "pm.h"
+#include <asm/plat-s3c/clock.h>
+#include <asm/plat-s3c/devs.h>
+#include <asm/plat-s3c/cpu.h>
+#include <asm/plat-s3c/pm.h>
 
 static struct map_desc s3c244x_iodesc[] __initdata = {
 	IODESC_ENT(CLKPWR),
diff -urNp linux-2.6.20-patched-move.moved/arch/arm/plat-s3c/time.c linux-2.6.20-patched-move/arch/arm/plat-s3c/time.c
--- linux-2.6.20-patched-move.moved/arch/arm/plat-s3c/time.c	2007-02-04 18:44:54.000000000 +0000
+++ linux-2.6.20-patched-move/arch/arm/plat-s3c/time.c	2007-02-04 21:07:54.000000000 +0000
@@ -37,8 +37,8 @@
 #include <asm/arch/regs-irq.h>
 #include <asm/mach/time.h>
 
-#include "clock.h"
-#include "cpu.h"
+#include <asm/plat-s3c/clock.h>
+#include <asm/plat-s3c/cpu.h>
 
 static unsigned long timer_startval;
 static unsigned long timer_usec_ticks;
diff -urNp linux-2.6.20-patched-move.moved/arch/arm/tmp/Kconfig linux-2.6.20-patched-move/arch/arm/tmp/Kconfig
diff -urNp linux-2.6.20-patched-move.moved/arch/arm/tmp/Makefile linux-2.6.20-patched-move/arch/arm/tmp/Makefile

