[PATCH] RFC: interrupt consistency check for OF GPIO IRQs
Alexander Holler
holler at ahsoftware.de
Wed Sep 11 03:36:11 EDT 2013
Am 11.09.2013 09:30, schrieb Alexander Holler:
> And another small update. ;)
>
> Am 11.09.2013 09:16, schrieb Alexander Holler:
>
>>> To summarize what happens if a driver uses a gpio as irq:
>>>
>>> gpio_request() // This works only if the gpio was not requested before
>>> gpio_direction_input()
>>> gpio_to_irq() // This needs an irq-mapping
>>> request_threaded_irq()
>>>
>>> So I would suggest multiple steps to change that:
>>>
>>> 1. Create a mapping for every gpio found in DT (or all gpios if no DT is
>>> used). I think that is what Linus patch does (sorry, I haven't really
>>> followed this thread and didn't look in deep at the patch).
>>>
>>> 2. Implement gpio_request_for_irq()
>>> This would just be a small macro for gpio_request();
>>> gpio_direction_input()
>>>
>
> I would add gpio_to_irq() to that macro, so that it returns the irq
> number or zero if something failed.
Doing that, it would be easy to mark gpio_to_irq() as deprecated and
driver authors would change automatically to use gpio_request_for_irq()
(or gpio_request_as_irq() which might more correct english).
So I would suggest just the two steps above, the first with the mapping
and the second which introduces gpio_request_as_irq() and marks
gpio_to_irq() as deprecated.
Everthing else I would leave out for the future (so I wouldn't request
gpios centrally).
Regards,
Alexander Holler
More information about the linux-arm-kernel
mailing list