Tech/libsmbios dellBiosUpdate SuSE

From DellLinuxWiki

Jump to: navigation, search

Update your BIOS on SUSE Linux

This article describes how to update your Dell computer's system BIOS using exclusively Linux tools. To do this, we will install Libsmbios, a generic Linux software package. It is assumed throughout this page that all commands will be run as the 'root' user. Use either 'sudo' or 'su' to become root before attempting any of these commands or they will fail.

  • Install libsmbios
# yast -i libsmbios-bin
  • Get the System ID
# getSystemId 
Libsmbios:    0.12.1
System ID:    0x01DD
Service Tag:  DT6WLB1
Express Service Code: 30063287773
Product Name: Dell DM061
BIOS Version: 2.3.2
Vendor:       Dell Inc.
Is Dell:      1
  • Download the latest BIOS ".HDR" file for this system. Go here: http://linux.dell.com/repo/firmware/bios-hdrs/. Scroll down the list to find a directory matching the System ID from the previous step. The directory will be named: system_bios_ven_0x1028_dev_SYSTEM_ID_version_BIOS_VERSION. Go into this directory and download the file, "bios.hdr".
  • load the dell_rbu driver
# modprobe dell_rbu
  • update the bios
# dellBiosUpdate -u -f ./bios.hdr-2.3.2 
Supported RBU type for this system: (MONOLITHIC)
Using RBU v2 driver. Initializing Driver. 
Setting RBU type in v2 driver to: MONOLITHIC
Prep driver for data load.
Writing RBU data (4096bytes/dot): ............................
..............................................................
.......................
Notify driver data is finished.
Activate CMOS bit to notify BIOS that update is ready on next boot.
Update staged sucessfully. BIOS update will occur on next reboot.
  • reboot the system
# reboot

Troubleshooting

There are two common problems that you may run into when following this process:

Problem: You follow all the instructions above, everything says it worked, but BIOS doesnt update. Solution: Normally, this is because the kernel is doing a "cold boot", which messes up the update process. Tell the kernel to do a warm reboot by adding "reboot=bios" to the end of your kernel command line. Reboot to let that setting take effect, and then try the bios update again.

Problem: You get a message from dellBiosUpdate saying it could not allocate enough memory. Solution: Some systems require up to 2MB of contiguous *physical* memory, which can sometimes be in short supply, especially if the system has been running for a while. You may have to reboot your system a couple times and retry the update for it to take.

Personal tools
Distributions