DELL M1330Ubuntu

Upgrade / Downgrade your Dell Bios On Ubuntu

Updating or Downgrading your Bios is pretty straight forward on Ubuntu. Ok maybe not as straight forward as double clinking to install. But not that difficult all the same.

for this guide we will be using the commandline. But that should not scare you, i have tried to make the guide as easy as possible. first we open Terminal /Application/Accessories/Terminal
Now since we will be running every command as root(as administrator), we sould need to become an admin. so that we wont need to been adding sudo infront of every command. so first copy and paste this in terminal

sudo bash

hit enter and give your passwd.

you will see your prompts change from
this :~$ to :~#

Then we need to install Libsmbios a linux package in the Ubuntu repositories.

apt-get install libsmbios-bin

once installed we need to get the system ID to get hat run this in terminal
getSystemId

you should get an output that looks like this

System ID: 0x0209
Service Tag: 4MV9HH1
Express Service Code: 10089895861
Product Name: XPS M1330
BIOS Version: A14
Vendor: Dell Inc.
Is Dell: 1

from the above output my system ID is 0ร—0209. Armed with this information you now need to get the BIOS version want to upgrade / downgrade. you can get it from 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. and look for the bios version that you want to upgrade/downgrade to In my case my directory is named: system_bios_ven_0x1028_dev_0x0209_version_a14/ my system ID IS 0ร—0209 and the version of bios i wanted was A14.
Go into this directory and download the file, โ€œbios.hdrโ€ and save it in your desktop.

Now we load the load the dell_rbu driver

modprobe dell_rbu

For Updating

now to update the bios we move into the directory were we saved the bios.hdr file. if you saved it in your desktop. just do this

cd $HOME/Desktop

PLEASE MAKE SURE YOUR SYSTEM IS PLUGGED TO A POWER SOURCE AND NOT ON BATTERY.

Then we run the update command.

dellBiosUpdate -u -f ./bios.hdr

if all goes well you would see the following feedback

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.

If you are Downgrading

for downgrading to a previous BIOS version.

your downgrade command would be

dellBiosUpdate --override_bios_version -u -f ./bios.hdr

Now that you are done updating /downgrading

we would need to tell the system to do a cold reboot which is what is needed after doing a bios update.

to do this we would need to edit the kernel line in your menu.lst

run this in terminal

gksu gedit /boot/grub/menu.lst
look for the kernel line

title Ubuntu 8.10, kernel 2.6.27-9-generic
uuid f5e0a891-61ec-434a-b935-78bc25b1542e
kernel /boot/vmlinuz-2.6.27-9-generic root=UUID=f5e0a891-61ec-434a-b935-78bc25b1542e ro quiet splash
initrd /boot/initrd.img-2.6.27-9-generic

and add reboot=bios to the end of the kernel line to look like this

title Ubuntu 8.10, kernel 2.6.27-9-generic
uuid f5e0a891-61ec-434a-b935-78bc25b1542e
kernel /boot/vmlinuz-2.6.27-9-generic root=UUID=f5e0a891-61ec-434a-b935-78bc25b1542e ro quiet reboot=bios splash
initrd /boot/initrd.img-2.6.27-9-generic

save and close the text editor

now you can reboot your machine

once the system restart it would display a white screen which some messages displaying what its doing. and your bios boot splash might take a while. but that is fine.

once restarted. be sure to remove the โ€œreboot=biosโ€ from your kernel line.

I used this method to update the BIOS of my dell xps m1330 ( and downgraded it once) and it worked fine without any ( as we Nigerians will say) Whahala or problem.
Hope this helps some one.