Lines Matching full:end
38 .end = IO_SPACE_LIMIT,
46 .end = -1,
122 unsigned long long start, end; in r_show() local
123 int width = root->end < 0x10000 ? 4 : 8; in r_show()
132 end = r->end; in r_show()
134 start = end = 0; in r_show()
140 width, end, in r_show()
184 resource_size_t end = new->end; in __request_resource() local
187 if (end < start) in __request_resource()
191 if (end > root->end) in __request_resource()
196 if (!tmp || tmp->start > end) { in __request_resource()
203 if (tmp->end < start) in __request_resource()
257 tmp->end = size - 1; in __release_child_resources()
325 * [@start..@end].
328 * of the resource that's within [@start..@end]; if none is found, returns
332 * @end: end address of same resource
337 * The caller must specify @start, @end, @flags, and @desc
340 static int find_next_iomem_res(resource_size_t start, resource_size_t end, in find_next_iomem_res() argument
349 if (start >= end) in find_next_iomem_res()
356 if (p->start > end) { in find_next_iomem_res()
362 if (p->end < start) in find_next_iomem_res()
374 .end = min(end, p->end), in find_next_iomem_res()
385 static int __walk_iomem_res_desc(resource_size_t start, resource_size_t end, in __walk_iomem_res_desc() argument
393 while (start < end && in __walk_iomem_res_desc()
394 !find_next_iomem_res(start, end, flags, desc, &res)) { in __walk_iomem_res_desc()
399 start = res.end + 1; in __walk_iomem_res_desc()
412 * @end: end addr
416 * All the memory ranges which overlap start,end and also match flags and
423 u64 end, void *arg, int (*func)(struct resource *, void *)) in walk_iomem_res_desc() argument
425 return __walk_iomem_res_desc(start, end, flags, desc, arg, func); in walk_iomem_res_desc()
436 int walk_system_ram_res(u64 start, u64 end, void *arg, in walk_system_ram_res() argument
441 return __walk_iomem_res_desc(start, end, flags, IORES_DESC_NONE, arg, in walk_system_ram_res()
451 int walk_system_ram_res_rev(u64 start, u64 end, void *arg, in walk_system_ram_res_rev() argument
466 while ((start < end) && in walk_system_ram_res_rev()
467 (!find_next_iomem_res(start, end, flags, IORES_DESC_NONE, &res))) { in walk_system_ram_res_rev()
482 start = res.end + 1; in walk_system_ram_res_rev()
501 int walk_mem_res(u64 start, u64 end, void *arg, in walk_mem_res() argument
506 return __walk_iomem_res_desc(start, end, flags, IORES_DESC_NONE, arg, in walk_mem_res()
518 resource_size_t start, end; in walk_system_ram_range() local
525 end = ((u64)(start_pfn + nr_pages) << PAGE_SHIFT) - 1; in walk_system_ram_range()
527 while (start < end && in walk_system_ram_range()
528 !find_next_iomem_res(start, end, flags, IORES_DESC_NONE, &res)) { in walk_system_ram_range()
530 end_pfn = PFN_DOWN(res.end + 1); in walk_system_ram_range()
535 start = res.end + 1; in walk_system_ram_range()
565 res.end = start + size - 1; in __region_intersects()
598 if (dp->end >= o.end) { in __region_intersects()
603 o.start = max(o.start, dp->end + 1); in __region_intersects()
661 if (res->end > max) in resource_clip()
662 res->end = max; in resource_clip()
680 * of this->start - 1 to tmp->end below would cause an underflow. in __find_resource_space()
683 tmp.start = (this == old) ? old->start : this->end + 1; in __find_resource_space()
688 tmp.end = (this == old) ? this->end : this->start - 1; in __find_resource_space()
690 tmp.end = root->end; in __find_resource_space()
692 if (tmp.end < tmp.start) in __find_resource_space()
700 avail.end = tmp.end; in __find_resource_space()
710 alloc.end = alloc.start + size - 1; in __find_resource_space()
711 if (alloc.start <= alloc.end && in __find_resource_space()
714 new->end = alloc.end; in __find_resource_space()
719 next: if (!this || this->end == root->end) in __find_resource_space()
723 tmp.start = this->end + 1; in __find_resource_space()
740 * * %0 - if successful, @new members start, end, and flags are altered.
776 old->end = new.end; in reallocate_resource()
787 old->end = new.end; in reallocate_resource()
882 if ((first->start > new->start) || (first->end < new->end)) in __insert_resource()
884 if ((first->start == new->start) && (first->end == new->end)) in __insert_resource()
890 if (next->start < new->start || next->end > new->end) in __insert_resource()
894 if (next->sibling->start > new->end) in __insert_resource()
988 if (conflict->end > new->end) in insert_resource_expand_to_fit()
989 new->end = conflict->end; in insert_resource_expand_to_fit()
1033 resource_size_t end = start + size - 1; in __adjust_resource() local
1039 if ((start < parent->start) || (end > parent->end)) in __adjust_resource()
1042 if (res->sibling && (res->sibling->start <= end)) in __adjust_resource()
1049 if (start <= tmp->end) in __adjust_resource()
1055 if ((tmp->start < start) || (tmp->end > end)) in __adjust_resource()
1059 res->end = end; in __adjust_resource()
1090 resource_size_t end, const char *name) in __reserve_region_with_split() argument
1103 res->end = end; in __reserve_region_with_split()
1120 conflict->end >= res->end) { in __reserve_region_with_split()
1128 end = res->end; in __reserve_region_with_split()
1129 res->end = conflict->start - 1; in __reserve_region_with_split()
1130 if (conflict->end < end) { in __reserve_region_with_split()
1137 next_res->start = conflict->end + 1; in __reserve_region_with_split()
1138 next_res->end = end; in __reserve_region_with_split()
1143 res->start = conflict->end + 1; in __reserve_region_with_split()
1151 resource_size_t end, const char *name) in reserve_region_with_split() argument
1156 if (root->start > start || root->end < end) { in reserve_region_with_split()
1158 (unsigned long long)start, (unsigned long long)end, in reserve_region_with_split()
1160 if (start > root->end || end < root->start) in reserve_region_with_split()
1163 if (end > root->end) in reserve_region_with_split()
1164 end = root->end; in reserve_region_with_split()
1169 (unsigned long long)end); in reserve_region_with_split()
1174 __reserve_region_with_split(root, start, end, name); in reserve_region_with_split()
1233 devmem_is_allowed(PHYS_PFN(res->end))) { in revoke_iomem()
1266 res->end = start + n - 1; in __request_region_locked()
1355 resource_size_t end; in __release_region() local
1358 end = start + n - 1; in __release_region()
1367 if (res->start <= start && res->end >= end) { in __release_region()
1372 if (res->start != start || res->end != end) in __release_region()
1386 pr_warn("Trying to free nonexistent resource <%pa-%pa>\n", &start, &end); in __release_region()
1417 resource_size_t end; in release_mem_region_adjustable() local
1419 end = start + size - 1; in release_mem_region_adjustable()
1420 if (WARN_ON_ONCE((start < parent->start) || (end > parent->end))) in release_mem_region_adjustable()
1437 if (res->start >= end) in release_mem_region_adjustable()
1441 if (res->start > start || res->end < end) { in release_mem_region_adjustable()
1455 if (res->start == start && res->end == end) { in release_mem_region_adjustable()
1459 } else if (res->start == start && res->end != end) { in release_mem_region_adjustable()
1461 WARN_ON_ONCE(__adjust_resource(res, end + 1, in release_mem_region_adjustable()
1462 res->end - end)); in release_mem_region_adjustable()
1463 } else if (res->start != start && res->end == end) { in release_mem_region_adjustable()
1464 /* adjust the end */ in release_mem_region_adjustable()
1478 new_res->start = end + 1; in release_mem_region_adjustable()
1479 new_res->end = res->end; in release_mem_region_adjustable()
1506 return r1->flags == r2->flags && r1->end + 1 == r2->start && in system_ram_resources_mergeable()
1543 res->end = cur->end; in merge_system_ram_resource()
1553 cur->end = res->end; in merge_system_ram_resource()
1725 res->end = io_start + io_num - 1; in reserve_setup()
1743 resource_size_t end = addr + size - 1; in iomem_map_sanity_check() local
1753 if (p->start > end) in iomem_map_sanity_check()
1755 if (p->end < addr) in iomem_map_sanity_check()
1758 PFN_DOWN(p->end) >= PFN_DOWN(end)) in iomem_map_sanity_check()
1770 &addr, &end, p->name, p); in iomem_map_sanity_check()
1802 if (p->end < addr) { in resource_is_exclusive()
1881 resource_size_t end; in gfr_start() local
1883 end = min_t(resource_size_t, base->end, DIRECT_MAP_PHYSMEM_END); in gfr_start()
1884 return end - size + 1; in gfr_start()
1900 addr <= min_t(resource_size_t, base->end, DIRECT_MAP_PHYSMEM_END); in gfr_continue()
1979 res->end = addr + size - 1; in get_free_mem_region()