x86: merge include/asm-x86/sparsemem.h

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
This commit is contained in:
Thomas Gleixner 2008-01-30 13:30:37 +01:00 committed by Ingo Molnar
parent 4757d7d8d0
commit 8a423ff0c4
4 changed files with 34 additions and 57 deletions

View File

@ -41,6 +41,8 @@ static inline __attribute__((pure)) int phys_to_nid(unsigned long addr)
#define node_end_pfn(nid) (NODE_DATA(nid)->node_start_pfn + \
NODE_DATA(nid)->node_spanned_pages)
extern int early_pfn_to_nid(unsigned long pfn);
#ifdef CONFIG_DISCONTIGMEM
#define pfn_to_nid(pfn) phys_to_nid((unsigned long)(pfn) << PAGE_SHIFT)

View File

@ -1,5 +1,34 @@
#ifndef _ASM_X86_SPARSEMEM_H
#define _ASM_X86_SPARSEMEM_H
#ifdef CONFIG_SPARSEMEM
/*
* generic non-linear memory support:
*
* 1) we will not split memory into more chunks than will fit into the flags
* field of the struct page
*
* SECTION_SIZE_BITS 2^n: size of each section
* MAX_PHYSADDR_BITS 2^n: max size of physical address space
* MAX_PHYSMEM_BITS 2^n: how much memory we can have in that space
*
*/
#ifdef CONFIG_X86_32
# include "sparsemem_32.h"
#else
# include "sparsemem_64.h"
# ifdef CONFIG_X86_PAE
# define SECTION_SIZE_BITS 30
# define MAX_PHYSADDR_BITS 36
# define MAX_PHYSMEM_BITS 36
# else
# define SECTION_SIZE_BITS 26
# define MAX_PHYSADDR_BITS 32
# define MAX_PHYSMEM_BITS 32
# endif
#else /* CONFIG_X86_32 */
# define SECTION_SIZE_BITS 27 /* matt - 128 is convenient right now */
# define MAX_PHYSADDR_BITS 40
# define MAX_PHYSMEM_BITS 40
#endif
#endif /* CONFIG_SPARSEMEM */
#endif

View File

@ -1,28 +0,0 @@
#ifndef _I386_SPARSEMEM_H
#define _I386_SPARSEMEM_H
#ifdef CONFIG_SPARSEMEM
/*
* generic non-linear memory support:
*
* 1) we will not split memory into more chunks than will fit into the
* flags field of the struct page
*/
/*
* SECTION_SIZE_BITS 2^N: how big each section will be
* MAX_PHYSADDR_BITS 2^N: how much physical address space we have
* MAX_PHYSMEM_BITS 2^N: how much memory we can have in that space
*/
#ifdef CONFIG_X86_PAE
#define SECTION_SIZE_BITS 30
#define MAX_PHYSADDR_BITS 36
#define MAX_PHYSMEM_BITS 36
#else
#define SECTION_SIZE_BITS 26
#define MAX_PHYSADDR_BITS 32
#define MAX_PHYSMEM_BITS 32
#endif
#endif /* CONFIG_SPARSEMEM */
#endif /* _I386_SPARSEMEM_H */

View File

@ -1,26 +0,0 @@
#ifndef _ASM_X86_64_SPARSEMEM_H
#define _ASM_X86_64_SPARSEMEM_H 1
#ifdef CONFIG_SPARSEMEM
/*
* generic non-linear memory support:
*
* 1) we will not split memory into more chunks than will fit into the flags
* field of the struct page
*
* SECTION_SIZE_BITS 2^n: size of each section
* MAX_PHYSADDR_BITS 2^n: max size of physical address space
* MAX_PHYSMEM_BITS 2^n: how much memory we can have in that space
*
*/
#define SECTION_SIZE_BITS 27 /* matt - 128 is convenient right now */
#define MAX_PHYSADDR_BITS 40
#define MAX_PHYSMEM_BITS 40
extern int early_pfn_to_nid(unsigned long pfn);
#endif /* CONFIG_SPARSEMEM */
#endif /* _ASM_X86_64_SPARSEMEM_H */