- u32 * volatile addr = (u32 * volatile)(info->start[sect]);
-
- /* erase sector: */
- /* The strata flashs are aligned side by side on */
- /* the data bus, so we have to write the commands */
- /* to both chips here: */
-
- *addr = 0x00200020; /* erase setup */
- *addr = 0x00D000D0; /* erase confirm */
-
- while ((*addr & 0x00800080) != 0x00800080) {
- if (get_timer_masked() > CFG_FLASH_ERASE_TOUT) {
- *addr = 0x00B000B0; /* suspend erase*/
- *addr = 0x00FF00FF; /* read mode */
+ u16 * volatile addr = (u16 * volatile)(info->start[sect]);
+
+ PRINTK("unlocking sector\n");
+ *addr = 0x0060;
+ *addr = 0x00d0;
+ *addr = 0x00ff;
+
+ PRINTK("erasing sector\n");
+ *addr = 0x0020;
+ PRINTK("confirming erase\n");
+ *addr = 0x00D0;
+
+ while ((*addr & 0x0080) != 0x0080) {
+ PRINTK(".");
+ if (get_timer(start) > CONFIG_SYS_FLASH_ERASE_TOUT) {
+ *addr = 0x00B0; /* suspend erase*/
+ *addr = 0x00FF; /* read mode */