From bfed5dbd726c72d627f1970d893fed0f956120e2 Mon Sep 17 00:00:00 2001 From: "Moore, Eric" Date: Mon, 16 Jan 2006 18:53:06 -0700 Subject: [PATCH] --- yaml --- r: 19132 b: refs/heads/master c: d8e925dc8850c01e36e6b2acb08ed0fbdc38b9f1 h: refs/heads/master v: v3 --- [refs] | 2 +- trunk/drivers/message/fusion/mptbase.c | 8 ++++++++ trunk/drivers/message/fusion/mptspi.c | 10 +++++++++- 3 files changed, 18 insertions(+), 2 deletions(-) diff --git a/[refs] b/[refs] index 993a5bcb86a9..a997ea3a8ce5 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: eb221849540b7f4165c58b6c79d98b97ac902fdb +refs/heads/master: d8e925dc8850c01e36e6b2acb08ed0fbdc38b9f1 diff --git a/trunk/drivers/message/fusion/mptbase.c b/trunk/drivers/message/fusion/mptbase.c index d890b2b8a93e..2806662a9cf9 100644 --- a/trunk/drivers/message/fusion/mptbase.c +++ b/trunk/drivers/message/fusion/mptbase.c @@ -4598,6 +4598,14 @@ mpt_GetScsiPortSettings(MPT_ADAPTER *ioc, int portnum) SCSIPortPage2_t *pPP2 = (SCSIPortPage2_t *) pbuf; MpiDeviceInfo_t *pdevice = NULL; + /* + * Save "Set to Avoid SCSI Bus Resets" flag + */ + ioc->spi_data.bus_reset = + (le32_to_cpu(pPP2->PortFlags) & + MPI_SCSIPORTPAGE2_PORT_FLAGS_AVOID_SCSI_RESET) ? + 0 : 1 ; + /* Save the Port Page 2 data * (reformat into a 32bit quantity) */ diff --git a/trunk/drivers/message/fusion/mptspi.c b/trunk/drivers/message/fusion/mptspi.c index 7dce29277cb7..f148dfa39117 100644 --- a/trunk/drivers/message/fusion/mptspi.c +++ b/trunk/drivers/message/fusion/mptspi.c @@ -384,6 +384,14 @@ mptspi_probe(struct pci_dev *pdev, const struct pci_device_id *id) goto out_mptspi_probe; } + /* + * issue internal bus reset + */ + if (ioc->spi_data.bus_reset) + mptscsih_TMHandler(hd, + MPI_SCSITASKMGMT_TASKTYPE_RESET_BUS, + 0, 0, 0, 0, 5); + scsi_scan_host(sh); return 0; @@ -445,7 +453,7 @@ static void __exit mptspi_exit(void) { pci_unregister_driver(&mptspi_driver); - + mpt_reset_deregister(mptspiDoneCtx); dprintk((KERN_INFO MYNAM ": Deregistered for IOC reset notifications\n"));