aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndrew Vasquez <andrew.vasquez@qlogic.com>2010-01-12 12:59:49 -0800
committerJames Bottomley <James.Bottomley@suse.de>2010-01-17 12:36:31 -0600
commit368bbe077739fa1ef6fc0195b2810ed50ef87df6 (patch)
treefe1c168fdb2238a3b9038055a254444931348071
parentf08b7251c40090b8c522a306642944cd7322eebb (diff)
downloadmrst-s0i3-test-368bbe077739fa1ef6fc0195b2810ed50ef87df6.tar.gz
mrst-s0i3-test-368bbe077739fa1ef6fc0195b2810ed50ef87df6.tar.xz
mrst-s0i3-test-368bbe077739fa1ef6fc0195b2810ed50ef87df6.zip
[SCSI] qla2xxx: Perform fast mailbox read of flash regardless of size nor address alignment.
Signed-off-by: Giridhar Malavali <giridhar.malavali@qlogic.com> Signed-off-by: James Bottomley <James.Bottomley@suse.de>
-rw-r--r--drivers/scsi/qla2xxx/qla_sup.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/scsi/qla2xxx/qla_sup.c b/drivers/scsi/qla2xxx/qla_sup.c
index 010e69b29af..371dc895972 100644
--- a/drivers/scsi/qla2xxx/qla_sup.c
+++ b/drivers/scsi/qla2xxx/qla_sup.c
@@ -2292,11 +2292,14 @@ qla25xx_read_optrom_data(struct scsi_qla_host *vha, uint8_t *buf,
uint32_t faddr, left, burst;
struct qla_hw_data *ha = vha->hw;
+ if (IS_QLA25XX(ha) || IS_QLA81XX(ha))
+ goto try_fast;
if (offset & 0xfff)
goto slow_read;
if (length < OPTROM_BURST_SIZE)
goto slow_read;
+try_fast:
optrom = dma_alloc_coherent(&ha->pdev->dev, OPTROM_BURST_SIZE,
&optrom_dma, GFP_KERNEL);
if (!optrom) {