aboutsummaryrefslogtreecommitdiffstats
path: root/arch/ppc/Kconfig
diff options
context:
space:
mode:
authorKumar Gala <galak@freescale.com>2005-04-16 18:24:22 -0400
committerLinus Torvalds <torvalds@ppc970.osdl.org>2005-04-16 18:24:22 -0400
commitf50b153b1966230e78034d5ab1641ca4bb5db56d (patch)
tree9f3f0971789ca2cbb59efbd694c172804f4547cd /arch/ppc/Kconfig
parentb464fce5edc08a825907e9d48a2d2f1af0393fef (diff)
[PATCH] ppc32: Support 36-bit physical addressing on e500
To add support for 36-bit physical addressing on e500 the following changes have been made. The changes are generalized to support any physical address size larger than 32-bits: * Allow FSL Book-E parts to use a 64-bit PTE, it is 44-bits of pfn, 20-bits of flags. * Introduced new CPU feature (CPU_FTR_BIG_PHYS) to allow runtime handling of updating hardware register (SPRN_MAS7) which holds the upper 32-bits of physical address that will be written into the TLB. This is useful since not all e500 cores support 36-bit physical addressing. * Currently have a pass through implementation of fixup_bigphys_addr * Moved _PAGE_DIRTY in the 64-bit PTE case to free room for three additional storage attributes that may exist in future FSL Book-E cores and updated fault handler to copy these bits into the hardware TLBs. Signed-off-by: Kumar Gala <kumar.gala@freescale.com> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'arch/ppc/Kconfig')
-rw-r--r--arch/ppc/Kconfig16
1 files changed, 11 insertions, 5 deletions
diff --git a/arch/ppc/Kconfig b/arch/ppc/Kconfig
index 813c6c9a6d99..74aa1e92a395 100644
--- a/arch/ppc/Kconfig
+++ b/arch/ppc/Kconfig
@@ -98,13 +98,19 @@ config FSL_BOOKE
98 98
99config PTE_64BIT 99config PTE_64BIT
100 bool 100 bool
101 depends on 44x 101 depends on 44x || E500
102 default y 102 default y if 44x
103 default y if E500 && PHYS_64BIT
103 104
104config PHYS_64BIT 105config PHYS_64BIT
105 bool 106 bool 'Large physical address support' if E500
106 depends on 44x 107 depends on 44x || E500
107 default y 108 default y if 44x
109 ---help---
110 This option enables kernel support for larger than 32-bit physical
111 addresses. This features is not be available on all e500 cores.
112
113 If in doubt, say N here.
108 114
109config ALTIVEC 115config ALTIVEC
110 bool "AltiVec Support" 116 bool "AltiVec Support"