On Mon, Dec 01, 2014 at 05:49:56PM +0100, Lars-Peter Clausen wrote:
On 12/01/2014 07:50 AM, Markus Pargmann wrote:
devm_request_irq() is used by other drivers too, this should not be a problem. Looking at the code it seems that irq_dispose_mapping may not be necessary with devm_request_irq(). So I think it would be better to remove irq_dispose_mapping() instead.
The driver creates the mapping by calling irq_of_parse_and_map(), so it also has to dispose the mapping. But the easy way out is to simply use platform_get_irq() instead of irq_of_parse_map(). In this case the mapping is not managed by the device but by the of core, so the device has not to dispose the mapping.
It also has the advantage of not being DT specific so providing some chance that future firmware interfaces can be supported without driver modification.