
A6826A/A9782A/A9784A/AB465A
EFI Driver and Utilities


Contents
========
Included files
Utilities
Writing Driver to Flash
Writing Firmware to Flash
Additional Notes
Diagnostics Tools

    

Included Files
--------------

  EFIUTIL.EFI          EFI utility for updating adapter driver/firmware
  EFIAUX.DRV           EFI auxiliary driver (used by efiutil when no drivers were loaded)
  QL2312EF.BIN         EFI driver image file (used for write to adapter flash)
  QL2312FW.BIN         Adapter firmware file (used for write to adapter flash)
  HP6826.DAT           NVRAM file for A6826A (used for write/read of adapter nvram)
  HP9782.DAT           NVRAM file for A9782A (used for write/read of adapter nvram)
  HP9784.DAT           NVRAM file for A9784A (used for write/read of adapter nvram)
  HPB465.DAT           NVRAM file for AB465A (used for write/read of adapter nvram)



Utilities
---------

  efiutil
 
    This utility is used to update the EFI driver and RISC firmware resident in the FLASH ROM on the HBA.
    This utility can be used either in command line interface mode or batch mode.
    In command line interface (CLI) mode it can be invoked by entering the following command in the EFI partition where the utility resides:
    
       efiutil

    Some online help information exists within the efiutil itself and can be displayed by typing.

       efiutil help 

    Refer to the efiutil user manual for complete instructions <Book Mark>

    See additional notes below.

  eficfg

    This utility is used to configure configuration parameters in the Adapter NVRAM.
    It is also used to configure EFIFCScanLevel parameter in the System NVRAM.
    The utility can be invoked by entering the following at the shell prompt:

       drvcfg m n -s 

    where m is the driver handle and n is the controller handle.

    Refer to the eficfg user's manual for complete usage instructions.

    See additional notes below.

Updating EFI Driver or RISC firmware in the Adapter FLASH ROM at the efiutil Command Line Interface ( CLI):
-----------------------------------------------------------------------------------------------------------

  1. Insert the <IPF0312> CD or download CD Image available from HP <web site> 
     on any available EFI partition on the Target System.

  2. Type the following commands at the EFI prompt:
     
      2.1  map -r (needed only if you are using a CD)

      2.2  fsX: 

      2.3  cd <directory  on CD> (if a CD is being used)

           OR

           cd <directory where the files were copied) 

      2.4  fs0:\> efiutil
      2.5  This will bring up the command line interface for the efiutil. 
           Choose the adapter index that you want to update.

           efiutil> adapter
     	     Adapter Index number [0]? N  
           (where N represents the adapter index you want to update)

      2.6  efiutil> efi_write=<EFI driver file name>        (to update the EFI driver)

      2.7  efiutil> risc_fw_write=<RISC firmware file name> (to update the RISC firmware)
           
  3. After the update process is complete, reset the system.
     This is important since the flashed driver will not be loaded until a reset is done.
     To do a reset, do the following:

     3.1 fsX:\> reset



Updating EFI Driver or RISC firmware in the Adapter FLASH ROM in Batch mode:
----------------------------------------------------------------------------


  1. Insert the <IPF0312> CD or download CD Image available from HP <web site> 
     on any available EFI partition on the Target System.

  2. Type the following commands at the EFI prompt:

     
      2.1  map -r (needed only if you are using a CD)

      2.2  fsX: 

      2.3  cd <directory  on CD> (if a CD is being used)

           OR

           cd <directory where the files were copied) 

      2.4  efiutil all info
            Provides info of all adapters in the system.

      2.5  efiutil adapter=N efi_write=<EFI driver file name>        (for updating EFI driver)
           efiutil adapter=N risc_fw_write=<RISC firmware file name> (for updating RISC firmware)

     to update one adapter only.

           OR
         
           efiutil all efi_write=<EFI driver file name>
           efiutil all risc_fw_write=<RISC firmware file name>

     to update all adapters with the same revision.

     where:
        "fsX"   (where X maps to the CD or the available EFI partition where the CD image was downloaded)   
        "N"     (where N represents the adapter index you want to update obtained from step 2.4)


  3. After the update process is complete, reset the system
     This is important since the flashed driver will not be loaded until a reset is done.
     To do a reset, do the following:

     3.1 fsX:\> reset

