[PATCH] drivers: mtd: m25p80: Add quad read support.

Marek Vasut marex at denx.de
Sun Oct 27 11:30:34 PDT 2013


Dear Sourav Poddar,

> Dear Marek,
> 
> On Sunday 27 October 2013 10:15 PM, Marek Vasut wrote:
> > Dear Sourav Poddar,
> > 
> > [...]

[...]

> >> @@ -774,7 +906,7 @@ static const struct spi_device_id m25p_ids[] = {
> >> 
> >>   	{ "mx25l12855e", INFO(0xc22618, 0, 64 * 1024, 256, 0) },
> >>   	{ "mx25l25635e", INFO(0xc22019, 0, 64 * 1024, 512, 0) },
> >>   	{ "mx25l25655e", INFO(0xc22619, 0, 64 * 1024, 512, 0) },
> >> 
> >> -	{ "mx66l51235l", INFO(0xc2201a, 0, 64 * 1024, 1024, 0) },
> >> +	{ "mx66l51235l", INFO(0xc2201a, 0, 64 * 1024, 1024, M25P80_QUAD_READ)
> >> },
> > 
> > I'm not convinced enabling 4-bit mode should be hard-coded in the MTD
> > driver. There might be a board which uses this chip in 1-bit mode.
> > 
> > We have a setup with Spansion chip here which uses 1-bit addressing in
> > U-Boot, but uses 4-bit addressing in Linux. We use a DT property to
> > configure the SPI bus width for that and I think that's a way to go.
> > Note that there also are chips which use 2-bit wide SPI communication.
> 
> Yes, but if you trace down the patch below, you will see its not hard
> coded. Enabling quad read mode depends on the following:
> 
> 1. Whether flash chip supports it.
>          This information comes from the flash which we are setting above.
> 
> 2. Whether SPI controller supports it.
>              This information is the check down below in the
> patch(spi->mode & SPI_RX_QUAD).
>              spi->mode is set to "SINGLE/DUAL/QUAD" in the SPI framework
> based on the
>             dt property "spi-tx/rx-bus-width".
> So, unless you set spi->mode to SPI_RX_QUAD by setting
> "spi-rx-bus-width" to 4 in dt, default
> will be 1 bit mode only.

So this M25P80_QUAD_READ flag tells us "this chip supports quad read", not 
"force enable quad read" . All right, thanks for clearing this up. I hope it's 
documented somewhere elsewhere than in this email ;-)

Best regards,
Marek Vasut



More information about the linux-mtd mailing list