This release note and the software that accompanies it are copyright (c) 2015, Intel Corporation or its suppliers, and may only be installed and used in accordance with the license that accompanies the software.

This Software is furnished under license and may only be used or copied in accordance with the terms of that license. No license, express or implied, by estoppel or otherwise, to any intellectual property rights is granted by this document. The Software is subject to change without notice, and should not be construed as a commitment by Intel Corporation or its suppliers to market, license, sell or support any product or technology. Unless otherwise provided for in the license under which this Software is provided, the Software is provided AS IS, with no warranties of any kind, express or implied. Except as expressly permitted by the Software license, neither Intel Corporation nor its suppliers assumes any responsibility or liability for any errors or inaccuracies that may appear herein. Except as expressly permitted by the Software license, no part of the Software may be reproduced, stored in a retrieval system, transmitted in any form, or distributed by any means without the express written consent of Intel Corporation.

==========================
Supported RAID Controllers
==========================
This download supports Intel(R) RAID controllers using SAS software stack (RMS3CC080, RMS3CC040, RMS3HC080, RS3YC, RS3LC, RS3SC008, RS3MC044, RS3DC080, RS3DC040, RS3WC080, RCS25ZB040, RCS25ZB040LX, RMS25PB080, RMS25PB040, RMT3PB080, RMS25CB080, RMS25CB040, RMT3CB080, RMS25CB080N, RMS25PB080N, RS25AB080, RS25SB008, RS25DB080, RS25NB008, RS2VB080, RS2VB040, RT3WB080, RS2WC040, RS2WC080, RS2SG244, RS2WG160, RMS2MH080, RMS2AF080, RMS2AF040, RS2MB044, RS2BL080, RS2BL080DE, RS2BL040, RS2PI008DE, RS2PI008, SRCSASJV, SRCSASRB, SRCSATAWB, SROMBSASFC, SROMBSASMP2, SROMBSASMR, SRCSASPH16I, SRCSASBB8I, SRCSASLS4I), please verify that this utility has been tested with the RAID card you have chosen to use by checking the drivers web page for your controller at http://support.intel.com.

For older 1068 controllers including SRCSAS18E, SRCSAS144E, & SROMBSAS18E, use the Windows inbox driver.

===================
Package Information
===================
Driver Version = 6.706.06.00 (WHQL signed)
OS supported = Microsoft* Windows Server 2012 R2, Windows 8.1 (x86 & x64), Windows Server 2012, Windows 8 (x86 & x64), Windows Server 2008r2, Windows 7 (x86 & x64), Windows Server 2008 (x86 & x64), Windows Vista (x86 & x64)

=========
Attention
=========
This release supports the Windows Driver Configuration Utility (WDCFG) as per Microsoft requirement (DEVFUND-0046).  Please see "user guide - windows driver configuration utility.pdf" for instructions on how to use this tool.

==================
Known Restrictions
==================

=======================
Contents on the package
=======================
Name:						Description:
MR_Windows_signed_DRV_vX.XXX.XX.XX_readme.txt	This file
License_v2.pdf					License Agreement
srv_2008_x86					Drivers for Windows Server 2008 x86
srv_2008_x64					Drivers for Windows Server 2008 x64 
Vista_x86					Drivers for Windows Vista x86
Vista_x64					Drivers for Windows Vista x64
Win7_x86 					Drivers for Windows 7
Win7_x64 					Drivers for Windows 7 and Windows Server 2008R2 x64
Win8_X86 					Drivers for Windows 8
Win8_X64 					Drivers for Windows 8 and Windows Server 2012 x64
Win8.1_x86					Drivers for Windows 8.1
Win8.1_x64					Drivers for Windows 8.1 and Windows Server 2012 R2 x64

Install the driver from the appropriate folder for your Windows version.

=========================
Installation Instructions
=========================
This updated driver can be applied using the normal OS installation options.
Extract package contents to a user specified location such as = a:\ or a USB flash drive.

 Driver Installation Instructions for Windows* 2012/8/7/2008/Vista OS
----------------------------------------------------------------
    a) This procedure installs the Intel RAID device driver on a new Windows* 2012/8/7/2008/Vista system. Windows 2012/8/7/2008/Vista automatically adds the driver to the registry and copies the driver to the appropriate directory.
----------------------------------------------------------------

1. Start the Windows installation by booting from the Windows 2012/8/7/2008/Vista DVD-ROM.
The system BIOS must support booting from a DVD-ROM. BIOS settings might require changes to allow DVD-ROM booting. See your system documentation.

2. When the screen displays: "Where do you want to install Windows?", select 'Load Driver', then click Next.

3. The system prompts for a Load Driver dialog to ask for the manufacturer-supplied hardware driver disk. Insert the driver diskette containing the Windows 2012/8/7/2008/Vista device driver, and press <Enter>.
NOTE: You may ask to supply the appropriate INF path if you want to load driver from a USB flash drive.

4. Select the Windows device driver from the menu by highlighting it, then click Next.