Examples:
     
  Here is an example in command line interface:
  
    fs0:> efiutil
  
    Fibre Channel Card Efi Utility  1.07  (10/28/2003)
    
     2 HP Fibre Channel Adapters found:
      A0  Acpi(PNP0A03,0)/Pci(1|0)  50060B0000123400  1.15 (3.02.165)
      A1  Acpi(PNP0A03,0)/Pci(1|1)  50060B0000123402  1.15 (3.02.165)
    
    efiutil> adapter
     Adapter Index number [0]? 1
    
    efiutil> efi_write
     Driver image binary filename [ql2312ef.bin]? 
      using filename ql2312ef.bin
     Old revision 1.15, New revision 1.16, Continue [n]? y
     File Size: 0000B600
     Flash part Am29LV010
      Moving Image 2 down...
      ............................................................
      Moving Image 1 down...
      ............................................................
      ............................................................
      Writing new image...
      ............................................................
      ............................................................
      ............................................................
      Writing new image...
      ............................................................
      Image write complete.
    
    efiutil> quit
    fs0:\> reset
    
Here is an example in batch mode:

1. Example to update EFI driver and RISC firmware on one specific adapter.

fs2:\EFI\HP\TOOLS\IO_CARDS\FC2P2G> efiutil all info

 Fibre Channel Card Efi Utility  1.08  (11/10/2003)

 3 Fibre Channel Adapters found:
  A0  Acpi(000222F0,200)/Pci(1|0)/Pci(4|0)  50060B00001EE050  1.14 (3.02.164)
  A1  Acpi(000222F0,400)/Pci(1|0)  50060B00001CCD94  1.16 (3.02.165)
  A2  Acpi(000222F0,400)/Pci(1|1)  50060B00001CCD96  1.16 (3.02.165)

  A0  Acpi(000222F0,200)/Pci(1|0)/Pci(4|0)  50060B00001EE050  1.14 (3.02.164)

  A1  Acpi(000222F0,400)/Pci(1|0)  50060B00001CCD94  1.16 (3.02.165)

  A2  Acpi(000222F0,400)/Pci(1|1)  50060B00001CCD96  1.16 (3.02.165)

Choosing adapter 2 for update,

 fs0:\> efiutil adapter=2 efi_write=ql2312ef116.bin risc_fw_write=ql2312fw302165.bin

 Fibre Channel Card Efi Utility  1.08  (11/10/2003)

 3 Fibre Channel Adapters found:
  A0  Acpi(000222F0,200)/Pci(1|0)/Pci(4|0)  50060B00001EE050  1.14 (3.02.164)
  A1  Acpi(000222F0,400)/Pci(1|0)  50060B00001CCD94  1.16 (3.02.165)
  A2  Acpi(000222F0,400)/Pci(1|1)  50060B00001CCD96  1.16 (3.02.165)
  

  A0  Acpi(000222F0,400)/Pci(2|0)/Pci(4|0)  50060B0000265042  1.14 (3.02.164)
 Writing efi driver image to flash from file ql2312ef116.bin...
 Old revision 1.14, New revision 1.16
 File size 0000B800
 Flash part Am29LV040
 Moving Image 2 down...
 ............................................................
 Moving Image 1 down...
 ............................................................
 ............................................................
 Writing new image...
 ............................................................
 Writing new image...
 ............................................................
 Image write complete.
  A0  Acpi(000222F0,400)/Pci(1|1)  50060B00001CCD96  1.16 (3.02.164)
 Writing risc image to flash from file ql2312fw302165.bin...
 Old revision 3.02.164, New revision 3.02.165
 File size 00011000
 Flash part Am29LV040
 Moving Image 2 down...
 .............................................................
 Writing new image...
 .............................................................
 .............................................................
 Writing new image...
 .............................................................
 Image write complete.

