| .. | .. |
|---|
| 231 | 231 | void __init pmsav7_adjust_lowmem_bounds(void) |
|---|
| 232 | 232 | { |
|---|
| 233 | 233 | phys_addr_t specified_mem_size = 0, total_mem_size = 0; |
|---|
| 234 | | - struct memblock_region *reg; |
|---|
| 235 | | - bool first = true; |
|---|
| 236 | 234 | phys_addr_t mem_start; |
|---|
| 237 | 235 | phys_addr_t mem_end; |
|---|
| 236 | + phys_addr_t reg_start, reg_end; |
|---|
| 238 | 237 | unsigned int mem_max_regions; |
|---|
| 239 | | - int num, i; |
|---|
| 238 | + bool first = true; |
|---|
| 239 | + int num; |
|---|
| 240 | + u64 i; |
|---|
| 240 | 241 | |
|---|
| 241 | 242 | /* Free-up PMSAv7_PROBE_REGION */ |
|---|
| 242 | 243 | mpu_min_region_order = __mpu_min_region_order(); |
|---|
| .. | .. |
|---|
| 262 | 263 | mem_max_regions -= num; |
|---|
| 263 | 264 | #endif |
|---|
| 264 | 265 | |
|---|
| 265 | | - for_each_memblock(memory, reg) { |
|---|
| 266 | + for_each_mem_range(i, ®_start, ®_end) { |
|---|
| 266 | 267 | if (first) { |
|---|
| 267 | 268 | phys_addr_t phys_offset = PHYS_OFFSET; |
|---|
| 268 | 269 | |
|---|
| 269 | 270 | /* |
|---|
| 270 | 271 | * Initially only use memory continuous from |
|---|
| 271 | 272 | * PHYS_OFFSET */ |
|---|
| 272 | | - if (reg->base != phys_offset) |
|---|
| 273 | + if (reg_start != phys_offset) |
|---|
| 273 | 274 | panic("First memory bank must be contiguous from PHYS_OFFSET"); |
|---|
| 274 | 275 | |
|---|
| 275 | | - mem_start = reg->base; |
|---|
| 276 | | - mem_end = reg->base + reg->size; |
|---|
| 277 | | - specified_mem_size = reg->size; |
|---|
| 276 | + mem_start = reg_start; |
|---|
| 277 | + mem_end = reg_end; |
|---|
| 278 | + specified_mem_size = mem_end - mem_start; |
|---|
| 278 | 279 | first = false; |
|---|
| 279 | 280 | } else { |
|---|
| 280 | 281 | /* |
|---|
| .. | .. |
|---|
| 283 | 284 | * blocks separately while iterating) |
|---|
| 284 | 285 | */ |
|---|
| 285 | 286 | pr_notice("Ignoring RAM after %pa, memory at %pa ignored\n", |
|---|
| 286 | | - &mem_end, ®->base); |
|---|
| 287 | | - memblock_remove(reg->base, 0 - reg->base); |
|---|
| 287 | + &mem_end, ®_start); |
|---|
| 288 | + memblock_remove(reg_start, 0 - reg_start); |
|---|
| 288 | 289 | break; |
|---|
| 289 | 290 | } |
|---|
| 290 | 291 | } |
|---|