summaryrefslogtreecommitdiffstats
path: root/arch/sh/kernel
diff options
context:
space:
mode:
authorPaul Mundt <lethal@linux-sh.org>2010-04-26 15:54:48 +0900
committerPaul Mundt <lethal@linux-sh.org>2010-04-26 15:54:48 +0900
commit35f6cd4a06432034665a1499ca4b022437423aac (patch)
treeea565196d6db2ed80780639701fc0b74748bf90c /arch/sh/kernel
parent5bac942db3d2c4738df04104240d65a5d1eaec6a (diff)
parent035ca59fe8399a67b56511bd5b28130f0c4874a0 (diff)
downloadtalos-op-linux-35f6cd4a06432034665a1499ca4b022437423aac.tar.gz
talos-op-linux-35f6cd4a06432034665a1499ca4b022437423aac.zip
Merge branch 'master' of master.kernel.org:/pub/scm/linux/kernel/git/mfleming/sh-2.6
* 'master' of master.kernel.org:/pub/scm/linux/kernel/git/mfleming/sh-2.6: sh: Use correct mask when comparing PMB DATA array values sh: Do not try merging two 128MB PMB mappings sh: Fix zImage load address when CONFIG_32BIT=y sh: Fix address to decompress at when CONFIG_32BIT=y sh: Assembly friendly __pa and __va definitions
Diffstat (limited to 'arch/sh/kernel')
-rw-r--r--arch/sh/kernel/head_32.S5
1 files changed, 4 insertions, 1 deletions
diff --git a/arch/sh/kernel/head_32.S b/arch/sh/kernel/head_32.S
index 8c1fc9a9fab2..6e35f012cc03 100644
--- a/arch/sh/kernel/head_32.S
+++ b/arch/sh/kernel/head_32.S
@@ -131,6 +131,7 @@ ENTRY(_stext)
* r8 = scratch register
* r9 = scratch register
* r10 = number of PMB entries we've setup
+ * r11 = scratch register
*/
mov.l .LMMUCR, r1 /* Flush the TLB */
@@ -167,8 +168,9 @@ ENTRY(_stext)
.Lvalidate_existing_mappings:
+ mov.l .LPMB_DATA_MASK, r11
mov.l @r7, r8
- and r0, r8
+ and r11, r8
cmp/eq r0, r8 /* Check for valid __MEMORY_START mappings */
bt .Lpmb_done
@@ -341,6 +343,7 @@ ENTRY(stack_start)
#ifdef CONFIG_PMB
.LPMB_ADDR: .long PMB_ADDR
.LPMB_DATA: .long PMB_DATA
+.LPMB_DATA_MASK: .long PMB_PFN_MASK | PMB_V
.LFIRST_ADDR_ENTRY: .long PAGE_OFFSET | PMB_V
.LFIRST_DATA_ENTRY: .long __MEMORY_START | PMB_V
.LMMUCR: .long MMUCR
OpenPOWER on IntegriCloud