Explorar el Código

[SCSI] lpfc: Add LP6000 PCI ID

Fix driver not seeing LP6000.  Fix: add PCI id to the pci_device_id
table and a short description for the HBA in get_hba_model_desc().
Also add a default clause to the switch statement that parses the
various PCI ID's.

Signed-off-by: James Smart <James.Smart@emulex.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
James.Smart@Emulex.Com hace 20 años
padre
commit
06325e7459
Se han modificado 1 ficheros con 8 adiciones y 0 borrados
  1. 8 0
      drivers/scsi/lpfc/lpfc_init.c

+ 8 - 0
drivers/scsi/lpfc/lpfc_init.c

@@ -780,6 +780,9 @@ lpfc_get_hba_model_desc(struct lpfc_hba * phba, uint8_t * mdp, uint8_t * descp)
 	pci_read_config_dword(phba->pcidev, PCI_VENDOR_ID, &id);
 
 	switch ((id >> 16) & 0xffff) {
+	case PCI_DEVICE_ID_FIREFLY:
+		strcpy(str, "LP6000 1");
+		break;
 	case PCI_DEVICE_ID_SUPERFLY:
 		if (vp->rev.biuRev >= 1 && vp->rev.biuRev <= 3)
 			strcpy(str, "LP7000 1");
@@ -837,6 +840,9 @@ lpfc_get_hba_model_desc(struct lpfc_hba * phba, uint8_t * mdp, uint8_t * descp)
 	case PCI_DEVICE_ID_LP10000S:
 		strcpy(str, "LP10000-S 2");
 		break;
+	default:
+		memset(str, 0, 16);
+		break;
 	}
 	if (mdp)
 		sscanf(str, "%s", mdp);
@@ -1662,6 +1668,8 @@ lpfc_pci_remove_one(struct pci_dev *pdev)
 static struct pci_device_id lpfc_id_table[] = {
 	{PCI_VENDOR_ID_EMULEX, PCI_DEVICE_ID_VIPER,
 		PCI_ANY_ID, PCI_ANY_ID, },
+	{PCI_VENDOR_ID_EMULEX, PCI_DEVICE_ID_FIREFLY,
+		PCI_ANY_ID, PCI_ANY_ID, },
 	{PCI_VENDOR_ID_EMULEX, PCI_DEVICE_ID_THOR,
 		PCI_ANY_ID, PCI_ANY_ID, },
 	{PCI_VENDOR_ID_EMULEX, PCI_DEVICE_ID_PEGASUS,