Sfoglia il codice sorgente

[SCSI] qla2xxx: Use correct value for max vport in LOOP topology.

Use minimum value for max vport during firmware initialization in LOOP
topology. Using max vport value from get resource count in LOOP topology
causes firmware initialization failure.

Signed-off-by: Lalit Chandivade <lalit.chandivade@qlogic.com>
Signed-off-by: Andrew Vasquez <andrew.vasquez@qlogic.com>
Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
Lalit Chandivade 16 anni fa
parent
commit
605aa2bcd5
1 ha cambiato i file con 5 aggiunte e 1 eliminazioni
  1. 5 1
      drivers/scsi/qla2xxx/qla_init.c

+ 5 - 1
drivers/scsi/qla2xxx/qla_init.c

@@ -1308,8 +1308,12 @@ qla2x00_init_rings(scsi_qla_host_t *vha)
 
 
 	DEBUG(printk("scsi(%ld): Issue init firmware.\n", vha->host_no));
 	DEBUG(printk("scsi(%ld): Issue init firmware.\n", vha->host_no));
 
 
-	if (ha->flags.npiv_supported)
+	if (ha->flags.npiv_supported) {
+		if (ha->operating_mode == LOOP)
+			ha->max_npiv_vports = MIN_MULTI_ID_FABRIC - 1;
 		mid_init_cb->count = cpu_to_le16(ha->max_npiv_vports);
 		mid_init_cb->count = cpu_to_le16(ha->max_npiv_vports);
+	}
+
 
 
 	mid_init_cb->options = __constant_cpu_to_le16(BIT_1);
 	mid_init_cb->options = __constant_cpu_to_le16(BIT_1);