aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mm/pmsa-v8.c
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--arch/arm/mm/pmsa-v8.c13
1 files changed, 7 insertions, 6 deletions
diff --git a/arch/arm/mm/pmsa-v8.c b/arch/arm/mm/pmsa-v8.c
index 0d7d5fb59247..8359748a19a1 100644
--- a/arch/arm/mm/pmsa-v8.c
+++ b/arch/arm/mm/pmsa-v8.c
@@ -94,19 +94,20 @@ static __init bool is_region_fixed(int number)
void __init pmsav8_adjust_lowmem_bounds(void)
{
phys_addr_t mem_end;
- struct memblock_region *reg;
+ phys_addr_t reg_start, reg_end;
bool first = true;
+ u64 i;
- for_each_memblock(memory, reg) {
+ for_each_mem_range(i, &reg_start, &reg_end) {
if (first) {
phys_addr_t phys_offset = PHYS_OFFSET;
/*
* Initially only use memory continuous from
* PHYS_OFFSET */
- if (reg->base != phys_offset)
+ if (reg_start != phys_offset)
panic("First memory bank must be contiguous from PHYS_OFFSET");
- mem_end = reg->base + reg->size;
+ mem_end = reg_end;
first = false;
} else {
/*
@@ -115,8 +116,8 @@ void __init pmsav8_adjust_lowmem_bounds(void)
* blocks separately while iterating)
*/
pr_notice("Ignoring RAM after %pa, memory at %pa ignored\n",
- &mem_end, &reg->base);
- memblock_remove(reg->base, 0 - reg->base);
+ &mem_end, &reg_start);
+ memblock_remove(reg_start, 0 - reg_start);
break;
}
}