What is dev_id parameter in request_irq?
In the function declaration int request_irq(unsigned int irq, irqreturn_t (*handler)(int, void *, struct pt_regs *), unsigned long irqflags, const char *devname, void *dev_id); Is dev_id an 'in' parameter or an 'out' parameter ? Where do we get this number from ? Dev_id is an input argument and must be globally unique. Normally the address of the device data structure is used as the Dev_id . It has value NULL if the interrupt line is NOT shared. It holds relevance only when the interrupt line is being shared. When it is shared, this parameter uniquely identifies the interrupt handler on the