On Wed, 30 May 2018 15:14:32 +0200
Frieder Schrempf <[email protected]> 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?
> +}