[SCSI] qla2xxx: Correct descriptions in flash manipulation routines.
authorJoe Carnuccio <joe.carnuccio@qlogic.com>
Thu, 22 Jan 2009 17:45:36 +0000 (09:45 -0800)
committerJames Bottomley <James.Bottomley@HansenPartnership.com>
Sun, 25 Jan 2009 13:58:37 +0000 (07:58 -0600)
When clearing the flash device's SR, the comment is incorrect...
clearing the SR is 2 steps:

1. the SR protect bit is 1, so the first write zero clears only
   that bit,

2. the SR protect bit is now 0, so the next write zero clears the
   remaining bits.

The sector erase debug print more correctly identifies that the erase failed.

Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com>
Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
drivers/scsi/qla2xxx/qla_sup.c

index ed9582603afafd2d70b31330ef31f9b85a3bcef6..9c3b694c049dad0695a4d99d59de28d3a57493ce 100644 (file)
@@ -944,9 +944,9 @@ qla24xx_unprotect_flash(struct qla_hw_data *ha)
        if (!ha->fdt_wrt_disable)
                return;
 
-       /* Disable flash write-protection. */
+       /* Disable flash write-protection, first clear SR protection bit */
        qla24xx_write_flash_dword(ha, flash_conf_addr(ha, 0x101), 0);
-       /* Some flash parts need an additional zero-write to clear bits.*/
+       /* Then write zero again to clear remaining SR bits.*/
        qla24xx_write_flash_dword(ha, flash_conf_addr(ha, 0x101), 0);
 }
 
@@ -1021,7 +1021,7 @@ qla24xx_write_flash_data(scsi_qla_host_t *vha, uint32_t *dwptr, uint32_t faddr,
                            (fdata & 0xff00) |((fdata << 16) &
                            0xff0000) | ((fdata >> 16) & 0xff));
                        if (ret != QLA_SUCCESS) {
-                               DEBUG9(qla_printk("Unable to flash sector: "
+                               DEBUG9(qla_printk("Unable to erase sector: "
                                    "address=%x.\n", faddr));
                                break;
                        }