Take the 2-minute tour ×
Ask Ubuntu is a question and answer site for Ubuntu users and developers. It's 100% free, no registration required.

I have installed Ubuntu 11.10 on a vista laptop, but Dell is providing the BIOS update in .exe format currently my bios version is A09 but on the driver download site the latest version of bios is A011.

Help me out to update the bios.

My laptop information:

Libsmbios version:      2.2.28
Product Name:           Studio 1537
Vendor:                 Dell Inc.
BIOS Version:           A09
System ID:              0x029F
Service Tag:            HBVV2BS
Express Service Code:   37723945096

Upon running sudo update_firmware I get the following set of errors:

E: Unable to locate package pci-firmware-ven-0x8086-dev-0x2919-subven-0x1028-subdev-0x029f
E: Unable to locate package pci-firmware-ven-0x8086-dev-0x2919
E: Unable to locate package pci-firmware-ven-0x8086-dev-0x2930-subven-0x1028-subdev-0x029f
E: Unable to locate package pci-firmware-ven-0x8086-dev-0x2930
E: Unable to locate package pci-firmware-ven-0x8086-dev-0x2929-subven-0x1028-subdev-0x029f
E: Unable to locate package pci-firmware-ven-0x8086-dev-0x2929
E: Unable to locate package pci-firmware-ven-0x1180-dev-0x0832-subven-0x1028-subdev-0x029f
E: Unable to locate package pci-firmware-ven-0x1180-dev-0x0832
E: Unable to locate package pci-firmware-ven-0x8086-dev-0x294a
E: Unable to locate package pci-firmware-ven-0x8086-dev-0x2448
E: Unable to locate package pci-firmware-ven-0x8086-dev-0x2946
E: Unable to locate package pci-firmware-ven-0x8086-dev-0x2940
E: Unable to locate package pci-firmware-ven-0x8086-dev-0x2942
E: Unable to locate package pci-firmware-ven-0x1002-dev-0xaa28-subven-0x1028-subdev-0x029f
E: Unable to locate package pci-firmware-ven-0x1002-dev-0xaa28
E: Unable to locate package pci-firmware-ven-0x1002-dev-0x95c4-subven-0x1028-subdev-0x029f
E: Unable to locate package pci-firmware-ven-0x1002-dev-0x95c4
E: Unable to locate package pci-firmware-ven-0x14e4-dev-0x1698-subven-0x1028-subdev-0x029f
E: Unable to locate package pci-firmware-ven-0x14e4-dev-0x1698
E: Unable to locate package pci-firmware-ven-0x8086-dev-0x2936-subven-0x1028-subdev-0x029f
E: Unable to locate package pci-firmware-ven-0x8086-dev-0x2936
E: Unable to locate package pci-firmware-ven-0x8086-dev-0x2935-subven-0x1028-subdev-0x029f
E: Unable to locate package pci-firmware-ven-0x8086-dev-0x2935
E: Unable to locate package pci-firmware-ven-0x8086-dev-0x2934-subven-0x1028-subdev-0x029f
E: Unable to locate package pci-firmware-ven-0x8086-dev-0x2934
E: Unable to locate package pci-firmware-ven-0x8086-dev-0x293a-subven-0x1028-subdev-0x029f
E: Unable to locate package pci-firmware-ven-0x8086-dev-0x293a
E: Unable to locate package pci-firmware-ven-0x1180-dev-0x0822-subven-0x1028-subdev-0x029f
E: Unable to locate package pci-firmware-ven-0x1180-dev-0x0822
E: Unable to locate package pci-firmware-ven-0x1180-dev-0x0592-subven-0x1028-subdev-0x029f
E: Unable to locate package pci-firmware-ven-0x1180-dev-0x0592
E: Unable to locate package pci-firmware-ven-0x1180-dev-0x0852-subven-0x1028-subdev-0x029f
E: Unable to locate package pci-firmware-ven-0x1180-dev-0x0852
E: Unable to locate package pci-firmware-ven-0x8086-dev-0x4232-subven-0x8086-subdev-0x1321
E: Unable to locate package pci-firmware-ven-0x8086-dev-0x4232
E: Unable to locate package pci-firmware-ven-0x8086-dev-0x293e-subven-0x1028-subdev-0x029f
E: Unable to locate package pci-firmware-ven-0x8086-dev-0x293e
E: Unable to locate package pci-firmware-ven-0x8086-dev-0x2a40-subven-0x1028-subdev-0x029f
E: Unable to locate package pci-firmware-ven-0x8086-dev-0x2a40
E: Unable to locate package pci-firmware-ven-0x8086-dev-0x2937-subven-0x1028-subdev-0x029f
E: Unable to locate package pci-firmware-ven-0x8086-dev-0x2937
E: Unable to locate package pci-firmware-ven-0x8086-dev-0x2938-subven-0x1028-subdev-0x029f
E: Unable to locate package pci-firmware-ven-0x8086-dev-0x2938
E: Unable to locate package pci-firmware-ven-0x8086-dev-0x2939-subven-0x1028-subdev-0x029f
E: Unable to locate package pci-firmware-ven-0x8086-dev-0x2939
E: Unable to locate package pci-firmware-ven-0x8086-dev-0x293c-subven-0x1028-subdev-0x029f
E: Unable to locate package pci-firmware-ven-0x8086-dev-0x293c
E: Unable to locate package pci-firmware-ven-0x8086-dev-0x2a41-subven-0x1028-subdev-0x029f
E: Unable to locate package pci-firmware-ven-0x8086-dev-0x2a41
share|improve this question

