tegra132: fix carveout address calculation >= 4GiB

The high address field was being shifted in the wrong direction
resulting in the lower 12 bits of the upper address being dropped.

BUG=chrome-os-partner:30572
BRANCH=None
TEST=Was able to run on ryu and not hang while wiping memory.

Change-Id: I7bf173bb0373d2d25ce9014c80236fb55cc8e17e
Signed-off-by: Aaron Durbin <adurbin@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/211941
Reviewed-by: Tom Warren <twarren@nvidia.com>
This commit is contained in:
Aaron Durbin 2014-08-12 10:38:16 -05:00 committed by chrome-internal-fetch
commit 6b0da6fa39

View file

@ -61,7 +61,7 @@ static void carveout_from_regs(uintptr_t *base_mib, size_t *size_mib,
*size_mib = size;
bom >>= 20;
bom |= bom_hi >> (32 - 20);
bom |= bom_hi << (32 - 20);
*base_mib = bom;
}