[coreboot-gerrit] Patch set updated for coreboot: arch/armv7: Fix end index calculation in mmu_config_range_kb

Patrick Georgi (pgeorgi@google.com) gerrit at coreboot.org
Sat May 7 07:31:27 CEST 2016


Patrick Georgi (pgeorgi at google.com) just uploaded a new patch set to gerrit, which you can find at https://review.coreboot.org/14657

-gerrit

commit 9e4e842c508bda590bad520601550826815ec256
Author: Varadarajan Narayanan <varada at codeaurora.org>
Date:   Thu Mar 3 15:14:46 2016 +0530

    arch/armv7: Fix end index calculation in mmu_config_range_kb
    
    BUG=chrome-os-partner:49249
    TEST=None. Initial code not sure if it will even compile
    BRANCH=none
    
    Change-Id: Ib0fccfe2d103710c006cb3950c65b11b8d596912
    Signed-off-by: Patrick Georgi <pgeorgi at chromium.org>
    Original-Commit-Id: 9be5f58bb89ec43d4eb264c94c3f745dcade35dd
    Original-Change-Id: If50efb55d4974dfcab07d3ae6488c2413b505a1f
    Original-Signed-off-by: Varadarajan Narayanan <varada at codeaurora.org>
    Original-Reviewed-on: https://chromium-review.googlesource.com/333301
    Original-Reviewed-by: Julius Werner <jwerner at chromium.org>
---
 src/arch/arm/armv7/mmu.c | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/src/arch/arm/armv7/mmu.c b/src/arch/arm/armv7/mmu.c
index 2cf90e7..b1c1aac 100644
--- a/src/arch/arm/armv7/mmu.c
+++ b/src/arch/arm/armv7/mmu.c
@@ -218,8 +218,14 @@ void mmu_config_range_kb(u32 start_kb, u32 size_kb, enum dcache_policy policy)
 	u32 mask = BLOCK_SIZE/KiB - 1;
 	printk(BIOS_DEBUG, "Mapping address range [%#.8x:%#.8x) as %s\n",
 	       start_kb * KiB, (start_kb + size_kb) * KiB, attrs[policy].name);
+
+	u32 end_kb = ALIGN_UP((start_kb + size_kb), PAGE_SIZE/KiB) -
+			(start_kb & ~mask);
+
+	assert(end_kb <= BLOCK_SIZE/KiB);
+
 	mmu_fill_table(table, (start_kb & mask) / (PAGE_SIZE/KiB),
-		       div_round_up((start_kb + size_kb) & mask, PAGE_SIZE/KiB),
+		       end_kb / (PAGE_SIZE/KiB),
 		       (start_kb & ~mask) * KiB, PAGE_SHIFT, ATTR_PAGE | attr);
 }
 



More information about the coreboot-gerrit mailing list