aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/scsi/qla2xxx
diff options
context:
space:
mode:
authorGiridhar Malavali <giridhar.malavali@qlogic.com>2010-05-28 18:08:28 -0400
committerJames Bottomley <James.Bottomley@suse.de>2010-07-27 13:01:27 -0400
commit6907869d726c04362122afd92717f86915a69f96 (patch)
tree2c522b76a5352a35a6344373c05ef9ef4eaf2d12 /drivers/scsi/qla2xxx
parentba77ef53547883b6be06c0657d5dc1642ad43d0c (diff)
[SCSI] qla2xxx: Enable CRB based doorbell posting for request queue as default for ISP 82xx.
Signed-off-by: Giridhar Malavali <giridhar.malavali@qlogic.com> Signed-off-by: James Bottomley <James.Bottomley@suse.de>
Diffstat (limited to 'drivers/scsi/qla2xxx')
-rw-r--r--drivers/scsi/qla2xxx/qla_nx.c13
-rw-r--r--drivers/scsi/qla2xxx/qla_os.c2
2 files changed, 10 insertions, 5 deletions
diff --git a/drivers/scsi/qla2xxx/qla_nx.c b/drivers/scsi/qla2xxx/qla_nx.c
index ee575b4efbee..e3e3ebdfe5d9 100644
--- a/drivers/scsi/qla2xxx/qla_nx.c
+++ b/drivers/scsi/qla2xxx/qla_nx.c
@@ -3372,11 +3372,16 @@ qla82xx_start_iocbs(srb_t *sp)
3372 dbval = 0x04 | (ha->portnum << 5); 3372 dbval = 0x04 | (ha->portnum << 5);
3373 3373
3374 dbval = dbval | (req->id << 8) | (req->ring_index << 16); 3374 dbval = dbval | (req->id << 8) | (req->ring_index << 16);
3375 WRT_REG_DWORD((unsigned long __iomem *)ha->nxdb_wr_ptr, dbval); 3375 if (ql2xdbwr)
3376 wmb(); 3376 qla82xx_wr_32(ha, ha->nxdb_wr_ptr, dbval);
3377 while (RD_REG_DWORD(ha->nxdb_rd_ptr) != dbval) { 3377 else {
3378 WRT_REG_DWORD((unsigned long __iomem *)ha->nxdb_wr_ptr, dbval); 3378 WRT_REG_DWORD((unsigned long __iomem *)ha->nxdb_wr_ptr, dbval);
3379 wmb(); 3379 wmb();
3380 while (RD_REG_DWORD(ha->nxdb_rd_ptr) != dbval) {
3381 WRT_REG_DWORD((unsigned long __iomem *)ha->nxdb_wr_ptr,
3382 dbval);
3383 wmb();
3384 }
3380 } 3385 }
3381} 3386}
3382 3387
diff --git a/drivers/scsi/qla2xxx/qla_os.c b/drivers/scsi/qla2xxx/qla_os.c
index bc35ecfbc28f..5be8db748964 100644
--- a/drivers/scsi/qla2xxx/qla_os.c
+++ b/drivers/scsi/qla2xxx/qla_os.c
@@ -140,7 +140,7 @@ MODULE_PARM_DESC(ql2xetsenable,
140 "Enables firmware ETS burst." 140 "Enables firmware ETS burst."
141 "Default is 0 - skip ETS enablement."); 141 "Default is 0 - skip ETS enablement.");
142 142
143int ql2xdbwr; 143int ql2xdbwr = 1;
144module_param(ql2xdbwr, int, S_IRUGO|S_IRUSR); 144module_param(ql2xdbwr, int, S_IRUGO|S_IRUSR);
145MODULE_PARM_DESC(ql2xdbwr, 145MODULE_PARM_DESC(ql2xdbwr,
146 "Option to specify scheme for request queue posting\n" 146 "Option to specify scheme for request queue posting\n"