diff options
author | Matt Fleming <matt@console-pimps.org> | 2010-04-25 12:29:07 -0400 |
---|---|---|
committer | Matt Fleming <matt@console-pimps.org> | 2010-04-25 15:44:23 -0400 |
commit | c7b03fa0bdc04e00bfbdc4cc69da144b11108f37 (patch) | |
tree | 1dab19213c06e87818faef6badd7eb101877be2e /arch/sh/mm/pmb.c | |
parent | 9c3d936352fefaadec57bafda1fe3807890cbf2c (diff) |
sh: Do not try merging two 128MB PMB mappings
There is a logic error in pmb_merge() that means we will incorrectly try
to merge two 128MB PMB mappings into one mapping. However, 256MB isn't a
valid PMB map size and pmb_merge() will actually drop the second 128MB
mapping.
This patch allows my SDK7786 board to boot when configured with
CONFIG_MEMORY_SIZE=0x10000000.
Signed-off-by: Matt Fleming <matt@console-pimps.org>
Diffstat (limited to 'arch/sh/mm/pmb.c')
-rw-r--r-- | arch/sh/mm/pmb.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/arch/sh/mm/pmb.c b/arch/sh/mm/pmb.c index 3cc21933063b..c0fdc217ece5 100644 --- a/arch/sh/mm/pmb.c +++ b/arch/sh/mm/pmb.c | |||
@@ -681,7 +681,7 @@ static void __init pmb_merge(struct pmb_entry *head) | |||
681 | /* | 681 | /* |
682 | * The merged page size must be valid. | 682 | * The merged page size must be valid. |
683 | */ | 683 | */ |
684 | if (!pmb_size_valid(newsize)) | 684 | if (!depth || !pmb_size_valid(newsize)) |
685 | return; | 685 | return; |
686 | 686 | ||
687 | head->flags &= ~PMB_SZ_MASK; | 687 | head->flags &= ~PMB_SZ_MASK; |