Hi Ahmad,

On Mon, Aug 15 2022 at 17:32 +0200, Ahmad Fatoum <[email protected]> 
wrote:
> 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 <[email protected]>
> ---
>  common/memory.c   |  8 +++++---
>  common/resource.c |  2 +-
>  include/memory.h  | 13 +++++++++++--
>  3 files changed, 17 insertions(+), 6 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/common/resource.c b/common/resource.c
> index 81f337668ef1..8678609229ab 100644
> --- a/common/resource.c
> +++ b/common/resource.c
> @@ -73,7 +73,7 @@ struct resource *__request_region(struct resource *parent,
>       }
>  
>  ok:
> -     debug("%s ok: 0x%08llx:0x%08llx flags=%u\n", __func__,
> +     debug("%s ok: 0x%08llx:0x%08llx flags=0x%x\n", __func__,

this hunk should be squashed/amended into patch 01/10 where the flags
parameter has originally been introduced into this debug message.

Best regards
Ulrich


>                       (unsigned long long)start,
>                       (unsigned long long)end, flags);
>  
> 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,


-- 
Pengutronix e.K.                           | Ulrich Ölmann               |
Industrial Linux Solutions                 | http://www.pengutronix.de/  |
Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0    |
Amtsgericht Hildesheim, HRA 2686           | Fax:   +49-5121-206917-5555 |

Reply via email to