                                                       

**************************** How Do I Do That? *********************************


The following are a list of the quickest ways to accomplish a task with mptutil.  

Flash Firmware -------------- "mptutil-2.x -f <firmware_file>"
Flash Option Rom ------------ "mptutil-2.x -b <bios_file>"
Flash x86 & FCode ----------- "mptutil-2.x -o -g <x86_file> <fcode_file>"
Flash x86, FCode & EFI ------ "mptutil-2.x -o -h <x86> <fcode> <efi>"
Erase ----------------------- "mptutil-2.x -o -ex" [See Below for valid options]
Program SAS Address --------- "mptutil-2.x -o <-ux> -w 500XXXX -s" [See Below]
Program just a SAS Address -- "mptutil -o <-ux> -w 500XXXX -t" [See Below]
Reset the HBA --------------- "mptutil-2.x -o -y"
Concatenate firmware/nvdata - "mptutil-2.x -o -d firmware,nvdata,output"
   
**Things in < > are optional.
                                                                               

************************* Flashing Firmware ************************************

There are two ways to flash the firmware:
1)  Use the menu option "Update Firmware"
2)  Use the command line option -f.  Example:  "mptutil-2.x -f <filename>".  The 
    filename is optional and the user will be prompted for a filename if 
    omitted.

There is a third way for the firmware to be flashed and is done without the 
users knowledge.  When MPTUtil is executed, and a SAS HBA is in any state other 
than READY or  OPERATIONAL, mptutil will immediately do a firmware download 
boot.  The firmware provided by the user to do the firmware download boot will 
be immediatly flashed after the firmware download boot has completed.  MPTUtil 
does this because the firmware will only move to the OPERATIONAL state if it is 
running from flash and not memory.  OPERATIONAL state is needed to do everything 
else provided in the utility.


--- Common Questions About Flashing Firmware ----

Question:  After I update firmware on my SAS HBA, why doesn't the version 
           string change in the menu?
Answer:    The firmware you just flashed on the HBA does not run until a 
           diagnostic reset occurs.  If you exit the utility and reenter it the 
           version string should be updated. 

Question:  I get the error "This image does not contain a valid nvdata." when 
           I try to flash the firmware, why?
Answer:    The user is expected to concatenate a proper nvdata image on to the
           firmware and mptutil will keep the user from flashing an image 
           without one.  To concatenate nvdata and firmware you will need to 
           run the following command:
             "mptutil-2.x -o -d 64it__l.fw,sas106x.dat,output.fw"
             
           *64it__l.fw is the firmware image without a nvdata image.
           *sas106x.dat is the nvdata image.  This file will depend on the 
            type/rev of HBA on which the firmware will be used.
           *output.fw is the name of the file created with the firmware and 
            nvdata concatenated.  This concatenated image can be used for all 
            boards of this type/rev.

Question:  How do I program multiple cards in a system from the command line? 
Answer:    MPTUtil will execute each command line option that it receives in 
           order of receipt.  For instance:  if you had three HBA's in your 
           system you would need to type the following to flash firmware and 
           BIOS on each card:  "mptutil-2.x -c1 -f -b -c2 -f -b -c3 -f -b" 

Question:  Can I program a new flash and option rom in the same command line
           argument? 
Answer:    Yes, just run the following command:
             "mpututil-2.x -f <firmware_name> -b <option_rom_name>"





**************************** Flashing BIOS *************************************

There are two ways to flash a single option rom:
1)  Use the menu option "Update BIOS"
2)  Use the command line option -b.  Example:  "mptutil-2.x -b <filename>".  The 
    filename is optional and the user will be prompted for a filename if 
    omitted.

Both of these options will prompt for an INT13 BIOS image by default, but you can
enter a FCode image here as well.


To Flash multiple option roms you will need to use one of the two following ways:
1) Use command line option -g. Example: "mptutil-2.x -o -g <x86> <fcode>"
    The filenames are optional and the user will be prompted for the filenames 
    if omitted.
2) Use command line option -h. Example: 
   "mptutil-2.x -o -h <x86_file> <fcode_file> <efi_file>".  The filenames are 
   optional and the user will be prompted for the filenames if omitted.


--- Common Questions About Flashing BIOS ----
Question:  What host adapters will the command line options -g and -h work with? 
Answer:    The command line options will work with both Fibre Channel and SAS
           host adapters.

Question:  Can I program a new flash and option rom in the same command line
           argument? 
Answer:    Yes, just run the following command:
             "mpututil-2.x -f <firmware_name> -b <option_rom_name>"





******************************** Erasing Flash *********************************

To do any erasing you will need to type "mptutil-2.x -o -ex".  Where x 
represents the area you would like erased:

        1:  NVSRAM
        2:  SEEPROM
        3:  NVSRAM & SEEPROM
        4:  Backup Firmware
        5:  Persistent Pages
        6:  Manufacturing Pages
        7:  Boot Services


--- Common Questions About Erasing Flash ----




******************************** Concatenation *********************************

There are two ways to concatenate a firmware and nvdata file:
1)  Use the command line option -d.  
    Example: "mptutil-2.x -o -d firmware,nvdata,output".
        *firmware is a firmware image without an nvdata image.
        *nvdata is the text nvdata image.
        *output is the name of the file created with the firmware and nvdata
         concatenated.
2)  This can be run on a DOS system without any HBA's in the system.  The program
    will ask if you would like to concatenate a SAS firmware image and then will
    prompt for the necessary files.


--- Common Questions About Concatenating ----




************************** Programming SAS Address *****************************

To program the SAS Address on a 1064 chip run: "mptutil -o -w 500062b -s".
To program the SAS Address on a 1068 chip run: "mptutil -o -w 500605b -s".

If you want to program just the SAS address, use the same command as above,
only change the -s to a -t.  For example if you wanted to just program the 
SAS address on a 1064 chip you would run:  "mptutil -o -w 500062b -t".

  ** The -u option is optional in some cases.



--- Common Questions About Concatenating ----

Question:  What is the -ux option used for?
Answer:    The -u option is used to inform the utility what character (x) to 
           look for when scanning the SAS address on a host adapter.  If this 
           option is not used the utility will assume the SAS address will start 
           with a zero. This option is only needed when scanning in a SAS 
           address.
           
Question:  What is the difference between the -s and the -t?
Answer:    The -s option will allow the user to enter data for the Board Number, 
           Tracer Number and SAS Address, where the -t option only prompts the 
           user for the SAS address and changes the Tracer Number and Assembly 
           Number to "Unspecified".

