HP FC Cards with fcd Driver on HPUX (IA64) - Firmware Related Questions

I found this Doc about HBA firmware, it has some good info:

HP FC Cards with fcd Driver on HPUX (IA64) - Firmware Related Questions
Information
The HP Fibre Channel cards (2GB A6826A, A9782A, A9784A, AB465A, A7538A and 4GB AB378A, AB378B, AB379A, AB379B, AD300A, AD193A, AD194A) all use the fcd driver.
The cards have two Firmware flash ROMs and very often questions regarding the Firmware came up. In the following, it is given some general information what Firmware is used at what time.
NOTE: Everything written in this document is only valid for HPUX running on Integrity Servers. A similar document exists for PA Risc Servers.
Details
The fcd driven fibre channel HBAs have a Risc storage processor onboard (Qlogic ISP2300 for 2GB cards and ISP24xx for 4GB) for FC protocol related calculations and data processing (Risc stands for Reduced Instruction Set Computer).
This Risc processor must not be confused with the PA Risc processor of HP9000 servers.
On this Risc processor, a card specific firmware is running (The Risc Firmware ). This Firmware is embedded into the OS driver ("fcd driver")!
As soon as the driver comes online during OS boot, it sets some registers on the card and forces it to use the Risc Firmware provided by driver. With this setup it is always 100% sure that the driver works with a supported Firmware.
No Firmware update is necessary to use the card under HPUX, new Firmware revisions come with new OS drivers.
Of course, this does not work if one wants to boot via the fibre channel card. To provide boot support, the fibre channel PCI card has two flash ROMs with -Risc Firmware (for the storage processor on the card)
EFI driver (runs on the CPU of the server, the driver to access the card from EFI shell on Itanium systems)
Only when a boot through a fibre channel card is made, the Risc Firmware from the card flash rom is used, but even in this case only until the OS driver comes online. Then the ROM Firmware is not used anymore.
For Itanium systems, there is a 2nd flash ROM with the EFI driver (EFI=Extensible Firmware Interface, the BIOS of an Integrity Server). This driver is loaded by the EFI if a boot option points to a device on the FC card or if a user issues a reconnect -r in the EFI shell.
The EFI driver is the software piece that runs on the Integrity Server to access the card (note that for fpar IA64 systems (=> Firmware partitions, the IA64 version of virtual partitions), the EFI driver has to be compatible with the fpar version even if no boot via FC is made).
Summary:

* The Risc Firmware and the EFI driver in the card flash ROM is only needed if the OS is booted via this FC card
* EFI Firmware has to be supported by fpars if used (IA64)
* During normal operation, the OS driver provides the Firmware for the card. A new driver contains, in most cases, new Firmware

How to display all the Firmware versions
When the operating system is up, the currently active Firmware (provided by the driver) can be displayed with:
# strings /usr/conf/lib/libfcd.a | grep Firmware ... COPYRIGHT 2001 QLOGIC CORPORATION ISP2300 Firmware Version 03.03.18 $ COPYRIGHT 2005 QLOGIC CORPORATION ISP24xx Firmware Version 4.0.22 $
As you can see, there are two types of Risc Firmware versions embedded one for the 2Gbit Chip (ISP2300) and the other for the 4GBit chip(s) (ISP23xx) (both from Qlogic).
It is also possible to read with fcmsutil the information about what Firmware is installed in the flash ROMs of the card:
# fcmsutil /dev/fcms0 vpd V I T A L P R O D U C T D A T A --------- ------------- ------- Product Description : "HP 2Gb Fibre Channel FC/GigE-TX Combo Adapter" Part number : "A9784-60001" Engineering Date Code : "A-4507" Part Serial number : "PRA05331MV" Misc. Information : "PW=15W;PCI 66MHZ;PCI-X 133MHZ" Mfd. Date : "4535" Check Sum : 0x6c EFI version : "001.42" ROM Firmware version : "003.003.150"
Here we have EFI driver 1.42 and Risc Firmware 3.3.150 in the flash ROM.
How to update the Firmware online on Integrity Servers?
This section describes how to update the Flash Roms with fcmsutil . Of course it is much more easy to simply follow the release notes and do the Firmware update offline from EFI shell.
NOTE: The Risc & EFI Firmware is only needed for booting via the card (see above). During normal OS operation, the OS driver provides the Firmware

1. To Download the newest EFI Firmware update kit for the card (Example below is for a 2 GBit card) go to www.hp.com Click on Software and drivers downloads.
1. Enter the product number of the card into the search box
2. Download EFI driver, RISC Firmware and EFI utility for QLogic ISP23xx based 2Gb fibre channel adapters
Click here to see current link:
2. On the HPUX system in a directory with: # gunzip -c efi_149.tar.gz | tar -xvf - . This will unpack two bin files (also several EFI related files will be unpacked) that contain Risc and EFI Firmware (other filenames for 4 GB cards or future revisions): ql2312fw.bin => Risc Firmware and ql2312ef.bin => EFI driver file
3. Now the Risc Firmware can be updated with (use correct fcdX device file) # /opt/fcms/bin/fcmsutil /dev/fcdX rom_fw_update ql2312fw.bin
4. The EFI part can be updated with: # /opt/fcms/bin/fcmsutil /dev/fcdX efi_drv_update ql2312ef.bin

No reboot or Reset is needed after this online Firmware update, because during normal OS operation, the current active Firmware is provided by the OS driver, and the updated flashes will not be used before next reboot. For more information do "man fcmsutil ".