5. Remove the USB flash drive. Follow the Microsoft Windows installation procedure to continue the OS installation.

----------------------------------------------------------------
    b) This procedure installs or updates the Intel RAID device driver on an existing Windows 7/2008/Vista system.
----------------------------------------------------------------

1. Boot Windows.

2. Under Control Panel, select Administrative Tools -> Computer Management. Then Select Device Manger and identify the new add-in device. Double click the device, then select the Drier Page, click Update Driver to install the new driver.

3. Insert the driver diskette into the A:\ drive.

4. Click the 'Browse My computer for driver software' button.

5. Click the 'Browse' button to specify the driver disk location A:\

6. Click the 'Next' button then system will search driver in the specified location and install the driver automatically.

7. Click the 'Close' button to complete the driver installation.

8. Repeat this process for all the controllers on your system.


=============
Fixes/Updates
=============
v6.706.06.00 (MR6.6)
SCGCQ00793073 - (Closed) - Windows BSOD after updating to out of box driverversion 6.704.12.00.
SCGCQ00759662 - (Closed) - 51.3alpha package 1- Firmware halted. Fault code = 0x80
SCGCQ00785436 - CSET: Bug in OCR code - (SCGCQ00783015)
SCGCQ00783608 - (Closed) - Updating the INF File with PnP ID Addition.
SCGCQ00767982 - Improving source code quality of Windows Driver stream using results obtain from running static code analysis
SCGCQ00768005 - (Closed) - Fixed Improper State Sequence in Synchronized Adapter initialization function.
SCGCQ00760160 - (Closed) - Set the Proper Flag for NON-RW Flags for SED JBOD
SCGCQ00759892 - (Closed) - Set the version field in PERF_CONFIGURATION_DATA Structure during Initializiation .
SCGCQ00711558 - (Closed) - enable SED support for iMR JBOD
SCGCQ00747428 - (Closed) - copy right Change.
SCGCQ00726739 - (Closed) - Enhanced Driver debug prints to differentiate multiple controllers on a system
SCGCQ00712518 - (Closed) - Increase the number of SGEs in MR WINDOWS DRIVER from 64 to 65.
SCGCQ00712490 - (Closed) - Ability to read PCI Domain/Segment information via storelib
SCGCQ00651432 - (Closed) - MFI_STAT_CONFIG_SEQ_MISMATCH handling in drivers
SCGCQ00729479 - (Closed) - Missing PnP ID from InF File.
SCGCQ00764343 - (Closed) - MR 6.6 Windows Driver fails WHCK Device INF Verification Test
SCGCQ00751273 - (Closed) - Remove the old MAX_LOGICAL_DRIVES and change it to MAX_API_LOGICAL_DRIVES_EXT
SCGCQ00755508 - (Closed) - MR 6.5 Windows Driver 6.705.05.00 readme file does not reflect SOW information
SCGCQ00729459 - (Closed) - Redundant PnP Id description string in the INF file.
SCGCQ00726747 - (Closed) - Differentiate IOs as FP or LDIO in the Windows driver PendingIOQueue.

v6.705.05.00 (MR6.5)
SCGCQ00751161: MR_240vd_Driver:Latest not detecting controller through storcli
SCGCQ00726053- Significant Write performance drop in WT, and Read performance drop in NoRA 
SCGCQ00692581	Device ID to be not updated correctly in the OEM PnP ID in the ONF file according to SCGCQ00628151.
SCGCQ00703058	Correct the comments for the Coalescing code  to reflect the correct functionality.
SCGCQ00705236	Correct the Driver version in the INF file for MR 6.5 WINDOWS DRIVER
SCGCQ00716428	Enable/Disable the  MSIX interrupts before writing down the PCI bridges  for  S3 sleep states
SCGCQ00703058): Correct the comments for the Coalescing code  to reflect the correct functionality

