Lines Matching full:end

38 	.end	= IO_SPACE_LIMIT,
46 .end = -1,
54 .end = -1,
130 unsigned long long start, end; in r_show() local
131 int width = root->end < 0x10000 ? 4 : 8; in r_show()
140 end = r->end; in r_show()
142 start = end = 0; in r_show()
148 width, end, in r_show()
192 resource_size_t end = new->end; in __request_resource() local
195 if (end < start) in __request_resource()
199 if (end > root->end) in __request_resource()
204 if (!tmp || tmp->start > end) { in __request_resource()
211 if (tmp->end < start) in __request_resource()
265 tmp->end = size - 1; in __release_child_resources()
333 * [@start..@end].
336 * of the resource that's within [@start..@end]; if none is found, returns
341 * @end: end address of same resource
346 * The caller must specify @start, @end, @flags, and @desc
350 resource_size_t end, unsigned long flags, in find_next_res() argument
360 if (start >= end) in find_next_res()
367 if (p->start > end) { in find_next_res()
373 if (p->end < start) in find_next_res()
391 .end = min(end, p->end), in find_next_res()
402 static int find_next_iomem_res(resource_size_t start, resource_size_t end, in find_next_iomem_res() argument
406 return find_next_res(&iomem_resource, start, end, flags, desc, res); in find_next_iomem_res()
410 resource_size_t end, unsigned long flags, in walk_res_desc() argument
417 while (start < end && in walk_res_desc()
418 !find_next_res(parent, start, end, flags, desc, &res)) { in walk_res_desc()
423 start = res.end + 1; in walk_res_desc()
429 static int __walk_iomem_res_desc(resource_size_t start, resource_size_t end, in __walk_iomem_res_desc() argument
434 return walk_res_desc(&iomem_resource, start, end, flags, desc, arg, func); in __walk_iomem_res_desc()
445 * @end: end addr
449 * All the memory ranges which overlap start,end and also match flags and
456 u64 end, void *arg, int (*func)(struct resource *, void *)) in walk_iomem_res_desc() argument
458 return __walk_iomem_res_desc(start, end, flags, desc, arg, func); in walk_iomem_res_desc()
466 int walk_soft_reserve_res(u64 start, u64 end, void *arg, in walk_soft_reserve_res() argument
469 return walk_res_desc(&soft_reserve_resource, start, end, IORESOURCE_MEM, in walk_soft_reserve_res()
481 int walk_system_ram_res(u64 start, u64 end, void *arg, in walk_system_ram_res() argument
486 return __walk_iomem_res_desc(start, end, flags, IORES_DESC_NONE, arg, in walk_system_ram_res()
496 int walk_system_ram_res_rev(u64 start, u64 end, void *arg, in walk_system_ram_res_rev() argument
511 while ((start < end) && in walk_system_ram_res_rev()
512 (!find_next_iomem_res(start, end, flags, IORES_DESC_NONE, &res))) { in walk_system_ram_res_rev()
527 start = res.end + 1; in walk_system_ram_res_rev()
546 int walk_mem_res(u64 start, u64 end, void *arg, in walk_mem_res() argument
551 return __walk_iomem_res_desc(start, end, flags, IORES_DESC_NONE, arg, in walk_mem_res()
563 resource_size_t start, end; in walk_system_ram_range() local
570 end = ((u64)(start_pfn + nr_pages) << PAGE_SHIFT) - 1; in walk_system_ram_range()
572 while (start < end && in walk_system_ram_range()
573 !find_next_iomem_res(start, end, flags, IORES_DESC_NONE, &res)) { in walk_system_ram_range()
575 end_pfn = PFN_DOWN(res.end + 1); in walk_system_ram_range()
580 start = res.end + 1; in walk_system_ram_range()
642 if (dp->end >= o.end) { in __region_intersects()
647 o.start = max(o.start, dp->end + 1); in __region_intersects()
717 if (res->end > max) in resource_clip()
718 res->end = max; in resource_clip()
736 * of this->start - 1 to tmp->end below would cause an underflow. in __find_resource_space()
739 tmp.start = (this == old) ? old->start : this->end + 1; in __find_resource_space()
744 tmp.end = (this == old) ? this->end : this->start - 1; in __find_resource_space()
746 tmp.end = root->end; in __find_resource_space()
748 if (tmp.end < tmp.start) in __find_resource_space()
756 avail.end = tmp.end; in __find_resource_space()
766 alloc.end = alloc.start + size - 1; in __find_resource_space()
767 if (alloc.start <= alloc.end && in __find_resource_space()
770 new->end = alloc.end; in __find_resource_space()
775 next: if (!this || this->end == root->end) in __find_resource_space()
779 tmp.start = this->end + 1; in __find_resource_space()
796 * * %0 - if successful, @new members start, end, and flags are altered.
832 old->end = new.end; in reallocate_resource()
843 old->end = new.end; in reallocate_resource()
938 if ((first->start > new->start) || (first->end < new->end)) in __insert_resource()
940 if ((first->start == new->start) && (first->end == new->end)) in __insert_resource()
946 if (next->start < new->start || next->end > new->end) in __insert_resource()
950 if (next->sibling->start > new->end) in __insert_resource()
1044 if (conflict->end > new->end) in insert_resource_expand_to_fit()
1045 new->end = conflict->end; in insert_resource_expand_to_fit()
1089 resource_size_t end = start + size - 1; in __adjust_resource() local
1095 if ((start < parent->start) || (end > parent->end)) in __adjust_resource()
1098 if (res->sibling && (res->sibling->start <= end)) in __adjust_resource()
1105 if (start <= tmp->end) in __adjust_resource()
1111 if ((tmp->start < start) || (tmp->end > end)) in __adjust_resource()
1115 res->end = end; in __adjust_resource()
1146 resource_size_t end, const char *name) in __reserve_region_with_split() argument
1159 res->end = end; in __reserve_region_with_split()
1176 conflict->end >= res->end) { in __reserve_region_with_split()
1184 end = res->end; in __reserve_region_with_split()
1185 res->end = conflict->start - 1; in __reserve_region_with_split()
1186 if (conflict->end < end) { in __reserve_region_with_split()
1193 next_res->start = conflict->end + 1; in __reserve_region_with_split()
1194 next_res->end = end; in __reserve_region_with_split()
1199 res->start = conflict->end + 1; in __reserve_region_with_split()
1207 resource_size_t end, const char *name) in reserve_region_with_split() argument
1212 if (root->start > start || root->end < end) { in reserve_region_with_split()
1214 (unsigned long long)start, (unsigned long long)end, in reserve_region_with_split()
1216 if (start > root->end || end < root->start) in reserve_region_with_split()
1219 if (end > root->end) in reserve_region_with_split()
1220 end = root->end; in reserve_region_with_split()
1225 (unsigned long long)end); in reserve_region_with_split()
1230 __reserve_region_with_split(root, start, end, name); in reserve_region_with_split()
1289 devmem_is_allowed(PHYS_PFN(res->end))) { in revoke_iomem()
1322 res->end = start + n - 1; in __request_region_locked()
1412 resource_size_t end; in __release_region() local
1415 end = start + n - 1; in __release_region()
1424 if (res->start <= start && res->end >= end) { in __release_region()
1429 if (res->start != start || res->end != end) in __release_region()
1443 pr_warn("Trying to free nonexistent resource <%pa-%pa>\n", &start, &end); in __release_region()
1513 resource_size_t end; in release_mem_region_adjustable() local
1515 end = start + size - 1; in release_mem_region_adjustable()
1516 if (WARN_ON_ONCE((start < parent->start) || (end > parent->end))) in release_mem_region_adjustable()
1533 if (res->start >= end) in release_mem_region_adjustable()
1537 if (res->start > start || res->end < end) { in release_mem_region_adjustable()
1551 if (res->start == start && res->end == end) { in release_mem_region_adjustable()
1555 } else if (res->start == start && res->end != end) { in release_mem_region_adjustable()
1557 WARN_ON_ONCE(__adjust_resource(res, end + 1, in release_mem_region_adjustable()
1558 res->end - end)); in release_mem_region_adjustable()
1559 } else if (res->start != start && res->end == end) { in release_mem_region_adjustable()
1560 /* adjust the end */ in release_mem_region_adjustable()
1574 new_res->start = end + 1; in release_mem_region_adjustable()
1575 new_res->end = res->end; in release_mem_region_adjustable()
1581 reparent_children_after_split(res, new_res, end); in release_mem_region_adjustable()
1603 return r1->flags == r2->flags && r1->end + 1 == r2->start && in system_ram_resources_mergeable()
1640 res->end = cur->end; in merge_system_ram_resource()
1650 cur->end = res->end; in merge_system_ram_resource()
1835 resource_size_t end = addr + size - 1; in iomem_map_sanity_check() local
1845 if (p->start > end) in iomem_map_sanity_check()
1847 if (p->end < addr) in iomem_map_sanity_check()
1850 PFN_DOWN(p->end) >= PFN_DOWN(end)) in iomem_map_sanity_check()
1862 &addr, &end, p->name, p); in iomem_map_sanity_check()
1894 if (p->end < addr) { in resource_is_exclusive()
1973 resource_size_t end; in gfr_start() local
1975 end = min_t(resource_size_t, base->end, DIRECT_MAP_PHYSMEM_END); in gfr_start()
1976 return end - size + 1; in gfr_start()
1992 addr <= min_t(resource_size_t, base->end, DIRECT_MAP_PHYSMEM_END); in gfr_continue()