From c6526925cd4cdbfe26b9f33bc6f5e4bd00fffd70 Mon Sep 17 00:00:00 2001 From: Jeremy Fitzhardinge Date: Thu, 11 Sep 2008 01:31:45 -0700 Subject: [PATCH] --- yaml --- r: 115208 b: refs/heads/master c: 600715dcdf567c86f8b2c6173fcfb4b873e25a19 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/arch/powerpc/Kconfig | 3 +++ trunk/arch/powerpc/include/asm/types.h | 7 ------- trunk/arch/x86/Kconfig | 3 +++ trunk/include/asm-x86/page_32.h | 2 -- trunk/include/asm-x86/page_64.h | 1 - trunk/include/linux/types.h | 6 ++++++ trunk/mm/Kconfig | 3 +++ 8 files changed, 16 insertions(+), 11 deletions(-) diff --git a/[refs] b/[refs] index 7253b2a09bcd..0b4552427675 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 9dfed08eb4086584205717894177a9ee930c88c4 +refs/heads/master: 600715dcdf567c86f8b2c6173fcfb4b873e25a19 diff --git a/trunk/arch/powerpc/Kconfig b/trunk/arch/powerpc/Kconfig index 587da5e0990f..f5f83ee60411 100644 --- a/trunk/arch/powerpc/Kconfig +++ b/trunk/arch/powerpc/Kconfig @@ -22,6 +22,9 @@ config WORD_SIZE config PPC_MERGE def_bool y +config ARCH_PHYS_ADDR_T_64BIT + def_bool PPC64 || PHYS_64BIT + config MMU bool default y diff --git a/trunk/arch/powerpc/include/asm/types.h b/trunk/arch/powerpc/include/asm/types.h index d3374bc865ba..c646f34c4e8b 100644 --- a/trunk/arch/powerpc/include/asm/types.h +++ b/trunk/arch/powerpc/include/asm/types.h @@ -48,13 +48,6 @@ typedef struct { typedef __vector128 vector128; -/* Physical address used by some IO functions */ -#if defined(CONFIG_PPC64) || defined(CONFIG_PHYS_64BIT) -typedef u64 phys_addr_t; -#else -typedef u32 phys_addr_t; -#endif - #ifdef __powerpc64__ typedef u64 dma_addr_t; #else diff --git a/trunk/arch/x86/Kconfig b/trunk/arch/x86/Kconfig index ed92864d1325..a0ffb5188c8c 100644 --- a/trunk/arch/x86/Kconfig +++ b/trunk/arch/x86/Kconfig @@ -932,6 +932,9 @@ config X86_PAE has the cost of more pagetable lookup overhead, and also consumes more pagetable space per process. +config ARCH_PHYS_ADDR_T_64BIT + def_bool X86_64 || X86_PAE + # Common NUMA Features config NUMA bool "Numa Memory Allocation and Scheduler Support (EXPERIMENTAL)" diff --git a/trunk/include/asm-x86/page_32.h b/trunk/include/asm-x86/page_32.h index ab8528793f08..d0e58605a520 100644 --- a/trunk/include/asm-x86/page_32.h +++ b/trunk/include/asm-x86/page_32.h @@ -33,7 +33,6 @@ typedef u64 pmdval_t; typedef u64 pudval_t; typedef u64 pgdval_t; typedef u64 pgprotval_t; -typedef u64 phys_addr_t; typedef union { struct { @@ -54,7 +53,6 @@ typedef unsigned long pmdval_t; typedef unsigned long pudval_t; typedef unsigned long pgdval_t; typedef unsigned long pgprotval_t; -typedef unsigned long phys_addr_t; typedef union { pteval_t pte; diff --git a/trunk/include/asm-x86/page_64.h b/trunk/include/asm-x86/page_64.h index c6916c83e6b1..2456fbf2d7dc 100644 --- a/trunk/include/asm-x86/page_64.h +++ b/trunk/include/asm-x86/page_64.h @@ -79,7 +79,6 @@ typedef unsigned long pmdval_t; typedef unsigned long pudval_t; typedef unsigned long pgdval_t; typedef unsigned long pgprotval_t; -typedef unsigned long phys_addr_t; typedef struct page *pgtable_t; diff --git a/trunk/include/linux/types.h b/trunk/include/linux/types.h index d4a9ce6e2760..022c668496da 100644 --- a/trunk/include/linux/types.h +++ b/trunk/include/linux/types.h @@ -197,6 +197,12 @@ typedef u64 resource_size_t; typedef u32 resource_size_t; #endif +#ifdef CONFIG_PHYS_ADDR_T_64BIT +typedef u64 phys_addr_t; +#else +typedef u32 phys_addr_t; +#endif + struct ustat { __kernel_daddr_t f_tfree; __kernel_ino_t f_tinode; diff --git a/trunk/mm/Kconfig b/trunk/mm/Kconfig index 0bd9c2dbb2a0..91ee3922510a 100644 --- a/trunk/mm/Kconfig +++ b/trunk/mm/Kconfig @@ -187,6 +187,9 @@ config RESOURCES_64BIT help This option allows memory and IO resources to be 64 bit. +config PHYS_ADDR_T_64BIT + def_bool 64BIT || ARCH_PHYS_ADDR_T_64BIT + config ZONE_DMA_FLAG int default "0" if !ZONE_DMA