v6.704.12.00 (MR 6.4)
SCGCQ00673345 - MR5.11-Windows Blue screens with Stop 9F error while running heavy IO with media error injections and Rebuilds
SCGCQ00687352 - MR-6.4-Configuration loss is seen when you have multiple VD's with overnight IO's and learn cycles with OCR
SCGCQ00682870 - R/W performance drop in R0 RA large QD, Mid size data, 20 or more drives
SCGCQ00686265 - Updating the driver code with neccessary change required for hibernation.
SCGCQ00627960 - System Reboots while going into Hibernation.
SCGCQ00664600 - MR_6.4_Driver:Observing performance drops in SR 256kb I/O size 64 and 256 QD
SCGCQ00678549 - Sync MR 6.4 INF File from 6.2 and 6.3 updates.
SCGCQ00673345 - Windows Blue screens with Stop 9F error while running heavy IO with media error injections and Rebuilds
SCGCQ00661683 - Read Performance drop in 2R1
SCGCQ00678364 - Add proper Alignment mask for  allocating Noncached Extension Buffers.
SCGCQ00660305 - Windows Blue screens with Stop D1 error while running heavy IO on 16VD R6 using all stripe sizes
SCGCQ00660298 - 5.11 FW 23.29.0-0007/Windows Driver 6.704.06.00/PRL11 4k Install not able to boot into uEFI OS after install
SCGCQ00649373 - CSET: Controller firmware crash / hang after cache offload with RAID6 / 60 - (SCGCQ00648947
SCGCQ00648461 - Set the MAX SGEs supported by Windows  driver to 65 to increase the IO size from 252K to 256K.
SCGCQ00655886 - Data corruption seen after upgrading Windows driver and running IO on R5.
SCGCQ00640670 - MR 6.4: Not able to mount R5 and R6 WT VD's on Disk Management
SCGCQ00656700 - code review 31804: reset the timer flags after OCR is complete
SCGCQ00644283 - CSET: MR5.10 firmware faults during performance test - (SCGCQ00634900)
SCGCQ00620014 - MR6.3_240VD: 65th VD not getting detected under disk management
SCGCQ00644275 - Add MFI Capability bit in  MR_WINDOWS_DRIVER to support Load Balancing 
SCGCQ00634869 - Load  balancing reads on >2 drive R1 for SSDs to improve  Performance
SCGCQ00635676 - TB240VD support : Drivers need to set the supportMaxextLD bit in MFI _CAPABILITIES structure
SCGCQ00628316 - Code review defect : D25554 : Not checking the correct state of the WDT ocr while doing OCR
SCGCQ00627133 - Merge MR 6.3 GCA  +  MR 6.3 240 VD support into mainline MR 6.4
SCGCQ00588587 - Syncronize the OCR State Machine with the Initilization of Adapter
SCGCQ00588443 - Add the correct number of Alignment buffers to NonCached Extension Length while allocating memory for DCMDs
SCGCQ00550383 - WebCloud Group - Write Caching HBA, JBOD/R0 supported TB controller with 240 SystemPD/LD support

v6.703.03.00 (MR 6.3)
SCGCQ00666976 - Change Product Naming String to LSI 2208 MegaRAID
SCGCQ00668301 - Sync MR 6.3 INF file with MR 6.x
SCGCQ00664288 - Support for OEM adapter in MR 6.3 Windows .inf file (also, must be ported to MR 6.4) 
SCGCQ00634900 - MR5.10 firmware faults during performance test
SCGCQ00621838 - Add PnP ID for Invader 9364-8i card to setup new OEM SKU
SCGCQ00601679 - OEM - Mismatch in the controller Name in Driver and FW
SCGCQ00592544 - PNP ID Addition for OEM 3008iMR Design to be included in 6.3 release for Q1 2014
SCGCQ00610106 - Sync PNP Ids from MR 6.2 , MR 6.1 into MR 6.3.
SCGCQ00587389 - CSET: Failover Test: IOs stop running due to data mis-compares. - (SCGCQ00530895)
SCGCQ00579693 - MR 5.8 Windows latest GCA or Point release driver needs to be released with Galaxy specific PnP ID
SCGCQ00586370 - Sync PNP IDs from MR 5.x stream &  from Point Releases  into MR 6.3 stream
SCGCQ00559549 - Rebuild the IO for a SysPD Device if there is a change in the Raid Map update between BuildIO and StartIO.

version 6.702.08.00 (MR6.2 patch)
SCGCQ00648947 - Controller firmware crash / hang after cache offload with RAID6 / 60
SCGCQ00649376 - MR5.10 firmware faults during performance test

version 6.702.07.00 (MR6.2)
SCGCQ00419719 - I/O's became unresponsive after triggering OCR
SCGCQ00505219 - Driver is coalescing Across stripe resulting in degradation of performance
SCGCQ00524025 - IO errors while running IOs on JBODs
SCGCQ00495136 - Revert the coalescing start values for LSI Windows Driver back to original to 4 .
SCGCQ00560831 - Drop seen for small IOsize with 6.2 components compared to 6.0 components
SCGCQ00427545 - Create new pnp id for Invader 3108 for OEM
SCGCQ00490951 - Add PnP IDs for OEM
SCGCQ00290518 - Driver needs to allow enabling/disabling OCR without reboot being required.
SCGCQ00526852 - Add PnP IDs for OEM
SCGCQ00490948 - Add PnP IDs for OEM
SCGCQ00556181 - Sync INF files in MR6.1 and MR6.2
SCGCQ00375473 - Add Galaxy PnP IDs to MR 5.5 & 5.6
SCGCQ00481283 - Added support for Windows 8.1 and Windows Server 2012R2 to the build scripts.
SCGCQ00490946 - Add PnP IDs for OEM
SCGCQ00441621 - Add Defiant 4e PnP IDs to MR 5.4 & 5.5
SCGCQ00505179 - 6.701.07.00 MR6.1 driver does not load on an OEM adapter.
SCGCQ00386687 - support for add MultiphaseResume to the Win8 Driver added
SCGCQ00441622 - Add Galaxy PnP IDs to MR 5.5 & 5.6
SCGCQ00377212 - Add Defiant 4e PnP IDs to MR 5.4 & 5.5
SCGCQ00473745 - OEM SKU of Syncro CS 9271-8i that disables PCIe3 back channel training
SCGCQ00518303 - MR 6.1: Add support for OEM Device IDs
SCGCQ00523629 - Data Corruption observed on JBODs while running IOs with 32k block size.
SCGCQ00470038 - KMODE_EXCEPTION_NOT_HANDLED (1e) in storport!
SCGCQ00487982: CSET: Driver timer not going to zero properly after proper timeout period. - (SCGCQ00487966)
SCGCQ00465409: MR 6.2 - Windows 8.1 and Windows Server 2012 R2 support
SCGCQ00465443: MR 5.9 - Windows 8.1 and Windows Server 2012 R2 support

version 6.701.04.00 (MR6.1)
SCGCQ00278033 - PL fault causing iMR FW to crash while reading a file from SATA DVD ROM
SCGCQ00301743 - performance test setup seeing a crash on 6.601.2.0
SCGCQ00461484 - Found shutdown node stuck and black out screen when Windows should reboot with driver 6.701.00
SCGCQ00320491 - Win_2k8_R2 hits blue screen when installing/uninstalling MR windows driver 6.601.7.0
SCGCQ00323002 - Dynamic Qdepth min and max qdepth settings
SCGCQ00415314 - Timeout with IPL_LOGINFO_CODE_IO_NOT_YET_EXECUTED while running IOs on Intel SSD
SCGCQ00434761 - incorrect comment in the script for drvdate.cmd
SCGCQ00419719 - I/O's became unresponsive after triggering OCR
SCGCQ00433930 - Fileversion and Productversion in driver properties dont sync up
SCGCQ00297595 - The windows driver unable to pump more than 20 outstanding commands per disk.
SCGCQ00441004 - BSOD observed on triggering OCR
SCGCQ00461046 - 6.701.02.00 fails Windows BLUE HCK SCSI Compliance 2.0 Test on Client x86 with Liberator/TB/Invader
SCGCQ00407188 - Driver ldsync required message after OCR with Pinned Cache
SCGCQ00452098 - Small Sequential Reads and Writes - driver changes for delta with TB
SCGCQ00460733 - Send MR_DCMD_CTRL_SHUTDOWN during shutdown and reboot for MR Windows Driver
SCGCQ00294806 - Enable FP for JBODs on Invader for Windows Driver
SCGCQ00427545 - Create new pnp id for Invader 3108 for OEM
SCGCQ00404214 - Add 3008 device ID for product
SCGCQ00403116 - Merge HA Windows driver support to MR (mainline) driver code
SCGCQ00300056 - Add support for setting the queue depth dynamically for PD’s based on the number of configured devices
SCGCQ00288462 - port to Fury
SCGCQ00299613 - Add 3108 device id 
SCGCQ00441620 - Add PnP IDs to MR 5.4 & 5.5
SCGCQ00299615 - 4K sector support for Windows 8
SCGCQ00421253 - I/O's became unresponsive after triggering OCR
SCGCQ00312783 - Windows JBOD FastPath IO support for SysPD
SCGCQ00433745 - Regression in Spinlock Spins/sec with new megasas.sys driver
SCGCQ00299636 - 240PD Raid Key PnP IDs
SCGCQ00433750 - After OCR due to timeouts, IOs are still blocked.
SCGCQ00355556 - Update adapter.h for new build scripts
SCGCQ00441623 - Add PnP IDs to MR 5.5 & 5.6
SCGCQ00334075 - System fails to wake up from Hibernate
SCGCQ00299614 - Add 3108 device
SCGCQ00326820 - Montask line 1187 in file ../../raid/1078dma.c when formatting VD's under Windows 2003

Version 6.600.23.00 (MR6.0)
SCGCQ00330224 - System fails to wake up from Hibernate
SCGCQ00365382 - The Size of the DCMD buffer passed to the FW was less during the Driver Initialization .
SCGCQ00387275 - R1 64K SR 64QD is 38% down with FP enabled
SCGCQ00364039 - Wrong Calculation in Start_lba span for PRL11 Configuration.
SCGCQ00371968 - Error handling in "get_arm_from_strip " and "get_arm" for PRL11 Configuration
SCGCQ00386647 - in OEM server, the server never boots to OS, keeps rebooting itself.
SCGCQ00402255 - INTERRUPT EXCEPTION NOT HANDLED (megasas2.sys)
SCGCQ00279284 - Montask line 1187 in file ../../raid/1078dma.c when formatting VD's under Windows 2003
SCGCQ00419719 - I/O's became unresponsive after triggering OCR
SCGCQ00378958 - BSOD (D1) DRIVER_IRQL_NOT_LESS_THAN_EQUAL during installing windows2003 X64 os
SCGCQ00399853 - Out of Bounds Read for fucntion CompleteScsiRequest and updateIometric
SCGCQ00280221 - Cannot install Win2003 x86 on the Invader using driver 5.2.119.32
SCGCQ00382594 - The hibernation (s4 sleep state) is not working on windows server 2012
SCGCQ00400113 - Limited number of MSI-X interrupt vectors assigned toadapter in Windows
SCGCQ00402788 - iMR SSD JBOD poor IOps performance compared to IT/IR
SCGCQ00406532 - IO Command timeout value for TAPE devices need to be set from OS instead of default timeout value
SCGCQ00259242 - 4K sector support for Windows 8
SCGCQ00386120 - Add Multiphase Resume Feature For Windows 8 Driver .
SCGCQ00368375 - Support additional MSIX vectors on
SCGCQ00293737 - LSIP200211759: Add 3108 device for OEM
SCGCQ00399052 - OEM iMR RoMB PnP ID addition to MegaRAID softwares.
SCGCQ00361248 - Boot the system to iMR mode if NVRAM is not initialized
SCGCQ00354616 - The 4-port board should be renamed to 9361-4i and other renamed 9360 8i/4i
SCGCQ00319108 - PRL11 Uneven Span support added in Windows Driver
SCGCQ00290518 - Driver needs to allow enabling/disabling OCR without reboot being required.
SCGCQ00392108 - Add support for OEM 12Gbit/s SAS MegaRAID, iMR, and IT/IR adapters, to Windows & Linux Drivers, and MSM/RWC utility
SCGCQ00293736 - LSIP200211761: Add device id for OEM
SCGCQ00375473 - Add PnP IDs to MR 5.5 & 5.6
SCGCQ00386111 - Add PnP Ids for OEM, this should be added to Windows Drivers.
SCGCQ00357251 - Add 3108 device ID for OEM (PR SCGCQ00356047)
SCGCQ00391739 - Request to change the OEM Subsystem Device IDs
SCGCQ00390957 - Add new PCI ID
SCGCQ00278272 - Device ID for OEM added in 6.0 release
SCGCQ00386687 - support for add MultiphaseResume to the Win8 Driver added
SCGCQ00377212 - Add PnP IDs to MR 5.4 & 5.5
SCGCQ00299632 - LSIP200231605:OEM MROMB -- 240PD Raid Key PnP IDs

Version 6.506.02.00 (MR5.6)
 support for add MultiphaseResume to the Win8 Driver added

Version 6.505.5.0 (MR5.5)
 Performance drop in 256 KB seq. Write by driver 6.505.2.0 comparing to driver 5.2.127
 Modify WinOS INF file to use the proper product name for OEM controller
 Liberator_Falcon_Format Drive(VD) does not complete succefully in Windows
 System fails to wake up from m S3 sleep.
 System fails to wake up from Hibernate.
 WHQL:Hibernation related test cases (CHAOS and Sleep & Pnp) fails.
 WHQL:Crashdump support test fails.
 4k Sector Windows
 Support Windows WDCFG util for Windows MR driver

Version 6.504.5.0 (MR5.4+)
 Win8\2012 OS support for MR driver
 Intel RCS25ZB040xx support
 Windows MegaRAID driver issue on Liberator cards when using CacheCade
 Driver failed to install on Liberator(9280) controller as primary
 Windows JBOD FastPath IO support for SysPD
 Driver 5.2.127/String in the .inf for OEM controller is not correct.
 MR5.4 Upgrading to Windows driver 6.504.1.0 doesn't export any LD's to OS
 WHQL Common Scenario Stress with IO Test fails with TB Driver 5.2.127 on Vista x86_64
 WHQL Sleep Stress Test fails with TB Driver 5.2.127 on Vista x86_64
 Enhance all MR SAS Windows drivers to support OEM expander backplanes
 BSOD with error code A0 when entering S4
 Windows CrashDump Issue in JBOD Mode
 iMR: PL fault causing iMR FW to crash while running setup.exe from SATA DVD ROM
 MR 5.4 iMR JBOD improvements.

Version 5.2.127 (MR5.3)
 MSM 12.01.03.00\Alerts are not giving proper windows version.
 Driver setting the region lock type even when FW informs driver to bypass lock
 512e drive support for MR Windows Driver
 DIF support for Thunderbolt MR controllers

Version 5.2.116 (MR5.2)
 Add PnP for CC enabled 8-port Thunderbolt D1 SKU
 Add PnP for CC enabled 8-port ext. Thunderbolt D1 SKU
 Sub device 0xD204 of sub vendor 0x19E5 missing
 Driver 5.2.112 megasas2.inf file is missing SSDID - 92A0,92A1
 TB Windows driver : Sequential Write performance drops significantly.
 IOs stop sporadically with outstanding IOs.
 With 5.2.112, wrong version display with "msinfo32"

Version 5.2.112
1 Reboot fix.  NULL pointer now checked before attempting coalescing.
2 Device queues. Removed setting device queues for physical devices - path 0.
3 Additional IOCTLs. Added getting and setting driver parameters from userland.
4 MSIqueue fix.	Was treating Registry MSIqueue depth as boolean verses unsigned char.
5 Coalescing data corruption fix.
6 Initialization timeout increase from 5 to 60 seconds.
7 OCR bug fix ?from looking at entire 32 bits, to just the firmware status bits (4).
8 Registry settings ?tried to simplify a bit from enabling a disable bit which enables a feature.
9 SRB validation to verify correct data transfer size in accordance with the CDB.
10 Fix corrupted nodev.inf, clearcase was interpreting /000 in file and doing a binary conversion on check in.
11 File was removed and file with /000 removed was checked in.

Version 5.2.103
1	Revert to legacy coalescing logic to address corruption found during TB-iMR testing.
2	Add device ID
3	Removed clearing entire SRB extension (added in 5.2.82).
4	Added "NoCoalPerLD" registry switch to use IO count across LDs for coalescing starting
	and to flush all chains depending on the number of completions and the total number of
	IOs across all LDs. This was the original algorithm used in MR drivers.
5	Added "NoBusyWait" registry switch to not call StorPortBusyWait() when submit queue is
	(iMR products only), and instead just return IO BUSY with QUEUE_FULL.
6	Update metrics on all RW IOs, not just coalesced ones.
7	Flushing the clear state change interrupt for Fusion controllers (TB/Invader).
8	Work around for firmware defect: always use IEEE SGL for Fusion controllers.
9	Invader only: add MR_RL_FLAGS_SEQ_NUM_ENABLE flag to region lock for LD IO as well as
10	Wrap MSI message used if not enough queues supported, instead of defaulting to 0.
11	Fixed nodev.inf, which did not install virtual device because of format issue in file
12	Add enclosure devices
13	Fixed OCR to synchronize with MSI interrupts.
14	Fixed Invader chain bug introduced with version 88.
15	Do not use DPC until initialized.
16	Fixed OCR which became broken with version 82.
17	Removed unnecessary repeated calls to StorPortInitialize() in DriverEntry().
18	Added more devices in INF file (renamed to oemsetup for now).
19	Fixed issue with 1068 controller: cannot use 64-bit registers.
20	Check for SMID=0 to avoid accessing inappropriate memory addresses.
21	Clear SGE flags for Invader in actual packet in allocated memory, not just Srb extension.
22	Fixed bug that completed IOCTL request that was saved for deferred execution because of queue full (only hit on Falcon).
23	Added registry switch to max set number of IOs on Raid1 arm before switching to other arm, name is "BalanceCount", default
24	New INF files.
25	Added support for Invader controller.
26	Added support for 64-bit addresses for I2O controllers (pre-TB), which will allow for SRBs in upper memory (new in Win8).
27	Reworked OCR code to cancel all outstanding IOs when killing adapter (previous using banned interface to do the same thing)
28	Reworked the INF files to allow internationizing the install disk string, and cleaning it up some as well.
29	Reworked metrics code again to support original CLI data retrieval algorithm.
30	Removed used of SCSISTAT_QUEUE_FULL when busying IOCTLs or commands during reset/restart.
31	Allow returning overrun status on non-RW IOs for snapshot drivers.
32	Removed auto-sense support when in hibernate/memdump mode.
33	Added nodev.inf file for enclosure string support.
34	Added OEM devices to INF, using Strings section for localization.
35	Fix metrics code to just return the size when the buffer is not large enough for the data.
36	Complete IOs as BUSY that are returned with MFI_STAT_CONFIG_SEQ_MISMATCH from firmware to have them retried by Windows.
37	Converted calls to StorPortCompleteRequest(...BUS_RESET) to StorPortNotification(RequestComplete,...) to reset all SRBs and
38	Fixed bug in CDB conversion that created "RAW" volumes.
39	Fixed bug with VendorId=0x1028 DeviceId=0x0015 that made it unsupported previously.
40	Added new devices to INF file, and fixed issue with non-MSI controllers not being supported for x86 Windows versions.
41	Cleaned up code that handles Raid1 load balancing, now using FP LBA instead of logical LBA for calculations.
42	Fixed bug in CDB conversion that fails on LDs that are >2TB.
43	Changed the default to use NUMA (now must use "NoNuma=1" to disable).
44	Simplified adapter.h defines, and now returning generic OS name/version strings for IOCTLs.
45	Converted calls to StorPortCompleteRequest(...BUS_RESET) to StorPortNotification(RequestComplete,...) to reset all SRBs and
46	Now using call to RtlIsNtDdiVersionAvailable() to test for Server 2003 instead of calling the depricated function IoIsWdmVe
47	Modified the sources file to what Microsoft wants in-box (except for need to change name and remove INCLUDEs for header fil
48	Removed last ASSERTs from WMI code.
49	Asynchronous completions
	* Interrupt handling asynchronous to submissions, using single DPC only when necessary
	* Removed tracking array and DriverStatistics
	* Using LockedInc/Dec to track IO counts, etc
50	New Coalescing
	* Now done on a per-LD basis
	* simpler/faster SGL building
	>> still need to implement adaptive logic
51	Code Consolidation
	* MSI/non-MSI code into a single build with runtime detection of Windows 2003
	* INFs into a single file that handles both x86 and x64 installations
52	Streamline IO path
	* Saving physical addresses for boot allocated non-cached memory poniters to avoid unnecessary calls to get physical addres
	* Using pre-allocated SRB sense buffers on to handle 64-bit addressing on TB and avoid unnecessary calls to get physical ad
	* Removed driver code that completed a SCSI_REQUEST_SENSE (now sending to down to firmware)
	* Reworked internal DCMDs allocation, now ebedding them into SrbExtension structures
53	Misc improvements
	* Support SRB_FUNCTION_FLUSH by translating to DCMD flush commands, with registry ("NoSrbFlush") swtich to disable
	* Added timer to adapter restart to avoid polling for firmware to be ready (causes exceptions if debugger is attached)
	* Changed calculation of BusyCount used when pausing input requests to use maximum of 25% of (maxrequests-4), with starting
	* Removed unnecessary aborting of the AEN and MAP commands upon shutdown, but transition to ready for crash dump

Version 5.1.112
1) Fixed	Windows driver show incorrect name for new Intel HBA
2) Fixed	WINDOWS 2K8 hits bluescreen when perfmon GETRESULTS is executed .
3) Fixed	Windows 4.33 driver doesn't have OEM device ID
4) Fixed 	Driver is not showing proper name for cacheoffload controller.
5) Fixed 	WB:system results in BSOD while executing Enabling and disabling the Information capturing feature
6) Fixed	Build and Release driver 5.1.112
7) Fixed	OEM Names incorrect in Windows driver oemsetup.inf

