spi: bcm-qspi: fix calculation of address length
authorRafał Miłecki <rafal@milecki.pl>
Thu, 11 Oct 2018 07:40:22 +0000 (09:40 +0200)
committerMark Brown <broonie@kernel.org>
Thu, 11 Oct 2018 14:00:28 +0000 (15:00 +0100)
During implementation of the new API bcm_qspi_bspi_set_flex_mode() has
been modified breaking calculation of address length. An unnecessary
multiplication was added breaking flash reads.

Fixes: 5f195ee7d830 ("spi: bcm-qspi: Implement the spi_mem interface")
Signed-off-by: Rafał Miłecki <rafal@milecki.pl>
Reviewed-by: Boris Brezillon <boris.brezillon@bootlin.com>
Signed-off-by: Mark Brown <broonie@kernel.org>
Cc: stable@vger.kernel.org
drivers/spi/spi-bcm-qspi.c

index 8612525fa4e34e6281d26c5f306f3f1e36a212ce..eb3d67f01e8c4288ec4e42de168443219803facc 100644 (file)
@@ -355,7 +355,7 @@ static int bcm_qspi_bspi_set_flex_mode(struct bcm_qspi *qspi,
        int bpc = 0, bpp = 0;
        u8 command = op->cmd.opcode;
        int width  = op->cmd.buswidth ? op->cmd.buswidth : SPI_NBITS_SINGLE;
-       int addrlen = op->addr.nbytes * 8;
+       int addrlen = op->addr.nbytes;
        int flex_mode = 1;
 
        dev_dbg(&qspi->pdev->dev, "set flex mode w %x addrlen %x hp %d\n",