aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJamie Wellnitz <Jamie.Wellnitz@emulex.com>2006-02-28 22:33:05 -0500
committerJames Bottomley <jejb@mulgrave.il.steeleye.com>2006-03-06 10:46:10 -0500
commit719396b48ce6310ab43d7432b6d7f2a330a831b3 (patch)
tree0cbd685cea4896cc3b703268fbcabe0dd8fc1014
parent74b72a59b8d42d31aa6ffac8f10ca7a784be392c (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.c6
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;