diff mbox series

[5/7] lmb: Tidy up lmb_overlaps_region()

Message ID 20230823134209.1450567-6-sjg@chromium.org
State Changes Requested
Delegated to: Tom Rini
Headers show
Series Correct confusing lmb error message | expand

Commit Message

Simon Glass Aug. 23, 2023, 1:42 p.m. UTC
Add a comment to define what this returns. Return a specific error when
no overlap is found.

Signed-off-by: Simon Glass <sjg@chromium.org>
---

 lib/lmb.c | 11 +++++++++--
 1 file changed, 9 insertions(+), 2 deletions(-)
diff mbox series

Patch

diff --git a/lib/lmb.c b/lib/lmb.c
index bf30e0dc90b2..5f2ea45c3ba9 100644
--- a/lib/lmb.c
+++ b/lib/lmb.c
@@ -387,6 +387,13 @@  int lmb_reserve(struct lmb *lmb, phys_addr_t base, phys_size_t size)
 	return lmb_reserve_flags(lmb, base, size, LMB_NONE);
 }
 
+/**
+ * lmb_overlaps_region() - Check if a region overlaps a given base/size
+ *
+ * @base:	base address of the memory region
+ * @size:	size of the memory region
+ * Returns: Region number of overlapping region, if found, else -ENOENT
+ */
 static int lmb_overlaps_region(struct lmb_region *rgn, phys_addr_t base,
 			       phys_size_t size)
 {
@@ -396,10 +403,10 @@  static int lmb_overlaps_region(struct lmb_region *rgn, phys_addr_t base,
 		phys_addr_t rgnbase = rgn->region[i].base;
 		phys_size_t rgnsize = rgn->region[i].size;
 		if (lmb_addrs_overlap(base, size, rgnbase, rgnsize))
-			break;
+			return i;
 	}
 
-	return i < rgn->cnt ? i : -1;
+	return -ENOENT;
 }
 
 phys_addr_t lmb_alloc(struct lmb *lmb, phys_size_t size, ulong align)