dslinux/linux-2.6.x/drivers/mtd/devices firmware.c

amadeus dslinux_amadeus at user.in-berlin.de
Sat Aug 5 23:41:07 CEST 2006


Update of /cvsroot/dslinux/dslinux/linux-2.6.x/drivers/mtd/devices
In directory antilope:/tmp/cvs-serv2688/linux-2.6.x/drivers/mtd/devices

Modified Files:
	firmware.c 
Log Message:
Fix firmware read bug due to old ARM9 data cache contents.

Index: firmware.c
===================================================================
RCS file: /cvsroot/dslinux/dslinux/linux-2.6.x/drivers/mtd/devices/firmware.c,v
retrieving revision 1.7
retrieving revision 1.8
diff -u -d -r1.7 -r1.8
--- firmware.c	7 May 2006 11:41:11 -0000	1.7
+++ firmware.c	5 Aug 2006 21:41:05 -0000	1.8
@@ -59,6 +59,8 @@
 	/* invalidate cache before we read data written by ARM7 */
 	dmac_inv_range((unsigned long)&firmware_block,
                       ((unsigned long)&firmware_block)+sizeof(firmware_block)); 
+	dmac_inv_range((unsigned long)&firmware_block.data,
+                      (((unsigned long)&firmware_block.data)+firmware_block.len)); 
 
 	/* copy data to caller. Here better than in interrupt callback. */
 	memcpy(firmware_block.destination,




More information about the dslinux-commit mailing list