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 (RMS25PB080, RMS25PB040,RMT3PB080, RMS25CB080, RMS25CB040, RMT3CB080, RS25AB080, RS25SB008, RS25DB080, RS25NB008, RS2VB080, RS2VB040, RT3WB080, SRCSAS18E, SRCSAS144E, SROMBSAS18E, SRCSASJV, SRCSASRB, SRCSATAWB, SROMBSASFC, SROMBSASMP2, SROMBSASMR, SRCSASPH16I, SRCSASBB8I, SRCSASLS4I, RS2WC040, RS2WC080, RS2SG244, RS2WG160, RMS2MH080, RMS2AF080, RMS2AF040, RS2MB044, RS2BL080, RS2BL080DE, RS2BL040, RS2PI008DE and RS2PI008), 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
===================
Version = 8.02.21
OS supported = Linux

==================
Known Restrictions
==================
N/A

=======================
Contents on the package
=======================
The following files are included in this zip:

Name						Description
CMDTool2_Linux_v8.02.21_rel-notes.txt	This file
CmdTool2-8.02.21-1.i386.rpm			Command Line Utility
Lib_Utils-1.00-09.noarch.rpm			Linux Utils Library
License_v2.pdf					License Agreement

==========================
Installation instructions:
==========================
This utility is a Linux Based command line utility that can be used to query the controller and attached devices for status, Update Firmware, and create/manage logical drive configuration.
Extract package contents to a user specified location and run the rpm.

The CmdTool2 application depends on few standard libraries. 
Please ensure that these libraries are present in the system before installing CmdTool2 rpm. 
CmdTool2 will not function without these libraries.

For your convenience, above libraries are available in the rpm <Lib_Utils-1.xx-xx.noarch.rpm>.
<Lib_Utils-1.xx-xx.noarch.rpm> is packaged in the CmdTool2 zip file.
To install the <Lib_Utils-1.xx-xx.noarch.rpm>, please follow below steps.

1) unzip the CmdTool2 package .
2) To install the Lib_Utils RPM, run the command "rpm -ivh <Lib_Utils-1.xx-xx.noarch.rpm>"
3) To install the CmdTool2 RPM, run the comand "rpm -ivh <CmdTool2-x.xx-x.noarch.rpm>"
4) To upgrade the CmdTool2 RPM, run the comand "rpm -Uvh <CmdTool2-x.xx-x.noarch.rpm>"

Installation of CmdTool2 on Ubuntu (conversion of RPM to debian package)
========================================================================
1) alien -k CmdTool2-x.xx-x.noarch.rpm
   This command generates debian package <cmdtool2_x.xx.xx-x_all.deb>

2) dpkg -i cmdtool2_x.xx.xx-x_all.deb
   This command installs CmdTool2 Debian package at /opt/MegaRAID/CmdTool2 directory.

Notes:
1. If older version of the libutil (i.e. <Lib_Utils-1.xx-xx.noarch.rpm>) is installed on the system, 
    please uninstall the older version of the RPM using the command "rpm -e <Lib_Utils-1.xx-xx>"
    and then install the latest libutil rpm <Lib_Utils-1.xx-xx.noarch.rpm> or <Lib_Utils-1.xx-xx> packaged in this zip file.

2. If older version of the libutil rpm <Lib_Utils-1.xx-xx.noarch.rpm> is installed on the system, 
    To perform upgrade from previous version to latest version run the command 
    "rpm -Uvh --nopostun <Lib_Utils-1.xx-xx.rpm> ". 
	
Example: 
   If "Lib_Utils-1.00-06.noarch.rpm" is installed on the target system to to perform upgrade to latest RPM
   "Lib_Utils-1.00-07.noarch.rpm" run the command  "rpm -Uvh --nopostun Lib_Utils-1.00-07.noarch.rpm".

4. On RHEL-3 (X64) and SLES-9 (X64), CmdTool2 requires libstdc++.so.6. It is assumed that these standard libraries are present in the system.

5. On RHEL-6 (x64), CmdTool2 requires ncurses-libs-5.7-3.20090208.el6.i686. It is assumed that these standard libraries are present in the system..

The utility supports many command line options, which can be seen by running help.

The help can be seen in the following ways ?

Cmdtool2 -?
Gives the complete help regarding the command line options and their usage in brief. 


Supported options in CmdTool2
==============================
CmdTool2 -v 
CmdTool2 -help|-h|? 
CmdTool2 -adpCount 
CmdTool2 -AdpSetProp {CacheFlushInterval -val}|{ RebuildRate -val} 
    |{PatrolReadRate -val}|{BgiRate -val}|{CCRate -val} 
    |{ReconRate -val}|{SpinupDriveCount -val}|{SpinupDelay -val} 
    |{CoercionMode -val}|{ClusterEnable -val}|{PredFailPollInterval -val} 
    |{BatWarnDsbl -val} |{EccBucketSize -val} | {EccBucketLeakRate -val} 
    |{AbortCCOnError -val} | AlarmEnbl | AlarmDsbl | AlarmSilence 
    |{SMARTCpyBkEnbl -val} | NCQEnbl | NCQDsbl -aN|-a0,1,2|-aALL 
    |{SSDSMARTCpyBkEnbl -val} -aN|-a0,1,2|-aALL 
    |{MaintainPdFailHistoryEnbl -val} -aN|-a0,1,2|-aALL 
    |{EnblSpinDownUnConfigDrvs -val} -aN|-a0,1,2|-aALL 
    |{EnblSSDPatrolRead -val} -aN|-a0,1,2|-aALL 
    | AutoEnhancedImportEnbl | AutoEnhancedImportDsbl -aN|-a0,1,2|-aALL 
CmdTool2 -AdpSetProp -AutoDetectBackPlaneDsbl -val -aN|-a0,1,2|-aALL 
       val - 0=Enable Auto Detect of SGPIO and i2c SEP. 
             1=Disable Auto Detect of SGPIO. 
             2=Disable Auto Detect of i2c SEP. 
             3=Disable Auto Detect of SGPIO and i2c SEP. 
CmdTool2 -AdpSetProp -CopyBackDsbl -val -aN|-a0,1,2|-aALL 
       val - 0=Enable Copyback. 
             1=Disable Copyback. 
CmdTool2 -AdpSetProp -LoadBalanceMode -val -aN|-a0,1,2|-aALL 
       val - 0=Auto Load balance mode. 
             1=Disable Load balance mode. 
CmdTool2 -AdpSetProp -UseFDEOnlyEncrypt -val -aN|-a0,1,2|-aALL 
       val - 0=FDE and controller encryption (if HW supports) is allowed. 
             1=Only support FDE encryption, disallow controller encryption. 
CmdTool2 -AdpSetProp -PrCorrectUncfgdAreas -val -aN|-a0,1,2|-aALL 
       val - 0= Correcting Media error during PR is disabled. 
             1=Correcting Media error during PR is allowed. 
CmdTool2 -AdpGetProp CacheFlushInterval | RebuildRate | PatrolReadRate | BgiRate 
    | CCRate | ReconRate | SpinupDriveCount | SpinupDelay | CoercionMode
    | PredFailPollInterval | EccBucketSize | EccBucketLeakRate | EccBucketCount
    | ClusterEnable | BatWarnDsbl | AbortCCOnError | AlarmDsply 
    | AutoDetectBackPlaneDsbl| CopyBackDsbl | LoadBalanceMode | SMARTCpyBkEnbl | SSDSMARTCpyBkEnbl | MaintainPdFailHistoryEnbl | EnblSpinDownUnConfigDrvs 
    | EnblSSDPatrolRead 
    | NCQDsply -aN|-a0,1,2|-aALL 
    | UseFDEOnlyEncrypt | WBSupport  -aN|-a0,1,2|-aALL 
    | AutoEnhancedImportDsply -aN|-a0,1,2|-aALL 
    | PrCorrectUncfgdAreas -aN|-a0,1,2|-aALL 
CmdTool2 -AdpAllInfo -aN|-a0,1,2|-aALL  
CmdTool2 -AdpGetTime -aN|-a0,1,2|-aALL  
CmdTool2 -AdpSetTime yyyymmdd hh:mm:ss -aN   
CmdTool2 -AdpSetVerify -f fileName -aN|-a0,1,2|-aALL  
CmdTool2 -AdpBIOS -Enbl |-Dsbl | -SOE | -BE | -Dsply -aN|-a0,1,2|-aALL 
CmdTool2 -AdpBootDrive {-Set {-Lx | -physdrv[E0:S0]}}|-Get -aN|-a0,1,2|-aALL 
CmdTool2 -AdpAutoRbld -Enbl|-Dsbl|-Dsply -aN|-a0,1,2|-aALL
CmdTool2 -AdpCacheFlush -aN|-a0,1,2|-aALL
CmdTool2 -AdpPR -Dsbl|EnblAuto|EnblMan|Start|Stop|Info| SSDPatrolReadEnbl | SSDPatrolReadDsbl
         |{SetDelay Val}|{-SetStartTime yyyymmdd hh}|{maxConcurrentPD Val} -aN|-a0,1,2|-aALL
CmdTool2 -AdpCcSched -Dsbl|-Info|{-ModeConc | -ModeSeq [-ExcludeLD -LN|-L0,1,2]
   [-SetStartTime yyyymmdd hh ] [-SetDelay val ] } -aN|-a0,1,2|-aALL
CmdTool2 -AdpCcSched -SetStartTime yyyymmdd hh -aN|-a0,1,2|-aALL
CmdTool2 -AdpCcSched -SetDelay val  -aN|-a0,1,2|-aALL
CmdTool2 -FwTermLog -BBUoff|BBUoffTemp|BBUon|BBUGet|Dsply|Clear -aN|-a0,1,2|-aALL
CmdTool2 -AdpAlILog -aN|-a0,1,2|-aALL 
CmdTool2 -AdpDiag [val] -aN|-a0,1,2|-aALL
          val - Time in second.
CmdTool2 -AdpShutDown -aN|-a0,1,2|-aALL
CmdTool2 -PDList -aN|-a0,1,2|-aALL 
CmdTool2 -PDGetNum -aN|-a0,1,2|-aALL 
CmdTool2 -pdInfo -PhysDrv[E0:S0,E1:S1,...] -aN|-a0,1,2|-aALL  
CmdTool2 -PDOnline  -PhysDrv[E0:S0,E1:S1,...] -aN|-a0,1,2|-aALL 
CmdTool2 -PDOffline -PhysDrv[E0:S0,E1:S1,...] -aN|-a0,1,2|-aALL 
CmdTool2 -PDMakeGood -PhysDrv[E0:S0,E1:S1,...] | [-Force] -aN|-a0,1,2|-aALL 
CmdTool2 -PDMakeSystem -PhysDrv[E0:S0,E1:S1,...] -aN|-a0,1,2|-aALL 
CmdTool2 -PDHSP {-Set [-Dedicated [-ArrayN|-Array0,1,2...]] [-EnclAffinity] [-nonRevertible]} 
     |-Rmv -PhysDrv[E0:S0,E1:S1,...] -aN|-a0,1,2|-aALL 
CmdTool2 -PDRbld -Start|-Stop|-ShowProg |-ProgDsply 
        -PhysDrv [E0:S0,E1:S1,...] -aN|-a0,1,2|-aALL  
CmdTool2 -PDClear -Start|-Stop|-ShowProg |-ProgDsply 
        -PhysDrv [E0:S0,E1:S1,...] -aN|-a0,1,2|-aALL  
CmdTool2 -PdLocate {[-start] | -stop} -physdrv[E0:S0,E1:S1,...] -aN|-a0,1,2|-aALL 
CmdTool2 -PdMarkMissing -physdrv[E0:S0,E1:S1,...] -aN|-a0,1,2|-aALL 
CmdTool2 -PdGetMissing -aN|-a0,1,2|-aALL 
CmdTool2 -PdReplaceMissing -physdrv[E0:S0] -arrayA, -rowB -aN 
CmdTool2 -PdPrpRmv [-UnDo] -physdrv[E0:S0] -aN|-a0,1,2|-aALL  
CmdTool2 -EncInfo -aN|-a0,1,2|-aALL 
CmdTool2 -PhyInfo -phyM -aN|-a0,1,2|-aALL  
CmdTool2 -PdFwDownload [-SataBridge] -PhysDrv[0:1,1:2,..]-f <filename> -aN|-a0,1,2|-aALL  
CmdTool2 -LDInfo -Lx|-L0,1,2|-Lall -aN|-a0,1,2|-aALL 
CmdTool2 -LDSetProp  {-Name LdNamestring} | -RW|RO|Blocked | WT|WB [-Immediate] |RA|NORA|ADRA 
        | Cached|Direct | -EnDskCache|DisDskCache | CachedBadBBU|NoCachedBadBBU
        -Lx|-L0,1,2|-Lall -aN|-a0,1,2|-aALL 
CmdTool2 -LDGetProp  -Cache | -Access | -Name | -DskCache -Lx|-L0,1,2|-LALL  
        -aN|-a0,1,2|-aALL 
CmdTool2 -LDInit {-Start [-full]}|-Abort|-ShowProg|-ProgDsply -Lx|-L0,1,2|-LALL -aN|-a0,1,2|-aALL 
CmdTool2 -LDCC {-Start [-force]}|-Abort|-ShowProg|-ProgDsply -Lx|-L0,1,2|-LALL -aN|-a0,1,2|-aALL 
CmdTool2 -LDBI -Enbl|-Dsbl|-getSetting|-Abort|-ShowProg|-ProgDsply -Lx|-L0,1,2|-LALL -aN|-a0,1,2|-aALL  
CmdTool2 -LDRecon {-Start -rX [{-Add | -Rmv} -Physdrv[E0:S0,...]]}|-ShowProg|-ProgDsply 
        -Lx -aN 
CmdTool2 -LdPdInfo -aN|-a0,1,2|-aALL 
CmdTool2 -LDGetNum -aN|-a0,1,2|-aALL 
CmdTool2 -LDBBMClr -Lx|-L0,1,2,...|-Lall -aN|-a0,1,2|-aALL 
CmdTool2 -CfgLdAdd -rX[E0:S0,E1:S1,...] [WT|WB] [NORA|RA|ADRA] [Direct|Cached]
        [CachedBadBBU | NoCachedBadBBU][-szXXX [-szYYY ...]]
        [-strpszM] [-Hsp[E0:S0,...]] [-AfterLdX] [-Force]|[FDE|CtrlBased] -aN 
CmdTool2 -CfgEachDskRaid0 [WT|WB] [NORA|RA|ADRA] [Direct|Cached] 
        [CachedBadBBU|NoCachedBadBBU] [-strpszM]|[FDE|CtrlBased] -aN|-a0,1,2|-aALL
CmdTool2 -CfgClr -aN|-a0,1,2|-aALL 
CmdTool2 -CfgDsply -aN|-a0,1,2|-aALL 
CmdTool2 -CfgLdDel -LX|-L0,2,5...|-LALL -aN|-a0,1,2|-aALL 
CmdTool2 -CfgFreeSpaceinfo -aN|-a0,1,2|-aALL 
CmdTool2 -CfgSpanAdd -r10 -Array0[E0:S0,E1:S1] -Array1[E0:S0,E1:S1] [-ArrayX[E0:S0,E1:S1] ...] 
        [WT|WB] [NORA|RA|ADRA] [Direct|Cached] [CachedBadBBU|NoCachedBadBBU]
        [-szXXX[-szYYY ...]][-strpszM][-AfterLdX]|[FDE|CtrlBased] -aN
CmdTool2 -CfgSpanAdd -r50 -Array0[E0:S0,E1:S1,E2:S2,...] -Array1[E0:S0,E1:S1,E2:S2,...] 
        [-ArrayX[E0:S0,E1:S1,E2:S2,...] ...] [WT|WB] [NORA|RA|ADRA] [Direct|Cached] 
        [CachedBadBBU|NoCachedBadBBU][-szXXX[-szYYY ...]][-strpszM][-AfterLdX] | 
        [FDE|CtrlBased] -aN
CmdTool2 -CfgAllFreeDrv -rX [-SATAOnly] [-SpanCount XXX] [WT|WB] [NORA|RA|ADRA] 
        [Direct|Cached] [CachedBadBBU|NoCachedBadBBU] [-strpszM]
        [-HspCount XX [-HspType -Dedicated|-EnclAffinity|-nonRevertible]] 
        [FDE|CtrlBased] -aN 
CmdTool2 -CfgSave -f filename -aN   
CmdTool2 -CfgRestore -f filename -aN   
CmdTool2 -CfgForeign -Scan | [-SecurityKey sssssssssss] -aN|-a0,1,2|-aALL    
CmdTool2 -CfgForeign -Dsply [x] | [-SecurityKey sssssssssss] -aN|-a0,1,2|-aALL    
CmdTool2 -CfgForeign -Preview [x] | [-SecurityKey sssssssssss] -aN|-a0,1,2|-aALL    
CmdTool2 -CfgForeign -Import [x] | [-SecurityKey sssssssssss] -aN|-a0,1,2|-aALL    
CmdTool2 -CfgForeign -Clear [x]|[-SecurityKey sssssssssss] -aN|-a0,1,2|-aALL    
        x - index of foreign configurations. Optional. All by default. 
CmdTool2 -AdpEventLog -GetEventLogInfo -aN|-a0,1,2|-aALL 
CmdTool2 -AdpEventLog -GetEvents {-info -warning -critical -fatal} {-f <fileName>} -aN|-a0,1,2|-aALL 
CmdTool2 -AdpEventLog -GetSinceShutdown {-info -warning -critical -fatal} {-f <fileName>} -aN|-a0,1,2|-aALL 
CmdTool2 -AdpEventLog -GetSinceReboot {-info -warning -critical -fatal} {-f <fileName>} -aN|-a0,1,2|-aALL 
CmdTool2 -AdpEventLog -IncludeDeleted {-info -warning -critical -fatal} {-f <fileName>} -aN|-a0,1,2|-aALL 
CmdTool2 -AdpEventLog -GetLatest n {-info -warning -critical -fatal} {-f <fileName>} -aN|-a0,1,2|-aALL 
CmdTool2 -AdpEventLog -GetCCIncon -f <fileName> -LX|-L0,2,5...|-LALL -aN|-a0,1,2|-aALL 
CmdTool2 -AdpEventLog -Clear -aN|-a0,1,2|-aALL 
CmdTool2 -AdpBbuCmd -aN|-a0,1,2|-aALL  
CmdTool2 -AdpBbuCmd -GetBbuStatus -aN|-a0,1,2|-aALL  
CmdTool2 -AdpBbuCmd -GetBbuCapacityInfo -aN|-a0,1,2|-aALL  
CmdTool2 -AdpBbuCmd -GetBbuDesignInfo -aN|-a0,1,2|-aALL  
CmdTool2 -AdpBbuCmd -GetBbuProperties -aN|-a0,1,2|-aALL  
CmdTool2 -AdpBbuCmd -BbuLearn -aN|-a0,1,2|-aALL  
CmdTool2 -AdpBbuCmd -BbuMfgSleep -aN|-a0,1,2|-aALL  
CmdTool2 -AdpBbuCmd -BbuMfgSeal -aN|-a0,1,2|-aALL  
CmdTool2 -AdpBbuCmd -SetBbuProperties -f <fileName> -aN|-a0,1,2|-aALL 
CmdTool2 -AdpFacDefSet -aN 
CmdTool2 -AdpFwFlash -f filename [-NoSigChk] [-NoVerChk] -aN|-a0,1,2|-aALL  
CmdTool2 -AdpGetConnectorMode -ConnectorN|-Connector0,1|-ConnectorAll -aN|-a0,1,2|-aALL  
CmdTool2 -AdpSetConnectorMode -Internal|-External|-Auto -ConnectorN|-Connector0,1|-ConnectorAll -aN|-a0,1,2|-aALL  
CmdTool2 -PhyErrorCounters -aN|-a0,1,2|-aALL  
CmdTool2 -DirectPdMapping -Enbl|-Dsbl|-Dsply -aN|-a0,1,2|-aALL  
CmdTool2 -PDCpyBk -Start -PhysDrv[E0:S0,E1:S1] -aN|-a0,1,2|-aALL 
CmdTool2 -PDCpyBk -Stop|-ShowProg|-ProgDsply -PhysDrv[E0:S0] -aN|-a0,1,2|-aALL 
CmdTool2 -PDInstantSecureErase -PhysDrv[E0:S0,E1:S1,...] | [-Force] -aN|-a0,1,2|-aALL 
CmdTool2 -LDMakeSecure -Lx|-L0,1,2,...|-Lall -aN|-a0,1,2|-aALL 
CmdTool2 -DestroySecurityKey | [-Force] -aN 
CmdTool2 -CreateSecurityKey -SecurityKey sssssssssss | [-Passphrase sssssssssss] |[-KeyID kkkkkkkkkkk] -aN 
CmdTool2 -ChangeSecurityKey -OldSecurityKey sssssssssss | -SecurityKey sssssssssss| 
          [-Passphrase sssssssssss] | [-KeyID kkkkkkkkkkk] -aN
CmdTool2 -GetKeyID [-PhysDrv[E0:S0]] -aN 
CmdTool2 -SetKeyID -KeyID kkkkkkkkkkk -aN 
CmdTool2 -VerifySecurityKey -SecurityKey sssssssssss -aN 
CmdTool2 -GetPreservedCacheList -aN|-a0,1,2|-aALL 
CmdTool2 -DiscardPreservedCache -Lx|-L0,1,2|-Lall -aN|-a0,1,2|-aALL 

       sssssssssss  - It must be between eight and thirty-two 
                      characters and contain at least one number, 
                      one lowercase letter, one uppercase 
                      letter and one non-alphanumeric character.
       kkkkkkkkkkk -  Must be less than 256 characters. 

    Note: The directly connected drives can be specified as [:S] 

    Wildcard '?' can be used to specify the enclosure ID for the drive in the 
      only enclosure without direct connected device or the direct connected 
      drives with no enclosure in the system.

      Note:[-aALL] option assumes that the parameters specified are valid 
       for all the Adapters. 

    The following options may be given at the end of any command above: 

    [-Silent] [-AppLogFile filename] [-NoLog] [-page[N]] 
                 [-] is optional. 
                  N - Number of lines per page. 

=============
Fixes/Updates
=============
N/A

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