Re: Missing cache flush.

Johan Adolfsson (johan.adolfsson@axis.com)
Tue, 5 Jun 2001 11:43:39 +0200


Possibly saying something extremly stupid here,
how about simply "fakewriting" 0xFF to the flash
after an erase to update any caches?

> 2. Flash. A few writes of magic data to magic addresses and a whole erase
> block suddenly contains 0xFF. The CPU doesn't notice that either.

do_erase_stuff();
/* While verifying, update cache */
for (address = adr; address < (adr + size); address++) {
if ((verify = map->read8(map, address)) != 0xFF) {
error = 1;
break;
}
/* "Fake" write 0xFF's to the erased sector so that
caches are updated
* after we verified that uncached data is ok
*/
*(unsigned char*)CACHED(address) = 0xFF;
}

/Johan

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/