diff options
Diffstat (limited to 'lib/lmb.c')
-rw-r--r-- | lib/lmb.c | 13 |
1 files changed, 11 insertions, 2 deletions
@@ -205,9 +205,8 @@ long lmb_add(u64 base, u64 size) | |||
205 | 205 | ||
206 | } | 206 | } |
207 | 207 | ||
208 | long lmb_remove(u64 base, u64 size) | 208 | static long __lmb_remove(struct lmb_region *rgn, u64 base, u64 size) |
209 | { | 209 | { |
210 | struct lmb_region *rgn = &(lmb.memory); | ||
211 | u64 rgnbegin, rgnend; | 210 | u64 rgnbegin, rgnend; |
212 | u64 end = base + size; | 211 | u64 end = base + size; |
213 | int i; | 212 | int i; |
@@ -254,6 +253,16 @@ long lmb_remove(u64 base, u64 size) | |||
254 | return lmb_add_region(rgn, end, rgnend - end); | 253 | return lmb_add_region(rgn, end, rgnend - end); |
255 | } | 254 | } |
256 | 255 | ||
256 | long lmb_remove(u64 base, u64 size) | ||
257 | { | ||
258 | return __lmb_remove(&lmb.memory, base, size); | ||
259 | } | ||
260 | |||
261 | long __init lmb_free(u64 base, u64 size) | ||
262 | { | ||
263 | return __lmb_remove(&lmb.reserved, base, size); | ||
264 | } | ||
265 | |||
257 | long __init lmb_reserve(u64 base, u64 size) | 266 | long __init lmb_reserve(u64 base, u64 size) |
258 | { | 267 | { |
259 | struct lmb_region *_rgn = &lmb.reserved; | 268 | struct lmb_region *_rgn = &lmb.reserved; |