Now that __request_region accepts a flag parameter, define __request_sdram_region, which also accepts a flag parameter and passes it through. The default flags for request_sdram_region() will be IORESOURCE_MEM as that ensures resource_contains behaves correctly when comparing against another memory resource. Signed-off-by: Ahmad Fatoum <a.fatoum@xxxxxxxxxxxxxx> --- common/memory.c | 8 +++++--- include/memory.h | 13 +++++++++++-- 2 files changed, 16 insertions(+), 5 deletions(-) diff --git a/common/memory.c b/common/memory.c index 03fec1f1eb0e..347f83fd4cf8 100644 --- a/common/memory.c +++ b/common/memory.c @@ -200,16 +200,18 @@ mmu_initcall(add_mem_devices); /* * Request a region from the registered sdram */ -struct resource *request_sdram_region(const char *name, resource_size_t start, - resource_size_t size) +struct resource *__request_sdram_region(const char *name, unsigned flags, + resource_size_t start, resource_size_t size) { struct memory_bank *bank; + flags |= IORESOURCE_MEM; + for_each_memory_bank(bank) { struct resource *res; res = __request_region(bank->res, start, start + size - 1, - name, 0); + name, flags); if (!IS_ERR(res)) return res; } diff --git a/include/memory.h b/include/memory.h index c793bb51ed77..31da5d74d568 100644 --- a/include/memory.h +++ b/include/memory.h @@ -23,8 +23,17 @@ int barebox_add_memory_bank(const char *name, resource_size_t start, #define for_each_memory_bank(mem) list_for_each_entry(mem, &memory_banks, list) -struct resource *request_sdram_region(const char *name, resource_size_t start, - resource_size_t size); +struct resource *__request_sdram_region(const char *name, unsigned flags, + resource_size_t start, resource_size_t size); + +static inline struct resource *request_sdram_region(const char *name, + resource_size_t start, + resource_size_t size) +{ + /* IORESOURCE_MEM is implicit for all SDRAM regions */ + return __request_sdram_region(name, 0, start, size); +} + int release_sdram_region(struct resource *res); void memory_bank_find_space(struct memory_bank *bank, resource_size_t *retstart, -- 2.30.2