[SCSI] lpfc 8.1.1: Miscellaneous Cleanups
authorJames.Smart@Emulex.Com <James.Smart@Emulex.Com>
Mon, 28 Nov 2005 16:41:15 +0000 (11:41 -0500)
committerJames Bottomley <jejb@mulgrave.(none)>
Wed, 14 Dec 2005 01:14:08 +0000 (18:14 -0700)
Miscellaneous Cleanups:
- Remove ProgType READ_REV mailbox command value check in lpfc_config_port_prep.
- Convert simple printk to an lpfc_printf_log in queuecommand.
- Modify lpfc_abort_handler message 0749 to display more accurate text and data.
- Minor style cleanup: fix 3 long lines in lpfc_hw.h

Signed-off-by: James Smart <James.Smart@emulex.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
drivers/scsi/lpfc/lpfc_hw.h
drivers/scsi/lpfc/lpfc_init.c
drivers/scsi/lpfc/lpfc_scsi.c

index 86c41981188b33b5d3c7a204411d79a52d01dce1..bf0c25fa873a745ca1b1ccf3dfbc1a0b43a388e8 100644 (file)
@@ -266,9 +266,11 @@ struct lpfc_name {
                struct {
 #ifdef __BIG_ENDIAN_BITFIELD
                        uint8_t nameType:4;     /* FC Word 0, bit 28:31 */
-                       uint8_t IEEEextMsn:4;   /* FC Word 0, bit 24:27, bit 8:11 of IEEE ext */
+                       uint8_t IEEEextMsn:4;   /* FC Word 0, bit 24:27, bit
+                                                  8:11 of IEEE ext */
 #else  /*  __LITTLE_ENDIAN_BITFIELD */
-                       uint8_t IEEEextMsn:4;   /* FC Word 0, bit 24:27, bit 8:11 of IEEE ext */
+                       uint8_t IEEEextMsn:4;   /* FC Word 0, bit 24:27, bit
+                                                  8:11 of IEEE ext */
                        uint8_t nameType:4;     /* FC Word 0, bit 28:31 */
 #endif
 
@@ -278,7 +280,8 @@ struct lpfc_name {
 #define NAME_IP_TYPE        0x4        /* IP address */
 #define NAME_CCITT_TYPE     0xC
 #define NAME_CCITT_GR_TYPE  0xE
-                       uint8_t IEEEextLsb;     /* FC Word 0, bit 16:23, IEEE extended Lsb */
+                       uint8_t IEEEextLsb;     /* FC Word 0, bit 16:23, IEEE
+                                                  extended Lsb */
                        uint8_t IEEE[6];        /* FC IEEE address */
                } s;
                uint8_t wwn[8];
index 07498118359de9f7a02beadc177af154ce4acc07..3eebe663a2e5ffea7d11178489397c4fad368abd 100644 (file)
@@ -126,34 +126,26 @@ lpfc_config_port_prep(struct lpfc_hba * phba)
                return -ERESTART;
        }
 
-       /* The HBA's current state is provided by the ProgType and rr fields.
-        * Read and check the value of these fields before continuing to config
-        * this port.
+       /*
+        * The value of rr must be 1 since the driver set the cv field to 1.
+        * This setting requires the FW to set all revision fields.
         */
-       if (mb->un.varRdRev.rr == 0 || mb->un.varRdRev.un.b.ProgType != 2) {
-               /* Old firmware */
+       if (mb->un.varRdRev.rr == 0) {
                vp->rev.rBit = 0;
-               lpfc_printf_log(phba,
-                               KERN_ERR,
-                               LOG_INIT,
-                               "%d:0440 Adapter failed to init, mbxCmd x%x "
-                               "READ_REV detected outdated firmware"
-                               "Data: x%x\n",
-                               phba->brd_no,
-                               mb->mbxCommand, 0);
+               lpfc_printf_log(phba, KERN_ERR, LOG_INIT,
+                               "%d:0440 Adapter failed to init, READ_REV has "
+                               "missing revision information.\n",
+                               phba->brd_no);
                mempool_free(pmb, phba->mbox_mem_pool);
                return -ERESTART;
-       } else {
-               vp->rev.rBit = 1;
-               vp->rev.sli1FwRev = mb->un.varRdRev.sli1FwRev;
-               memcpy(vp->rev.sli1FwName,
-                       (char*)mb->un.varRdRev.sli1FwName, 16);
-               vp->rev.sli2FwRev = mb->un.varRdRev.sli2FwRev;
-               memcpy(vp->rev.sli2FwName,
-                                       (char *)mb->un.varRdRev.sli2FwName, 16);
        }
 
        /* Save information as VPD data */
+       vp->rev.rBit = 1;
+       vp->rev.sli1FwRev = mb->un.varRdRev.sli1FwRev;
+       memcpy(vp->rev.sli1FwName, (char*) mb->un.varRdRev.sli1FwName, 16);
+       vp->rev.sli2FwRev = mb->un.varRdRev.sli2FwRev;
+       memcpy(vp->rev.sli2FwName, (char *) mb->un.varRdRev.sli2FwName, 16);
        vp->rev.biuRev = mb->un.varRdRev.biuRev;
        vp->rev.smRev = mb->un.varRdRev.smRev;
        vp->rev.smFwRev = mb->un.varRdRev.un.smFwRev;
index c63275e66e2e6644c1e187904b4838476eda8e37..0aa5ca68433fe0b7313f59adbe3b658a750aaae7 100644 (file)
@@ -721,8 +721,9 @@ lpfc_queuecommand(struct scsi_cmnd *cmnd, void (*done) (struct scsi_cmnd *))
        }
        lpfc_cmd = lpfc_sli_get_scsi_buf (phba);
        if (lpfc_cmd == NULL) {
-               printk(KERN_WARNING "%s: No buffer available - list empty, "
-                      "total count %d\n", __FUNCTION__, phba->total_scsi_bufs);
+               lpfc_printf_log(phba, KERN_INFO, LOG_FCP,
+                               "%d:0707 driver's buffer pool is empty, "
+                               "IO busied\n", phba->brd_no);
                goto out_host_busy;
        }
 
@@ -844,8 +845,8 @@ __lpfc_abort_handler(struct scsi_cmnd *cmnd)
 
  out:
        lpfc_printf_log(phba, KERN_WARNING, LOG_FCP,
-                       "%d:0749 SCSI layer issued abort device: ret %#x, "
-                       "ID %d, LUN %d, snum %#lx\n",
+                       "%d:0749 SCSI Layer I/O Abort Request "
+                       "Status x%x ID %d LUN %d snum %#lx\n",
                        phba->brd_no, ret, cmnd->device->id,
                        cmnd->device->lun, cmnd->serial_number);