Version 5.1.90
1) Update INF files
2) Fixed: OCR does not reset controller on Falcon: using I20 registers instead of fusion ones.
3) Fixed: added pause after reading status register prior to reset avoids hardware check BSOD.
4) Avoid processing responses while in reset mode: check for flag after grab spin lock.
5) No longer assuming IEEE SGEs for Falcon/Tbolt controllers, use firmware setting instead.
6) Do not use more than 1 MSI queue when in hibernate/crashdump mode.
7) Changed the timeouts to 10 minutes for startup and 5 minutes for OCR.
8) Fixed: Must call StorPortBusy to wait for IO completions when request queue gets full, else get failed IOs.
9) Fixed: Overrun request queue with some sequential IO on multiple LDs, only for iMR.
10) Increase to 12 minutes the wait for firmware to become ready upon bootup or restart. 

Note that the increase in the wait-for-ready means that our product could take up to 30 minutes to boot (12 mins + max-of-3-OCRs * 3 mins).

Version 5.1.78
1) Added support for 2208 Controllers

Version 4.32.0
1) Fixed Windows driver has wrong Pnp id for OEM's controller
2) Added initiate MegaSASHeartBeatTimer from Initialize call to check ocr for SCSI miniport driver.
3) Fixed Unregister CPX from StopAdapter
4) Added PCI id addition
5) Fixed RT3WB080 Pnp ID is wrong.  It shows 9276, but it should show 9264.
6) Fixed product name should be listed as "Intel (R) RAID Controller RS2VB080"PnP string: 1000 / 0079 / 8086 / 9268
7) Added SES nodev addition. SAS_JBOD_25.DeviceDesc = "Sun Blade 6000 Switched Network Express Module 24p 10GbE"

