[PATCH 0/2] irqchip/gic*: Complain about the use of IRQ_TYPE_NONE
Robin Murphy
robin.murphy at arm.com
Fri Mar 16 09:46:20 PDT 2018
On 16/03/18 16:39, Marc Zyngier wrote:
> On 16/03/18 16:19, Robin Murphy wrote:
>> On 16/03/18 14:55, Marc Zyngier wrote:
>>> Grepping through the dts files, the documentation, and reviewing
>>> patches, one can only notice the use of IRQ_TYPE_NONE in interrupt
>>> specifiers. At least for the GIC, this doesn't mean anything. The
>>> unsuspecting driver will end-up with whatever was there before, and
>>> there is a 50% probability that it is not what it wants.
>>>
>>> I'd love to fix it myself, but I also have a 50% probability of
>>> getting it wrong. In order to make the user aware they are walking on
>>> thin ice, let's add some warnings. Hopefully, they'll be annoying
>>> enough that people will fix their firmware. Croudsourcing debugging...
>>
>> I guess there's also the alternative nuclear option of breaking their
>> build ;)
>>
>> Robin.
>>
>> ----->8-----
>> diff --git a/include/dt-bindings/interrupt-controller/irq.h
>> b/include/dt-bindings/interrupt-controller/irq.h
>> index a8b310555f14..de79af80d01e 100644
>> --- a/include/dt-bindings/interrupt-controller/irq.h
>> +++ b/include/dt-bindings/interrupt-controller/irq.h
>> @@ -10,7 +10,7 @@
>> #ifndef _DT_BINDINGS_INTERRUPT_CONTROLLER_IRQ_H
>> #define _DT_BINDINGS_INTERRUPT_CONTROLLER_IRQ_H
>>
>> -#define IRQ_TYPE_NONE 0
>> +#define IRQ_TYPE_NONE "This is nonsense and needs fixing"
>> #define IRQ_TYPE_EDGE_RISING 1
>> #define IRQ_TYPE_EDGE_FALLING 2
>> #define IRQ_TYPE_EDGE_BOTH (IRQ_TYPE_EDGE_FALLING | IRQ_TYPE_EDGE_RISING)
>>
>
> What really annoys me with this patch is that you haven't put a SoB on it...
On a more serious note, though, it dawns on me that this might be
something DTC could realistically scream about for us, although I guess
not all irqchip bindings include a type specifier so it would probably
need to special-case known ones.
Robin.
More information about the linux-arm-kernel
mailing list