
Let's use spi_flash_probe for dm and no-dm spi-flash and make respective function definations separately.
Cc: Simon Glass sjg@chromium.org Signed-off-by: Jagan Teki jteki@openedev.com --- Changes for v2: - none
common/cmd_sf.c | 19 ++----------------- drivers/mtd/spi/sf-uclass.c | 17 +---------------- include/spi_flash.h | 18 ++++-------------- 3 files changed, 7 insertions(+), 47 deletions(-)
diff --git a/common/cmd_sf.c b/common/cmd_sf.c index f1926e3..cdc6c26 100644 --- a/common/cmd_sf.c +++ b/common/cmd_sf.c @@ -83,9 +83,6 @@ static int do_spi_flash_probe(int argc, char * const argv[]) unsigned int speed = CONFIG_SF_DEFAULT_SPEED; unsigned int mode = CONFIG_SF_DEFAULT_MODE; char *endp; -#ifndef CONFIG_DM_SPI_FLASH - struct spi_flash *new; -#endif
if (argc >= 2) { cs = simple_strtoul(argv[1], &endp, 0); @@ -113,27 +110,15 @@ static int do_spi_flash_probe(int argc, char * const argv[]) return -1; }
-#ifdef CONFIG_DM_SPI_FLASH - flash = dm_spi_flash_probe(bus, cs, speed, mode); - if (!flash) { - printf("Failed to initialize SPI flash at %u:%u\n", bus, cs); - return 1; - } -#else if (flash) spi_flash_free(flash);
- new = spi_flash_probe(bus, cs, speed, mode); - flash = new; - - if (!new) { + flash = spi_flash_probe(bus, cs, speed, mode); + if (!flash) { printf("Failed to initialize SPI flash at %u:%u\n", bus, cs); return 1; }
- flash = new; -#endif - return 0; }
diff --git a/drivers/mtd/spi/sf-uclass.c b/drivers/mtd/spi/sf-uclass.c index 9c109fa..a1c5810 100644 --- a/drivers/mtd/spi/sf-uclass.c +++ b/drivers/mtd/spi/sf-uclass.c @@ -27,21 +27,6 @@ int spi_flash_erase_dm(struct udevice *dev, u32 offset, size_t len) return sf_get_ops(dev)->erase(dev, offset, len); }
-/* - * TODO(sjg@chromium.org): This is an old-style function. We should remove - * it when all SPI flash drivers use dm - */ -struct spi_flash *spi_flash_probe(unsigned int bus, unsigned int cs, - unsigned int max_hz, unsigned int spi_mode) -{ - struct udevice *dev; - - if (spi_flash_probe_bus_cs(bus, cs, max_hz, spi_mode, &dev)) - return NULL; - - return dev_get_uclass_priv(dev); -} - void spi_flash_free(struct spi_flash *flash) { spi_flash_remove(flash->spi->dev); @@ -67,7 +52,7 @@ static int spi_flash_probe_bus_cs(unsigned int busnum, unsigned int cs, return 0; }
-struct spi_flash *dm_spi_flash_probe(unsigned int busnum, unsigned int cs, +struct spi_flash *spi_flash_probe(unsigned int busnum, unsigned int cs, unsigned int max_hz, unsigned int spi_mode) { struct udevice *bus, *new; diff --git a/include/spi_flash.h b/include/spi_flash.h index 5abbf99..0afc9fb 100644 --- a/include/spi_flash.h +++ b/include/spi_flash.h @@ -154,16 +154,6 @@ int spi_flash_write_dm(struct udevice *dev, u32 offset, size_t len, */ int spi_flash_erase_dm(struct udevice *dev, u32 offset, size_t len);
-struct spi_flash *dm_spi_flash_probe(unsigned int busnum, unsigned int cs, - unsigned int max_hz, unsigned int spi_mode); - -/* Compatibility function - this is the old U-Boot API */ -struct spi_flash *spi_flash_probe(unsigned int bus, unsigned int cs, - unsigned int max_hz, unsigned int spi_mode); - -/* Compatibility function - this is the old U-Boot API */ -void spi_flash_free(struct spi_flash *flash); - int spi_flash_remove(struct udevice *flash);
static inline int spi_flash_read(struct spi_flash *flash, u32 offset, @@ -192,8 +182,6 @@ int sandbox_sf_bind_emul(struct sandbox_state *state, int busnum, int cs, void sandbox_sf_unbind_emul(struct sandbox_state *state, int busnum, int cs);
#else -struct spi_flash *spi_flash_probe(unsigned int bus, unsigned int cs, - unsigned int max_hz, unsigned int spi_mode);
/** * Set up a new SPI flash from an fdt node @@ -207,8 +195,6 @@ struct spi_flash *spi_flash_probe(unsigned int bus, unsigned int cs, struct spi_flash *spi_flash_probe_fdt(const void *blob, int slave_node, int spi_node);
-void spi_flash_free(struct spi_flash *flash); - static inline int spi_flash_read(struct spi_flash *flash, u32 offset, size_t len, void *buf) { @@ -228,6 +214,10 @@ static inline int spi_flash_erase(struct spi_flash *flash, u32 offset, } #endif
+struct spi_flash *spi_flash_probe(unsigned int bus, unsigned int cs, + unsigned int max_hz, unsigned int spi_mode); +void spi_flash_free(struct spi_flash *flash); + void spi_boot(void) __noreturn; void spi_spl_load_image(uint32_t offs, unsigned int size, void *vdst);