diff options
author | Mark Brown <broonie@linaro.org> | 2014-08-04 12:20:53 -0400 |
---|---|---|
committer | Mark Brown <broonie@linaro.org> | 2014-08-04 12:20:53 -0400 |
commit | 9afabfe3f8f59f68ad69dd69258eded7545b4dbe (patch) | |
tree | 043380908f5a18e8f045953788802d94b12312ef | |
parent | 19583ca584d6f574384e17fe7613dfaeadcdc4a6 (diff) | |
parent | 3fc25421f55e36426f5e5cc227cacc840493a943 (diff) |
Merge remote-tracking branch 'spi/fix/core' into spi-linus
-rw-r--r-- | drivers/spi/spi.c | 10 |
1 files changed, 6 insertions, 4 deletions
diff --git a/drivers/spi/spi.c b/drivers/spi/spi.c index d4f9670b51bc..e691e281e3a2 100644 --- a/drivers/spi/spi.c +++ b/drivers/spi/spi.c | |||
@@ -619,6 +619,8 @@ static int spi_map_buf(struct spi_master *master, struct device *dev, | |||
619 | } | 619 | } |
620 | 620 | ||
621 | ret = dma_map_sg(dev, sgt->sgl, sgt->nents, dir); | 621 | ret = dma_map_sg(dev, sgt->sgl, sgt->nents, dir); |
622 | if (!ret) | ||
623 | ret = -ENOMEM; | ||
622 | if (ret < 0) { | 624 | if (ret < 0) { |
623 | sg_free_table(sgt); | 625 | sg_free_table(sgt); |
624 | return ret; | 626 | return ret; |
@@ -647,8 +649,8 @@ static int __spi_map_msg(struct spi_master *master, struct spi_message *msg) | |||
647 | if (!master->can_dma) | 649 | if (!master->can_dma) |
648 | return 0; | 650 | return 0; |
649 | 651 | ||
650 | tx_dev = &master->dma_tx->dev->device; | 652 | tx_dev = master->dma_tx->device->dev; |
651 | rx_dev = &master->dma_rx->dev->device; | 653 | rx_dev = master->dma_rx->device->dev; |
652 | 654 | ||
653 | list_for_each_entry(xfer, &msg->transfers, transfer_list) { | 655 | list_for_each_entry(xfer, &msg->transfers, transfer_list) { |
654 | if (!master->can_dma(master, msg->spi, xfer)) | 656 | if (!master->can_dma(master, msg->spi, xfer)) |
@@ -687,8 +689,8 @@ static int spi_unmap_msg(struct spi_master *master, struct spi_message *msg) | |||
687 | if (!master->cur_msg_mapped || !master->can_dma) | 689 | if (!master->cur_msg_mapped || !master->can_dma) |
688 | return 0; | 690 | return 0; |
689 | 691 | ||
690 | tx_dev = &master->dma_tx->dev->device; | 692 | tx_dev = master->dma_tx->device->dev; |
691 | rx_dev = &master->dma_rx->dev->device; | 693 | rx_dev = master->dma_rx->device->dev; |
692 | 694 | ||
693 | list_for_each_entry(xfer, &msg->transfers, transfer_list) { | 695 | list_for_each_entry(xfer, &msg->transfers, transfer_list) { |
694 | if (!master->can_dma(master, msg->spi, xfer)) | 696 | if (!master->can_dma(master, msg->spi, xfer)) |