diff options
| author | 2020-09-14 10:10:55 +0200 | |
|---|---|---|
| committer | 2020-09-14 10:10:55 +0200 | |
| commit | fccee0baced04636952cd580ddee4bb8cbb9544c (patch) | |
| tree | 80e25c0e100246357bd0c0a93feb1bf2e5e5bd1d /drivers/spi/spi.c | |
| parent | usb: typec: intel_pmc_mux: Support for device role (UFP) (diff) | |
| parent | Linux 5.9-rc5 (diff) | |
| download | wireguard-linux-fccee0baced04636952cd580ddee4bb8cbb9544c.tar.xz wireguard-linux-fccee0baced04636952cd580ddee4bb8cbb9544c.zip | |
Merge 5.9-rc5 into usb-next
We need the USB fixes in here as well.
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
Diffstat (limited to 'drivers/spi/spi.c')
| -rw-r--r-- | drivers/spi/spi.c | 9 |
1 files changed, 7 insertions, 2 deletions
diff --git a/drivers/spi/spi.c b/drivers/spi/spi.c index dc12af018350..0cab239d8e7f 100644 --- a/drivers/spi/spi.c +++ b/drivers/spi/spi.c @@ -1327,8 +1327,6 @@ out: if (msg->status && ctlr->handle_err) ctlr->handle_err(ctlr, msg); - spi_res_release(ctlr, msg); - spi_finalize_current_message(ctlr); return ret; @@ -1725,6 +1723,13 @@ void spi_finalize_current_message(struct spi_controller *ctlr) spi_unmap_msg(ctlr, mesg); + /* In the prepare_messages callback the spi bus has the opportunity to + * split a transfer to smaller chunks. + * Release splited transfers here since spi_map_msg is done on the + * splited transfers. + */ + spi_res_release(ctlr, mesg); + if (ctlr->cur_msg_prepared && ctlr->unprepare_message) { ret = ctlr->unprepare_message(ctlr, mesg); if (ret) { |
