lists.openwall.net   lists  /  announce  owl-users  owl-dev  john-users  john-dev  passwdqc-users  yescrypt  popa3d-users  /  oss-security  kernel-hardening  musl  sabotage  tlsify  passwords  /  crypt-dev  xvendor  /  Bugtraq  Full-Disclosure  linux-kernel  linux-netdev  linux-ext4  linux-hardening  linux-cve-announce  PHC 
Open Source and information security mailing list archives
 
Hash Suite: Windows password security audit tool. GUI, reports in PDF.
[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <20150820175514.GG12027@sirena.org.uk>
Date:	Thu, 20 Aug 2015 10:55:14 -0700
From:	Mark Brown <broonie@...nel.org>
To:	Vignesh R <vigneshr@...com>
Cc:	linux-spi@...r.kernel.org, linux-kernel@...r.kernel.org,
	linux-omap@...r.kernel.org
Subject: Re: [PATCH] spi: ti-qspi: use 128 bit transfer mode for writing to
 flash

On Thu, Aug 20, 2015 at 04:00:59PM +0530, Vignesh R wrote:

> -			writeb(*txbuf, qspi->base + QSPI_SPI_DATA_REG);
> +			if (count >= QSPI_WLEN_MAX_BYTES) {
> +				u32 *txp = (u32 *)txbuf;
> +
> +				data = cpu_to_be32(*txp++);
> +				writel(data, qspi->base +
> +				       QSPI_SPI_DATA_REG_3);
> +				data = cpu_to_be32(*txp++);
> +				writel(data, qspi->base +
> +				       QSPI_SPI_DATA_REG_2);
> +				data = cpu_to_be32(*txp++);
> +				writel(data, qspi->base +
> +				       QSPI_SPI_DATA_REG_1);
> +				data = cpu_to_be32(*txp++);
> +				writel(data, qspi->base +
> +				       QSPI_SPI_DATA_REG);
> +				xfer_len = QSPI_WLEN_MAX_BYTES;
> +				cmd |= QSPI_WLEN(QSPI_WLEN_MAX_BITS);
> +			} else {
> +				writeb(*txbuf, qspi->base + QSPI_SPI_DATA_REG);
> +				cmd = qspi->cmd | QSPI_WR_SNGL;
> +				xfer_len = wlen;
> +				cmd |= QSPI_WLEN(wlen);
> +			}

It's a bit sad that this isn't able to do a Duff's device type thing and
only kicks in for the full 128 bit FIFO size, it looks like it could do
any number of words.

Download attachment "signature.asc" of type "application/pgp-signature" (474 bytes)

Powered by blists - more mailing lists

Powered by Openwall GNU/*/Linux Powered by OpenVZ