diff options
author | Linus Torvalds <torvalds@linux-foundation.org> | 2015-09-01 01:55:49 +0300 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2015-09-01 01:55:49 +0300 |
commit | e5aeced6bcec5a110e6dfcb78acc203dbe895b59 (patch) | |
tree | 9f1523e0c6829c327ea8d26fc04f46756ddb5eb1 /drivers/spi/spi-rspi.c | |
parent | cf9d615f7f5842ca1ef0f28ed9f67a97d20cf6fc (diff) | |
parent | c5992f610f78e6c9d0a78e8fef1066ad640e17e8 (diff) | |
download | linux-e5aeced6bcec5a110e6dfcb78acc203dbe895b59.tar.xz |
Merge tag 'spi-v4.3' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi
Pull spi updates from Mark Brown:
"A few core tweaks this time together with the usual collection of
driver specific updates and fixes plus a larger than average selection
of new device support:
- fix DMA mapping of unaligned vmalloc() buffers
- statistics tracking transfer volumes exposed via sysfs
- new drivers for Freescale MPC5125, Intel Sunrise Point, Mediatek
SoCs, and Netlogic XLP SoCs"
* tag 'spi-v4.3' of git://git.kernel.org/pub/scm/linux/kernel/git/broonie/spi: (66 commits)
spi: sh-msiof: Fix FIFO size to 64 word from 256 word
spi: fsl-(e)spi: Fix checking return value of devm_ioremap_resource
spi: Add DT bindings documentation for Netlogic XLP SPI controller
spi/xlp: SPI controller driver for Netlogic XLP SoCs
spi: fsl-espi: add runtime PM
spi: fsl-(e)spi: simplify cleanup code
spi: fsl-(e)spi: migrate to using devm_ functions to simplify cleanup
spi: mediatek: fix SPI_CMD_PAUSE_IE macro error
spi: check bits_per_word in spi_setup
spi: mediatek: replace *_time name
spi: mediatek: add PM clk_prepare_enable fail flow
spi: mediatek: replace int with u32, delete TAB and define MTK_SPI_PAUSE_INT_STATUS marco
spi: mediatek: add linux/io.h include file
spi/bcm63xx-hsspi: add support for dual spi read/write
spi: dw: Allow interface drivers to limit data I/O to word sizes
dt: snps,dw-apb-ssi: Document new I/O data register width property
spi: Fall back to master maximum speed if no slave speed specified
spi: mediatek: use BIT() to instead of SPI_CMD_*_OFFSET
spi: medaitek: revise quirks compatibility style
spi: mediatek: fix spi incorrect endian usage
...
Diffstat (limited to 'drivers/spi/spi-rspi.c')
-rw-r--r-- | drivers/spi/spi-rspi.c | 19 |
1 files changed, 10 insertions, 9 deletions
diff --git a/drivers/spi/spi-rspi.c b/drivers/spi/spi-rspi.c index f9189a0c8cec..818843336932 100644 --- a/drivers/spi/spi-rspi.c +++ b/drivers/spi/spi-rspi.c @@ -383,7 +383,8 @@ static void qspi_update(const struct rspi_data *rspi, u8 mask, u8 val, u8 reg) rspi_write8(rspi, data, reg); } -static int qspi_set_send_trigger(struct rspi_data *rspi, unsigned int len) +static unsigned int qspi_set_send_trigger(struct rspi_data *rspi, + unsigned int len) { unsigned int n; @@ -724,25 +725,25 @@ static int rspi_rz_transfer_one(struct spi_master *master, static int qspi_trigger_transfer_out_in(struct rspi_data *rspi, const u8 *tx, u8 *rx, unsigned int len) { - int i, n, ret; - int error; + unsigned int i, n; + int ret; while (len > 0) { n = qspi_set_send_trigger(rspi, len); qspi_set_receive_trigger(rspi, len); if (n == QSPI_BUFFER_SIZE) { - error = rspi_wait_for_tx_empty(rspi); - if (error < 0) { + ret = rspi_wait_for_tx_empty(rspi); + if (ret < 0) { dev_err(&rspi->master->dev, "transmit timeout\n"); - return error; + return ret; } for (i = 0; i < n; i++) rspi_write_data(rspi, *tx++); - error = rspi_wait_for_rx_full(rspi); - if (error < 0) { + ret = rspi_wait_for_rx_full(rspi); + if (ret < 0) { dev_err(&rspi->master->dev, "receive timeout\n"); - return error; + return ret; } for (i = 0; i < n; i++) *rx++ = rspi_read_data(rspi); |