[SCSI] lpfc 8.3.2 : Reorganization for SLI4
Preps the organization of the driver so that the bottom half, which interacts with the hardware, can share common code sequences for attachment, detachment, initialization, teardown, etc with new hardware. For very common code sections, which become specific to the interface type, the driver uses an indirect function call. The function is set at initialization. For less common sections, such as initialization, the driver looks at the interface type and calls the routines relative to the interface. Signed-off-by: James Smart <james.smart@emulex.com> Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
This commit is contained in:
committed by
James Bottomley
parent
a366695592
commit
3772a99175
@ -280,6 +280,8 @@ lpfc_debugfs_hbqinfo_data(struct lpfc_hba *phba, char *buf, int size)
|
||||
struct lpfc_dmabuf *d_buf;
|
||||
struct hbq_dmabuf *hbq_buf;
|
||||
|
||||
if (phba->sli_rev != 3)
|
||||
return 0;
|
||||
cnt = LPFC_HBQINFO_SIZE;
|
||||
spin_lock_irq(&phba->hbalock);
|
||||
|
||||
@ -489,12 +491,15 @@ lpfc_debugfs_dumpHostSlim_data(struct lpfc_hba *phba, char *buf, int size)
|
||||
pring->next_cmdidx, pring->local_getidx,
|
||||
pring->flag, pgpp->rspPutInx, pring->numRiocb);
|
||||
}
|
||||
word0 = readl(phba->HAregaddr);
|
||||
word1 = readl(phba->CAregaddr);
|
||||
word2 = readl(phba->HSregaddr);
|
||||
word3 = readl(phba->HCregaddr);
|
||||
len += snprintf(buf+len, size-len, "HA:%08x CA:%08x HS:%08x HC:%08x\n",
|
||||
word0, word1, word2, word3);
|
||||
|
||||
if (phba->sli_rev <= LPFC_SLI_REV3) {
|
||||
word0 = readl(phba->HAregaddr);
|
||||
word1 = readl(phba->CAregaddr);
|
||||
word2 = readl(phba->HSregaddr);
|
||||
word3 = readl(phba->HCregaddr);
|
||||
len += snprintf(buf+len, size-len, "HA:%08x CA:%08x HS:%08x "
|
||||
"HC:%08x\n", word0, word1, word2, word3);
|
||||
}
|
||||
spin_unlock_irq(&phba->hbalock);
|
||||
return len;
|
||||
}
|
||||
|
Reference in New Issue
Block a user