summaryrefslogtreecommitdiff
path: root/drivers/spi/spi-fsl-espi.c
diff options
context:
space:
mode:
authorHeiner Kallweit <hkallweit1@gmail.com>2016-09-07 20:51:48 (GMT)
committerMark Brown <broonie@kernel.org>2016-09-12 18:58:45 (GMT)
commit5cd7b8be6b7b4c4fb9e2bfbfba596d27357cc359 (patch)
tree72736f8670f0ae4b51921873ef8ba74ef38b4ecb /drivers/spi/spi-fsl-espi.c
parent0319d4991ea6e7594f32843e1b47868737056799 (diff)
downloadlinux-5cd7b8be6b7b4c4fb9e2bfbfba596d27357cc359.tar.xz
spi: fsl-espi: remove element actual_length from struct fsl_espi_trans
If an error occurs during processing the message, then we don't have to populate the actual_length element of struct message. So we can get rid of element actual_length in struct fsl_espi_transfer. Signed-off-by: Heiner Kallweit <hkallweit1@gmail.com> Signed-off-by: Mark Brown <broonie@kernel.org>
Diffstat (limited to 'drivers/spi/spi-fsl-espi.c')
-rw-r--r--drivers/spi/spi-fsl-espi.c8
1 files changed, 2 insertions, 6 deletions
diff --git a/drivers/spi/spi-fsl-espi.c b/drivers/spi/spi-fsl-espi.c
index 6b60f7b..726d5fd 100644
--- a/drivers/spi/spi-fsl-espi.c
+++ b/drivers/spi/spi-fsl-espi.c
@@ -41,7 +41,6 @@ struct fsl_espi_transfer {
const void *tx_buf;
void *rx_buf;
unsigned len;
- unsigned actual_length;
};
/* eSPI Controller mode register definitions */
@@ -327,8 +326,6 @@ static int fsl_espi_cmd_trans(struct spi_message *m,
espi_trans->rx_buf = mspi->local_buf;
ret = fsl_espi_do_trans(m, espi_trans);
- espi_trans->actual_length = espi_trans->len;
-
return ret;
}
@@ -350,7 +347,6 @@ static int fsl_espi_rw_trans(struct spi_message *m,
if (trans->len > tx_only)
memcpy(rx_buff, trans->rx_buf + tx_only,
trans->len - tx_only);
- trans->actual_length += trans->len;
}
return ret;
@@ -373,14 +369,14 @@ static int fsl_espi_do_one_msg(struct spi_master *master,
}
espi_trans.len = xfer_len;
- espi_trans.actual_length = 0;
if (!rx_buf)
ret = fsl_espi_cmd_trans(m, &espi_trans, NULL);
else
ret = fsl_espi_rw_trans(m, &espi_trans, rx_buf);
- m->actual_length = espi_trans.actual_length;
+ m->actual_length = ret ? 0 : espi_trans.len;
+
if (m->status == -EINPROGRESS)
m->status = ret;