[U-Boot] Macronix NOR_SPI and Quad I/O

Bacrau, Dumitru
2016-11-28T15:49:35Z

Hi guys,

I do have Macronix parts and Quad capability. Unfortunately I am not using the latest U-Boot code (but looks similar) and also I do not have much time today and tomorrow.

Would it be OK if you waited until Wednesday so I can investigate and test this? If it is urgent go ahead and do what you need to, then we can add Quad later.

Thanks,
Radu

-----Original Message-----
From: Champ, Andy [mailto:andycham at amazon.co.uk]
Sent: Monday, November 28, 2016 4:00 AM
To: Jagan Teki <jagan@openedev.com>
Cc: u-boot at lists.denx.de; jteki at openedev.com; radu.bacrau at gmail.com; clsee at altera.com; Bacrau, Dumitru <dumitru.bacrau@intel.com>
Subject: Re: [U-Boot] Macronix NOR_SPI and Quad I/O

I don't have anything that does Quad IO, so I can't test it either.

I think the best thing to do is to disable it for the Macronix parts, and put a comment in the table explaining why. With any luck one day somebody somewhere will have a device with a Macronix chip and quad I/O, and they can do it properly.

If this sounds good I'll put a patch together, run it past our open source lawyers (I'm not allowed to just push!) and send it through.

Alternatively I could put together a patch that sets a different flag bit for Macronix Quad I/O and push that. The only thing is of course that I have no way to test it, and as we all know untested code never works.

Which way should I go?

Regards
Andy Champ
________________________________________
From: Jagan Teki <jagan@openedev.com>
Sent: 26 November 2016 03:13
To: Champ, Andy
Cc: u-boot at lists.denx.de; jteki at openedev.com; radu.bacrau at gmail.com; clsee at altera.com; dumitru.bacrau at intel.com
Subject: Re: [U-Boot] Macronix NOR_SPI and Quad I/O

On Fri, Nov 25, 2016 at 10:07 PM, Champ, Andy <andycham@amazon.co.uk> wrote:
> Hi all,
>
>
> in the table in drivers/mtd/spi/spi_flash_ids.c there is a flag WR_QPP set against Macronix devices (including the ones Dumitru is just adding).
>
>
> This is used when programming the devices on a 4-bit bus to select the command to use for programming - either CMD_QUAD_PAGE_PROGRAM (0x32) or CMD_PAGE_PROGRAM (0x2).
>
>
> The Macronix devices that I have a spec for do not mention command 0x32. Each of the devices that I have a spec for ( MX25L25635F MX25U51245G MX25V8035F and MX25V1635F ) use command 0x38 instead.

We need to fix this, till now no Macronix has been tested with QUAD I think, please send the suitable fix will review.

thanks!
--
Jagan Teki
Free Software Engineer | www.openedev.com U-Boot, Linux | Upstream Maintainer Hyderabad, India.