瀏覽代碼

[DeviceDriver][sfud] Fix block erase 0 byte issue when start address is equal end address.

armink 6 年之前
父節點
當前提交
e1c612bf0a
共有 1 個文件被更改,包括 4 次插入0 次删除
  1. 4 0
      components/drivers/spi/spi_flash_sfud.c

+ 4 - 0
components/drivers/spi/spi_flash_sfud.c

@@ -76,6 +76,10 @@ static rt_err_t rt_sfud_control(rt_device_t dev, int cmd, void *args) {
             return -RT_ERROR;
         }
 
+        if (end_addr == start_addr) {
+            end_addr ++;
+        }
+
         phy_start_addr = start_addr * rtt_dev->geometry.bytes_per_sector;
         phy_size = (end_addr - start_addr) * rtt_dev->geometry.bytes_per_sector;