[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <e1d7bc7c-6862-919c-a637-bfabce591b62@linux.intel.com>
Date: Wed, 3 Sep 2025 15:29:00 +0300 (EEST)
From: Ilpo Järvinen <ilpo.jarvinen@...ux.intel.com>
To: Andy Shevchenko <andriy.shevchenko@...ux.intel.com>
cc: LKML <linux-kernel@...r.kernel.org>, Peter Tyser <ptyser@...-inc.com>,
Lee Jones <lee@...nel.org>
Subject: Re: [PATCH v1 1/2] resource: Introduce resource_rebase() helper
On Wed, 3 Sep 2025, Andy Shevchenko wrote:
> Introduce a helper to add an offset to the resource. This is helpful
> in the cases when, for example) the resource has statically defined
> the start and end fields, but the base of it is yet to be defined,
> usually dynamically at run-time.
>
> Signed-off-by: Andy Shevchenko <andriy.shevchenko@...ux.intel.com>
> ---
> include/linux/ioport.h | 6 ++++++
> 1 file changed, 6 insertions(+)
>
> diff --git a/include/linux/ioport.h b/include/linux/ioport.h
> index e8b2d6aa4013..159e74284d0b 100644
> --- a/include/linux/ioport.h
> +++ b/include/linux/ioport.h
> @@ -290,6 +290,12 @@ static inline resource_size_t resource_size(const struct resource *res)
> {
> return res->end - res->start + 1;
> }
> +
> +static inline void resource_rebase(struct resource *res, resource_size_t start)
> +{
> + resource_set_range(res, start + res->start, resource_size(res));
> +}
Hi Andy,
This seems fine, it's nice to get rid of complex ->end calculations. But I
wanted to mention another common case which is resetting the base to zero.
Are we expected to use resource_rebase() for those cases too? I've been
thinking of adding something like resource_reset().
resource_rebase(res, 0) would work for those cases but it doesn't then
carry the intent of "removing" the base in its name. Opinions?
--
i.
Powered by blists - more mailing lists