[PATCH v2 1/2] staging: Add ST-Ericsson CG2900 driver

Lukasz.Rymanowski at tieto.com Lukasz.Rymanowski at tieto.com
Mon Mar 28 10:05:35 UTC 2011


>> +/**
>> + * cts_interrupt() - Called to handle CTS interrupt.
>> + * @irq:	Interrupt that occurred.
>> + * @dev_id:	Device ID where interrupt occurred.
>> + *
>> + * The cts_interrupt() function is called if interrupt on CTS occurred.
>> + * It disables the interrupt and starts a new work thread to handle
>> + * the interrupt.
>> + */
>> +static irqreturn_t cts_interrupt(int irq, void *dev_id) {
>> +	struct uart_info *uart_info = dev_get_drvdata(dev_id); #ifdef 
>> +CONFIG_PM
>> +	disable_irq_wake(irq);
>> +#endif
>> +	disable_irq_nosync(irq);
>> +
>> +	/* Create work and leave IRQ context. */
>> +	(void)create_work_item(uart_info, handle_cts_irq);
>> +
>> +	return IRQ_HANDLED;
>> +}

>Have you thought about using a threaded interrupt handler? That would make all this work cruft go away.

Good point.
To be honest we did think about it but in the time we where we were busy with other issues.
Anyway, shall we resend patches now or we can push patch for it once driver gets in the tree ?

/Lukasz

>Thanks,

>	tglx



More information about the devel mailing list