2014-08-30 17:32:58 +08:00
|
|
|
From e8e77359524e6629bac68db4183694fccffaed8e Mon Sep 17 00:00:00 2001
|
|
|
|
From: Andy Gross <agross@codeaurora.org>
|
|
|
|
Date: Tue, 13 May 2014 16:34:42 -0500
|
|
|
|
Subject: [PATCH 075/182] spi: qup: Correct selection of FIFO/Block mode
|
|
|
|
|
|
|
|
This patch fixes the calculation for determining whether to use FIFO or BLOCK
|
|
|
|
mode.
|
|
|
|
|
|
|
|
Signed-off-by: Andy Gross <agross@codeaurora.org>
|
|
|
|
Signed-off-by: Mark Brown <broonie@linaro.org>
|
|
|
|
---
|
|
|
|
drivers/spi/spi-qup.c | 4 ++--
|
|
|
|
1 file changed, 2 insertions(+), 2 deletions(-)
|
|
|
|
|
|
|
|
--- a/drivers/spi/spi-qup.c
|
|
|
|
+++ b/drivers/spi/spi-qup.c
|
2014-09-11 05:40:19 +08:00
|
|
|
@@ -287,7 +287,7 @@ static irqreturn_t spi_qup_qup_irq(int i
|
2014-08-30 17:32:58 +08:00
|
|
|
writel_relaxed(opflags, controller->base + QUP_OPERATIONAL);
|
|
|
|
|
|
|
|
if (!xfer) {
|
|
|
|
- dev_err_ratelimited(controller->dev, "unexpected irq %x08 %x08 %x08\n",
|
|
|
|
+ dev_err_ratelimited(controller->dev, "unexpected irq %08x %08x %08x\n",
|
|
|
|
qup_err, spi_err, opflags);
|
|
|
|
return IRQ_HANDLED;
|
|
|
|
}
|
2014-09-11 05:40:19 +08:00
|
|
|
@@ -366,7 +366,7 @@ static int spi_qup_io_config(struct spi_
|
2014-08-30 17:32:58 +08:00
|
|
|
n_words = xfer->len / w_size;
|
|
|
|
controller->w_size = w_size;
|
|
|
|
|
|
|
|
- if (n_words <= controller->in_fifo_sz) {
|
|
|
|
+ if (n_words <= (controller->in_fifo_sz / sizeof(u32))) {
|
|
|
|
mode = QUP_IO_M_MODE_FIFO;
|
|
|
|
writel_relaxed(n_words, controller->base + QUP_MX_READ_CNT);
|
|
|
|
writel_relaxed(n_words, controller->base + QUP_MX_WRITE_CNT);
|