How To Upgrade Firmware/Bios on Dell hardware in D...
How To Upgrade Firmware/Bios on Dell hardware in Debian
As part of some investigative work we undertook, we noticed that on Squeeze our Dell hardware was having some major issues with ocsinventory - it seemed that every time ocsinventory ran, the system dropped off the network not so long afterwards. On further investigation the culprit was actually lspci - which is part of the pciutils package. This attempts to query some Vital Product Data on the devices in question, however the firmware for the system was so old that the system didn't recognise that it even contained VPD. This eventually caused the devices to crash and bring the system down. Looking around the Dell community mailing lists there didn't seem to be a solution to this issue running Debian - The general consensus was to upgrade the firmware on the systems in question which would at the very least require loop-mounting an iso image and/or netbooting - and at the worst would require manually going to datacentres armed with a livecd to boot from. This was not acceptable, so a solution was cooked up. The solution and procedure is located below. This has been tested on multiple Dell hosts of varying specs with success.
WARNING! HERE BE DRAGONS!
Please note that this has been tested extensively on Squeeze - If you are wanting to do this on Lenny (or earlier) - then why not consider upgrading to an OS that is in live support with Debian and go to Squeeze first? Obviously we accept no responsibility for this, this is purely our experience with the matter. All work you undertake is at your own risk (yada yada yada etc etc) The procedure is as follows: vim /etc/apt/sources.list - Add in the following repositorys:
deb http://linux.dell.com/repo/community/deb/latest / # For most of the tools
deb http://linux.dell.com/repo cross-distro dell-firmware # for firmware
deb http://linux.dell.com/repo gutsy dell-software # for firmware-addon-dell and firmware-tools
There are a few choice packages that you will also need: Namely these:
This was found after noting that older versions of these packages don't work and have bugs in. The reason you cannot have these packages (and others) in Debian? Ask Debian/Dell/Canonical. This should really be sorted by all parties involved. A repository that you can use in order to get these files is
deb http://ubuntu.mirror.cambrium.nl/ubuntu/ lucid-updates main universe
Obviously you can find another mirror from: http://packages.ubuntu.com/lucid-updates/i386/smbios-utils/download Or if you want to add these into your own repository:
N.B If you are running amd64, you ALSO have to install:
apt-get install ia32-libs
This is due to the Dell Update Packages themselves being 32-bit only seemingly. Then find the appropriate driver name/number from the Dell support website (at http://support.dell.com) - Make sure when you find the driver to click 'other download formats' and find the linux equivalent name. Then with a little bit of hackery, play around with Dells downloads server (located at http://ftp.dell.com) and browse to the appropriate type of driver, then amend with the name of your file. As some examples, once you have the links - back on the server in question:
Broadcom NIC firmware - always do the NIC firmware first. There is a known bug in OMSA 6.5 that can sometimes drop the system offline otherwise. Other examples:
wget http://downloads.dell.com/sas-non-raid/SASHBA_FRMW_LX_R199563.BIN - sas5i for a Dell 1950
wget http://downloads.dell.com/sas-raid/RAID_FRMW_LX_R197382.BIN - sas6 i/R on a Dell R300
Make sure that dash isn't being linked to /bin/sh (select No)
chmod +x NETW_FRMW_LX_R319248.BIN (for the Broadcom firmware in the example) ./NETW_FRMW_LX_R319248.BIN
This should take you through the standard Dell Update Package installer. Press q to close the changelog and continue on with the upgrade following the prompts as necessary. Reboot afterwards to complete the upgrade. Once you've upgraded the NIC firmware, we're good to go ahead with the install of OMSA and the Bios upgrades. New OMSA is required in order to make the Dell Update Package work for RAID controller firmware - so it's a necessary evil, not to mention the tools themselves are very useful for hardware monitoring.