Version 4.31.1
1) Fix Power state transistion failure issue.
2) Fixed OCR/CPX combination issues.
3) Fixed iMR OCR support.
4) Fixed RWC2 unresponsive issue.
5) Fixed Performance metric incorrect interval
6) Fixed OCR on iMR incorrect max concurrent support after ocr.
7) Fixed Performance Regression due to IEEE sg Format - addressed by restriction MAX IO size to 128kb
8) Fixed iMR performance enhancement with CPX/XOR feature addition.
9) Fixed Assertion failure in fw due 440k IO on iMR controller.Fix: Max transfer length per IO reduced to 512k to 320k for iMR controllers
10) Fixed Performance Metric collection checkin.

Version 4.25.0
1) Added Adding Customer IDs
2) Added Product name in Windows driver for OEM needs updated
3) Fixed 2008 and 2108 based boards can't expose expander to host via mfc exposeExpanderDevices 1
4) Added Request to bundle XP with Vista/W2K8 Driver package

Version 4.24.0
1) Added Sign SAS Gen2 Driver stream
2) Added Device IDs for RMS2MH080, RMS2AF080, RMS2AF040.
3) Added support for Premium Feature Key.

Version 4.23.0
1) Fixed Blue Screen of Death after calling adapter reset.
2) Fixed Performance optimization by completing IOs during startio.
3) Fixed Driver reset the controller whether its in a fault state due to a state transistion or unresponsiveness after 4 minutes timeout period. Now the code has been added to the Driver to prevent such a conidtion of continous reset with resetrequired bit in MFC state.Driver if it finds the fw in fault condition check for this bit before initiating reset.
4) Fixed OS hangs when rebooting after stopping IO and clearing config

