Re: [PATCH 1/2] regmap: add regmap_might_sleep()

From: Michael Walle
Date: Fri Apr 30 2021 - 12:01:55 EST

Am 2021-04-30 17:19, schrieb Mark Brown:
On Fri, Apr 30, 2021 at 03:06:44PM +0200, Michael Walle wrote:

Sometimes a driver needs to know if the underlying regmap could sleep.
For example, consider the gpio-regmap driver which needs to fill the
gpiochip->can_sleep property.

Whatever is creating the regmap really ought to know what device it's
dealing with...

But creating and using the regmap are two seperate things, no? Consider
the gpio-sl28cpld. It will just use whatever regmap the parent has created.
How would it know what type of regmap it is?

It might be possible to pass this information via the
gpio_regmap_config, but this has the following drawbacks. First, that
property is redundant and both places might contratict each other. And
secondly, the driver might not even know the type of the regmap because
it just gets an opaque pointer by querying the device tree.

If it's a generic GPIO driver from a code correctness point of view it's
always got a risk of sleeping...

I can't follow you here.