fs0:\> reset


2. Example to update EFI driver on all adapters in batch mode.  
   Follow the same steps with the risc_fw_update option for RISC firmware update.

 fs0:\> efiutil all efi_write=ql2312ef116.bin 

 Fibre Channel Card Efi Utility  1.08  (11/10/2003)

 3 Fibre Channel Adapters found:
  A0  Acpi(000222F0,200)/Pci(1|0)/Pci(4|0)  50060B00001EE050  1.14 (3.02.164)
  A1  Acpi(000222F0,400)/Pci(1|0)  50060B00001CCD94  1.14 (3.02.165)
  A2  Acpi(000222F0,400)/Pci(1|1)  50060B00001CCD96  1.14 (3.02.165)
  

  A0  Acpi(000222F0,400)/Pci(2|0)/Pci(4|0)  50060B0000265042  1.14 (3.02.164)
 Writing efi driver image to flash from file ql2312ef116.bin...
 Old revision 1.14, New revision 1.16
 File size 0000B800
 Flash part Am29LV040
 Moving Image 2 down...
 ............................................................
 Moving Image 1 down...
 ............................................................
 ............................................................
 Writing new image...
 .............................................................
 Writing new image...
 .............................................................
 Image write complete.
  A1  Acpi(000222F0,400)/Pci(2|0)/Pci(4|0)  50060B0000265042  1.14 (3.02.165)
 Writing efi driver image to flash from file ql2312ef116.bin...
 Old revision 1.14, New revision 1.16
 File size 0000B800
 Flash part Am29LV040
 Moving Image 2 down...
 ............................................................
 Moving Image 1 down...
 ............................................................
 ............................................................
 Writing new image...
 ............................................................
 Writing new image...
 ............................................................
 Image write complete.
 A2  Acpi(000222F0,400)/Pci(2|0)/Pci(4|0)  50060B0000265042  1.14 (3.02.165)
 Writing efi driver image to flash from file ql2312ef116.bin...
 Old revision 1.14, New revision 1.16
 File size 0000B800
 Flash part Am29LV040
 Moving Image 2 down...
 ............................................................
 Moving Image 1 down...
 ............................................................
 ............................................................
 Writing new image...
 ............................................................
 Writing new image...
 ............................................................
 Image write complete.

  
fs0:\> reset


Additional Notes 
----------------

a.  When specifying an adapter number or a filename in batch mode, 
    efiutil requires the absence of spaces on either side of the 
    equal (=) sign for syntactic reasons; for example:

       fs0:\> efiutil adapter=0 efi_write=driver.bin

b.  When executing efiutil, drvcfg or drvdiag, it is strongly 
    recommended to not redirect the output of these commands.  
    Redirecting console output may cause test failures.


Diagnostics Tools
-----------------

There is an embedded diagnostic protocol in the EFI driver which can be used
to test the Host Bus Adapter and the Fibre channel link.

There are three levels of diagnostics available:
1. Standard -
This level performs a mailbox test on the adapter registers followed by a loopback 
test at the 10-bit interface; at the end of the test, a disconnect/connect sequence 
is done to restart the adapter.  
See additional notes above.

2. Extended -
This level performs a mailbox test on the adapter registers followed by loopback 
tests at the both the 10-bit interface and the 1-bit interface; at the end of the 
test, a disconnect/connect sequence is done to restart the adapter.    
See additional notes above.

3. Manufacturing - 
This level provides an interactive mode for running the following commands:

Command Summary

connection - displays the state (up or down) and type (loop or point-to-point) of Fibre Channel connection
help       - displays a brief list of commands
interface  - displays or sets the loopback point used for the loopback command
iterations - displays or sets the iteration count used for the loopback command
loopback   - performs a loopback test
mailbox	   - performs a mailbox register test
post       - performs a POST (power on self test) of the HBA hardware
path       - displays current adapter path
quit	   - quits back to EFI shell

See additional notes above.

Please refer to the eficfg.doc file for complete details on running the diagnostic protocol.


