A recent hardware bug in NVIDIA cards made it necessary to update the firmware on quite some laptop models. Usually firmware updates are only provided for Windows machines, but Dell provides all tool needed for firmware updates on Linux.
NVIDIA has a tough time right now: there are unresolved driver issues on Linux, and now a serious hardware problem came up: many graphic cards are broken, and some might even be fried in the machine.
There is a workaround available making sure to not overheat the card, though. This workaround however often requires a firmware update on the used machine. Firmware updates are most often difficult on Linux and require some work. However, Dell is one of the pleasant exceptions: Dell provides the technique, the software and even precompiled binaries in distribution specific repositories to easily update the firmware.
The only disadvantage is that you have to search quite some pages until you get the information needed. Once you get there, the rest is quite easy and straight forward. The following shows an example for Fedora, but there are howtos for other distributions as well.
# wget -q -O - http://linux.dell.com/repo/software/bootstrap.cgi | bash # wget -q -O - http://linux.dell.com/repo/firmware/bootstrap.cgi | bash # yum -y install firmware-addon-dell # yum -y install $(bootstrap_firmware) # update_firmware
The first two commands install the necessary repositories with the help of perl scripts. These check the distribution and download the appropriate repo information, keys, etc. The third command installs the binary needed to identify the firmware, the fourth downloads the right firmware, and the last command updates the firmware.
Afterwards, the firmware will be updated on the next soft reboot. If you want to be sure to make a soft reboot, call
shutdown -r 0 as root. It worked for me definitely. A big THANKS to Dell for their excellent Linux support!
It would of course be even better when there would be some generic way to update the firmware on any machine. This could then be implemented in Linux generically and could make the live of users easier – not only on Linux, but also on Windows, where the average user does not even now what a firmware is, left alone how to update it.