aboutsummaryrefslogtreecommitdiffstats
path: root/drivers
diff options
context:
space:
mode:
Diffstat (limited to 'drivers')
-rw-r--r--drivers/spi/spi.c4
1 files changed, 2 insertions, 2 deletions
diff --git a/drivers/spi/spi.c b/drivers/spi/spi.c
index 37c555ec59ab..2d65b1684cdc 100644
--- a/drivers/spi/spi.c
+++ b/drivers/spi/spi.c
@@ -532,7 +532,7 @@ static void spi_pump_messages(struct kthread_work *work)
532 /* Lock queue and check for queue work */ 532 /* Lock queue and check for queue work */
533 spin_lock_irqsave(&master->queue_lock, flags); 533 spin_lock_irqsave(&master->queue_lock, flags);
534 if (list_empty(&master->queue) || !master->running) { 534 if (list_empty(&master->queue) || !master->running) {
535 if (master->busy) { 535 if (master->busy && master->unprepare_transfer_hardware) {
536 ret = master->unprepare_transfer_hardware(master); 536 ret = master->unprepare_transfer_hardware(master);
537 if (ret) { 537 if (ret) {
538 spin_unlock_irqrestore(&master->queue_lock, flags); 538 spin_unlock_irqrestore(&master->queue_lock, flags);
@@ -562,7 +562,7 @@ static void spi_pump_messages(struct kthread_work *work)
562 master->busy = true; 562 master->busy = true;
563 spin_unlock_irqrestore(&master->queue_lock, flags); 563 spin_unlock_irqrestore(&master->queue_lock, flags);
564 564
565 if (!was_busy) { 565 if (!was_busy && master->prepare_transfer_hardware) {
566 ret = master->prepare_transfer_hardware(master); 566 ret = master->prepare_transfer_hardware(master);
567 if (ret) { 567 if (ret) {
568 dev_err(&master->dev, 568 dev_err(&master->dev,