This release note and the software that accompanies it are copyright (c) 2012, 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 (RMS2PB080, RMS25PB040, RMT3PB080, RMS25CB080, RMS25CB040, RMT3CB080, RMS25CB080N, MS25PB080N, RS25SB008, RS25AB080, RS25NB008, RS25DB080, RS2VB080, RS2VB040, RT3WB080, RS2WC040, RS2WC080, RS2SG240, RS2WG160, RMS2MH080, RMS2AF080, RMS2AF040, RS2MB044, RS2BL080, RS2BL080DE, RS2BL040, RS2PI008DE, RS2PI008, SRCSASBB8I, SRCSASLS4I, SRCSASJV, SRCSASRB, SRCSATAWB, SROMBSASFC, SROMBSASMP2, SROMBSASMR, SRCSASPH16I, SRCSAS18E, SRCSAS144E, SROMBSAS18E), 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. =================== Package Information =================== Driver Version = 5.2.116.xx OS supported = Microsoft* Windows 2008r2 (x64), Windows 7 (x86 & x64), Windows 2008 (x86 & x64), Windows Vista (x86 & x64), Windows 2003 (x86 & x64), and Windows XP (x64) ========= Attention ========= N/A ================== Known Restrictions ================== N/A ======================= Contents on the package ======================= The following files are included in this package: Name: Description: ir3_Windows_DRV_v5.2.116.xx_readme.txt This file Win7_x86_Signed_Driver_5.2.116.32(/64) Windows 7 Drivers for x86/x64 operating systems W2K8_x86_Signed_Driver_5.2.116.32(/64) Windows 2008 Drivers for x86/x64 operating systems W2K8_R2_x64_Signed_Driver_5.2.116.64 Windows 2008 R2 Drivers for x64 operating systems W2K3_x86_Signed_Driver_5.2.116.32(/64) Windows 2003 Drivers for x86/x64 operating systems Vista_x86_Signed_Driver_5.2.116.32(/64) Windows Vista Drivers for x86/x64 operating systems License_v2.pdf License Agreement ========================= 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. A) Driver Installation Instructions for Windows* 7/2008/Vista OS -------------------------------------------------------------- a) This procedure installs the Intel RAID device driver on a new Windows* 7/2008/Vista system. Windows 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 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 7/2008/Vista device driver, and press . 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 serach 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. B) Driver Installation Instructions for Windows* 2003/XP OS ---------------------------------------------------------------- Below requirement is specific for the Intel(R) 5000 Series Chipset Baseboard ---------------------------------------------------------------------------- The use of a USB Floppy drive is required to complete the successful loading of the RAID drivers. Currently there is no Floppy drive controller on the baseboard, a USB Floppy drive is required to be purchased. For a list of validated USB floppy drives, please check the Tested Hardware and Operating System List for the platform you are using at http://support.intel.com. If the use of a USB floppy drive cannot be achieved, Microsoft* has specific instructions on how to embed the driver into the installation media. Please check http://support.microsoft.com for more information. a) This procedure installs the Intel RAID device driver on a new Windows* 2003/XP system. Windows 2003/XP 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 CD-ROM. The system BIOS must support booting from a CD-ROM. BIOS settings might require changes to allow CD-ROM booting. See your system documentation. 2. Press when the screen displays: "Press F6 if you need..." Note: You must press for the system to recognize the new driver. 3. Choose to specify an additional device when the screen displays: "Setup could not determine the type of one or more mass storage devices..." Note: If this screen is not displayed as the first user input, then pressing was not seen by the setup program. Reboot the system, and return to step 2. 4. The system prompts for the manufacturer-supplied hardware support disk. Insert the driver diskette containing the Windows 2003/XP device driver, and press . 5. Select the Windows device driver from the menu by highlighting it and press . 6. Press again to proceed. 7. Return to the Windows Setup screen. 8. Windows displays a "Welcome to Setup" window. 9. Press to proceed. 10. Follow the Microsoft Windows installation procedure to continue the OS installation. b) Existing Windows System Driver Installation: This procedure installs or updates the Intel RAID device driver on an existing Windows 2003/XP system. 1. Boot Windows. The Found New Hardware Wizard begins. 2. Click the Next button. 3. Insert the driver diskette into the A:\ drive. 4. Click the Search for a Suitable Driver... button and click Next. 5. Click the Next button. 6. Check the Specify Location box, uncheck all other boxes, and click the Next button. 7. Type A:\ and click the OK button. 8. Click the Next button on the Driver Files Search Results window. 9. Click the Finish button to complete the driver installation. 10. Repeat this process for all the controllers on your system. ================== Component Features ================== N/A ============ Known Issues ============ 1) Data Corruption is hit while Check Consistecy and media error in loop on RAID5 under heavy IO ============= Fixes/Updates ============= Version 5.2.116 Huawei device 0x2208 added to Windows driver supported list RWC2 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 SuperMicro device ID C690 should be 0690 512e drive support for MR Windows Driver New device IDs DIF support for Thunderbolt MR controllers 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" 2208 MROMB Design Asustek - Pike-2208 Program Catera MantaRay Catera Shikra MR 2208 MROMB PnP IDs -- Gigabyte Quanta will implement MR 2208 RAID stack embedded for LSI 2208 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. 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 Dell 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.