1
0
mirror of https://review.coreboot.org/flashrom.git synced 2025-04-26 22:52:34 +02:00

Refine messages of SPI block protection disables

Make them real progress indicators with a final "done" message on success.

Corresponding to flashrom svn r1561.

Signed-off-by: Stefan Tauner <stefan.tauner@alumni.tuwien.ac.at>
Acked-by: Stefan Tauner <stefan.tauner@alumni.tuwien.ac.at>
This commit is contained in:
Stefan Tauner 2012-08-02 23:56:49 +00:00
parent 1ba08f6d41
commit 87fbb77866
2 changed files with 15 additions and 11 deletions

21
at25.c
View File

@ -164,7 +164,7 @@ int spi_disable_blockprotect_at25df(struct flashctx *flash)
if ((status & (3 << 2)) == 0) if ((status & (3 << 2)) == 0)
return 0; return 0;
msg_cdbg("Some block protection in effect, disabling\n"); msg_cdbg("Some block protection in effect, disabling... ");
if (status & (1 << 7)) { if (status & (1 << 7)) {
msg_cdbg("Need to disable Sector Protection Register Lock\n"); msg_cdbg("Need to disable Sector Protection Register Lock\n");
if ((status & (1 << 4)) == 0) { if ((status & (1 << 4)) == 0) {
@ -175,7 +175,7 @@ int spi_disable_blockprotect_at25df(struct flashctx *flash)
/* All bits except bit 7 (SPRL) are readonly. */ /* All bits except bit 7 (SPRL) are readonly. */
result = spi_write_status_register(flash, status & ~(1 << 7)); result = spi_write_status_register(flash, status & ~(1 << 7));
if (result) { if (result) {
msg_cerr("spi_write_status_register failed\n"); msg_cerr("spi_write_status_register failed.\n");
return result; return result;
} }
@ -183,7 +183,7 @@ int spi_disable_blockprotect_at25df(struct flashctx *flash)
/* Global unprotect. Make sure to mask SPRL as well. */ /* Global unprotect. Make sure to mask SPRL as well. */
result = spi_write_status_register(flash, status & ~0xbc); result = spi_write_status_register(flash, status & ~0xbc);
if (result) { if (result) {
msg_cerr("spi_write_status_register failed\n"); msg_cerr("spi_write_status_register failed.\n");
return result; return result;
} }
status = spi_read_status_register(flash); status = spi_read_status_register(flash);
@ -191,6 +191,7 @@ int spi_disable_blockprotect_at25df(struct flashctx *flash)
msg_cerr("Block protection could not be disabled!\n"); msg_cerr("Block protection could not be disabled!\n");
return 1; return 1;
} }
msg_cdbg("done.\n");
return 0; return 0;
} }
@ -219,20 +220,20 @@ int spi_disable_blockprotect_at25fs010(struct flashctx *flash)
if ((status & 0x6c) == 0) if ((status & 0x6c) == 0)
return 0; return 0;
msg_cdbg("Some block protection in effect, disabling\n"); msg_cdbg("Some block protection in effect, disabling... ");
if (status & (1 << 7)) { if (status & (1 << 7)) {
msg_cdbg("Need to disable Status Register Write Protect\n"); msg_cdbg("Need to disable Status Register Write Protect\n");
/* Clear bit 7 (WPEN). */ /* Clear bit 7 (WPEN). */
result = spi_write_status_register(flash, status & ~(1 << 7)); result = spi_write_status_register(flash, status & ~(1 << 7));
if (result) { if (result) {
msg_cerr("spi_write_status_register failed\n"); msg_cerr("spi_write_status_register failed.\n");
return result; return result;
} }
} }
/* Global unprotect. Make sure to mask WPEN as well. */ /* Global unprotect. Make sure to mask WPEN as well. */
result = spi_write_status_register(flash, status & ~0xec); result = spi_write_status_register(flash, status & ~0xec);
if (result) { if (result) {
msg_cerr("spi_write_status_register failed\n"); msg_cerr("spi_write_status_register failed.\n");
return result; return result;
} }
status = spi_read_status_register(flash); status = spi_read_status_register(flash);
@ -240,6 +241,7 @@ int spi_disable_blockprotect_at25fs010(struct flashctx *flash)
msg_cerr("Block protection could not be disabled!\n"); msg_cerr("Block protection could not be disabled!\n");
return 1; return 1;
} }
msg_cdbg("done.\n");
return 0; return 0;
} }
@ -253,20 +255,20 @@ int spi_disable_blockprotect_at25fs040(struct flashctx *flash)
if ((status & 0x7c) == 0) if ((status & 0x7c) == 0)
return 0; return 0;
msg_cdbg("Some block protection in effect, disabling\n"); msg_cdbg("Some block protection in effect, disabling... ");
if (status & (1 << 7)) { if (status & (1 << 7)) {
msg_cdbg("Need to disable Status Register Write Protect\n"); msg_cdbg("Need to disable Status Register Write Protect\n");
/* Clear bit 7 (WPEN). */ /* Clear bit 7 (WPEN). */
result = spi_write_status_register(flash, status & ~(1 << 7)); result = spi_write_status_register(flash, status & ~(1 << 7));
if (result) { if (result) {
msg_cerr("spi_write_status_register failed\n"); msg_cerr("spi_write_status_register failed.\n");
return result; return result;
} }
} }
/* Global unprotect. Make sure to mask WPEN as well. */ /* Global unprotect. Make sure to mask WPEN as well. */
result = spi_write_status_register(flash, status & ~0xfc); result = spi_write_status_register(flash, status & ~0xfc);
if (result) { if (result) {
msg_cerr("spi_write_status_register failed\n"); msg_cerr("spi_write_status_register failed.\n");
return result; return result;
} }
status = spi_read_status_register(flash); status = spi_read_status_register(flash);
@ -274,5 +276,6 @@ int spi_disable_blockprotect_at25fs040(struct flashctx *flash)
msg_cerr("Block protection could not be disabled!\n"); msg_cerr("Block protection could not be disabled!\n");
return 1; return 1;
} }
msg_cdbg("done.\n");
return 0; return 0;
} }

View File

@ -933,10 +933,10 @@ int spi_disable_blockprotect(struct flashctx *flash)
if ((status & 0x3c) == 0) if ((status & 0x3c) == 0)
return 0; return 0;
msg_cdbg("Some block protection in effect, disabling\n"); msg_cdbg("Some block protection in effect, disabling... ");
result = spi_write_status_register(flash, status & ~0x3c); result = spi_write_status_register(flash, status & ~0x3c);
if (result) { if (result) {
msg_cerr("spi_write_status_register failed\n"); msg_cerr("spi_write_status_register failed.\n");
return result; return result;
} }
status = spi_read_status_register(flash); status = spi_read_status_register(flash);
@ -944,6 +944,7 @@ int spi_disable_blockprotect(struct flashctx *flash)
msg_cerr("Block protection could not be disabled!\n"); msg_cerr("Block protection could not be disabled!\n");
return 1; return 1;
} }
msg_cdbg("done.\n");
return 0; return 0;
} }