aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSrinivas Kandagatla <srinivas.kandagatla@linaro.org>2014-12-09 16:33:46 +0000
committerSrinivas Kandagatla <srinivas.kandagatla@linaro.org>2015-07-06 13:28:33 +0100
commita306fd5fce7cff176e70d6baf86c91f6217dcdc8 (patch)
tree10f7200d076cd9b05ccc9ba11dbd252611470535
parent1c4c7159ed2468f3ac4ce5a7f08d79663d381a93 (diff)
WIP: add memblock_overlaps_memory
Signed-off-by: Srinivas Kandagatla <srinivas.kandagatla@linaro.org>
-rw-r--r--include/linux/memblock.h1
-rw-r--r--mm/memblock.c6
2 files changed, 7 insertions, 0 deletions
diff --git a/include/linux/memblock.h b/include/linux/memblock.h
index cc4b01972060..22be48641244 100644
--- a/include/linux/memblock.h
+++ b/include/linux/memblock.h
@@ -322,6 +322,7 @@ phys_addr_t memblock_end_of_DRAM(void);
void memblock_enforce_memory_limit(phys_addr_t memory_limit);
int memblock_is_memory(phys_addr_t addr);
int memblock_is_region_memory(phys_addr_t base, phys_addr_t size);
+int memblock_overlaps_memory(phys_addr_t base, phys_addr_t size);
int memblock_is_reserved(phys_addr_t addr);
int memblock_is_region_reserved(phys_addr_t base, phys_addr_t size);
diff --git a/mm/memblock.c b/mm/memblock.c
index 87108e77e476..248f3b337c2a 100644
--- a/mm/memblock.c
+++ b/mm/memblock.c
@@ -1554,6 +1554,12 @@ int __init_memblock memblock_is_region_memory(phys_addr_t base, phys_addr_t size
memblock.memory.regions[idx].size) >= end;
}
+int __init_memblock memblock_overlaps_memory(phys_addr_t base, phys_addr_t size)
+{
+ memblock_cap_size(base, &size);
+ return memblock_overlaps_region(&memblock.memory, base, size) >= 0;
+}
+
/**
* memblock_is_region_reserved - check if a region intersects reserved memory
* @base: base of region to check