All of lore.kernel.org
 help / color / mirror / Atom feed
From: yxlraid@gmail.com
To: JBottomley@parallels.com
Cc: jack_wang@usish.com, lucas.demarchi@profusion.mobi,
	maciej.trela@intel.com, dan.j.williams@intel.com,
	linux-scsi@vger.kernel.org, linux-kernel@vger.kernel.org,
	Xiangliang Yu <yuxiangl@marvell.com>
Subject: [PATCH 6/8] [SCSI] mvsas: expander write performance enhancement
Date: Thu, 29 Sep 2011 00:34:55 -0700	[thread overview]
Message-ID: <4e834cda.e515440a.102b.0ea3@mx.google.com> (raw)
In-Reply-To: <mvsas>

From: Xiangliang Yu <yuxiangl@marvell.com>

-- with 1 expander, connect 8 HDD, the write performance will be
   improved by 80%.

Signed-off-by: Xiangliang Yu <yuxiangl@marvell.com>
---
 drivers/scsi/mvsas/mv_94xx.c |    9 +++++++++
 drivers/scsi/mvsas/mv_defs.h |    1 +
 2 files changed, 10 insertions(+), 0 deletions(-)

diff --git a/drivers/scsi/mvsas/mv_94xx.c b/drivers/scsi/mvsas/mv_94xx.c
index 4d1a8c7..ba667db 100644
--- a/drivers/scsi/mvsas/mv_94xx.c
+++ b/drivers/scsi/mvsas/mv_94xx.c
@@ -511,6 +511,15 @@ static int __devinit mvs_94xx_init(struct mvs_info *mvi)
 	tmp |= CINT_PHY_MASK;
 	mw32(MVS_INT_MASK, tmp);
 
+	/* tune STP performance */
+	tmp = 0x003F003F;
+	mvs_cw32(mvi, CMD_PL_TIMER, tmp);
+
+	/* This can improve expander large block size seq write performance */
+	tmp = mvs_cr32(mvi, CMD_PORT_LAYER_TIMER1);
+	tmp |= 0xFFFF007F;
+	mvs_cw32(mvi, CMD_PORT_LAYER_TIMER1, tmp);
+
 	/* change the connection open-close behavior (bit 9) 
 	 * set bit8 to 1 for performance tuning */
 	tmp = mvs_cr32(mvi, CMD_SL_MODE0);
diff --git a/drivers/scsi/mvsas/mv_defs.h b/drivers/scsi/mvsas/mv_defs.h
index dec7cad..8e21482 100644
--- a/drivers/scsi/mvsas/mv_defs.h
+++ b/drivers/scsi/mvsas/mv_defs.h
@@ -387,6 +387,7 @@ enum sas_cmd_port_registers {
 	CMD_SL_MODE0		= 0x1BC, /* SL Mode 0 */
 	CMD_SL_MODE1		= 0x1C0, /* SL Mode 1 */
 	CMD_PND_FIFO_CTL1	= 0x1C4, /* Pending FIFO Control 1 */
+	CMD_PORT_LAYER_TIMER1	= 0x1E0, /* Port Layer Timer 1 */
 };
 
 enum mvs_info_flags {
-- 
1.7.4.4

  parent reply	other threads:[~2011-09-29  7:34 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <mvsas>
2011-09-29  7:32 ` [PATCH 1/8] [SCSI] mvsas: fix expander link error yxlraid
2011-09-29  7:33 ` [PATCH 2/8] [SCSI] mvsas: add support for 9480 device id yxlraid
2011-09-29  7:33 ` [PATCH 3/8] [SCSI] mvsas: fixed some disk spin up issue yxlraid
2011-09-29  7:34 ` [PATCH 4/8] [SCSI] mvsas: fixed wrong destination when hiting NAK for command frame yxlraid
2011-09-29  7:34 ` [PATCH 5/8] [SCSI] mvsas: change SL mode0 register value yxlraid
2011-09-29  7:34 ` yxlraid [this message]
2011-09-29  7:35 ` [PATCH 7/8] [SCSI] mvsas: fixed SMP request watchdog timeout issue yxlraid
2011-09-29  7:35 ` [PATCH 8/8] [SCSI] mvsas: update driver version yxlraid

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=4e834cda.e515440a.102b.0ea3@mx.google.com \
    --to=yxlraid@gmail.com \
    --cc=JBottomley@parallels.com \
    --cc=dan.j.williams@intel.com \
    --cc=jack_wang@usish.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-scsi@vger.kernel.org \
    --cc=lucas.demarchi@profusion.mobi \
    --cc=maciej.trela@intel.com \
    --cc=yuxiangl@marvell.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.