diff options
author | James Smart <James.Smart@Emulex.Com> | 2008-08-24 21:50:06 -0400 |
---|---|---|
committer | James Bottomley <James.Bottomley@HansenPartnership.com> | 2008-10-13 09:28:54 -0400 |
commit | 84774a4d0a4dba8a5767da6c58ea5a8c5b0cfe25 (patch) | |
tree | 2bc1c62a32f76260ae5743f7888c4ff45122cef4 /drivers/scsi/lpfc/lpfc_init.c | |
parent | d7c255b26d8e3f12164d82093de3bf22efad2b4a (diff) |
[SCSI] lpfc 8.2.8 : Add new FCOE hardware support
Signed-off-by: James Smart <james.smart@emulex.com>
Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
Diffstat (limited to 'drivers/scsi/lpfc/lpfc_init.c')
-rw-r--r-- | drivers/scsi/lpfc/lpfc_init.c | 30 |
1 files changed, 28 insertions, 2 deletions
diff --git a/drivers/scsi/lpfc/lpfc_init.c b/drivers/scsi/lpfc/lpfc_init.c index b8989c43aaf2..41a8c13e6950 100644 --- a/drivers/scsi/lpfc/lpfc_init.c +++ b/drivers/scsi/lpfc/lpfc_init.c | |||
@@ -1130,6 +1130,7 @@ lpfc_get_hba_model_desc(struct lpfc_hba *phba, uint8_t *mdp, uint8_t *descp) | |||
1130 | lpfc_vpd_t *vp; | 1130 | lpfc_vpd_t *vp; |
1131 | uint16_t dev_id = phba->pcidev->device; | 1131 | uint16_t dev_id = phba->pcidev->device; |
1132 | int max_speed; | 1132 | int max_speed; |
1133 | int GE = 0; | ||
1133 | struct { | 1134 | struct { |
1134 | char * name; | 1135 | char * name; |
1135 | int max_speed; | 1136 | int max_speed; |
@@ -1261,6 +1262,19 @@ lpfc_get_hba_model_desc(struct lpfc_hba *phba, uint8_t *mdp, uint8_t *descp) | |||
1261 | case PCI_DEVICE_ID_SAT_S: | 1262 | case PCI_DEVICE_ID_SAT_S: |
1262 | m = (typeof(m)){"LPe12000-S", max_speed, "PCIe"}; | 1263 | m = (typeof(m)){"LPe12000-S", max_speed, "PCIe"}; |
1263 | break; | 1264 | break; |
1265 | case PCI_DEVICE_ID_HORNET: | ||
1266 | m = (typeof(m)){"LP21000", max_speed, "PCIe"}; | ||
1267 | GE = 1; | ||
1268 | break; | ||
1269 | case PCI_DEVICE_ID_PROTEUS_VF: | ||
1270 | m = (typeof(m)) {"LPev12000", max_speed, "PCIe IOV"}; | ||
1271 | break; | ||
1272 | case PCI_DEVICE_ID_PROTEUS_PF: | ||
1273 | m = (typeof(m)) {"LPev12000", max_speed, "PCIe IOV"}; | ||
1274 | break; | ||
1275 | case PCI_DEVICE_ID_PROTEUS_S: | ||
1276 | m = (typeof(m)) {"LPemv12002-S", max_speed, "PCIe IOV"}; | ||
1277 | break; | ||
1264 | default: | 1278 | default: |
1265 | m = (typeof(m)){ NULL }; | 1279 | m = (typeof(m)){ NULL }; |
1266 | break; | 1280 | break; |
@@ -1270,8 +1284,11 @@ lpfc_get_hba_model_desc(struct lpfc_hba *phba, uint8_t *mdp, uint8_t *descp) | |||
1270 | snprintf(mdp, 79,"%s", m.name); | 1284 | snprintf(mdp, 79,"%s", m.name); |
1271 | if (descp && descp[0] == '\0') | 1285 | if (descp && descp[0] == '\0') |
1272 | snprintf(descp, 255, | 1286 | snprintf(descp, 255, |
1273 | "Emulex %s %dGb %s Fibre Channel Adapter", | 1287 | "Emulex %s %d%s %s %s", |
1274 | m.name, m.max_speed, m.bus); | 1288 | m.name, m.max_speed, |
1289 | (GE) ? "GE" : "Gb", | ||
1290 | m.bus, | ||
1291 | (GE) ? "FCoE Adapter" : "Fibre Channel Adapter"); | ||
1275 | } | 1292 | } |
1276 | 1293 | ||
1277 | /** | 1294 | /** |
@@ -2248,6 +2265,7 @@ lpfc_pci_probe_one(struct pci_dev *pdev, const struct pci_device_id *pid) | |||
2248 | goto out_free_phba; | 2265 | goto out_free_phba; |
2249 | 2266 | ||
2250 | INIT_LIST_HEAD(&phba->port_list); | 2267 | INIT_LIST_HEAD(&phba->port_list); |
2268 | init_waitqueue_head(&phba->wait_4_mlo_m_q); | ||
2251 | /* | 2269 | /* |
2252 | * Get all the module params for configuring this host and then | 2270 | * Get all the module params for configuring this host and then |
2253 | * establish the host. | 2271 | * establish the host. |
@@ -2796,6 +2814,8 @@ static struct pci_device_id lpfc_id_table[] = { | |||
2796 | PCI_ANY_ID, PCI_ANY_ID, }, | 2814 | PCI_ANY_ID, PCI_ANY_ID, }, |
2797 | {PCI_VENDOR_ID_EMULEX, PCI_DEVICE_ID_ZEPHYR, | 2815 | {PCI_VENDOR_ID_EMULEX, PCI_DEVICE_ID_ZEPHYR, |
2798 | PCI_ANY_ID, PCI_ANY_ID, }, | 2816 | PCI_ANY_ID, PCI_ANY_ID, }, |
2817 | {PCI_VENDOR_ID_EMULEX, PCI_DEVICE_ID_HORNET, | ||
2818 | PCI_ANY_ID, PCI_ANY_ID, }, | ||
2799 | {PCI_VENDOR_ID_EMULEX, PCI_DEVICE_ID_ZEPHYR_SCSP, | 2819 | {PCI_VENDOR_ID_EMULEX, PCI_DEVICE_ID_ZEPHYR_SCSP, |
2800 | PCI_ANY_ID, PCI_ANY_ID, }, | 2820 | PCI_ANY_ID, PCI_ANY_ID, }, |
2801 | {PCI_VENDOR_ID_EMULEX, PCI_DEVICE_ID_ZEPHYR_DCSP, | 2821 | {PCI_VENDOR_ID_EMULEX, PCI_DEVICE_ID_ZEPHYR_DCSP, |
@@ -2826,6 +2846,12 @@ static struct pci_device_id lpfc_id_table[] = { | |||
2826 | PCI_ANY_ID, PCI_ANY_ID, }, | 2846 | PCI_ANY_ID, PCI_ANY_ID, }, |
2827 | {PCI_VENDOR_ID_EMULEX, PCI_DEVICE_ID_SAT_S, | 2847 | {PCI_VENDOR_ID_EMULEX, PCI_DEVICE_ID_SAT_S, |
2828 | PCI_ANY_ID, PCI_ANY_ID, }, | 2848 | PCI_ANY_ID, PCI_ANY_ID, }, |
2849 | {PCI_VENDOR_ID_EMULEX, PCI_DEVICE_ID_PROTEUS_VF, | ||
2850 | PCI_ANY_ID, PCI_ANY_ID, }, | ||
2851 | {PCI_VENDOR_ID_EMULEX, PCI_DEVICE_ID_PROTEUS_PF, | ||
2852 | PCI_ANY_ID, PCI_ANY_ID, }, | ||
2853 | {PCI_VENDOR_ID_EMULEX, PCI_DEVICE_ID_PROTEUS_S, | ||
2854 | PCI_ANY_ID, PCI_ANY_ID, }, | ||
2829 | { 0 } | 2855 | { 0 } |
2830 | }; | 2856 | }; |
2831 | 2857 | ||