Преглед изворни кода

[MTD] NAND: nandsim: support subpage write

As flash cannot do 0->1 bit transitions when programming, do not do this in
the simulator too. This makes nandsim able to accept subpage writes.

Signed-off-by: Artem Bityutskiy <dedekind@infradead.org>
Signed-off-by: David Woodhouse <dwmw2@infradead.org>
Artem Bityutskiy пре 18 година
родитељ
комит
82810b7b6c
1 измењених фајлова са 3 додато и 1 уклоњено
  1. 3 1
      drivers/mtd/nand/nandsim.c

+ 3 - 1
drivers/mtd/nand/nandsim.c

@@ -852,6 +852,7 @@ static void erase_sector(struct nandsim *ns)
  */
 static int prog_page(struct nandsim *ns, int num)
 {
+	int i;
 	union ns_mem *mypage;
 	u_char *pg_off;
 
@@ -867,7 +868,8 @@ static int prog_page(struct nandsim *ns, int num)
 	}
 
 	pg_off = NS_PAGE_BYTE_OFF(ns);
-	memcpy(pg_off, ns->buf.byte, num);
+	for (i = 0; i < num; i++)
+		pg_off[i] &= ns->buf.byte[i];
 
 	return 0;
 }