diff -urpN -X ../dontdiff linux-2.6.18-rc4-dma5-s3c2440/arch/arm/mach-s3c2410/Kconfig linux-2.6.18-rc4-dma6/arch/arm/mach-s3c2410/Kconfig
--- linux-2.6.18-rc4-dma5-s3c2440/arch/arm/mach-s3c2410/Kconfig	2006-08-11 15:38:59.000000000 +0100
+++ linux-2.6.18-rc4-dma6/arch/arm/mach-s3c2410/Kconfig	2006-08-13 22:37:29.000000000 +0100
@@ -125,6 +125,13 @@ config S3C2410_CLOCK
 	help
 	  Clock code for the S3C2410, and similar processors
 
+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
diff -urpN -X ../dontdiff linux-2.6.18-rc4-dma5-s3c2440/arch/arm/mach-s3c2410/Makefile linux-2.6.18-rc4-dma6/arch/arm/mach-s3c2410/Makefile
--- linux-2.6.18-rc4-dma5-s3c2440/arch/arm/mach-s3c2410/Makefile	2006-08-13 22:33:01.000000000 +0100
+++ linux-2.6.18-rc4-dma6/arch/arm/mach-s3c2410/Makefile	2006-08-13 22:35:07.000000000 +0100
@@ -22,7 +22,7 @@ obj-$(CONFIG_CPU_S3C2400)	+= s3c2400-gpi
 
 obj-$(CONFIG_CPU_S3C2410)	+= s3c2410.o
 obj-$(CONFIG_CPU_S3C2410)	+= s3c2410-gpio.o
-obj-dma-$(CONFIG_CPU_S3C2410)	+= s3c2410-dma.o
+obj-$(CONFIG_CPU_S3C2410_DMA)	+= s3c2410-dma.o
 
 # Power Management support
 
diff -urpN -X ../dontdiff linux-2.6.18-rc4-dma5-s3c2440/arch/arm/mach-s3c2410/s3c2410-dma.c linux-2.6.18-rc4-dma6/arch/arm/mach-s3c2410/s3c2410-dma.c
--- linux-2.6.18-rc4-dma5-s3c2440/arch/arm/mach-s3c2410/s3c2410-dma.c	2006-08-13 19:39:09.000000000 +0100
+++ linux-2.6.18-rc4-dma6/arch/arm/mach-s3c2410/s3c2410-dma.c	2006-08-13 22:24:56.000000000 +0100
@@ -141,3 +141,18 @@ static int __init s3c2410_dma_init(void)
 }
 
 arch_initcall(s3c2410_dma_init);
+
+/* S3C2442 DMA contains the same selection table as the S3C2410 */
+
+static struct sysdev_driver s3c2442_dma_driver = {
+	.add	= s3c2410_dma_add,
+};
+
+static int __init s3c2442_dma_init(void)
+{
+	return sysdev_driver_register(&s3c2442_sysclass, &s3c2442_dma_driver);
+}
+
+arch_initcall(s3c2442_dma_init);
+
+

