powerpc/mm: Move pgtable_t into platform headers
This patch move pgtable_t into platform headers. It gets rid of the CONFIG_PPC_64K_PAGES case for PPC64 as nohash/64 doesn't support CONFIG_PPC_64K_PAGES. Reviewed-by: Aneesh Kumar K.V <aneesh.kumar@linux.ibm.com> Signed-off-by: Christophe Leroy <christophe.leroy@c-s.fr> Signed-off-by: Michael Ellerman <mpe@ellerman.id.au>
This commit is contained in:
committed by
Michael Ellerman
parent
994da93d19
commit
d09780f3a8
@@ -42,6 +42,8 @@ struct ppc_bat {
|
|||||||
u32 batu;
|
u32 batu;
|
||||||
u32 batl;
|
u32 batl;
|
||||||
};
|
};
|
||||||
|
|
||||||
|
typedef struct page *pgtable_t;
|
||||||
#endif /* !__ASSEMBLY__ */
|
#endif /* !__ASSEMBLY__ */
|
||||||
|
|
||||||
/*
|
/*
|
||||||
|
|||||||
@@ -2,6 +2,8 @@
|
|||||||
#ifndef _ASM_POWERPC_BOOK3S_64_MMU_H_
|
#ifndef _ASM_POWERPC_BOOK3S_64_MMU_H_
|
||||||
#define _ASM_POWERPC_BOOK3S_64_MMU_H_
|
#define _ASM_POWERPC_BOOK3S_64_MMU_H_
|
||||||
|
|
||||||
|
#include <asm/page.h>
|
||||||
|
|
||||||
#ifndef __ASSEMBLY__
|
#ifndef __ASSEMBLY__
|
||||||
/*
|
/*
|
||||||
* Page size definition
|
* Page size definition
|
||||||
@@ -24,6 +26,13 @@ struct mmu_psize_def {
|
|||||||
};
|
};
|
||||||
extern struct mmu_psize_def mmu_psize_defs[MMU_PAGE_COUNT];
|
extern struct mmu_psize_def mmu_psize_defs[MMU_PAGE_COUNT];
|
||||||
|
|
||||||
|
/*
|
||||||
|
* For BOOK3s 64 with 4k and 64K linux page size
|
||||||
|
* we want to use pointers, because the page table
|
||||||
|
* actually store pfn
|
||||||
|
*/
|
||||||
|
typedef pte_t *pgtable_t;
|
||||||
|
|
||||||
#endif /* __ASSEMBLY__ */
|
#endif /* __ASSEMBLY__ */
|
||||||
|
|
||||||
/* 64-bit classic hash table MMU */
|
/* 64-bit classic hash table MMU */
|
||||||
|
|||||||
@@ -16,4 +16,8 @@
|
|||||||
#include <asm/nohash/32/mmu-8xx.h>
|
#include <asm/nohash/32/mmu-8xx.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#ifndef __ASSEMBLY__
|
||||||
|
typedef struct page *pgtable_t;
|
||||||
|
#endif
|
||||||
|
|
||||||
#endif /* _ASM_POWERPC_NOHASH_32_MMU_H_ */
|
#endif /* _ASM_POWERPC_NOHASH_32_MMU_H_ */
|
||||||
|
|||||||
@@ -5,4 +5,8 @@
|
|||||||
/* Freescale Book-E software loaded TLB or Book-3e (ISA 2.06+) MMU */
|
/* Freescale Book-E software loaded TLB or Book-3e (ISA 2.06+) MMU */
|
||||||
#include <asm/nohash/mmu-book3e.h>
|
#include <asm/nohash/mmu-book3e.h>
|
||||||
|
|
||||||
|
#ifndef __ASSEMBLY__
|
||||||
|
typedef struct page *pgtable_t;
|
||||||
|
#endif
|
||||||
|
|
||||||
#endif /* _ASM_POWERPC_NOHASH_64_MMU_H_ */
|
#endif /* _ASM_POWERPC_NOHASH_64_MMU_H_ */
|
||||||
|
|||||||
@@ -335,20 +335,6 @@ void arch_free_page(struct page *page, int order);
|
|||||||
#endif
|
#endif
|
||||||
|
|
||||||
struct vm_area_struct;
|
struct vm_area_struct;
|
||||||
#ifdef CONFIG_PPC_BOOK3S_64
|
|
||||||
/*
|
|
||||||
* For BOOK3s 64 with 4k and 64K linux page size
|
|
||||||
* we want to use pointers, because the page table
|
|
||||||
* actually store pfn
|
|
||||||
*/
|
|
||||||
typedef pte_t *pgtable_t;
|
|
||||||
#else
|
|
||||||
#if defined(CONFIG_PPC_64K_PAGES) && defined(CONFIG_PPC64)
|
|
||||||
typedef pte_t *pgtable_t;
|
|
||||||
#else
|
|
||||||
typedef struct page *pgtable_t;
|
|
||||||
#endif
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#include <asm-generic/memory_model.h>
|
#include <asm-generic/memory_model.h>
|
||||||
#endif /* __ASSEMBLY__ */
|
#endif /* __ASSEMBLY__ */
|
||||||
|
|||||||
Reference in New Issue
Block a user