瀏覽代碼

sf: fix stmicro offset setup while erasing

Reported-by: Peter Gombos <gombos@protecta.hu>
Signed-off-by: Mike Frysinger <vapier@gentoo.org>
Mike Frysinger 15 年之前
父節點
當前提交
fcffb680e7
共有 1 個文件被更改,包括 2 次插入1 次删除
  1. 2 1
      drivers/mtd/spi/stmicro.c

+ 2 - 1
drivers/mtd/spi/stmicro.c

@@ -281,7 +281,8 @@ int stmicro_erase(struct spi_flash *flash, u32 offset, size_t len)
 
 	ret = 0;
 	for (actual = 0; actual < len; actual++) {
-		cmd[1] = (offset / sector_size) + actual;
+		cmd[1] = offset >> 16;
+		offset += sector_size;
 
 		ret = spi_flash_cmd(flash->spi, CMD_M25PXX_WREN, NULL, 0);
 		if (ret < 0) {