This patch resets the spi to 3 byte mode needed for devices with more than 16M Flash. Tested on the Onion Omega2+ (MT7688)
Signed-off-by: L. D. Pinney <ldpin...@gmail.com> Tested-by: Nita Vesa <werec...@gmail.com> --- diff --git a/target/linux/ramips/patches-4.4/101-spi-reset-to-3-byte-mode.patch b/target/linux/ramips/patches-4.4/101-spi-reset-to-3-byte-mode.patch new file mode 100644 index 0000000..b126411 --- /dev/null +++ b/target/linux/ramips/patches-4.4/101-spi-reset-to-3-byte-mode.patch @@ -0,0 +1,24 @@ +Index: linux-4.4.40/drivers/mtd/devices/m25p80.c +=================================================================== +--- linux-4.4.40.orig/drivers/mtd/devices/m25p80.c ++++ linux-4.4.40/drivers/mtd/devices/m25p80.c +@@ -261,6 +261,11 @@ static int m25p_remove(struct spi_device + { + struct m25p *flash = spi_get_drvdata(spi); + ++ flash->command[0] = 0x66; ++ spi_write(flash->spi, flash->command, 1); ++ flash->command[0] = 0x99; ++ spi_write(flash->spi, flash->command, 1); ++ + /* Clean up MTD stuff. */ + return mtd_device_unregister(&flash->spi_nor.mtd); + } +@@ -328,6 +333,7 @@ static struct spi_driver m25p80_driver = + .id_table = m25p_ids, + .probe = m25p_probe, + .remove = m25p_remove, ++ .shutdown = m25p_remove, + + /* REVISIT: many of these chips have deep power-down modes, which + * should clearly be entered on suspend() to minimize power use. _______________________________________________ Lede-dev mailing list Lede-dev@lists.infradead.org http://lists.infradead.org/mailman/listinfo/lede-dev