summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authordanh-arm <dan.handley@arm.com>2016-04-27 09:38:40 +0100
committerdanh-arm <dan.handley@arm.com>2016-04-27 09:38:40 +0100
commit3992c359c26b7df264ff351a7ffee7803738bb6c (patch)
treef22a51730508a6aba53438896618ba1689f0cc94
parent142ff9b5f5d80d0c5e5a235f5c80570a535c7e72 (diff)
parentaa447b9c501c649628ef0f646f59befa79126bd0 (diff)
Merge pull request #611 from sandrine-bailleux-arm/sb/fix-init_xlation_table_inner
Fix computation of L1 bitmask in the translation table lib
-rw-r--r--lib/xlat_tables/xlat_tables_common.c5
1 files changed, 3 insertions, 2 deletions
diff --git a/lib/xlat_tables/xlat_tables_common.c b/lib/xlat_tables/xlat_tables_common.c
index 54c528cd..fd100846 100644
--- a/lib/xlat_tables/xlat_tables_common.c
+++ b/lib/xlat_tables/xlat_tables_common.c
@@ -284,8 +284,9 @@ static mmap_region_t *init_xlation_table_inner(mmap_region_t *mm,
unsigned level_size_shift = L1_XLAT_ADDRESS_SHIFT - (level - 1) *
XLAT_TABLE_ENTRIES_SHIFT;
unsigned level_size = 1 << level_size_shift;
- unsigned long long level_index_mask = XLAT_TABLE_ENTRIES_MASK <<
- level_size_shift;
+ unsigned long long level_index_mask =
+ ((unsigned long long) XLAT_TABLE_ENTRIES_MASK)
+ << level_size_shift;
assert(level > 0 && level <= 3);