lpfc_init.c (6175c02a0b12f92c03b56c756c4f1e131ae1456c) lpfc_init.c (e4adb20406385d1cc8fdb15e92ed7ac3d0ae41f6)
1/*******************************************************************
2 * This file is part of the Emulex Linux Device Driver for *
3 * Fibre Channel Host Bus Adapters. *
4 * Copyright (C) 2004-2005 Emulex. All rights reserved. *
5 * EMULEX and SLI are trademarks of Emulex. *
6 * www.emulex.com *
7 * Portions Copyright (C) 2004-2005 Christoph Hellwig *
8 * *

--- 745 unchanged lines hidden (view full) ---

754
755 return(1);
756}
757
758static void
759lpfc_get_hba_model_desc(struct lpfc_hba * phba, uint8_t * mdp, uint8_t * descp)
760{
761 lpfc_vpd_t *vp;
1/*******************************************************************
2 * This file is part of the Emulex Linux Device Driver for *
3 * Fibre Channel Host Bus Adapters. *
4 * Copyright (C) 2004-2005 Emulex. All rights reserved. *
5 * EMULEX and SLI are trademarks of Emulex. *
6 * www.emulex.com *
7 * Portions Copyright (C) 2004-2005 Christoph Hellwig *
8 * *

--- 745 unchanged lines hidden (view full) ---

754
755 return(1);
756}
757
758static void
759lpfc_get_hba_model_desc(struct lpfc_hba * phba, uint8_t * mdp, uint8_t * descp)
760{
761 lpfc_vpd_t *vp;
762 uint32_t id;
762 uint16_t dev_id;
763 uint8_t hdrtype;
764 char str[16];
765
766 vp = &phba->vpd;
763 uint8_t hdrtype;
764 char str[16];
765
766 vp = &phba->vpd;
767 pci_read_config_dword(phba->pcidev, PCI_VENDOR_ID, &id);
767 pci_read_config_word(phba->pcidev, PCI_DEVICE_ID, &dev_id);
768 pci_read_config_byte(phba->pcidev, PCI_HEADER_TYPE, &hdrtype);
769
768 pci_read_config_byte(phba->pcidev, PCI_HEADER_TYPE, &hdrtype);
769
770 switch ((id >> 16) & 0xffff) {
770 switch (dev_id) {
771 case PCI_DEVICE_ID_FIREFLY:
772 strcpy(str, "LP6000 1");
773 break;
774 case PCI_DEVICE_ID_SUPERFLY:
775 if (vp->rev.biuRev >= 1 && vp->rev.biuRev <= 3)
776 strcpy(str, "LP7000 1");
777 else
778 strcpy(str, "LP7000E 1");

--- 32 unchanged lines hidden (view full) ---

811 strcpy(str, "LP1050 2");
812 break;
813 case PCI_DEVICE_ID_HELIOS:
814 if (hdrtype == 0x80)
815 strcpy(str, "LP11002 4");
816 else
817 strcpy(str, "LP11000 4");
818 break;
771 case PCI_DEVICE_ID_FIREFLY:
772 strcpy(str, "LP6000 1");
773 break;
774 case PCI_DEVICE_ID_SUPERFLY:
775 if (vp->rev.biuRev >= 1 && vp->rev.biuRev <= 3)
776 strcpy(str, "LP7000 1");
777 else
778 strcpy(str, "LP7000E 1");

--- 32 unchanged lines hidden (view full) ---

811 strcpy(str, "LP1050 2");
812 break;
813 case PCI_DEVICE_ID_HELIOS:
814 if (hdrtype == 0x80)
815 strcpy(str, "LP11002 4");
816 else
817 strcpy(str, "LP11000 4");
818 break;
819 case PCI_DEVICE_ID_HELIOS_SCSP:
820 strcpy(str, "LP11000-SP 4");
821 break;
822 case PCI_DEVICE_ID_HELIOS_DCSP:
823 strcpy(str, "LP11002-SP 4");
824 break;
825 case PCI_DEVICE_ID_NEPTUNE:
826 if (hdrtype == 0x80)
827 strcpy(str, "LPe1002 4");
828 else
829 strcpy(str, "LPe1000 4");
830 break;
831 case PCI_DEVICE_ID_NEPTUNE_SCSP:
832 strcpy(str, "LPe1000-SP 4");
833 break;
834 case PCI_DEVICE_ID_NEPTUNE_DCSP:
835 strcpy(str, "LPe1002-SP 4");
836 break;
819 case PCI_DEVICE_ID_BMID:
820 strcpy(str, "LP1150 4");
821 break;
822 case PCI_DEVICE_ID_BSMB:
823 strcpy(str, "LP111 4");
824 break;
825 case PCI_DEVICE_ID_ZEPHYR:
826 if (hdrtype == 0x80)
827 strcpy(str, "LPe11002 4");
828 else
829 strcpy(str, "LPe11000 4");
830 break;
837 case PCI_DEVICE_ID_BMID:
838 strcpy(str, "LP1150 4");
839 break;
840 case PCI_DEVICE_ID_BSMB:
841 strcpy(str, "LP111 4");
842 break;
843 case PCI_DEVICE_ID_ZEPHYR:
844 if (hdrtype == 0x80)
845 strcpy(str, "LPe11002 4");
846 else
847 strcpy(str, "LPe11000 4");
848 break;
849 case PCI_DEVICE_ID_ZEPHYR_SCSP:
850 strcpy(str, "LPe11000-SP 4");
851 break;
852 case PCI_DEVICE_ID_ZEPHYR_DCSP:
853 strcpy(str, "LPe11002-SP 4");
854 break;
831 case PCI_DEVICE_ID_ZMID:
832 strcpy(str, "LPe1150 4");
833 break;
834 case PCI_DEVICE_ID_ZSMB:
835 strcpy(str, "LPe111 4");
836 break;
837 case PCI_DEVICE_ID_LP101:
838 strcpy(str, "LP101 2");
839 break;
840 case PCI_DEVICE_ID_LP10000S:
841 strcpy(str, "LP10000-S 2");
842 break;
843 default:
844 memset(str, 0, 16);
845 break;
855 case PCI_DEVICE_ID_ZMID:
856 strcpy(str, "LPe1150 4");
857 break;
858 case PCI_DEVICE_ID_ZSMB:
859 strcpy(str, "LPe111 4");
860 break;
861 case PCI_DEVICE_ID_LP101:
862 strcpy(str, "LP101 2");
863 break;
864 case PCI_DEVICE_ID_LP10000S:
865 strcpy(str, "LP10000-S 2");
866 break;
867 default:
868 memset(str, 0, 16);
869 break;
870 case PCI_DEVICE_ID_LP11000S:
871 if (hdrtype == 0x80)
872 strcpy(str, "LP11002-S 4");
873 else
874 strcpy(str, "LP11000-S 4");
875 break;
876 case PCI_DEVICE_ID_LPE11000S:
877 if (hdrtype == 0x80)
878 strcpy(str, "LPe11002-S 4");
879 else
880 strcpy(str, "LPe11000-S 4");
881 break;
846 }
847 if (mdp)
848 sscanf(str, "%s", mdp);
849 if (descp)
850 sprintf(descp, "Emulex LightPulse %s Gigabit PCI Fibre "
851 "Channel Adapter", str);
852}
853

--- 814 unchanged lines hidden (view full) ---

1668 {PCI_VENDOR_ID_EMULEX, PCI_DEVICE_ID_DRAGONFLY,
1669 PCI_ANY_ID, PCI_ANY_ID, },
1670 {PCI_VENDOR_ID_EMULEX, PCI_DEVICE_ID_SUPERFLY,
1671 PCI_ANY_ID, PCI_ANY_ID, },
1672 {PCI_VENDOR_ID_EMULEX, PCI_DEVICE_ID_RFLY,
1673 PCI_ANY_ID, PCI_ANY_ID, },
1674 {PCI_VENDOR_ID_EMULEX, PCI_DEVICE_ID_PFLY,
1675 PCI_ANY_ID, PCI_ANY_ID, },
882 }
883 if (mdp)
884 sscanf(str, "%s", mdp);
885 if (descp)
886 sprintf(descp, "Emulex LightPulse %s Gigabit PCI Fibre "
887 "Channel Adapter", str);
888}
889

--- 814 unchanged lines hidden (view full) ---

1704 {PCI_VENDOR_ID_EMULEX, PCI_DEVICE_ID_DRAGONFLY,
1705 PCI_ANY_ID, PCI_ANY_ID, },
1706 {PCI_VENDOR_ID_EMULEX, PCI_DEVICE_ID_SUPERFLY,
1707 PCI_ANY_ID, PCI_ANY_ID, },
1708 {PCI_VENDOR_ID_EMULEX, PCI_DEVICE_ID_RFLY,
1709 PCI_ANY_ID, PCI_ANY_ID, },
1710 {PCI_VENDOR_ID_EMULEX, PCI_DEVICE_ID_PFLY,
1711 PCI_ANY_ID, PCI_ANY_ID, },
1712 {PCI_VENDOR_ID_EMULEX, PCI_DEVICE_ID_NEPTUNE,
1713 PCI_ANY_ID, PCI_ANY_ID, },
1714 {PCI_VENDOR_ID_EMULEX, PCI_DEVICE_ID_NEPTUNE_SCSP,
1715 PCI_ANY_ID, PCI_ANY_ID, },
1716 {PCI_VENDOR_ID_EMULEX, PCI_DEVICE_ID_NEPTUNE_DCSP,
1717 PCI_ANY_ID, PCI_ANY_ID, },
1676 {PCI_VENDOR_ID_EMULEX, PCI_DEVICE_ID_HELIOS,
1677 PCI_ANY_ID, PCI_ANY_ID, },
1718 {PCI_VENDOR_ID_EMULEX, PCI_DEVICE_ID_HELIOS,
1719 PCI_ANY_ID, PCI_ANY_ID, },
1720 {PCI_VENDOR_ID_EMULEX, PCI_DEVICE_ID_HELIOS_SCSP,
1721 PCI_ANY_ID, PCI_ANY_ID, },
1722 {PCI_VENDOR_ID_EMULEX, PCI_DEVICE_ID_HELIOS_DCSP,
1723 PCI_ANY_ID, PCI_ANY_ID, },
1678 {PCI_VENDOR_ID_EMULEX, PCI_DEVICE_ID_BMID,
1679 PCI_ANY_ID, PCI_ANY_ID, },
1680 {PCI_VENDOR_ID_EMULEX, PCI_DEVICE_ID_BSMB,
1681 PCI_ANY_ID, PCI_ANY_ID, },
1682 {PCI_VENDOR_ID_EMULEX, PCI_DEVICE_ID_ZEPHYR,
1683 PCI_ANY_ID, PCI_ANY_ID, },
1724 {PCI_VENDOR_ID_EMULEX, PCI_DEVICE_ID_BMID,
1725 PCI_ANY_ID, PCI_ANY_ID, },
1726 {PCI_VENDOR_ID_EMULEX, PCI_DEVICE_ID_BSMB,
1727 PCI_ANY_ID, PCI_ANY_ID, },
1728 {PCI_VENDOR_ID_EMULEX, PCI_DEVICE_ID_ZEPHYR,
1729 PCI_ANY_ID, PCI_ANY_ID, },
1730 {PCI_VENDOR_ID_EMULEX, PCI_DEVICE_ID_ZEPHYR_SCSP,
1731 PCI_ANY_ID, PCI_ANY_ID, },
1732 {PCI_VENDOR_ID_EMULEX, PCI_DEVICE_ID_ZEPHYR_DCSP,
1733 PCI_ANY_ID, PCI_ANY_ID, },
1684 {PCI_VENDOR_ID_EMULEX, PCI_DEVICE_ID_ZMID,
1685 PCI_ANY_ID, PCI_ANY_ID, },
1686 {PCI_VENDOR_ID_EMULEX, PCI_DEVICE_ID_ZSMB,
1687 PCI_ANY_ID, PCI_ANY_ID, },
1688 {PCI_VENDOR_ID_EMULEX, PCI_DEVICE_ID_TFLY,
1689 PCI_ANY_ID, PCI_ANY_ID, },
1690 {PCI_VENDOR_ID_EMULEX, PCI_DEVICE_ID_LP101,
1691 PCI_ANY_ID, PCI_ANY_ID, },
1692 {PCI_VENDOR_ID_EMULEX, PCI_DEVICE_ID_LP10000S,
1693 PCI_ANY_ID, PCI_ANY_ID, },
1734 {PCI_VENDOR_ID_EMULEX, PCI_DEVICE_ID_ZMID,
1735 PCI_ANY_ID, PCI_ANY_ID, },
1736 {PCI_VENDOR_ID_EMULEX, PCI_DEVICE_ID_ZSMB,
1737 PCI_ANY_ID, PCI_ANY_ID, },
1738 {PCI_VENDOR_ID_EMULEX, PCI_DEVICE_ID_TFLY,
1739 PCI_ANY_ID, PCI_ANY_ID, },
1740 {PCI_VENDOR_ID_EMULEX, PCI_DEVICE_ID_LP101,
1741 PCI_ANY_ID, PCI_ANY_ID, },
1742 {PCI_VENDOR_ID_EMULEX, PCI_DEVICE_ID_LP10000S,
1743 PCI_ANY_ID, PCI_ANY_ID, },
1744 {PCI_VENDOR_ID_EMULEX, PCI_DEVICE_ID_LP11000S,
1745 PCI_ANY_ID, PCI_ANY_ID, },
1746 {PCI_VENDOR_ID_EMULEX, PCI_DEVICE_ID_LPE11000S,
1747 PCI_ANY_ID, PCI_ANY_ID, },
1694 { 0 }
1695};
1696
1697MODULE_DEVICE_TABLE(pci, lpfc_id_table);
1698
1699static struct pci_driver lpfc_driver = {
1700 .name = LPFC_DRIVER_NAME,
1701 .id_table = lpfc_id_table,

--- 36 unchanged lines hidden ---
1748 { 0 }
1749};
1750
1751MODULE_DEVICE_TABLE(pci, lpfc_id_table);
1752
1753static struct pci_driver lpfc_driver = {
1754 .name = LPFC_DRIVER_NAME,
1755 .id_table = lpfc_id_table,

--- 36 unchanged lines hidden ---