Version 4.17.2
1) Driver coalescing  Supported added   
2) Fixed errorous kill adapter condition by taking Coalesce flush IO commands into account when gating the total pending commands with firmware in scsi miniport driver (XP & w2k).   
3) Fixed the doNotPostInReplyQueue bit set & command timeout set when flush commands are issued in polling mode to avoid next command begin issued immediately without waiting for the previous commands completion that resulting in fw failure.   
4) Added logic to limit the Max coalesced IO size to 512k(same as Maxtransfer length per request set to OS during driver entry) to fix the Event 51 logged with SRB status invalid   
5) Disable DPC redirection to avoid the performance variance with very small sequential IOs.   
6) Fixed driver to go in continuous log of reset -resulting in slowing down the system & reboot failure When the configuration is cleared or VD deleted under heavy IO, driver is still holding the OS issued commands without issuing to firmware or completing to OS.   
 
Version 4.15.0
1) Fixed RWC2 displays OEM name along with Product Name.   
2) Updated txtsetup.oem content in Windows driver   
3) Fixed large performance decrease issue for sequential reads/writes with QD>16   
 
Version 4.14.0
1) Fixed Flush Cache from PNP StopAdapter to cover Hibernation case.   
2) Fixed incorrect setting for MSIX driver   
3) Added Initialize Command Context & MFI_flags for IOctl request.   
 
