Skip to content

Commit

Permalink
---
Browse files Browse the repository at this point in the history
yaml
---
r: 49106
b: refs/heads/master
c: a29fdd3
h: refs/heads/master
v: v3
  • Loading branch information
James Bottomley authored and James Bottomley committed Feb 16, 2007
1 parent 3effd8e commit d53ebda
Show file tree
Hide file tree
Showing 3 changed files with 12 additions and 4 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: 8d63f375051bfb1506fa546db840af8510d1cd60
refs/heads/master: a29fdd3c2a3e53b67baa5031372fd78fddaf48fa
13 changes: 10 additions & 3 deletions trunk/drivers/scsi/aic94xx/aic94xx_seq.c
Original file line number Diff line number Diff line change
Expand Up @@ -44,7 +44,6 @@
#define PAUSE_TRIES 1000

static const struct firmware *sequencer_fw;
static const char *sequencer_version;
static u16 cseq_vecs[CSEQ_NUM_VECS], lseq_vecs[LSEQ_NUM_VECS], mode2_task,
cseq_idle_loop, lseq_idle_loop;
static u8 *cseq_code, *lseq_code;
Expand Down Expand Up @@ -1276,7 +1275,6 @@ static int asd_request_firmware(struct asd_ha_struct *asd_ha)
header.csum = le32_to_cpu(hdr_ptr->csum);
header.major = le32_to_cpu(hdr_ptr->major);
header.minor = le32_to_cpu(hdr_ptr->minor);
sequencer_version = hdr_ptr->version;
header.cseq_table_offset = le32_to_cpu(hdr_ptr->cseq_table_offset);
header.cseq_table_size = le32_to_cpu(hdr_ptr->cseq_table_size);
header.lseq_table_offset = le32_to_cpu(hdr_ptr->lseq_table_offset);
Expand All @@ -1303,6 +1301,16 @@ static int asd_request_firmware(struct asd_ha_struct *asd_ha)
return -EINVAL;
}

asd_printk("Found sequencer Firmware version %d.%d (%s)\n",
header.major, header.minor, hdr_ptr->version);

if (header.major != SAS_RAZOR_SEQUENCER_FW_MAJOR) {
asd_printk("Firmware Major Version Mismatch;"
"driver requires version %d.X",
SAS_RAZOR_SEQUENCER_FW_MAJOR);
return -EINVAL;
}

ptr_cseq_vecs = (u16 *)&sequencer_fw->data[header.cseq_table_offset];
ptr_lseq_vecs = (u16 *)&sequencer_fw->data[header.lseq_table_offset];
mode2_task = header.mode2_task;
Expand Down Expand Up @@ -1335,7 +1343,6 @@ int asd_init_seqs(struct asd_ha_struct *asd_ha)
return err;
}

asd_printk("using sequencer %s\n", sequencer_version);
err = asd_seq_download_seqs(asd_ha);
if (err) {
asd_printk("couldn't download sequencers for %s\n",
Expand Down
1 change: 1 addition & 0 deletions trunk/drivers/scsi/aic94xx/aic94xx_seq.h
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,7 @@
#define LSEQ_NUM_VECS 11

#define SAS_RAZOR_SEQUENCER_FW_FILE "aic94xx-seq.fw"
#define SAS_RAZOR_SEQUENCER_FW_MAJOR 1

/* Note: All quantites in the sequencer file are little endian */
struct sequencer_file_header {
Expand Down

0 comments on commit d53ebda

Please sign in to comment.