aboutsummaryrefslogtreecommitdiffstats
path: root/arch
diff options
context:
space:
mode:
authorJeremy Fitzhardinge <jeremy@goop.org>2008-09-11 04:31:45 -0400
committerIngo Molnar <mingo@elte.hu>2008-09-14 11:24:25 -0400
commit600715dcdf567c86f8b2c6173fcfb4b873e25a19 (patch)
treec2f3ed1c928d3cc47af0573b56c8da2f1df880a0 /arch
parent9dfed08eb4086584205717894177a9ee930c88c4 (diff)
generic: add phys_addr_t for holding physical addresses
Add a kernel-wide "phys_addr_t" which is guaranteed to be able to hold any physical address. By default it equals the word size of the architecture, but a 32-bit architecture can set ARCH_PHYS_ADDR_T_64BIT if it needs a 64-bit phys_addr_t. Signed-off-by: Jeremy Fitzhardinge <jeremy.fitzhardinge@citrix.com> Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'arch')
-rw-r--r--arch/powerpc/Kconfig3
-rw-r--r--arch/powerpc/include/asm/types.h7
-rw-r--r--arch/x86/Kconfig3
3 files changed, 6 insertions, 7 deletions
diff --git a/arch/powerpc/Kconfig b/arch/powerpc/Kconfig
index 587da5e0990f..f5f83ee60411 100644
--- a/arch/powerpc/Kconfig
+++ b/arch/powerpc/Kconfig
@@ -22,6 +22,9 @@ config WORD_SIZE
22config PPC_MERGE 22config PPC_MERGE
23 def_bool y 23 def_bool y
24 24
25config ARCH_PHYS_ADDR_T_64BIT
26 def_bool PPC64 || PHYS_64BIT
27
25config MMU 28config MMU
26 bool 29 bool
27 default y 30 default y
diff --git a/arch/powerpc/include/asm/types.h b/arch/powerpc/include/asm/types.h
index d3374bc865ba..c646f34c4e8b 100644
--- a/arch/powerpc/include/asm/types.h
+++ b/arch/powerpc/include/asm/types.h
@@ -48,13 +48,6 @@ typedef struct {
48 48
49typedef __vector128 vector128; 49typedef __vector128 vector128;
50 50
51/* Physical address used by some IO functions */
52#if defined(CONFIG_PPC64) || defined(CONFIG_PHYS_64BIT)
53typedef u64 phys_addr_t;
54#else
55typedef u32 phys_addr_t;
56#endif
57
58#ifdef __powerpc64__ 51#ifdef __powerpc64__
59typedef u64 dma_addr_t; 52typedef u64 dma_addr_t;
60#else 53#else
diff --git a/arch/x86/Kconfig b/arch/x86/Kconfig
index ed92864d1325..a0ffb5188c8c 100644
--- a/arch/x86/Kconfig
+++ b/arch/x86/Kconfig
@@ -932,6 +932,9 @@ config X86_PAE
932 has the cost of more pagetable lookup overhead, and also 932 has the cost of more pagetable lookup overhead, and also
933 consumes more pagetable space per process. 933 consumes more pagetable space per process.
934 934
935config ARCH_PHYS_ADDR_T_64BIT
936 def_bool X86_64 || X86_PAE
937
935# Common NUMA Features 938# Common NUMA Features
936config NUMA 939config NUMA
937 bool "Numa Memory Allocation and Scheduler Support (EXPERIMENTAL)" 940 bool "Numa Memory Allocation and Scheduler Support (EXPERIMENTAL)"