A part of testing vSphere 5.1 features, I needed to upgrade my Dell PowerEdge R710 BOIS to 6.3 (min supported version for SR-IOV is 6.2.3). As you know, ESXi 5.1 doesn't have service console component (main difference between ESX and ESXi). The hypervisor is running light Linux version which won't be capable of running tar files or executable files.
Therefore, upgrading ESXi- based server BOIS isn't straight forward similar to windows-based or Linux-based servers.
Here I am summarizing the steps required for upgrading the BOIS:
1. Download the BOIS upgrade from Dell Download Center. You will have different versions for the upgrade:
a. Update Package for Red Hat Linux
b. Update Package for Microsoft Windows
c. Non-Packaged (This file format consists of non-bootable BIOS executable file)
You need to download Non-Packaged version of the BOIS.
2. Create a bootable disk using either floppy Disk or USB Drive. I would prefer to use USB drives since the size of the update can exceed 1.44 MB which was the case in my update. Download the following files:
a. Bootable USB Drive Creator Tool (you may use the following URL http://www.softpedia.com/get/System/Boot-Manager-Disk/Bootable-USB-Drive-Creator-Tool.shtml)
b. Windows 98 System Files (you may use the following URL http://www.filecrop.com/win98boot.zip.html)
3. Insert the USB drive and start the application BootableUSBDriveCreatorTool.exe
4. Select the check-box Create Bootable Drive and navigate to the location where you downloaded Windows 98 System Files.
6. Copy your new BOIS to the USB Drive
7. Reboot your Dell Server and modify the Boot Setup to boot from USB Drive.
8. Once you boot from USB Drive, you get into Win98 OS. From there, type dir. You will see the list of files available in your USB Drive which includes R710 BOIS update. Type the name of your BOIS update and hit enter to start the process.
The upgrade of BOIS will require the upgrade of iDRAC Firmware as per Dell compatibility list. You may find it listed here.
1. From Dell Download Center, download the latest firmware which is included under ESM section.
2. Similar to BOIS, there are different versions of iDRAC depending on the OS. We will download the one used for ESXi which is named as iDRAC6_#version#_#release#_FW_IMG.exe
3. Extract the contents of the EXE file into separate folder
4. From iDRAC console navigate to iDRAC Settings > Update.
5. Upload your extracted update which will be using the name as firmimg.d6.
6. Once the upload is completed, hit Update to start the process.
7. After completion you need to logout/login again. I prefer to reboot the server first.
Update NIC Firmware
Again for SR-IOV feature, you need to have a minimum version of NIC firmware. Usually your version will be matching but in case not, follow those steps to update it. I am assuming that you are using INTEL NICs which was the case for me.
1. Download Intel Boot Agent tool from Dell Download Center. You can find this under Network > Intel Diagnostics Utility.
2. Once downloaded, extract the contents of the EXE file into separate folder.
3. Copy the contents of the folder into your bootable USB drive which was created for BOIS upgrade.
4. Reboot your Dell Server and modify your Boot Setup to boot from USB.
5. Once you boot from USB, you will enter Win98 OS. Type Dir to list all files & folders included in your USB. Navigate to the location of Intel Boot Agent (for my case it was cd btagent)
6. Type bootutil to run the tool and list all your Intel NICs.
8. Run the command bootutil -flashenable. This will require a reboot for the host.
9. After successful reboot (you need to boot again from USB Drive), run the command bootutil -all -up=combo -filename=#image_file.flb#. You can tune the switches in the command to update specific NICs, change the file name, etc. Please refer to INTEL docs for reference.
10. Once the update is completed (you should get explicit message that update is successful), you can start using the NICs with new firmware.