6 Answers 6

You do not need Windows to install any firmware updates from their site, just follow the instructions posted here.

From the dell website:

1) Download the WIndows/DOS BIOS installer for your hardware from dell.com
2) Copy the Windows/DOS BIOS installer to a FAT formatted USB stick
3) Download the latest SystemRescueCD and burn it to a blank CD
4) Boot from the CD
5) Type in "freedos" at the boot prompt
6) When FreeDOS boots make sure you do NOT load HIMEM and EMM386
7) Change to the USB stick (typically C: if you do not have any FAT partitions on your HDD)
8) Run the installer

This worked perfect while updating the firmware of my DVD drive.

share|improve this answer
    
This works like a charm and i really don't understand why this is not answer N°1! I downloaded the latest SystemRescueCD (4.2) and created a LiveUSB what is explained very straight forward on their homepage. At the root of this fat32 stick simply made a dir (eg. media) and putted the .exe inside. Then boot from stick and choose "A) Run .. floppy .." → FREEDOS for this new version. I then chose option 2) "XMGR and UIDE.." obeying advice 6) from above. For those who don't know (WIN)DOS world: Change drive witch simple c: and run in this example cd media and [updatename].exe. (Vostro 3460) –  elf12 May 27 at 18:41

Other answers posted to this question may work with older hardware, but I posted this after my experience of upgrading the BIOS of a Dell Inspiron 7520 (vintage 2012). Checking dates on unofficial Dell support web sites suggests that this may also apply to other Dell models since 2010 or even earlier.

The first step is to get information about your current system. In Ubuntu you can check the BIOS version with the following two commands:

sudo dmidecode -s bios-version
sudo dmidecode -s bios-release-date

You need information about your computer's hardware when querying the manufacturer's website. For Dell this is often printed somewhere on the underside in the form of a Service Tag and an Express Service Code. If this is not easy to read, the information can be obtained in the following way:

1) Install libsmbios:

sudo apt-get update
sudo apt-get install libsmbios-bin

2) Get the service tab etc. from the system:

sudo getSystemId

This will produce output like this:

Libsmbios version:      2.2.28
Product Name:           Inspiron 7520
Vendor:                 Dell Inc.
BIOS Version:           ANN
System ID:              0xNNNN
Service Tag:            NABCDEFN
Express Service Code:   NNNNNNNNNN
Asset Tag:              
Property Ownership Tag: 

with the key information in the BIOS version, the System ID, the Service Tag, and the Express Service Code.

Armed with the above information, go to the Dell web site and download the appropriate driver(s) for your particular computer.

So far so good, but you will notice that the download is a Windows executable. Just as this cannot be run under Ubuntu (or any other Linux), it also will not run under legacy versions of Windows, in particular MS-DOS or any emulation of MS-DOS. This is in spite of anything it may say on the download page about being compatible with earlier versions of Windows; using any legacy DOS-type environment the .exe runs, but exits without doing anything except printing out an annoying message.

So, here comes the fun bit: you need a Windows 7 (or later) environment in order to run the BIOS upgrade. And how do we do that on a single-boot Ubuntu machine (or even a computer running legacy Windows, like XP)?

The key ingredient at this point is a Windows 7 Repair Disk. There are several ways to obtain one, including buying one from sources on the internet, or making friends with someone who has a Windows 7 computer. If you are lucky your computer manufacturer bundled one with your box. I chose to make one on my Ubuntu machine, using a copy of Windows 7 running in VirtualBox, adapting the instructions for making a rescue disk from this web site.

The good news is that it does not seem to matter which version of Windows 7 the Repair Disk is obtained from. Since this is a BIOS upgrade it does not even matter whether you use 32-bit or 64-bit versions if your computer is 64-bit.

Once you have a Windows 7 Repair Disk, the rest is easy. You can make it into a bootable USB if you wish, but if your box has a CD drive this is unnecessary. Here are the steps:

  1. Put the downloaded BIOS upgrade .exe on an ordinary USB flash drive.
  2. Reboot you computer from the Windows 7 Repair Disk, hit the Space bar when prompted.
  3. Navigate to the command prompt. (Use Recovery Tools->Command Prompt).
  4. Find the correct drive letter for your USB (on the command line dir a: then b, c, etc. till you find the right one).
  5. Navigate to it on the command line (type the drive letter with colon).
  6. Run the file by typing its name (note tab auto-completion works :)).
  7. From there, just follow the on-screen instructions, and make sure your computer stays powered-on while the upgrade completes.

