Re: [PATCH v3] regmap: regmap-irq/gpio-max77620: add level-irq support

From: Mark Brown
Date: Mon Dec 31 2018 - 14:12:02 EST


On Fri, Dec 28, 2018 at 10:05:33AM +0200, Matti Vaittinen wrote:

> Last night - just when I was about to get some sleep - it stroke me. I
> think the correct thing to do would be leaving the irq_set_type to NULL
> for those IRQ chips which do not support type setting. If we do that,
> then the irq core will take care of situations where user requests type
> setting but the chip does not support it. Which means the regmap-irq
> would be no different from any other irq chip where type setting is not
> supported.

Yes, this is the best fix - let the framework handle things properly.
We'll need a second set of operations and to select which to use based
on having type information but that's fine.

> So at the cost of removing "const" from regmap_irq_chip we could do:

...

> Mark, Geert, what do you think? (And maybe same for the .irq_set_wake -
> but I did omit this as I have never looked at the wake functionality
> before).

We need a separate struct as otherwise if there's multiple devices with
regmap irq_chip implementations then they'll collide with each other but
otherwise I like this approach (or we could copy the irq_chip struct
when registering and then modify which is going to scale a bit better -
you're probably right that we need to do the same thing for the wake
configuration. I'll still look at applying your patch as a temporary
fix though.

Attachment: signature.asc
Description: PGP signature