Lines Matching refs:rgn
147 #define for_each_memblock_type(i, memblock_type, rgn) \
148 for (i = 0, rgn = &memblock_type->regions[0]; \
150 i++, rgn = &memblock_type->regions[i])
560 struct memblock_region *rgn = &type->regions[idx];
563 memmove(rgn + 1, rgn, (type->cnt - idx) * sizeof(*rgn));
564 rgn->base = base;
565 rgn->size = size;
566 rgn->flags = flags;
567 memblock_set_region_node(rgn, nid);
596 struct memblock_region *rgn;
631 for_each_memblock_type(idx, type, rgn) {
632 phys_addr_t rbase = rgn->base;
633 phys_addr_t rend = rbase + rgn->size;
640 * @rgn overlaps. If it separates the lower part of new
645 WARN_ON(nid != memblock_get_region_node(rgn));
647 WARN_ON(flags != rgn->flags);
760 struct memblock_region *rgn;
772 for_each_memblock_type(idx, type, rgn) {
773 phys_addr_t rbase = rgn->base;
774 phys_addr_t rend = rbase + rgn->size;
783 * @rgn intersects from below. Split and continue
786 rgn->base = base;
787 rgn->size -= base - rbase;
790 memblock_get_region_node(rgn),
791 rgn->flags);
794 * @rgn intersects from above. Split and redo the
797 rgn->base = end;
798 rgn->size -= end - rbase;
801 memblock_get_region_node(rgn),
802 rgn->flags);
804 /* @rgn is fully contained, record it */
1922 struct memblock_region *rgn;
1926 for_each_memblock_type(idx, type, rgn) {
1929 base = rgn->base;
1930 size = rgn->size;
1932 flags = rgn->flags;
1934 if (memblock_get_region_node(rgn) != MAX_NUMNODES)
1936 memblock_get_region_node(rgn));