diff options
author | Jamie Wellnitz <Jamie.Wellnitz@emulex.com> | 2006-02-28 22:33:05 -0500 |
---|---|---|
committer | James Bottomley <jejb@mulgrave.il.steeleye.com> | 2006-03-06 10:46:10 -0500 |
commit | 719396b48ce6310ab43d7432b6d7f2a330a831b3 (patch) | |
tree | 0cbd685cea4896cc3b703268fbcabe0dd8fc1014 | |
parent | 74b72a59b8d42d31aa6ffac8f10ca7a784be392c (diff) |
[PATCH] lpfc 8.1.3: PCI hrd_type should be obtained with pci_read_config_byte() macro
PCI hrd_type should be obtained with pci_read_config_byte() macro
Driver keys off of this field to report the proper adapter type.
The pci subsystem explicitly clears the multiport bit in the copy of
the field given the driver. Thus, to properly name the card, obtain it
from config space.
Signed-off-by: Jamie Wellnitz <Jamie.Wellnitz@emulex.com>
Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
-rw-r--r-- | drivers/scsi/lpfc/lpfc_init.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/drivers/scsi/lpfc/lpfc_init.c b/drivers/scsi/lpfc/lpfc_init.c index 5fd98a345347..71d2c8d3b001 100644 --- a/drivers/scsi/lpfc/lpfc_init.c +++ b/drivers/scsi/lpfc/lpfc_init.c | |||
@@ -796,9 +796,9 @@ lpfc_get_hba_model_desc(struct lpfc_hba * phba, uint8_t * mdp, uint8_t * descp) | |||
796 | lpfc_vpd_t *vp; | 796 | lpfc_vpd_t *vp; |
797 | uint16_t dev_id = phba->pcidev->device; | 797 | uint16_t dev_id = phba->pcidev->device; |
798 | uint16_t dev_subid = phba->pcidev->subsystem_device; | 798 | uint16_t dev_subid = phba->pcidev->subsystem_device; |
799 | uint8_t hdrtype = phba->pcidev->hdr_type; | 799 | uint8_t hdrtype; |
800 | int max_speed; | 800 | int max_speed; |
801 | char * ports = (hdrtype == 0x80) ? "2-port " : ""; | 801 | char * ports; |
802 | struct { | 802 | struct { |
803 | char * name; | 803 | char * name; |
804 | int max_speed; | 804 | int max_speed; |
@@ -806,6 +806,8 @@ lpfc_get_hba_model_desc(struct lpfc_hba * phba, uint8_t * mdp, uint8_t * descp) | |||
806 | char * bus; | 806 | char * bus; |
807 | } m; | 807 | } m; |
808 | 808 | ||
809 | pci_read_config_byte(phba->pcidev, PCI_HEADER_TYPE, &hdrtype); | ||
810 | ports = (hdrtype == 0x80) ? "2-port " : ""; | ||
809 | if (mdp && mdp[0] != '\0' | 811 | if (mdp && mdp[0] != '\0' |
810 | && descp && descp[0] != '\0') | 812 | && descp && descp[0] != '\0') |
811 | return; | 813 | return; |