- HowTo Check HBA Firmware & Driver Version Info Linux
- Check HBA Firmware & Driver Version Info Linux
- Get HBA Driver Info
- Firmware Version Details
- Conclusion
- Related Articles
- How to check the HBA name, make, model, firmware, driver version in Linux
- Finding Out the Firmware Version in Linux
- What is dmidecode?
- Checking the Firmware Version using dmidecode
- Example Output from dmidecode
- Checking Driver and Firmware Versions on Linux
- Procedure
HowTo Check HBA Firmware & Driver Version Info Linux
FC HBA – Fiber Channel Host Bus Adapter which is used to connect SAN devices to servers. To allocate LUN(s)/storage space to server. In this article i am going to show you Howto check HBA firmware & Driver Version Info Linux. Which are the details required to cross verify compatibility with SAN switch connectivity.
Check HBA Firmware & Driver Version Info Linux
The very first command is to verify whether we have HBA cards installed in your machine.
# lspci -nn | grep -i hba 04:00.0 Fibre Channel [0c04]: QLogic Corp. ISP2532-based 8Gb Fibre Channel to PCI Express HBA [1077:2532] (rev 02) 04:00.1 Fibre Channel [0c04]: QLogic Corp. ISP2532-based 8Gb Fibre Channel to PCI Express HBA [1077:2532] (rev 02)
Note: Highlighted in orange color or PCI slot numbers, remember we use them in this article
# ls -l /sys/class/fc_host total 0 drwxr-xr-x 3 root root 0 Feb 19 23:44 host11 drwxr-xr-x 3 root root 0 Feb 19 23:44 host12
Check current used host number details using above command and note it down.
Now check it up Kernel driver name as shown below
# lspci -vvv -s 04:00.1 |grep -i "Kernel Driver" Kernel driver in use: qla2xxx
Get HBA Driver Info
Vendor details HowTo Check HBA Firmware & Driver Info in Linux
# lspci -k -s 04:00.0 04:00.0 Fibre Channel: QLogic Corp. ISP2532-based 8Gb Fibre Channel to PCI Express HBA (rev 02) Subsystem: QLogic Corp. Device 015d Kernel driver in use: qla2xxx Kernel modules: qla2xxx
Use modinfo command to get the version details
# modinfo qla2xxx | grep version version: 8.03.07.15.05.09-k srcversion: A40E0347B413757ECA197E44
# systool -c scsi_host -v -d host11 | grep driver_version driver_version = "8.03.07.15.05.09-k"
Firmware Version Details
Host Bus Adapter firmware details can be achieved using below command
# systool -c scsi_host -v -d host11 | grep fw_version 84xx_fw_version = "" fw_version = "5.06.03 (90d5)" optrom_fw_version = "8.01.02 32896"
You can also use scli command to get HBA firmware details
# scli -i | grep "Driver Firmware Version" Driver Firmware Version : 5.06.03 (90d5) Driver Firmware Version : 5.06.03 (90d5)
Single command get all Firmware, Driver and HBA Model details. HowTo Check HBA Firmware & Driver Info in Linux
# systool -a -v -c scsi_host host11 | egrep "Class Device|model|version|proc_name" Class Device = "host11" Class Device path = "/sys/class/scsi_host/host11" 84xx_fw_version = "" driver_version color: #ff6600;">8.03.07.15.05.09-k" fw_version color: #ff6600;">5.06.03 (90d5)" model_desc = "PCI-Express Dual Channel 8Gb Fibre Channel HBA" model_name color: #ff6600;">QLE2562" mpi_version = "" optrom_bios_version = "3.31" optrom_efi_version = "6.10" optrom_fcode_version= "0.00" optrom_fw_version = "8.01.02 32896" phy_version = "" proc_name = ""
Conclusion
HowTo Check HBA Firmware & Driver Info in Linux is very simple using above commands. First identify which card details you would like to find they note there slot number details and hostN.
Related Articles
Thanks for your wonderful Support and Encouragement
More than 40000 Techies in our community do you want part of it Join Now
My Name is ARK. Expert in grasping any new technology, Interested in Sharing the knowledge. Learn more & Earn MoreView all Posts
How to check the HBA name, make, model, firmware, driver version in Linux
NOTE: The commands to validate this may vary based on the type of HBA being used so I will show some commands and examples for Emulex HBA card where these commands can be used. I cannot assure if the same would work for a Linux machine with Qlogic card.
Below command will give you the connected HBA detail
# lspci -nn | grep -i Fibre
04:00.2 Fibre Channel [0c04]: Emulex Corporation OneConnect 10Gb FCoE Initiator (be3) [19a2:0714] (rev 01)
04:00.3 Fibre Channel [0c04]: Emulex Corporation OneConnect 10Gb FCoE Initiator (be3) [19a2:0714] (rev 01)
With this we know we have a Emulex HBA
Next install sysfsutils rpm if not installed already.
Now use the below command. This will give you a bunch of information regarding your HBA card.
# systool -a -v -c scsi_host | egrep «Class Device|model|version|proc_name|info|fwrev»
Class Device = «host0»
Class Device path = «/sys/devices/pci0000:00/0000:00:02.0/0000:04:00.2/host0/scsi_host/host0»
bg_info = «BlockGuard Disabled»
fwrev = «11.1.183.23, sli-4:0:1»
info = «HP FlexFabric 10Gb 2-port 554FLB Adapter on PCI bus 04 device 02 irq 36 port 1 Logical Link Speed: 8000 Mbps»
lpfc_drvr_version = «Emulex LightPulse Fibre Channel SCSI driver 11.2.0.6»
modeldesc = «HP FlexFabric 10Gb 2-port 554FLB Adapter»
modelname = «554FLB»
npiv_info = «NPIV Physical»
option_rom_version = «11.1.183.23»
proc_name = «lpfc»
Class Device = «host1»
Class Device path = «/sys/devices/pci0000:00/0000:00:02.0/0000:04:00.3/host1/scsi_host/host1»
bg_info = «BlockGuard Disabled»
fwrev = «11.1.183.23, sli-4:0:1»
info = «HP FlexFabric 10Gb 2-port 554FLB Adapter on PCI bus 04 device 03 irq 41 port 2 Logical Link Speed: 8000 Mbps»
lpfc_drvr_version = «Emulex LightPulse Fibre Channel SCSI driver 11.2.0.6»
modeldesc = «HP FlexFabric 10Gb 2-port 554FLB Adapter»
modelname = «554FLB»
npiv_info = «NPIV Physical»
option_rom_version = «11.1.183.23»
proc_name = «lpfc»
These fields are populated from below location so if you wish to get any more information then navigate around all the files from this location
# grep -v «zZzZ» /sys/class/scsi_host/host*/model*
/sys/class/scsi_host/host0/modeldesc: HP FlexFabric 10Gb 2-port 554FLB Adapter
/sys/class/scsi_host/host0/modelname:554FLB
/sys/class/scsi_host/host1/modeldesc: HP FlexFabric 10Gb 2-port 554FLB Adapter
/sys/class/scsi_host/host1/modelname:554FLB
# grep -v «zZzZ» /sys/class/scsi_host/host*/proc_name
/sys/class/scsi_host/host0/proc_name: lpfc
/sys/class/scsi_host/host1/proc_name: lpfc
Now since we know the driver name, we can get more information for our driver
# modinfo lpfc
filename: /lib/modules/3.10.0-693.21.1.el7.x86_64/kernel/drivers/scsi/lpfc/lpfc.ko.xz
version: 0:11.2.0.6
author: Emulex Corporation — tech.support@emulex.com
description: Emulex LightPulse Fibre Channel SCSI driver 11.2.0.6
license: GPL
retpoline: Y
rhelversion: 7.4
srcversion: 61B09422B7415BF170E0D67
NOTE: Although most Fibre Channel drivers register a model name and description within sysfs, not all scsi drivers will. For example, the Smart Array, SIL2424 and ATA HBA, as shown in the above configuration, do not supply that information. For those types of cards you must use lspci -k to retrieve the information.
I hope the article was useful.
Finding Out the Firmware Version in Linux
In Linux, it is often necessary to check the firmware version of your system. The firmware, also known as BIOS (Basic Input/Output System), is a software that is built into the hardware of your system and serves as an interface between the hardware and the operating system. In this post, we will explore how to check the firmware version in Linux using the dmidecode command.
What is dmidecode?
dmidecode is a command-line tool that is used to retrieve information about your system’s hardware components from the Desktop Management Interface (DMI) table. The DMI table contains information about the system’s hardware components, such as the motherboard, processor, memory, and firmware. The dmidecode command can be used to dump the contents of the DMI table to human-readable format.
If the dmidecode command is not available on your system, you can install it using your distribution’s package manager. You can install dmidecode using the following command:
sudo yum install dmidecode
sudo apt install dmidecode
Checking the Firmware Version using dmidecode
To check the firmware version of your system using dmidecode , you can use the following command:
In this command, the -s option is used to specify the keyword that you want to retrieve from the DMI table. The keyword bios-version specifies the firmware version. The output of this command will be the firmware version of your system.
Example Output from dmidecode
Here’s an example of the output of the dmidecode -s bios-version command:
This output indicates that the firmware version of the system is A05.
By following the steps outlined in this post, you can easily find out the firmware version of your system. Additionally, dmidecode can be used to retrieve other information about your system’s hardware components, which can be useful for system administrators and troubleshooting purposes.
Checking Driver and Firmware Versions on Linux
Check the current driver and firmware versions of the Linux operating system to determine whether to install the driver and upgrade the firmware. This section describes how to check the BCM01ETHA NIC driver and firmware versions in CentOS 7.6.
Procedure
- Log in to the virtual console of the server. For details, see Logging In to the Virtual Console.
- Mount the driver ISO file, for example, onboard_driver_CentOS7.6.
- On the toolbar of the Remote Virtual Console, click . The virtual DVD-ROM drive dialog box is displayed, as shown in Figure 6-3.
chmod +x install.sh ./install.sh
- If the displayed driver versions are correct, enter q to exit the check.
- If the displayed driver versions are not correct, enter 1 to upgrade the drivers.
The script checks the firmware and driver versions of server components. If the values in the Driver Version and Firmware Version columns are green, the driver matches the firmware; if the values are red, the current driver or firmware version is not the recommended version and you are advised to upgrade the driver or firmware to the recommended version.
- For details about how to install firmware released in iDriver, see the upgrade guide of the server.
- For firmware that is not released in iDriver, download the firmware file and user guide from the official website of the device vendor and manually install the firmware.
- For details about how to upgrade the LAN on motherboard (LOM) drivers, see the Huawei TM210 FlexIO Card User Guide and Huawei TM280 FlexIO Card User Guide.
- For details about how to upgrade the drivers and firmware of the Hi1822 series NICs and FC HBAs, see the Huawei IN200 NIC User Guide and Huawei IN300 FC HBA Card User Guide.
- For details about how to upgrade the drivers and firmware of Mellanox series NICs, see the Driver Installation and Firmware Upgrade Guide.