From fd8bd7cd8ceb710bb8e5a6ce0276bb5d2cb313a6 Mon Sep 17 00:00:00 2001 From: Deokgyu Yang Date: Thu, 21 Jan 2021 14:57:50 +0900 Subject: [PATCH] ODROID-COMMON: drivers/spi: Revert force64b flag back To avoid unnecessary 64 bit calculation, which is for DMA, data swapping is needed to be an option. Signed-off-by: Deokgyu Yang Change-Id: Ie186a332984246bfb83b128b5771197457f4dd21 --- drivers/spi/spi-meson-spicc.c | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) diff --git a/drivers/spi/spi-meson-spicc.c b/drivers/spi/spi-meson-spicc.c index fd55a7f1c197..6bf0d3409ed2 100644 --- a/drivers/spi/spi-meson-spicc.c +++ b/drivers/spi/spi-meson-spicc.c @@ -41,6 +41,12 @@ * to have a CS go down over the full transfer */ +#if defined(CONFIG_ARCH_MESON64_ODROID_COMMON) +static unsigned int force64b; +module_param(force64b, uint, 0000); +MODULE_PARM_DESC(force64b, "force 64bits fb data"); +#endif + /* Register Map */ #define SPICC_RXDATA 0x00 @@ -600,7 +606,10 @@ static int meson_spicc_transfer_one(struct spi_master *master, spicc->xfer_remain = xfer->len; #if defined(CONFIG_ARCH_MESON64_ODROID_COMMON) - if ((xfer->len >= 64) && (xfer->bits_per_word == 8) && ((xfer->len % 8) == 0)) { + if (force64b && + (xfer->len >= 64) && + (xfer->bits_per_word == 8) && + ((xfer->len % 8) == 0)) { int cnt = xfer->len / 8; int i; @@ -1119,6 +1128,8 @@ static int meson_spicc_probe(struct platform_device *pdev) spicc->pinctrl = NULL; dev_err(&pdev->dev, "spi pinmux : can't get spicc_pins\n"); } + if (force64b) + dev_info(&pdev->dev, "force64b flag is true\n"); #endif device_reset_optional(&pdev->dev);