From e99ccb488181d012248c6be30b2093e950319fc5 Mon Sep 17 00:00:00 2001 From: Kumar Gala Date: Thu, 27 Mar 2008 11:46:38 -0500 Subject: [PATCH] Introduce phys_size_t and move phys_addr_t into asm/types.h Also add CONFIG_PHYS_64BIT on powerpc to deal with 32-bit ppc's that have larger physical addresses like 44x, 85xx, and 86xx. Signed-off-by: Kumar Gala --- include/asm-arm/io.h | 2 -- include/asm-arm/types.h | 3 +++ include/asm-avr32/io.h | 2 -- include/asm-avr32/types.h | 3 +++ include/asm-blackfin/io.h | 2 -- include/asm-blackfin/types.h | 3 +++ include/asm-i386/io.h | 2 -- include/asm-i386/types.h | 3 +++ include/asm-m68k/io.h | 2 -- include/asm-m68k/types.h | 3 +++ include/asm-microblaze/io.h | 2 -- include/asm-microblaze/types.h | 3 +++ include/asm-mips/io.h | 2 -- include/asm-mips/types.h | 8 ++++++++ include/asm-nios/io.h | 2 -- include/asm-nios/types.h | 3 +++ include/asm-nios2/io.h | 2 -- include/asm-ppc/io.h | 2 -- include/asm-ppc/types.h | 8 ++++++++ include/asm-sh/io.h | 2 -- include/asm-sh/types.h | 3 +++ 21 files changed, 40 insertions(+), 22 deletions(-) diff --git a/include/asm-arm/io.h b/include/asm-arm/io.h index 029b7f9eeb..c33b9e8d34 100644 --- a/include/asm-arm/io.h +++ b/include/asm-arm/io.h @@ -38,8 +38,6 @@ static inline void sync(void) * that can be used to access the memory range with the caching * properties specified by "flags". */ -typedef unsigned long phys_addr_t; - #define MAP_NOCACHE (0) #define MAP_WRCOMBINE (0) #define MAP_WRBACK (0) diff --git a/include/asm-arm/types.h b/include/asm-arm/types.h index e56f19d29b..71dc049da6 100644 --- a/include/asm-arm/types.h +++ b/include/asm-arm/types.h @@ -45,6 +45,9 @@ typedef unsigned long long u64; typedef u32 dma_addr_t; +typedef unsigned long phys_addr_t; +typedef unsigned long phys_size_t; + #endif /* __KERNEL__ */ #endif diff --git a/include/asm-avr32/io.h b/include/asm-avr32/io.h index ba14674cf7..d030c262a5 100644 --- a/include/asm-avr32/io.h +++ b/include/asm-avr32/io.h @@ -101,8 +101,6 @@ static inline void sync(void) * This implementation works for memory below 512MiB (flash, etc.) as * well as above 3.5GiB (internal peripherals.) */ -typedef unsigned long phys_addr_t; - #define MAP_NOCACHE (0) #define MAP_WRCOMBINE (1 << 7) #define MAP_WRBACK (MAP_WRCOMBINE | (1 << 9)) diff --git a/include/asm-avr32/types.h b/include/asm-avr32/types.h index 2dbea4bad3..c303e3c891 100644 --- a/include/asm-avr32/types.h +++ b/include/asm-avr32/types.h @@ -71,6 +71,9 @@ typedef unsigned long long u64; typedef u32 dma_addr_t; +typedef unsigned long phys_addr_t; +typedef unsigned long phys_size_t; + #ifdef CONFIG_LBD typedef u64 sector_t; #define HAVE_SECTOR_T diff --git a/include/asm-blackfin/io.h b/include/asm-blackfin/io.h index 2149685c17..da58914987 100644 --- a/include/asm-blackfin/io.h +++ b/include/asm-blackfin/io.h @@ -45,8 +45,6 @@ extern void cf_outb(unsigned char val, volatile unsigned char *addr); * that can be used to access the memory range with the caching * properties specified by "flags". */ -typedef unsigned long phys_addr_t; - #define MAP_NOCACHE (0) #define MAP_WRCOMBINE (0) #define MAP_WRBACK (0) diff --git a/include/asm-blackfin/types.h b/include/asm-blackfin/types.h index 9fd8e03360..2160ba0d02 100644 --- a/include/asm-blackfin/types.h +++ b/include/asm-blackfin/types.h @@ -78,6 +78,9 @@ typedef unsigned long long u64; typedef u32 dma_addr_t; +typedef unsigned long phys_addr_t; +typedef unsigned long phys_size_t; + #endif #endif diff --git a/include/asm-i386/io.h b/include/asm-i386/io.h index db4f442817..2c57140fb3 100644 --- a/include/asm-i386/io.h +++ b/include/asm-i386/io.h @@ -210,8 +210,6 @@ static inline void sync(void) * that can be used to access the memory range with the caching * properties specified by "flags". */ -typedef unsigned long phys_addr_t; - #define MAP_NOCACHE (0) #define MAP_WRCOMBINE (0) #define MAP_WRBACK (0) diff --git a/include/asm-i386/types.h b/include/asm-i386/types.h index bdbde4172a..9a40e383eb 100644 --- a/include/asm-i386/types.h +++ b/include/asm-i386/types.h @@ -45,6 +45,9 @@ typedef unsigned long long u64; typedef u32 dma_addr_t; +typedef unsigned long phys_addr_t; +typedef unsigned long phys_size_t; + #endif /* __KERNEL__ */ #endif diff --git a/include/asm-m68k/io.h b/include/asm-m68k/io.h index 33c454a437..1fccc12923 100644 --- a/include/asm-m68k/io.h +++ b/include/asm-m68k/io.h @@ -232,8 +232,6 @@ static inline void sync(void) * that can be used to access the memory range with the caching * properties specified by "flags". */ -typedef unsigned long phys_addr_t; - #define MAP_NOCACHE (0) #define MAP_WRCOMBINE (0) #define MAP_WRBACK (0) diff --git a/include/asm-m68k/types.h b/include/asm-m68k/types.h index e944d3fd19..44b4ca5bd5 100644 --- a/include/asm-m68k/types.h +++ b/include/asm-m68k/types.h @@ -44,6 +44,9 @@ typedef unsigned long long u64; /* DMA addresses are 32-bits wide */ typedef u32 dma_addr_t; +typedef unsigned long phys_addr_t; +typedef unsigned long phys_size_t; + #endif /* __KERNEL__ */ #endif /* __ASSEMBLY__ */ diff --git a/include/asm-microblaze/io.h b/include/asm-microblaze/io.h index 90d18428ad..aa37a60ce7 100644 --- a/include/asm-microblaze/io.h +++ b/include/asm-microblaze/io.h @@ -134,8 +134,6 @@ static inline void sync(void) * that can be used to access the memory range with the caching * properties specified by "flags". */ -typedef unsigned long phys_addr_t; - #define MAP_NOCACHE (0) #define MAP_WRCOMBINE (0) #define MAP_WRBACK (0) diff --git a/include/asm-microblaze/types.h b/include/asm-microblaze/types.h index 3895dc4365..77094f62d6 100644 --- a/include/asm-microblaze/types.h +++ b/include/asm-microblaze/types.h @@ -52,6 +52,9 @@ typedef unsigned long long u64; /* Dma addresses are 32-bits wide. */ typedef u32 dma_addr_t; + +typedef unsigned long phys_addr_t; +typedef unsigned long phys_size_t; #endif /* __KERNEL__ */ #endif /* _ASM_TYPES_H */ diff --git a/include/asm-mips/io.h b/include/asm-mips/io.h index e27d1f159d..7137072ce4 100644 --- a/include/asm-mips/io.h +++ b/include/asm-mips/io.h @@ -470,8 +470,6 @@ static inline void sync(void) * that can be used to access the memory range with the caching * properties specified by "flags". */ -typedef unsigned long phys_addr_t; - #define MAP_NOCACHE (0) #define MAP_WRCOMBINE (0) #define MAP_WRBACK (0) diff --git a/include/asm-mips/types.h b/include/asm-mips/types.h index f49a2176af..d4bb85999b 100644 --- a/include/asm-mips/types.h +++ b/include/asm-mips/types.h @@ -78,8 +78,16 @@ typedef unsigned long long u64; #if (defined(CONFIG_HIGHMEM) && defined(CONFIG_64BIT_PHYS_ADDR)) \ || defined(CONFIG_64BIT) typedef u64 dma_addr_t; + +typedef u64 phys_addr_t; +typedef u64 phys_size_t; + #else typedef u32 dma_addr_t; + +typedef u32 phys_addr_t; +typedef u32 phys_size_t; + #endif typedef u64 dma64_addr_t; diff --git a/include/asm-nios/io.h b/include/asm-nios/io.h index 6fc339fb01..12a0bd9152 100644 --- a/include/asm-nios/io.h +++ b/include/asm-nios/io.h @@ -114,8 +114,6 @@ static inline void sync(void) * that can be used to access the memory range with the caching * properties specified by "flags". */ -typedef unsigned long phys_addr_t; - #define MAP_NOCACHE (0) #define MAP_WRCOMBINE (0) #define MAP_WRBACK (0) diff --git a/include/asm-nios/types.h b/include/asm-nios/types.h index 24c98a89e4..636e12fd38 100644 --- a/include/asm-nios/types.h +++ b/include/asm-nios/types.h @@ -52,6 +52,9 @@ typedef unsigned long long u64; /* Dma addresses are 32-bits wide. */ typedef u32 dma_addr_t; + +typedef unsigned long phys_addr_t; +typedef unsigned long phys_size_t; #endif /* __KERNEL__ */ #endif /* _NIOS_TYPES_H */ diff --git a/include/asm-nios2/io.h b/include/asm-nios2/io.h index a52b95cf23..2f1ec26bd1 100644 --- a/include/asm-nios2/io.h +++ b/include/asm-nios2/io.h @@ -34,8 +34,6 @@ static inline void sync(void) * that can be used to access the memory range with the caching * properties specified by "flags". */ -typedef unsigned long phys_addr_t; - #define MAP_NOCACHE (0) #define MAP_WRCOMBINE (0) #define MAP_WRBACK (0) diff --git a/include/asm-ppc/io.h b/include/asm-ppc/io.h index 91c9c1e4c6..00b7ec57e4 100644 --- a/include/asm-ppc/io.h +++ b/include/asm-ppc/io.h @@ -243,8 +243,6 @@ extern inline void out_be32(volatile unsigned __iomem *addr, int val) * that can be used to access the memory range with the caching * properties specified by "flags". */ -typedef unsigned long phys_addr_t; - #define MAP_NOCACHE (0) #define MAP_WRCOMBINE (0) #define MAP_WRBACK (0) diff --git a/include/asm-ppc/types.h b/include/asm-ppc/types.h index 7adf1450f2..864391f03b 100644 --- a/include/asm-ppc/types.h +++ b/include/asm-ppc/types.h @@ -44,6 +44,14 @@ typedef unsigned long long u64; /* DMA addresses are 32-bits wide */ typedef u32 dma_addr_t; +#ifdef CONFIG_PHYS_64BIT +typedef unsigned long long phys_addr_t; +typedef unsigned long long phys_size_t; +#else +typedef unsigned long phys_addr_t; +typedef unsigned long phys_size_t; +#endif + #endif /* __KERNEL__ */ #endif /* __ASSEMBLY__ */ diff --git a/include/asm-sh/io.h b/include/asm-sh/io.h index 51fd10b566..740029300c 100644 --- a/include/asm-sh/io.h +++ b/include/asm-sh/io.h @@ -233,8 +233,6 @@ static inline void sync(void) * that can be used to access the memory range with the caching * properties specified by "flags". */ -typedef unsigned long phys_addr_t; - #define MAP_NOCACHE (0) #define MAP_WRCOMBINE (0) #define MAP_WRBACK (0) diff --git a/include/asm-sh/types.h b/include/asm-sh/types.h index 7ba69d9707..aed4a6eb57 100644 --- a/include/asm-sh/types.h +++ b/include/asm-sh/types.h @@ -52,6 +52,9 @@ typedef unsigned long long u64; typedef u32 dma_addr_t; +typedef unsigned long phys_addr_t; +typedef unsigned long phys_size_t; + #endif /* __ASSEMBLY__ */ #endif /* __KERNEL__ */ -- 2.30.2