On Tue, Dec 28, 2010 at 03:59:49PM +0200, Felipe Balbi wrote: > + disable_irq_nosync(irq); You shouldn't need this any more; the driver used to be faffing around with this because it wasn't using genirq for this in the past. > + for (i = 0; sts.int_sts; sts.int_sts >>= 1, i++) { > + local_irq_disable(); Simiarly here as far as I know; the original code predates genirq support for this so is doing some hairy stuff that is no longer required and may actually be harmful. What I'd expect to see from a conversion like this would be that most of the locking/IRQ management stuff would be dropped and the bus_lock() and bus_sync_unlock() operations would be implemented. -- To unsubscribe from this list: send the line "unsubscribe linux-omap" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html