Version 4.13.0
1) Fixed timeout value not adequate to allow for spin up of physical drives   
2) Fixed FW hang during shutdown/restarting Windows when shutdown command is received all writes are followed by flush cache command.   
3) Fixed enabling multiple interrupts cause interrupts more interrupts per IO   
4) Fixed RWC2 is not updating the event log with events   
5) Fixed Ioctl are failing under heavy IO   
6) Fixed SCSIport D1 error caused by passing a wrong Device Extension pointer to Startio when recovering from a bus reset due to bad drive or other situations delaying IO Completion.   
7) Setting the IO queue depth to minimum of 255 or max_fw_supported commands, avoiding constant storport pauses & giving a chance for OS to send to miniport for further processing   
8) Fixed the issue SES is exposed by the Driver   
9) Fixed incorrect reference in reset Handler   
10) Fixed Unconfigured PD state not updated properly after Bootup   
11) Fixed SCSI Miniport Driver installation issue   
12) Fixed Hung during reboot with Multiple VDs, client installed   
13) Fixed driver inf file typo issue   
14) Fixed in WHQL standby test,the firmware was in operational state causing the state machine to break,resulting in timeout and test failure   
15) Add support to check controller type and then check if the controller support MSIX   
16) Fixed Vista Installation failure issue   
17) Add SAS2.0 and PCI-E Gen 2 support

