[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20180605170023.24eeaaaa@bbrezillon>
Date: Tue, 5 Jun 2018 17:00:23 +0200
From: Boris Brezillon <boris.brezillon@...tlin.com>
To: Frieder Schrempf <frieder.schrempf@...eet.de>
Cc: linux-mtd@...ts.infradead.org, linux-spi@...r.kernel.org,
dwmw2@...radead.org, computersforpeace@...il.com,
marek.vasut@...il.com, richard@....at, miquel.raynal@...tlin.com,
broonie@...nel.org, david.wolfe@....com, fabio.estevam@....com,
prabhakar.kushwaha@....com, yogeshnarayan.gaur@....com,
han.xu@....com, linux-kernel@...r.kernel.org
Subject: Re: [PATCH 03/11] spi: Add a driver for the Freescale/NXP QuadSPI
controller
On Wed, 30 May 2018 15:14:32 +0200
Frieder Schrempf <frieder.schrempf@...eet.de> wrote:
> +
> +static void fsl_qspi_read_ahb(struct fsl_qspi *q, const struct spi_mem_op *op)
> +{
> + static int seq;
> +
> + /*
> + * We want to avoid needing to invalidate the cache by issueing
> + * a reset to the AHB and Serial Flash domain, as this needs
> + * time. So we change the address on each read to trigger an
> + * actual read operation on the flash. The actual address for
> + * the flash memory is set by programming the LUT.
> + */
> + memcpy_fromio(op->data.buf.in,
> + q->ahb_addr +
> + (seq * q->devtype_data->ahb_buf_size),
> + op->data.nbytes);
> +
> + seq = seq ? 0 : 1;
We should get rid of this hack. Yogesh, Han, do you know if there's an
easy way to invalidate the AHB buffer without resetting the IP?
> +}
Powered by blists - more mailing lists