• Updating firmware on Dell PCs when you don't have Windows installed

    Home » Forums » AskWoody support » Linux for the Home user » Linux – all distros » Updating firmware on Dell PCs when you don't have Windows installed

    Author
    Topic
    #194703

    Edit: This post is in the Linux area because it is generally people who have migrated to Linux that don’t have access to Windows to install the firmware updates.  Linux itself is not actually required for any of what I am describing here, though; you can use these techniques to update the firmware even if you have no OS installed at all yet or if you do intend to use Windows.

    I’m a relatively new user of Dell hardware.  My main (Core 2 Duo) laptop is Asus, as are the motherboards in each of my main desktop PC, my “test” PC, and my backup server.  It wasn’t by design, really, though I’ve had good results with Asus.  It just kind of worked out that way.

    That changed in December 2017, when I saw what was to become my new laptop on sale.  I didn’t know what to expect with Dell, but I have to say that I’ve been pleasantly suprised in general.  I like that they offer detailed manuals describing how to disassemble their laptops, and that they do not void the warranty just for opening up your new laptop.

    One area that seemed less than ideal was that the UEFI firmware updates (which some people still call BIOS out of habit) comes in .exe form, which suggests that you’re going to need Windows to perform the firmware updates.

    This, it turns out, isn’t the case at all!

    The update .EXEs, as I have found, will run under MS-DOS.  I have a MS-DOS boot USB drive (which identifies itself as a floppy drive), and I successfully updated my firmware using that.

    It gets better, though.  I noticed that when you hit F12 during POST to open the boot device menu, one of those options is to start the firmware flashing utility.  That’s not unusual in itself, but since Dell only distributes the updates in .exe form, it made me wonder if perhaps the firmware flasher is capable of flashing directly from the update utility .exe. I tried it, and…

    …yes, it works!  You can load the .exe into the updater and it will perform the update!

    On top of that, Dell doesn’t arbitrarily block you from going backwards in firmware versions, as I had feared they would.  Generally, you would not want to do this, but there are exceptions, like when Intel released the botched microcode updates that some OEMs had apparently already released by the time Intel discovered the problem and recommended not using the new microcode.

    Dell’s not perfect (no manufacturer is), but these things I’ve mentioned here are certainly appreciated.  On top of that, they accepted my cheap $180 laptop for RMA for a flickering screen without a peep of complaint, and they did fix it… in contrast to how Microsoft has handled flickering display complaints on some Surface devices.

    On the negative side, Dell mystified me when they released the Inspiron 15 7567 Gaming laptop with no Dell/Synaptics driver available, as I discussed elsewhere.  My much cheaper Inspiron 11 came with the Dell/Synaptics Win 10 driver preinstalled, giving more customization options than in the much more expensive gaming laptop.  It’s just weird!

     

    Dell XPS 13/9310, i5-1135G7/16GB, KDE Neon 6.2
    XPG Xenia 15, i7-9750H/32GB & GTX1660ti, Kubuntu 24.04
    Acer Swift Go 14, i5-1335U/16GB, Kubuntu 24.04 (and Win 11)

    4 users thanked author for this post.
    Viewing 4 reply threads
    Author
    Replies
    • #195395

      Couple of helpful links on updating firmware when you’re running Linux:

      From the Dell Website:
      Updating the Dell BIOS in Linux and Ubuntu Environments

      From the Ubuntu Community Website:
      Bios Update for different Vendors

      These should work fine for Ubuntu 16.04, or Linux Mint Sylvia 18.3 (based on 16.04). As always, only update the bios if there is a real need for it (security issues, etc.), and make sure your PC’s power won’t be interrupted during flashing!

      1 user thanked author for this post.
    • #195417

      The last time I browsed the Synaptics website they were finally offering some generic built touch pad drivers for people who need them with Windows.

      • #199532

        Sorry for the belated reply… I missed it until now.

        I tried the generic Synaptics driver, but even it told me “You do not need this driver” when I attempted to install it in Windows 8.1.

        For all of the talk of “get drivers from your OEM because they may be customized,” the real story is that very seldom happens… they’re usually repackaged (and unmodified) generic drivers, and the Lenovo driver for Synaptics (a slightly older version of the driver) was no exception.  It was recommended by other people trying to get Synaptics touchpads working on Windows < 10 on non-Lenovo systems.  Some people had reported success force-installing the driver (uncheck the box for show only compatible drivers, then select the one that it should be using), but for me it did not work.  The driver installed and the Dell Touchpad UI (the Dell branding apparently being embedded in the Synaptics driver as delivered by Synaptics) was shown when I went to the mouse settings, but none of the options actually did anything, and if the computer was put into standby mode, the touchpad would fail to respond upon resume.

        Unlike the newer, non-Lenovo driver, the Lenovo driver didn’t abort the installation with “You do not need this driver.”  It installed normally, recognizing the touchpad correctly (and with the Dell branding again), but after that, it behaved the same as the force-installed generic driver.  No options worked, and it stopped working in standby.  Others on the web had reported that this driver had worked to solve the “dying in its sleep” problem for them, but it didn’t work for me.

         

        Dell XPS 13/9310, i5-1135G7/16GB, KDE Neon 6.2
        XPG Xenia 15, i7-9750H/32GB & GTX1660ti, Kubuntu 24.04
        Acer Swift Go 14, i5-1335U/16GB, Kubuntu 24.04 (and Win 11)

    • #198125

      Since this thread deals with firmware on Linux, I have a question about firmware updates.

      Current state: I have a Lenovo Thinkpad T420 i7-2620M Laptop that was originally a Win7Pro-64_SP1 refurb. Upon purchase, I fully patched Windows and then popped out the WD Black HDD (Win7Pro). I replaced it with an SSD for the Mint-Mate install. The SSD has only ever had Linux Mint 18.3 (Mate).

      Question 1: As this laptop will 99% never (never say never) revert to Windows 7 or be inflcited by Windows 10, is it recommended to update the UEFI for the Meltdown/Spectre mitigations, or will relying on the Linux OS loaded firmware be adequate? It is using the most recent 18.3 LTS Kernal 4.13.0-45. Lenovo did release a UEFI update for this laptop.

      Question 2: My later Lenovo Laptop E440 on WIn7Pro-64_SP1 did take a performance hit from the Lenovo UEFI mitigations. If I updated the UEFI on the T420 with Linux, would it have a performance loss under Linux? With the SSD and Mint this is a screamer, so the hit may not be as noticable.

      Question 3: Basically from a security view which is the more secure way to go, especially with new variants being theorized, but not yet in the wild. This laptop is a home use only device. Thanks.

    • #198718

      #1) IMO, you’re best served by using only the microcode updates provided for your kernel from Linux Mint, and not doing a firmware update directly. It’s safer to do this, not only because each firmware bios update is risky, but there are instances where Intel has pulled microcode because of issues found later for it. That’s easily remedied in Linux, not so easy if you do a direct firmware flash.

      Notes: You can check the remediation for Spectre/Melteown after loading the Linux microcode update from Intel by following the directions on Github. Here is the link:

      https://github.com/speed47/spectre-meltdown-checker

      Also note that not all kernels are recommended for microcode. I stick with the one that came with install, until I get a different one in the update manager.

      #2) That’s impossible to know until you apply the microcode. Different applications react differently. My pc seems to be as fast as usual, but I don’t do a lot of heavy database/graphic stuff.

      The nice thing about the Linux way is that you can remove the microcode, a bios flash is somewhat permanent.

      #3) Not sure how to answer that question. For windows, I think you need to flash bios, but be careful…as I mentioned, it’s not likely you can flash back. For Linux, I’m pretty confident that if you pass the Github test, you’re covered.

      For theoretical stuff, all you can do is harden your browser (block ads, trackers, etc), install all the security updates, install and run clam, check for rootkits, make sure your firewall is up and running, check your router for exploits, use strong passwords and 2 factor authentication, and practice safe computing (don’t visit scam websites, use unsafe USB’s, etc).

      2 users thanked author for this post.
      • #198778

        Thanks John F.  That was what I was suspecting, but needed another more knowledgable voice and second opinion.  It is working fast now, Linux Mint has supplied various firmware and microcode with no ill effects.

        I have downloaded the checker from GiHub, but have not used it yet.

    • #198899

      You’re welcome! FYI (and I may start a thread on this), there is a problem when you have too many kernels…you get error messages during updates that are caused by a lack of space in /boot!

      I would remove any other kernels other than the active one and the one to be installed (from Mint Update). You can go into update manager, then on the top menu click view/linux kernels (that will pop up a new window…hit continue, then you’ll see the various kernel branches on the left. click on those, and check to make sure you have an active kernel, then for the older ones, click on the kernel to be removed, and then click on the remove button that’s on the right). Again, leave at least one other than the active kernel, and you’ll be fine!

      If you install too many kernels, it’s a real *** to remove them…but it is possible. I’ll probably complain on the Mint boards about this at some point, /boot should be given a lot more space…

      1 user thanked author for this post.
      • #199505

        Thanks onn that!

        Yes I have found that out the hard way… It was especially vexing when I tried a manual partitioning.  Using the default install cured it.  The wife’s Mint-Mate laptop has ony had 2 kernal updates offered, both in the past year.

        Mint(?) and definitely Ubuntu used to have a small “cleanup” utility called something like “Garbage Can” but I have not seen it in a while.  It would remove older kernels and headers.

        When I was using LXLE (Ubuntu core) it too had a similar utility, but when I used it it would remove my login info and I could never fix it, so it necessitated a reinstall.

    Viewing 4 reply threads
    Reply To: Updating firmware on Dell PCs when you don't have Windows installed

    You can use BBCodes to format your content.
    Your account can't use all available BBCodes, they will be stripped before saving.

    Your information: