Release Note for SYSCFG Utility
Version 12.0 Build 14

Feb 17, 2014
Copyright (c) 2014 Intel Corporation.
=====================================

Contents
--------

1. Introduction.
2. Supported Intel(R) Server Boards.
3. Supported Operating Systems.
4. Pre-requisites.
5. Getting started.
6. Usage.
7. Reference Documentation.
8. Known Issues.
9. Supported features in the release.
10. Legal Information.


1. Introduction
---------------
   
The Save and Restore System Configuration utility (syscfg) is used for saving and restoring Firmware and BIOS 
settings to a binary/INI file, and for configuring Firmware and BIOS settings via a command line interface.

2. Supported Platforms
----------------------
 
   Intel(R) Server Board S1200RP series.
   Intel(R) Server Board S1200 series.
   Intel(R) Server Board S1400 series.
   Intel(R) Server Board S1600 series.
   Intel(R) Server Board S2400 series.
   Intel(R) Server Board S2600 series.
   Intel(R) Server Board S4600 series.   
   

3. Supported Operating Systems
------------------------------
   UEFI 2.0/2.1/2.3.1
   Windows* Server 2008 R2 SP1 EM64T
   Windows* Server 2012 Enterprise
   Windows Server 2012 R2 EM64T
   Windows 7 (32 bit & EM64T)
   Windows 8 (32 bit & EM64T)
   Windows 8.1 (32 bit & EM64T)
   WinPE* 3.x/4.x (32 bit & EM64T)
   RHEL6* update1/update2/update3/update4 (32 bit & EM64T)  
   CentOS* 6.x (32 bit & EM64T)
   SLES* 11 SP1/SP2 (32 bit & EM64T)
  

4. Pre-requisites
-----------------

   1. On RHEL* 6 update1/update2 OS

      a. If the utility fails with error message
         "error while loading shared libraries: libncurses.so.5: cannot open shared object file: No such file or directory"
         Then install libstdc++-4.4.4-13.el6.i686.rpm and ncurses-libs-5.7-3.20090208.el6.i686.rpm from the OS
         CD itself using the below commands.
            #rpm -ivh libstdc++-4.4.4-13.el6.i686.rpm
            #rpm -ivh ncurses-libs-5.7-3.20090208.el6.i686.rpm

            example: rpm -ivh media\Packages\libstdc++-4.4.4-13.el6.i686.rpm
                    where CD/DVD is mounted to "media" directory.

      b.  If the utility fails with error message
          "Error: /lib/ld-linux.so.2: Bad ELF interpreter: No such file or directory" 
          This indicates development and optional packages are not installed, 
          please install the necessary packages accordingly.
   
   2. On RHEL* 6 update4 OS
      If the utility fails with error message "Error: Section need to be restored does not present in config file" when restoring BMC settings,
      Then start up OpenIPMI driver using the below command. (It will make sure "/dev/ipmi0" device is existed)
         #modprobe ipmi_devintf
   
5. Getting started
------------------
   
   1. Master syscfg package SysCfgVxx.0-Buildxx_AllOS.zip has all the executable intact with the following folder structure:

      SysCfgVxx.0-Buildxx_AllOS
      |
      |----UEFI_x64
      |        |---syscfg.efi
      |        |---ipmi.efi
      |        |---Nshell.efi
      |        |
      |---Licenses
      |    |--EFIToolKit
      |    |    |--BSD-License-From-Intel.txt
      |    |--Others
      |    |    |--AES-License.txt.txt
      |    |    |--MD5_Message-Digest-License.txt
      |    |    |--SSL Implementation-License.txt
      |    |--GPL
      |    |   |--Gpl-2_0.txt
      |    |
      |    |----INTEL SOFTWARE LICENSE AGREEMENT WITH.doc
      |    |----license.txt 
      |----SysCfg.txt
      |    |
      |----Drivers
      |        |---Win
      |             |---x64
      |             |    |--DeviceSetup.exe
      |             |    |--flashud.cat
      |             |    |--flashud.inf
      |             |    |--FLASHUD.sys
      |             |    |--ibsmutil.cat
      |             |    |--IBSMUtil.sys
      |             |    |--IBSMUx64.inf
      |             |    |--imbdrv.cat
      |             |    |--IMBDrv.inf
      |             |    |--imbdrv.sys
      |             |    |--install.cmd
      |             |    |--uninstall.cmd
      |             |
      |             |---x86
      |                  |--DeviceSetup.exe
      |                  |--flashud.cat
      |                  |--flashud.inf
      |                  |--FLASHUD.sys
      |                  |--ibsmutil.cat
      |                  |--IBSMUtil.sys
      |                  |--IBSMUtil.inf
      |                  |--imbdrv.cat
      |                  |--IMBDrv.inf
      |                  |--imbdrv.sys
      |                  |--install.cmd
      |                  |--uninstall.cmd
      |
      |----RHEL
      |       |---syscfg.zip
      |
      |----SLES
      |       |---syscfg.zip
      |
      |----Win_x86
      |       |---syscfg.exe
      |       |---imbapi.dll
      |       |---msipmi.dll
      |
      |----Win_x64
              |---syscfg.exe
              |---imbapi.dll
              |---msipmi.dll

   2. For 32 bit Windows and WinPE, go to folder "SysCfgVxx.0-Buildxx_AllOS\Drivers\win\x86" and run "install.cmd" as administrator to install ipmi, smi and memory map drivers.
   3. For 64 bit Windows and WinPE, go to folder "SysCfgVxx.0-Buildxx_AllOS\Drivers\win\x64" and run "install.cmd" as administrator to install ipmi, smi and memory map drivers.
   4. For 32/64 bit Windows and 32 bit WinPE, please use syscfg in "SysCfgVxx.0-Buildxx_AllOS\Win_x86".
   5. For 64 bit WinPE, please use syscfg in "SysCfgVxx.0-Buildxx_AllOS\Win_x64".
   6. Linux*
   
   	I. RPM Installation:
     	--------------------
   
        1. Copy syscfg rpm from Linux-RPM-package (for RHEL or SLES) to local folder.
        2. Install syscfg utility by using "rpm -ivh syscfg-Vxx.x-Bxx.ixxx.rpm". This will install the utility in "/usr/bin/syscfg/"	
        3. On RHEL utility can now be executed from any terminal (example: "# syscfg -i").
        4. On SLES after installing the rpm close the terminal from which rpm was installed and then execute utility from a new terminal (example: "# syscfg -i").
        
      RPM Uninstallation:
      -------------------
        1. To uninstall the utility use "rpm -e syscfg" command.


  II. Regular Installation:
      ---------------------

      1. Linux OS version, the executable can be executed directly.
        
6. Usage
--------
   1. Command line Interface

      Linux Shell>> ./syscfg [Switches] [parameters]
			 			 
      Examples
      --------
      a. To display the system BIOS/BMC Version:

             >> ./syscfg -i

      b. To display the BIOS Parameters:

             >> ./syscfg /d biossettings <"BIOS variable Name">
	     >> ./syscfg /d biossettings group <"BIOS Group Name"> <"BIOS variable Name">

      c. To Set the BIOS Parameters:

             >> ./syscfg /bcs <AdminPw> <"BIOS variable Name"> <Value>
	     >> ./syscfg /bcs <AdminPw>  <"BIOS Group Name"> <"BIOS variable Name"> <Value>

         Note: If AdminPw is not set use ""

 * "BIOS Group Name" and "BIOS variable Name" should be the same as shown in BIOS F2 screen.
 * "AdminPw" is the BIOS administrator password if not set use "". 

      d. To save BIOS and BMC settings to INI file use
   
            >> ./syscfg /s BIOSBMC.ini /b /f
                 or
            >> ./syscfg /s BIOSBMC.ini

      e. To save only BIOS settings to INI file use

            >> ./syscfg /s BIOS.ini /b 

      f. To save only BMC settings to INI file use

            >> ./syscfg /s BMC.ini /f


      g. To restore BIOS and BMC settings from saved INI file use
   
            >> ./syscfg /r BIOSBMC.ini /b /f
                
            Note: If AdminPw is set use 

            >> ./syscfg /r BIOSBMC.ini /b /f /bap <"AdminPw">

          
      Windows and UEFI Shell>> syscfg [Switches] [parameters]
			 			 
      Examples
      --------
      a. To display the system BIOS/BMC Version:

             >> syscfg -i

      b. To display the BIOS Parameters:

             >> syscfg /d biossettings <"BIOS variable Name">
	     >> syscfg /d biossettings group <"BIOS Group Name"> <"BIOS variable Name">

      c. To Set the BIOS Parameters:

             >> syscfg /bcs <AdminPw> <"BIOS variable Name"> <Value>
	     >> syscfg /bcs <AdminPw>  <"BIOS Group Name"> <"BIOS variable Name"> <Value>

         Note: If AdminPw is not set use ""  

 * "BIOS Group Name" and "BIOS variable Name" should be the same as shown in BIOS F2 screen.
 * "AdminPw" is the BIOS administrator password if not set use "". 


      d. To save BIOS and BMC settings to INI file use
   
            >> syscfg /s BIOSBMC.ini /b /f
                 or
            >> syscfg /s BIOSBMC.ini

      e. To save only BIOS settings to INI file use

            >> syscfg /s BIOS.ini /b 

      f. To save only BMC settings to INI file use

            >> syscfg /s BMC.ini /f


      g. To restore BIOS and BMC settings from saved INI file use
   
            >> syscfg /r BIOSBMC.ini /b /f
                
            Note: If AdminPw is set use 

            >> syscfg /r BIOSBMC.ini /b /f /bap <"AdminPw">


7. Reference Documentation
--------------------------
  
    IPMI v2.0 specification
    SYSCFG Utility User Guide
    
8. Known Issues
---------------
     
  1. Standard Error Messaging features are not fully supported in this release. 
     Only a subset of error messages will be printed.
  2. To be noted, any BIOS setting changed by SYSCFG, it requires reboot to make BIOS setting change take effective.
  3. Save and restore using SCF file format not supported on S1400/S1600/S2400/S2600/S4600 and S1200RP platform series.
  4. Make sure that BIOS variables saved in the INI file should have some default value, 
     if it has empty/null then while restoring utility will fail with Error message.
  5. The settings under server management are saved in BMC. For some of the settings under server  
     management, after a reboot the values from BMC will override the values set through "bcs" switch.  
	 
           The following settings will be overwritten 
                1. Resume on AC Power Loss
                2. Clear System event log.
     However "Resume on AC Power Loss" BIOS variable can be set using BMC switch "/prp", please refer to the help for more details.                   
  6. Reordering boot devices using /bbo should be followed by a system reset as per IPMI spec. 
     Otherwise an immediate display command using /bbo switch may not display the correct boot device order.
  7. Make sure that "Static Boot Order" is disbaled if using /bbo to reorder boot devices. Otherwise the expected boot order can only appply to next boot.
  8. Restore of BIOS variables will not work for Read only variables or variables which may become read only due to dependent variables.
  9. /sole option will not work and receive error messages.
  10. For /bup option, if the new user password is same as current admin password, syscfg would not throw error in EFI.
  
            
9. Supported features in the release
------------------------------------

Build 9
---------
  1. Support to save/restore BIOS settings on WinPE4.0 64 bit.
  2. Support to restore multiple BIOS settings on Windows(UEFI 2.3.1 BIOS).
  3. Support time info correction before time setting.
  
Build 10
---------
  1. Support to save/restore BIOS settings on Windows 2012 R2 & WinPE4.0 64bit (UEFI 2.1 BIOS).
  
Build 11
---------
  1. Support to restore BIOS settings leading with "SAS/SATA" or "SATA/SAS".
  
Build 12
---------
  1. Support to restore Access mode of BMC LAN channel.
  2. Support to set retry interval (0-2559) of Serial Over LAN.
  
Build 13
---------
  1. Support to change BMC user name from "Null" to other string.
  2. Support to create/delete/overwrite EFI variables.  
  
Build 14
---------
  1. Support to enhance BBO operation.


10. Legal Information
---------------------

==============================================================================

                               LEGAL INFORMATION

==============================================================================

Information in this document is provided in connection with Intel Products

and for the purpose of supporting Intel developed server boards and systems.

No license, express or implied, by estoppel or otherwise, to any intellectual 

property rights is granted by this document. Except as provided in Intel's 

Terms and Conditions of Sale for such products, Intel assumes no liability 

whatsoever, and Intel disclaims any express or implied warranty, relating to 

sale and/or use of Intel products including liability or warranties relating 

to fitness for a particular purpose, merchantability, or infringement of any 

patent, copyright or other intellectual property right. Intel Corporation may 

have patents or pending patent applications, trademarks, copyrights, or other 

intellectual property rights that relate to the presented subject matter.  

The furnishing of documents and other materials and information does not 

provide any license, express or implied, by estoppel or otherwise, to any 

such patents, trademarks, copyrights, or other intellectual property rights.  

Intel products are not intended for use in medical, life saving, or life 

sustaining applications. Intel may make changes to specifications and product 

descriptions at any time, without notice.

 

Intel is a registered trademark of Intel Corporation. 

 

*Other names and brands are the property of their respective owners.

 

Copyright (c) 2014 Intel Corporation.



(end)


