Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 47771
b: refs/heads/master
c: 9bb9fcf
h: refs/heads/master
i:
  47769: 90eb531
  47767: 62d71f1
v: v3
  • Loading branch information
Andrew Vasquez authored and James Bottomley committed Jan 31, 2007
1 parent ea2b566 commit 7c9a6e5
Show file tree
Hide file tree
Showing 2 changed files with 38 additions and 47 deletions.
2 changes: 1 addition & 1 deletion [refs]
Original file line number Diff line number Diff line change
@@ -1,2 +1,2 @@
---
refs/heads/master: 2603221a285e32a1033dcefa8de38a989a7633e0
refs/heads/master: 9bb9fcf2f2b4deeb3ae8a44ed4b8686302297030
83 changes: 37 additions & 46 deletions trunk/drivers/scsi/qla2xxx/qla_init.c
Original file line number Diff line number Diff line change
Expand Up @@ -1355,6 +1355,39 @@ qla2x00_configure_hba(scsi_qla_host_t *ha)
return(rval);
}

static inline void
qla2x00_set_model_info(scsi_qla_host_t *ha, uint8_t *model, size_t len, char *def)
{
char *st, *en;
uint16_t index;

if (memcmp(model, BINZERO, len) != 0) {
strncpy(ha->model_number, model, len);
st = en = ha->model_number;
en += len - 1;
while (en > st) {
if (*en != 0x20 && *en != 0x00)
break;
*en-- = '\0';
}

index = (ha->pdev->subsystem_device & 0xff);
if (ha->pdev->subsystem_vendor == PCI_VENDOR_ID_QLOGIC &&
index < QLA_MODEL_NAMES)
ha->model_desc = qla2x00_model_name[index * 2 + 1];
} else {
index = (ha->pdev->subsystem_device & 0xff);
if (ha->pdev->subsystem_vendor == PCI_VENDOR_ID_QLOGIC &&
index < QLA_MODEL_NAMES) {
strcpy(ha->model_number,
qla2x00_model_name[index * 2]);
ha->model_desc = qla2x00_model_name[index * 2 + 1];
} else {
strcpy(ha->model_number, def);
}
}
}

/*
* NVRAM configuration for ISP 2xxx
*
Expand Down Expand Up @@ -1493,33 +1526,8 @@ qla2x00_nvram_config(scsi_qla_host_t *ha)
strcpy(ha->model_number, "QLA2300");
}
} else {
if (rval == 0 &&
memcmp(nv->model_number, BINZERO,
sizeof(nv->model_number)) != 0) {
char *st, *en;

strncpy(ha->model_number, nv->model_number,
sizeof(nv->model_number));
st = en = ha->model_number;
en += sizeof(nv->model_number) - 1;
while (en > st) {
if (*en != 0x20 && *en != 0x00)
break;
*en-- = '\0';
}
} else {
uint16_t index;

index = (ha->pdev->subsystem_device & 0xff);
if (index < QLA_MODEL_NAMES) {
strcpy(ha->model_number,
qla2x00_model_name[index * 2]);
ha->model_desc =
qla2x00_model_name[index * 2 + 1];
} else {
strcpy(ha->model_number, "QLA23xx");
}
}
qla2x00_set_model_info(ha, nv->model_number,
sizeof(nv->model_number), "QLA23xx");
}
} else if (IS_QLA2200(ha)) {
nv->firmware_options[0] |= BIT_2;
Expand Down Expand Up @@ -3444,25 +3452,8 @@ qla24xx_nvram_config(scsi_qla_host_t *ha)
/*
* Setup driver NVRAM options.
*/
if (memcmp(nv->model_name, BINZERO, sizeof(nv->model_name)) != 0) {
char *st, *en;
uint16_t index;

strncpy(ha->model_number, nv->model_name,
sizeof(nv->model_name));
st = en = ha->model_number;
en += sizeof(nv->model_name) - 1;
while (en > st) {
if (*en != 0x20 && *en != 0x00)
break;
*en-- = '\0';
}

index = (ha->pdev->subsystem_device & 0xff);
if (index < QLA_MODEL_NAMES)
ha->model_desc = qla2x00_model_name[index * 2 + 1];
} else
strcpy(ha->model_number, "QLA2462");
qla2x00_set_model_info(ha, nv->model_name, sizeof(nv->model_name),
"QLA2462");

/* Use alternate WWN? */
if (nv->host_p & __constant_cpu_to_le32(BIT_15)) {
Expand Down

0 comments on commit 7c9a6e5

Please sign in to comment.