Note there are TWO automatic reboots before you get back to your Ubuntu startup screen.

share|improve this answer
3  
Awesome answer, please note what just happened: your question got closed as a duplicate of this one, the answer you posted to your post got moved to this question, I have added a bounty to the question for "outdated answers" reason, the bounty will probably be yours if no one finds any other way of doing this without the Windows7 rescue disk. –  Bruno Pereira Jan 8 '13 at 15:39
1  
Thanks @Bruno, I was not sure how to deal with the outdated answers which is why I risked duplicating the question, your solution of merging is excellent. –  Bobble Jan 8 '13 at 16:09
    
Added more detail about the download process and the upgrade process after doing this a second time with a new BIOS upgrade (A09). I confirm while the Dell download site says the file works with legacy Windows/DOS systems, this is not in fact the case. So far I have only succeeded in running the download file using a Windows 7 Repair Disk. (A Windows 7 Installation disk is no use). –  Bobble Jan 11 '13 at 11:30

Have you seen the DellBIOS - Ubuntu Wiki article?? It seems to be quite thorough and answers your question on how.

share|improve this answer
    
Welcome to Ask Ubuntu! Whilst this may theoretically answer the question, it would be preferable to include the essential parts of the answer here, and provide the link for reference. –  Ringtail Jan 10 '13 at 6:05
    
Actually that was the first thing I tried when I was doing this. No, it doesn't work at least for my machine, because the Dell biosdisk is based on FreeDOS, and the recent (i.e. post-2010) Dell BIOS upgrades are made to run on the Windows 7 version of DOS. Please see my comments elsewhere in this thread about that. In fairness, the link you gave is where I got some of the tips about getting BIOS information from, so not all the information there is out of date. –  Bobble Jan 12 '13 at 10:01

I wanted to update BIOS on Dell Inspiron 1525 recently.

http://linux.dell.com/repo/firmware/ is dead and should not be used, according to dell -- "OBSOLETE! Community supported Dell firmware repository OBSOLETE!"

Instead use openmanage repository http://linux.dell.com/wiki/index.php/Tech/libsmbios_dellBiosUpdate

It worked for me without any issues.

share|improve this answer
    
I completed step 2 of the process outlined in the Dell wiki, but I was unable to proceed beyond step 3, because I found the header file I required was not in the repository. In fact, no BIOS upgrades appear to have been published to the repository for at least 18 months (time of writing this is January 2013). –  Bobble Jan 3 '13 at 11:11
    
I used the "latest" one (the one updated 18 months back). My laptop is around 5 years old so that one seemed newer to me. I tried the method around May 2012, I can't recall everything right now :( –  wisemonkey Jan 11 '13 at 21:54

Dell has a very nifty utility to download and apply latest BIOS to their computers that are using Linux. It should theoretically run without any problems and you can run it in Ubuntu.

Please visit their page for more information, there are precise instructions there

Here are the instructions from the linked page

sudo wget -q -O - http://linux.dell.com/repo/firmware/bootstrap.cgi | bash
sudo apt-get install firmware-addon-dell
sudo apt-get install $(bootstrap_firmware -a)
sudo update_firmware

Please note: I have not tested this myself, you might first drop an email to Dell support to ask them if this method deprecated or if there are any issues with it.

share|improve this answer
    
on running sudo update_firmware i m getting error , i have mentioned abt the error in my ques –  gunjan parashar Feb 3 '12 at 3:09
1  
This does not seem to be current. On trying this the first instruction fails with the following message:the firmware respository is obsolete and unmaintained. Please use the OMSA repository instead for official updates. When I checked the script the message appears as the first executed line, followed by exit 1. Nuff said... –  Bobble Dec 30 '12 at 21:29
    
Having now checked out the OMSA offering, I find that there is no Ubuntu support at time of writing, and support of other distros is not reliable. I have now tried all the published methods of doing this, except for reinstalling Windows on my system, which I can't do because I don't have an installation disk (I wiped the install partition, too...). –  Bobble Jan 3 '13 at 11:40

First, I would not update the BIOS unless there is a specific problem that requires a BIOS update to fix (such as activation of Virtualization technology).

If a BIOS update goes bad your computer can be rendered a paper weight.

Personally I use FreeDOS, although there are other options.

I put it on a flash drive with unetbootin and add the bios_update.exe to the flash drive.

You then boot from usb and run the bios_update.exe from the DOS command prompt.

If you can to boot a usb, you can burn a CD.

The Arch wiki has great information with several additional options.

See : https://wiki.archlinux.org/index.php/Flashing_BIOS_from_Linux

share|improve this answer
    
thanks , i will not update as i am not getting any such problem –  gunjan parashar Feb 3 '12 at 3:15

Your Answer

 
discard

By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.