Language Selection

English French German Italian Portuguese Spanish

BIOS Flash update under linux.

Filed under

I figured it was finally time to do a BIOS update on one of my main Linux boxes. The MSI NF 980-G65 AMD motherboard came with an AMI BIOS dated September 2009. This MSI motherboard is based on the NVidia NForce 980a chipset, and has built-in NVidia GeForce 8300 video (which I do not use).

Powering up this system has always been a little flaky, requiring a couple of reset-button presses before it would boot into Linux (it would hang at the BIOS splash screen). After boot-up, the system always ran great.

Alright, so on to the BIOS update. MSI has the live update online program which requires, of course, Microsoft Windows, and the Internet Explorer browser. Well, I don't have these on this system, and don't want to put them on it.

In the AMI BIOS setup program, I see the M-Flash option. I try this, but can't get it to work. Some research on the Internet indicates that it's very likely you'll wreck your BIOS using M-Flash anyway, so that's out.

After googling about, I finally go to this site to see how to flash a motherboard bios from linux with no DOS, no MS Windows, and no floppy-drive.

This technique involves getting a freedos DOS floppy boot image, mounting this floppy image temporarily using mount loop, copying the flash exe and rom files to the mouted floppy image, and burning this to a CD. So you end up with a bootable DOS CD with your two flashing files on it. You then boot your computer from the CD and flash your motherboard.

This all works fine, and I flash the motherboard with the new BIOS version.

Upon reboot, the system seems sluggish, and I can't boot into a GUI. After reading the error messages when I try startx, I see that the nvidia blob driver is trying to use the built-in NVidia card rather than my slotted PCI-E NVidia GeForce 460 card.

Back into the BIOS setup--set the PCI-E as primary, and disable the SLI hybrid setting.

OK, reboot, and I now have a GUI. But it's incredibly sloooooow. It's so slow, I can't re-size a konsole terminal. Turning off desktop effects compositing helps a little, but I finally see what everyone is complaining about with slow NVidia-KDE4 performance. But come on! After all, this is an NVidia GeForce GTX 460 256-bit memory 1024 GDDR5 ram card here. I spent over $200 on this card because I use the system for video editing.

I go to the KDE NVidia performance tuning site and read all the info. I copy and paste this stuff into the device section of my /etc/X11/xorg.conf file:
Option "RenderAccel" "true"
Option "UseEvents" "false"
Option "TripleBuffer" "1"
Option "DamageEvents" "1"
Option "BackingStore" "1"
Option "PixmapCacheSize" "70000"
Option "OnDemandVBlankInterrupts" "true"

Reboot, and this does the trick! My system performance is back to normal. But, remembering back when I built this box, I bought very fast rated memory, so I went back into the BIOS setup and optimized the RAM timings. Now, I have a system faster than I ever had before. And the icing on the cake is, it's very, very stable. Boot problems are gone. No freezes or lockups.

It is a mystery to me why the BIOS update initially screwed-up the NVidia video performance.

More in Tux Machines

GNOME Control Center 3.22 to Update the Keyboard Settings, Improve Networking

The upcoming GNOME 3.22 desktop environment is still in the works, and a first Beta build was seeded to public beta testers last week, bringing multiple enhancements and new features to most of its core components and apps. While GNOME 3.22 Beta was announced on August 22, it appears that the maintainers of certain core packages needed a little more time to work on various improvements and polish their applications before they were suitable for public testing. And this is the case of GNOME Control Center, which was recently updated to version 3.21.90, which means 3.22 Beta. Read more

today's howtos

OpenShot 2.1

Canonical Releases Snapd 2.13 Snappy Tool for Ubuntu 16.04 and Fedora 24 (COPR)

Canonical's Michael Vogt has been happy to announce the release and immediate availability of a new maintenance update of the Snapd daemon that implements support for Snap universal binary packages in GNU/Linux distributions. Read more Also: