aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChristoph Lameter <clameter@sgi.com>2007-02-10 04:43:09 -0500
committerLinus Torvalds <torvalds@woody.linux-foundation.org>2007-02-11 13:51:18 -0500
commit66701b1499a3ff11882c8c4aef36e8eac86e17b1 (patch)
tree7900ced6b590c3cd939bcdc92355ff0a14f856e3
parent6267276f3fdda9ad0d5ca451bdcbdf42b802d64b (diff)
[PATCH] optional ZONE_DMA: introduce CONFIG_ZONE_DMA
This patch simply defines CONFIG_ZONE_DMA for all arches. We later do special things with CONFIG_ZONE_DMA after the VM and an arch are prepared to work without ZONE_DMA. CONFIG_ZONE_DMA can be defined in two ways depending on how an architecture handles ISA DMA. First if CONFIG_GENERIC_ISA_DMA is set by the arch then we know that the arch needs ZONE_DMA because ISA DMA devices are supported. We can catch this in mm/Kconfig and do not need to modify arch code. Second, arches may use ZONE_DMA in an unknown way. We set CONFIG_ZONE_DMA for all arches that do not set CONFIG_GENERIC_ISA_DMA in order to insure backwards compatibility. The arches may later undefine ZONE_DMA if their arch code has been verified to not depend on ZONE_DMA. Signed-off-by: Christoph Lameter <clameter@sgi.com> Cc: Andi Kleen <ak@suse.de> Cc: "Luck, Tony" <tony.luck@intel.com> Cc: Kyle McMartin <kyle@mcmartin.ca> Cc: Matthew Wilcox <willy@debian.org> Cc: James Bottomley <James.Bottomley@steeleye.com> Cc: Paul Mundt <lethal@linux-sh.org> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
-rw-r--r--arch/cris/Kconfig4
-rw-r--r--arch/frv/Kconfig4
-rw-r--r--arch/h8300/Kconfig4
-rw-r--r--arch/ia64/Kconfig4
-rw-r--r--arch/m68knommu/Kconfig4
-rw-r--r--arch/s390/Kconfig4
-rw-r--r--arch/v850/Kconfig3
-rw-r--r--arch/xtensa/Kconfig4
-rw-r--r--mm/Kconfig4
9 files changed, 35 insertions, 0 deletions
diff --git a/arch/cris/Kconfig b/arch/cris/Kconfig
index 3474309e049c..e3db1427dbe5 100644
--- a/arch/cris/Kconfig
+++ b/arch/cris/Kconfig
@@ -9,6 +9,10 @@ config MMU
9 bool 9 bool
10 default y 10 default y
11 11
12config ZONE_DMA
13 bool
14 default y
15
12config RWSEM_GENERIC_SPINLOCK 16config RWSEM_GENERIC_SPINLOCK
13 bool 17 bool
14 default y 18 default y
diff --git a/arch/frv/Kconfig b/arch/frv/Kconfig
index 7561d7b72e75..cea237413aa2 100644
--- a/arch/frv/Kconfig
+++ b/arch/frv/Kconfig
@@ -6,6 +6,10 @@ config FRV
6 bool 6 bool
7 default y 7 default y
8 8
9config ZONE_DMA
10 bool
11 default y
12
9config RWSEM_GENERIC_SPINLOCK 13config RWSEM_GENERIC_SPINLOCK
10 bool 14 bool
11 default y 15 default y
diff --git a/arch/h8300/Kconfig b/arch/h8300/Kconfig
index 34a84bc4baf5..146eb28f6225 100644
--- a/arch/h8300/Kconfig
+++ b/arch/h8300/Kconfig
@@ -17,6 +17,10 @@ config SWAP
17 bool 17 bool
18 default n 18 default n
19 19
20config ZONE_DMA
21 bool
22 default y
23
20config FPU 24config FPU
21 bool 25 bool
22 default n 26 default n
diff --git a/arch/ia64/Kconfig b/arch/ia64/Kconfig
index f1d2899e9a62..549ead597934 100644
--- a/arch/ia64/Kconfig
+++ b/arch/ia64/Kconfig
@@ -24,6 +24,10 @@ config 64BIT
24 bool 24 bool
25 default y 25 default y
26 26
27config ZONE_DMA
28 bool
29 default y
30
27config MMU 31config MMU
28 bool 32 bool
29 default y 33 default y
diff --git a/arch/m68knommu/Kconfig b/arch/m68knommu/Kconfig
index 25993c2a8fbb..c5fc5406dad0 100644
--- a/arch/m68knommu/Kconfig
+++ b/arch/m68knommu/Kconfig
@@ -17,6 +17,10 @@ config FPU
17 bool 17 bool
18 default n 18 default n
19 19
20config ZONE_DMA
21 bool
22 default y
23
20config RWSEM_GENERIC_SPINLOCK 24config RWSEM_GENERIC_SPINLOCK
21 bool 25 bool
22 default y 26 default y
diff --git a/arch/s390/Kconfig b/arch/s390/Kconfig
index eaed402ad346..c64973004261 100644
--- a/arch/s390/Kconfig
+++ b/arch/s390/Kconfig
@@ -7,6 +7,10 @@ config MMU
7 bool 7 bool
8 default y 8 default y
9 9
10config ZONE_DMA
11 bool
12 default y
13
10config LOCKDEP_SUPPORT 14config LOCKDEP_SUPPORT
11 bool 15 bool
12 default y 16 default y
diff --git a/arch/v850/Kconfig b/arch/v850/Kconfig
index f0d4d72e560f..dbfab8fc9b49 100644
--- a/arch/v850/Kconfig
+++ b/arch/v850/Kconfig
@@ -10,6 +10,9 @@ mainmenu "uClinux/v850 (w/o MMU) Kernel Configuration"
10config MMU 10config MMU
11 bool 11 bool
12 default n 12 default n
13config ZONE_DMA
14 bool
15 default y
13config RWSEM_GENERIC_SPINLOCK 16config RWSEM_GENERIC_SPINLOCK
14 bool 17 bool
15 default y 18 default y
diff --git a/arch/xtensa/Kconfig b/arch/xtensa/Kconfig
index 2e74cb0b7807..7c99d518e49e 100644
--- a/arch/xtensa/Kconfig
+++ b/arch/xtensa/Kconfig
@@ -7,6 +7,10 @@ config FRAME_POINTER
7 bool 7 bool
8 default n 8 default n
9 9
10config ZONE_DMA
11 bool
12 default y
13
10config XTENSA 14config XTENSA
11 bool 15 bool
12 default y 16 default y
diff --git a/mm/Kconfig b/mm/Kconfig
index db7c55de92cd..50f7cfc15b78 100644
--- a/mm/Kconfig
+++ b/mm/Kconfig
@@ -139,6 +139,10 @@ config SPLIT_PTLOCK_CPUS
139 default "4096" if PARISC && !PA20 139 default "4096" if PARISC && !PA20
140 default "4" 140 default "4"
141 141
142config ZONE_DMA
143 def_bool y
144 depends on GENERIC_ISA_DMA
145
142# 146#
143# support for page migration 147# support for page migration
144# 148#