u-boot/drivers/mtd/spi
Pratyush Yadav 575caf4500 mtd: spi-nor-core: Perform a Soft Reset on shutdown
On probe, the SPI NOR core will put a flash in 8D-8D-8D mode if it
supports it. But Linux as of now expects to get the flash in 1S-1S-1S
mode. Handing the flash to Linux in Octal DTR mode means the kernel will
fail to detect the flash.

So, we need to reset to Power-on-Reset (POR) state before handing off
the flash. A Software Reset command can be used to do this.

One limitation of the soft reset is that it will restore state from
non-volatile registers in some flashes. This means that if the flash was
set to 8D mode in a non-volatile configuration, a soft reset won't help.
This commit assumes that we don't set any non-volatile bits anywhere,
and the flash doesn't have any non-volatile Octal DTR mode
configuration.

Since spi-nor-tiny doesn't (and likely shouldn't) have
spi_nor_soft_reset(), add a dummy spi_nor_remove() for it that does
nothing.

Signed-off-by: Pratyush Yadav <p.yadav@ti.com>
Reviewed-by: Jagan Teki <jagan@amarulasolutions.com>
2021-06-28 12:04:53 +05:30
..
fsl_espi_spl.c common: Move hang() to the same header as panic() 2020-01-17 17:53:40 -05:00
Kconfig mtd: spi-nor-core: Perform a Soft Reset on shutdown 2021-06-28 12:04:53 +05:30
Makefile spi: Allow separate control of SPI_FLASH_TINY for SPL/TPL 2020-08-03 22:19:54 -04:00
sandbox.c dm: Avoid accessing seq directly 2020-12-18 20:32:21 -07:00
sf-uclass.c sf: Support querying write-protect 2021-03-27 15:04:31 +13:00
sf_dataflash.c dm: treewide: Rename auto_alloc_size members to be shorter 2020-12-13 08:00:25 -07:00
sf_internal.h mtd: spi-nor-core: Add support for DTR protocol 2021-06-28 12:00:32 +05:30
sf_mtd.c mtd: spi-nor: fill-in mtd->dev member 2021-06-24 11:53:50 +05:30
sf_probe.c mtd: spi-nor-core: Perform a Soft Reset on shutdown 2021-06-28 12:04:53 +05:30
spi-nor-core.c mtd: spi-nor-core: Perform a Soft Reset on shutdown 2021-06-28 12:04:53 +05:30
spi-nor-ids.c mtd: spi-nor-ids: Add Macronix MX66UW2G345G 2021-06-22 13:53:24 +05:30
spi-nor-tiny.c mtd: spi-nor-core: Add a ->setup() hook 2021-06-28 11:58:10 +05:30