diff options
author | Aaron Durbin <adurbin@chromium.org> | 2014-08-12 10:38:16 -0500 |
---|---|---|
committer | Patrick Georgi <pgeorgi@google.com> | 2015-03-26 00:27:06 +0100 |
commit | 4185f9b9f2b67dc34fb2cd54b0752944cfa1e222 (patch) | |
tree | 189ed5b9dd10e7b74339c3990fdbfdc376fb2567 | |
parent | d5904c46a091bb58e5ec07287ccb141b319e5ffc (diff) |
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: If1d7ef1c63ce79c143af3c5012b206ee297cd889
Signed-off-by: Patrick Georgi <pgeorgi@chromium.org>
Original-Commit-Id: 6b0da6fa391db2ec2bc1e0bec9325f4e74b5286c
Original-Change-Id: I7bf173bb0373d2d25ce9014c80236fb55cc8e17e
Original-Signed-off-by: Aaron Durbin <adurbin@chromium.org>
Original-Reviewed-on: https://chromium-review.googlesource.com/211941
Original-Reviewed-by: Tom Warren <twarren@nvidia.com>
Reviewed-on: http://review.coreboot.org/8923
Tested-by: build bot (Jenkins)
Reviewed-by: Stefan Reinauer <stefan.reinauer@coreboot.org>
-rw-r--r-- | src/soc/nvidia/tegra132/addressmap.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/src/soc/nvidia/tegra132/addressmap.c b/src/soc/nvidia/tegra132/addressmap.c index 65371872fe..4933484a7a 100644 --- a/src/soc/nvidia/tegra132/addressmap.c +++ b/src/soc/nvidia/tegra132/addressmap.c @@ -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; } |