Lines Matching refs:base
74 static inline phys_addr_t memblock_cap_size(phys_addr_t base, phys_addr_t *size) in memblock_cap_size() argument
76 return *size = min(*size, (phys_addr_t)ULLONG_MAX - base); in memblock_cap_size()
89 phys_addr_t base, phys_addr_t size) in memblock_overlaps_region() argument
94 phys_addr_t rgnbase = type->regions[i].base; in memblock_overlaps_region()
96 if (memblock_addrs_overlap(base, size, rgnbase, rgnsize)) in memblock_overlaps_region()
270 type->regions[0].base = 0; in memblock_remove_region()
437 if (this->base + this->size != next->base || in memblock_merge_regions()
441 BUG_ON(this->base + this->size > next->base); in memblock_merge_regions()
466 int idx, phys_addr_t base, in memblock_insert_region() argument
474 rgn->base = base; in memblock_insert_region()
499 phys_addr_t base, phys_addr_t size, in memblock_add_range() argument
503 phys_addr_t obase = base; in memblock_add_range()
504 phys_addr_t end = base + memblock_cap_size(base, &size); in memblock_add_range()
513 type->regions[0].base = base; in memblock_add_range()
526 base = obase; in memblock_add_range()
531 phys_addr_t rbase = rgn->base; in memblock_add_range()
536 if (rend <= base) in memblock_add_range()
542 if (rbase > base) { in memblock_add_range()
545 memblock_insert_region(type, i++, base, in memblock_add_range()
546 rbase - base, nid, in memblock_add_range()
550 base = min(rend, end); in memblock_add_range()
554 if (base < end) { in memblock_add_range()
557 memblock_insert_region(type, i, base, end - base, in memblock_add_range()
577 int __init_memblock memblock_add_node(phys_addr_t base, phys_addr_t size, in memblock_add_node() argument
580 return memblock_add_range(&memblock.memory, base, size, nid, 0); in memblock_add_node()
583 static int __init_memblock memblock_add_region(phys_addr_t base, in memblock_add_region() argument
591 (unsigned long long)base, in memblock_add_region()
592 (unsigned long long)base + size - 1, in memblock_add_region()
595 return memblock_add_range(_rgn, base, size, nid, flags); in memblock_add_region()
598 int __init_memblock memblock_add(phys_addr_t base, phys_addr_t size) in memblock_add() argument
600 return memblock_add_region(base, size, MAX_NUMNODES, 0); in memblock_add()
620 phys_addr_t base, phys_addr_t size, in memblock_isolate_range() argument
623 phys_addr_t end = base + memblock_cap_size(base, &size); in memblock_isolate_range()
633 if (memblock_double_array(type, base, size) < 0) in memblock_isolate_range()
638 phys_addr_t rbase = rgn->base; in memblock_isolate_range()
643 if (rend <= base) in memblock_isolate_range()
646 if (rbase < base) { in memblock_isolate_range()
651 rgn->base = base; in memblock_isolate_range()
652 rgn->size -= base - rbase; in memblock_isolate_range()
653 type->total_size -= base - rbase; in memblock_isolate_range()
654 memblock_insert_region(type, i, rbase, base - rbase, in memblock_isolate_range()
662 rgn->base = end; in memblock_isolate_range()
680 phys_addr_t base, phys_addr_t size) in memblock_remove_range() argument
685 ret = memblock_isolate_range(type, base, size, &start_rgn, &end_rgn); in memblock_remove_range()
694 int __init_memblock memblock_remove(phys_addr_t base, phys_addr_t size) in memblock_remove() argument
696 return memblock_remove_range(&memblock.memory, base, size); in memblock_remove()
700 int __init_memblock memblock_free(phys_addr_t base, phys_addr_t size) in memblock_free() argument
703 (unsigned long long)base, in memblock_free()
704 (unsigned long long)base + size - 1, in memblock_free()
707 kmemleak_free_part(__va(base), size); in memblock_free()
708 return memblock_remove_range(&memblock.reserved, base, size); in memblock_free()
711 static int __init_memblock memblock_reserve_region(phys_addr_t base, in memblock_reserve_region() argument
719 (unsigned long long)base, in memblock_reserve_region()
720 (unsigned long long)base + size - 1, in memblock_reserve_region()
723 return memblock_add_range(type, base, size, nid, flags); in memblock_reserve_region()
726 int __init_memblock memblock_reserve(phys_addr_t base, phys_addr_t size) in memblock_reserve() argument
728 return memblock_reserve_region(base, size, MAX_NUMNODES, 0); in memblock_reserve()
737 static int __init_memblock memblock_setclr_flag(phys_addr_t base, in memblock_setclr_flag() argument
743 ret = memblock_isolate_range(type, base, size, &start_rgn, &end_rgn); in memblock_setclr_flag()
764 int __init_memblock memblock_mark_hotplug(phys_addr_t base, phys_addr_t size) in memblock_mark_hotplug() argument
766 return memblock_setclr_flag(base, size, 1, MEMBLOCK_HOTPLUG); in memblock_mark_hotplug()
776 int __init_memblock memblock_clear_hotplug(phys_addr_t base, phys_addr_t size) in memblock_clear_hotplug() argument
778 return memblock_setclr_flag(base, size, 0, MEMBLOCK_HOTPLUG); in memblock_clear_hotplug()
822 phys_addr_t m_start = m->base; in __next_mem_range()
823 phys_addr_t m_end = m->base + m->size; in __next_mem_range()
853 r_start = idx_b ? r[-1].base + r[-1].size : 0; in __next_mem_range()
855 r->base : ULLONG_MAX; in __next_mem_range()
926 phys_addr_t m_start = m->base; in __next_mem_range_rev()
927 phys_addr_t m_end = m->base + m->size; in __next_mem_range_rev()
957 r_start = idx_b ? r[-1].base + r[-1].size : 0; in __next_mem_range_rev()
959 r->base : ULLONG_MAX; in __next_mem_range_rev()
1002 if (PFN_UP(r->base) >= PFN_DOWN(r->base + r->size)) in __next_mem_pfn_range()
1013 *out_start_pfn = PFN_UP(r->base); in __next_mem_pfn_range()
1015 *out_end_pfn = PFN_DOWN(r->base + r->size); in __next_mem_pfn_range()
1033 int __init_memblock memblock_set_node(phys_addr_t base, phys_addr_t size, in memblock_set_node() argument
1039 ret = memblock_isolate_range(type, base, size, &start_rgn, &end_rgn); in memblock_set_node()
1289 void __init __memblock_free_early(phys_addr_t base, phys_addr_t size) in __memblock_free_early() argument
1292 __func__, (u64)base, (u64)base + size - 1, in __memblock_free_early()
1294 kmemleak_free_part(__va(base), size); in __memblock_free_early()
1295 memblock_remove_range(&memblock.reserved, base, size); in __memblock_free_early()
1307 void __init __memblock_free_late(phys_addr_t base, phys_addr_t size) in __memblock_free_late() argument
1312 __func__, (u64)base, (u64)base + size - 1, in __memblock_free_late()
1314 kmemleak_free_part(__va(base), size); in __memblock_free_late()
1315 cursor = PFN_UP(base); in __memblock_free_late()
1316 end = PFN_DOWN(base + size); in __memblock_free_late()
1353 return memblock.memory.regions[0].base; in memblock_start_of_DRAM()
1360 return (memblock.memory.regions[idx].base + memblock.memory.regions[idx].size); in memblock_end_of_DRAM()
1374 max_addr = r->base + limit; in memblock_enforce_memory_limit()
1394 if (addr < type->regions[mid].base) in memblock_search()
1396 else if (addr >= (type->regions[mid].base + in memblock_search()
1425 *start_pfn = PFN_DOWN(type->regions[mid].base); in memblock_search_pfn_nid()
1426 *end_pfn = PFN_DOWN(type->regions[mid].base + type->regions[mid].size); in memblock_search_pfn_nid()
1442 int __init_memblock memblock_is_region_memory(phys_addr_t base, phys_addr_t size) in memblock_is_region_memory() argument
1444 int idx = memblock_search(&memblock.memory, base); in memblock_is_region_memory()
1445 phys_addr_t end = base + memblock_cap_size(base, &size); in memblock_is_region_memory()
1449 return memblock.memory.regions[idx].base <= base && in memblock_is_region_memory()
1450 (memblock.memory.regions[idx].base + in memblock_is_region_memory()
1464 int __init_memblock memblock_is_region_reserved(phys_addr_t base, phys_addr_t size) in memblock_is_region_reserved() argument
1466 memblock_cap_size(base, &size); in memblock_is_region_reserved()
1467 return memblock_overlaps_region(&memblock.reserved, base, size) >= 0; in memblock_is_region_reserved()
1476 orig_start = r->base; in memblock_trim_memory()
1477 orig_end = r->base + r->size; in memblock_trim_memory()
1485 r->base = start; in memblock_trim_memory()
1507 unsigned long long base, size; in memblock_dump() local
1517 base = rgn->base; in memblock_dump()
1526 name, i, base, base + size - 1, size, nid_buf, flags); in memblock_dump()
1567 (unsigned long)reg->base, in memblock_debug_show()
1568 (unsigned long)(reg->base + reg->size - 1)); in memblock_debug_show()
1571 (unsigned long long)reg->base, in memblock_debug_show()
1572 (unsigned long long)(reg->base + reg->size - 1)); in memblock_debug_show()