Bladeren bron

onenand_spl_simple: Call onenand_spl_get_geometry() only once

Do not call onenand_spl_get_geometry() for each block read.

Signed-off-by: Ladislav Michl <ladis@linux-mips.org>
Ladislav Michl 8 jaren geleden
bovenliggende
commit
0da008ef8d
1 gewijzigde bestanden met toevoegingen van 5 en 2 verwijderingen
  1. 5 2
      drivers/mtd/onenand/onenand_spl.c

+ 5 - 2
drivers/mtd/onenand/onenand_spl.c

@@ -110,9 +110,12 @@ static u8 scratch_buf[PAGE_4K];
  */
 int onenand_spl_read_block(int block, int offset, int len, void *dst)
 {
-	int page, read, psize;
+	int page, read;
+	static int psize;
+
+	if (!psize)
+		psize = onenand_spl_get_geometry();
 
-	psize = onenand_spl_get_geometry();
 	/* Calculate the page number */
 	page = offset / psize;
 	/* Offset to the start of a flash page */