Title: [7750] branches/2009R1/drivers/spi/spi_bfin5xx.c: bug [#5647] - check in patch by Eduardo Tagle <[email protected]>
- Revision
- 7750
- Author
- adamliyi
- Date
- 2009-11-02 23:20:25 -0500 (Mon, 02 Nov 2009)
Log Message
bug [#5647] - check in patch by Eduardo Tagle <[email protected]>
When the bus owner unlocks the spi bus, there may be pending messages on the queue from other spi devices. The messages will stay on the queue until a spi device requests another transfer and starts pumping the message queue. This patch schedules messages transfer when spi bus is released.
Modified Paths
Diff
Modified: branches/2009R1/drivers/spi/spi_bfin5xx.c (7749 => 7750)
--- branches/2009R1/drivers/spi/spi_bfin5xx.c 2009-11-03 04:13:11 UTC (rev 7749)
+++ branches/2009R1/drivers/spi/spi_bfin5xx.c 2009-11-03 04:20:25 UTC (rev 7750)
@@ -1027,6 +1027,10 @@
spin_lock_irqsave(&drv_data->lock, flags);
drv_data->locked = 0;
+ /* kick off transfer of all pending messeages */
+ if (drv_data->running && !drv_data->busy &&
+ !list_empty(&drv_data->queue))
+ queue_work(drv_data->workqueue, &drv_data->pump_messages);
spin_unlock_irqrestore(&drv_data->lock, flags);
#endif
return 0;
_______________________________________________
Linux-kernel-commits mailing list
[email protected]
https://blackfin.uclinux.org/mailman/listinfo/linux-kernel-commits