diff options
author | Rafael J. Wysocki <rafael.j.wysocki@intel.com> | 2019-06-24 10:11:27 +0200 |
---|---|---|
committer | Rafael J. Wysocki <rafael.j.wysocki@intel.com> | 2019-06-24 10:11:27 +0200 |
commit | 25bc694a8a086bfee6e5b9dd9e53f4de721b0acf (patch) | |
tree | a843d17b336c9ea7d4cad67843ebbf255d61ea1f /drivers/spi/spi.c | |
parent | 3e26c5feed2add218046ecf91bab3cfa9bf762a6 (diff) | |
parent | 000dd5316e1c756a1c028f22e01d06a38249dd4d (diff) | |
download | linux-25bc694a8a086bfee6e5b9dd9e53f4de721b0acf.tar.bz2 |
Merge back PCI power management material for v5.3.
Diffstat (limited to 'drivers/spi/spi.c')
-rw-r--r-- | drivers/spi/spi.c | 11 |
1 files changed, 8 insertions, 3 deletions
diff --git a/drivers/spi/spi.c b/drivers/spi/spi.c index 5e75944ad5d1..5e4654032bfa 100644 --- a/drivers/spi/spi.c +++ b/drivers/spi/spi.c @@ -1181,10 +1181,10 @@ out: if (msg->status && ctlr->handle_err) ctlr->handle_err(ctlr, msg); - spi_finalize_current_message(ctlr); - spi_res_release(ctlr, msg); + spi_finalize_current_message(ctlr); + return ret; } @@ -1307,10 +1307,15 @@ static void __spi_pump_messages(struct spi_controller *ctlr, bool in_kthread) ret = ctlr->prepare_transfer_hardware(ctlr); if (ret) { dev_err(&ctlr->dev, - "failed to prepare transfer hardware\n"); + "failed to prepare transfer hardware: %d\n", + ret); if (ctlr->auto_runtime_pm) pm_runtime_put(ctlr->dev.parent); + + ctlr->cur_msg->status = ret; + spi_finalize_current_message(ctlr); + mutex_unlock(&ctlr->io_mutex); return; } |