video: Convert CONFIG_VIDEO_LOGO to Kconfig
[platform/kernel/u-boot.git] / include / spi_flash.h
index 0b23f57..4d4ae89 100644 (file)
@@ -9,10 +9,11 @@
 #ifndef _SPI_FLASH_H_
 #define _SPI_FLASH_H_
 
-#include <dm.h>        /* Because we dereference struct udevice here */
 #include <linux/types.h>
 #include <linux/mtd/spi-nor.h>
 
+struct udevice;
+
 /* by default ENV use the same parameters than SF command */
 #ifndef CONFIG_ENV_SPI_BUS
 # define CONFIG_ENV_SPI_BUS    CONFIG_SF_DEFAULT_BUS
@@ -52,7 +53,7 @@ struct dm_spi_flash_ops {
 /* Access the serial operations for a device */
 #define sf_get_ops(dev) ((struct dm_spi_flash_ops *)(dev)->driver->ops)
 
-#ifdef CONFIG_DM_SPI_FLASH
+#if CONFIG_IS_ENABLED(DM_SPI_FLASH)
 /**
  * spi_flash_read_dm() - Read data from SPI flash
  *
@@ -123,7 +124,9 @@ 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);
+static inline 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)
@@ -162,6 +165,9 @@ static inline int spi_flash_read(struct spi_flash *flash, u32 offset,
        struct mtd_info *mtd = &flash->mtd;
        size_t retlen;
 
+       if (!len)
+               return 0;
+
        return mtd->_read(mtd, offset, len, &retlen, buf);
 }
 
@@ -171,6 +177,9 @@ static inline int spi_flash_write(struct spi_flash *flash, u32 offset,
        struct mtd_info *mtd = &flash->mtd;
        size_t retlen;
 
+       if (!len)
+               return 0;
+
        return mtd->_write(mtd, offset, len, &retlen, buf);
 }
 
@@ -185,6 +194,9 @@ static inline int spi_flash_erase(struct spi_flash *flash, u32 offset,
                return -EINVAL;
        }
 
+       if (!len)
+               return 0;
+
        memset(&instr, 0, sizeof(instr));
        instr.addr = offset;
        instr.len = len;