Version 3.9.0
1) Fixed the firmware was in operational state causing the state machine to break in WHQL D3 standby test,resulting in timeout and test failure.
2) Added MSIdisableLegacy flag to check controller type and then check controllers "enableMSI" if that class of adapter support MSIX.
3) Fixed System Freezes/BugCheck under heavy IO when system shutdown is initiated.Take into account of completed commands after SRB_SHUTDOWN by the driverQ avoiding false StorPortBusy under heavy load.
4) Fixed Vista Installation issue.
5) Fixed driver name shown wrong in SNMP
6) Fixed clearing of noncached extension beyond the allocated boundary.
7) Fixed Hibernation happens in nonMSI mode. 
8) Fixed interrupt chain to break issue for 1078
9) Added Win2K3/Win2K8 IA64 support

Version 2.23.0
1) Added support for SROMBSASMP2
2) Fixed Windows driver contains an expired embedded signature 
3) Fixed sys file on the windows driver package is not timestamp 
4) Fixed Vista* Driver will not recognize disks during install

Version 2.20.0
1) Added support for SRCSASPH16I, SRCSASBB8I, and SRCSASLS4I
2) Set DPCEnabled flag only to avoid ISR called before DPC fully intailized.
3) AdapterStopped flag is added to avoid ISR getting called during D3 state.
4) Added disallowHostRequestReordering setting support.
5) Fixed S3 Standby failure during resume from Sleep state. 

Version 2.17.0
1) Fixed stop error 0x50 occurs during the PNP driver test - Driver is not updating the internal Structures properly during controller disable which leads to BSOD.
2) Added bustype registry key through inf file
3) Fixed if EnableDma64BitAddresses argument is passed to the miniport, driver will support 64Bit DMA addressing irrespective  of whether the system supports 64bit addressing

Version 1.24.0 - Initial release

*Third-party trademarks are the property of their respective owners.
