
Guys,
Let get back to the original thread. Since Rajat's first reply, the message id has been changed. All the comments were not captured by patchwork.
On 10/11/18 07:50, Stefan Roese wrote:
Some SPI NOR chips only support 4-byte mode addressing. Here the default 3-byte mode does not work and leads to incorrect accesses. This patch now reads the 4-byte mode status bit (in this case in the CR register of the Macronix SPI NOR) and configures the SPI transfers accordingly.
This was noticed on the LinkIt Smart 7688 modul, which is equipped with an Macronix MX25L25635F device. But this device does *NOT* support switching to 3-byte mode via the EX4B command.
This should also work when the bootrom configures the SPI flash to 4-byte mode and runs U-Boot after this. U-Boot should dectect this mode (if the 4-byte mode detection is available for this chip) and use the correct OPs in this case.
From what I read, Rajat's method is to extend the controller driver to
support read SFDP and default to 4-byte mode if supported, or overwritten by user's flag. Stefan's method is to read 4-byte status bit and doesn't change controller driver.
Is the default value of this 4-byte status bit valid and correct for all cases?
Rajat, without your patch set, does Stefan's solution work for your board?
York