aboutsummaryrefslogtreecommitdiffstats
path: root/include/asm-ppc/mmu.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/asm-ppc/mmu.h')
-rw-r--r--include/asm-ppc/mmu.h24
1 files changed, 4 insertions, 20 deletions
diff --git a/include/asm-ppc/mmu.h b/include/asm-ppc/mmu.h
index 9205db404c7a..14584e505ed5 100644
--- a/include/asm-ppc/mmu.h
+++ b/include/asm-ppc/mmu.h
@@ -6,7 +6,6 @@
6#ifndef _PPC_MMU_H_ 6#ifndef _PPC_MMU_H_
7#define _PPC_MMU_H_ 7#define _PPC_MMU_H_
8 8
9#include <linux/config.h>
10 9
11#ifndef __ASSEMBLY__ 10#ifndef __ASSEMBLY__
12 11
@@ -24,25 +23,18 @@ extern phys_addr_t fixup_bigphys_addr(phys_addr_t, phys_addr_t);
24#define PHYS_FMT "%16Lx" 23#define PHYS_FMT "%16Lx"
25#endif 24#endif
26 25
27/* Default "unsigned long" context */ 26typedef struct {
28typedef unsigned long mm_context_t; 27 unsigned long id;
28 unsigned long vdso_base;
29} mm_context_t;
29 30
30/* Hardware Page Table Entry */ 31/* Hardware Page Table Entry */
31typedef struct _PTE { 32typedef struct _PTE {
32#ifdef CONFIG_PPC64BRIDGE
33 unsigned long long vsid:52;
34 unsigned long api:5;
35 unsigned long :5;
36 unsigned long h:1;
37 unsigned long v:1;
38 unsigned long long rpn:52;
39#else /* CONFIG_PPC64BRIDGE */
40 unsigned long v:1; /* Entry is valid */ 33 unsigned long v:1; /* Entry is valid */
41 unsigned long vsid:24; /* Virtual segment identifier */ 34 unsigned long vsid:24; /* Virtual segment identifier */
42 unsigned long h:1; /* Hash algorithm indicator */ 35 unsigned long h:1; /* Hash algorithm indicator */
43 unsigned long api:6; /* Abbreviated page index */ 36 unsigned long api:6; /* Abbreviated page index */
44 unsigned long rpn:20; /* Real (physical) page number */ 37 unsigned long rpn:20; /* Real (physical) page number */
45#endif /* CONFIG_PPC64BRIDGE */
46 unsigned long :3; /* Unused */ 38 unsigned long :3; /* Unused */
47 unsigned long r:1; /* Referenced */ 39 unsigned long r:1; /* Referenced */
48 unsigned long c:1; /* Changed */ 40 unsigned long c:1; /* Changed */
@@ -83,11 +75,7 @@ typedef struct _P601_BATU { /* Upper part of BAT for 601 processor */
83} P601_BATU; 75} P601_BATU;
84 76
85typedef struct _BATU { /* Upper part of BAT (all except 601) */ 77typedef struct _BATU { /* Upper part of BAT (all except 601) */
86#ifdef CONFIG_PPC64BRIDGE
87 unsigned long long bepi:47;
88#else /* CONFIG_PPC64BRIDGE */
89 unsigned long bepi:15; /* Effective page index (virtual address) */ 78 unsigned long bepi:15; /* Effective page index (virtual address) */
90#endif /* CONFIG_PPC64BRIDGE */
91 unsigned long :4; /* Unused */ 79 unsigned long :4; /* Unused */
92 unsigned long bl:11; /* Block size mask */ 80 unsigned long bl:11; /* Block size mask */
93 unsigned long vs:1; /* Supervisor valid */ 81 unsigned long vs:1; /* Supervisor valid */
@@ -102,11 +90,7 @@ typedef struct _P601_BATL { /* Lower part of BAT for 601 processor */
102} P601_BATL; 90} P601_BATL;
103 91
104typedef struct _BATL { /* Lower part of BAT (all except 601) */ 92typedef struct _BATL { /* Lower part of BAT (all except 601) */
105#ifdef CONFIG_PPC64BRIDGE
106 unsigned long long brpn:47;
107#else /* CONFIG_PPC64BRIDGE */
108 unsigned long brpn:15; /* Real page index (physical address) */ 93 unsigned long brpn:15; /* Real page index (physical address) */
109#endif /* CONFIG_PPC64BRIDGE */
110 unsigned long :10; /* Unused */ 94 unsigned long :10; /* Unused */
111 unsigned long w:1; /* Write-thru cache */ 95 unsigned long w:1; /* Write-thru cache */
112 unsigned long i:1; /* Cache inhibit */ 96 unsigned long i:1; /* Cache inhibit */