Messages in this thread | | | Date | Sun, 06 Dec 2020 18:50:07 +0000 | From | Marc Zyngier <> | Subject | Re: [PATCH v1] gpio: dwapb: mask/unmask IRQ when disable/enable it |
| |
On 2020-12-06 15:02, Linus Walleij wrote: > On Sat, Dec 5, 2020 at 11:15 PM Serge Semin <fancer.lancer@gmail.com> > wrote: > >> Hmm, that sounds like a problem, but the explanation is a bit unclear >> to me. AFAICS you are saying that the only callbacks which are >> called during the IRQ request/release are the irq_enable(), right? If >> so then the only reason why we haven't got a problem reported due to >> that so far is that the IRQs actually unmasked by default. > > What we usually do in cases like that (and I have discussed this > with tglx in the past I think) is to simply mask off all IRQs in > probe(). > Then they will be unmasked when requested by drivers. > > See e.g. gpio-pl061 that has this line in probe(): > writeb(0, pl061->base + GPIOIE); /* disable irqs */
This should definitely be the default behaviour. The code code expects all interrupt sources to be masked until actively enabled, usually with the IRQ being requested.
Thanks,
M. -- Jazz is not dead. It just smells funny...
| |