Messages in this thread | | | Date | Thu, 24 Apr 2008 12:20:49 -0400 | From | Jeff Garzik <> | Subject | Re: [git patch] free_irq() fixes |
| |
Alan Cox wrote: > Sparc32 had this and it was very ugly. However if you don't pass in the > IRQ then people will store the irq value privately and things like > request_irq can deal with numeric interrupts and the like as before while > new interfaces for MSI can deal in MSI objects whatever they end up like.
Yes, and on a related note...
_Today_ drivers _already_ store the irq value privately, because they must:
Logic dictates they must do so because all other functions in the driver do not have an 'irq' argument, but do need to call things (free_irq, disable_irq) that take an irq number argument.
That is one of my key design objections to passing 'int' to an irq handler:
Every modern driver _must_ store the irq value anyway -- and typically this is done automatically in struct device or struct pci_dev resources, so the driver writer need not bother with storing it themselves.
Jeff
| |