1

I just bought a new Lenovo IdeaPad 510S-14IKB 80UV without OS. I clean-installed Windows 10 v1703 on it (installation details below). I then wanted to update its BIOS/UEFI from the factory 2.00 to 2.02 from the above link, but this failed with:

Mount the EFI System Partition fail

This thread suggests it's because I partitioned the drive with MBR, and says that he managed to update the BIOS after re-installing windows using an installation Disk-on-Key creating with stick using Rufus with GPT-type UEFI. However, this means that I need to delete the entire partition, which I don't want to.

Question: Is there a way to update the BIOS without re-formatting the drive to GPT?

Installation procedure

  1. Download a Windows 10 64-bit ISO, and create a USB disk-on-key using Windows USB/DVD Download Tool.
  2. Enter machine BIOS (Fn+F2), set boot to legacy support (may have been the default, don't remember), restart and enter BIOS again. Now disk-on-key is selectable - set it as first boot device.
    • Note that I tried to set boot to UEFI-only, but then it wouldn't recognize the disk-on-key.
  3. Start machine - boots from disk-on-key into Windows installation. Select custom, delete the existing FreeDos partition, and install Windows on the blank space.
  • "This means that I need to delete the entire partition" - You could just use the tool Microsoft release to switch from MBR to GPT without data loss. You can create an EFI installation disk, but at least in the context of Windows, if you enable legacy mode your going to install it on a MBR partitioned disk if you do that. – Ramhound Apr 20 '17 at 19:06
3

Three possibilities occur to me, although one violates the details of what you're asking to do but not the spirit, and I can make no promises that any of these approaches would work. I strongly recommend you research all of these options before proceeding....

Option 1: Find Another Way to Install the Firmware Update

You may be able to find an option in your firmware setup utility to update the firmware. If so, the trick is to find a suitable file to feed it.

Sometimes .exe files for installing firmware updates are actually .zip or other archives with executable wrappers that extract files and do things with them. Thus, extracting the files in the .exe file might expose a file that your firmware will take. (Be prepared to try several archive tools before you figure out what the file actually is.) Another option is to ask Lenovo about this, or dig further for it on their site. They may be willing to provide you with a suitable file.

Option 2: Install Firmware Update via Temporary UEFI-mode Boot

In principle, you could find a Windows recovery disk that boots in EFI mode, enable EFI/UEFI-mode boot support in your firmware, boot to the Windows recovery disk, and use it to install your firmware update.

Unfortunately, I know little enough about Windows recovery tools that I can't point you to specific disk images or procedures, except to point out that such tools may be bootable in both BIOS/CSM/legacy and EFI/UEFI modes, and controlling the boot mode can be tricky. On most computers, there's a firmware setting to enable BIOS/CSM/legacy support (any of those three terms may be used), and disabling that setting will usually force an EFI-mode boot. (You'd obviously want to remember where this option is so you can re-enable BIOS-boot support when you're done.) You may also see two entries for an external medium in the computer's built-in boot manager, one of which includes the string "UEFI" and the other of which doesn't. Selecting the "UEFI" entry usually forces an EFI-mode boot. The details of forcing an EFI-mode boot vary from one computer to another, though, and sometimes what looks like a way for force an EFI-mode boot is actually just a way to suggest an EFI-mode boot, so you don't always get what you expect.

If you do succeed in booting an emergency disk to EFI mode, it sounds like the Lenovo tool is expecting to find an EFI System Partition (ESP). These are easy enough to create on a USB flash drive -- but if the tool wants to see an ESP on a hard disk, creating one on a USB flash drive might be inadequate. In fact, any FAT partition might be sufficient; but if the tool is picky enough to want one with the ESP's type code, most partitioning tools will let you set that. The tricky part is determining how -- GPT type codes are 128-bit values. (The code for an ESP is C12A7328-F81F-11D2-BA4B-00A0C93EC93B.) Such values are awkward, so many partitioning tools provide program-specific shortcuts. My own GPT fdisk (gdisk) uses EF00, for instance. I don't know what the standard Windows tools use, offhand. Be sure to use FAT when creating your ESP; AFAIK, no EFIs can read exFAT or NTFS without the help of extra drivers.

Option 3: Convert to UEFI/GPT Boot

A final approach is to convert your Windows installation to boot in EFI/UEFI mode. This can be done without doing a complete wipe-and-reinstall, in either of two ways:

  • Starting in Windows 10 Creator Update (version 1703A), Windows includes a new tool, MBR2GPT.EXE, which is advertised as being able to convert Windows 10 BIOS/MBR systems to UEFI/GPT systems. I've never used it myself, so I can't comment on how well it works; but it may be worth investigating.
  • Several people have created procedures for doing such a conversion on older Windows systems, back to Windows 7. This blog post describes one such procedure. I've done this once or twice, but not recently.

This conversion procedure carries some risk; a mistake, program bug, power failure at the wrong moment, etc., could render your system unbootable. Thus, I recommend doing this only after taking an adequate backup of your entire system, or at least of your important personal files. The advantage, though, is that once it's done the Lenovo update utility should work for you. EFI-mode booting also offers some modest advantages, such as (usually) a slightly faster boot time and the modest security benefits of Secure Boot (if your firmware supports this feature and if you activate it).

| improve this answer | |
  • Awesome answer! Edited more details about options 1 and 3. I don't want to invest the time into trying options 2 or 3 though... – Jonathan Apr 21 '17 at 10:10
  • Please add your details to a comment or your own answer. The changes, especially to my Option 1, created confusion because you inserted your own first-person comments into my first-person comments, which made it unclear who was recommending what. It's also unclear if Option 1 led to a successful resolution for you. If it did, more details about how that worked may be helpful to others. (You can accept your own answer, BTW.) – Rod Smith Apr 21 '17 at 13:56
  • Very well. In this case, running the Lenovo download 2scn22ww.exe creates C:\BIOS\2SCN22WW\2SCN22WW.exe (different file, same name!). This file can be extracted using 7zip, and in it you find: H2OFFT-Wx64.exe - Insyde H2OFFT (Flash Firmware Tool) version 5.64 - that's what runs and fails as described. It has various command-line options, but all fail with error.log saying This program cannot be run on the current platform. FWUpdLcl.exe - Intel (R) Firmware Update Utility Version: 8.0.10.1464 - it always fails with the same error. – Jonathan Apr 23 '17 at 9:28
  • I just used MBR2GPT on a different system so I could switch to GPT/UEFI and enable SecureBoot. It worked great. I might try it on this laptop as well. – Jonathan Jul 2 '19 at 10:37
1

The issue is caused by BIOS set to use Legacy, and the OS is installed. Windows 10 1703 and greater came with a tool called mbr2gpt needed to convert to GPT and allow BIOS to see the UEFI.

Prerequisite is to find out what partition and disk you have Windows installed on

DISKPART> list disk

Disk ###  Status         Size     Free     Dyn  Gpt
--------  -------------  -------  -------  ---  ---
Disk 0    Online         222  GB      0 B        *
Disk 1    Online         1863 GB      0 B

DISKPART> list volume

Volume ###  Ltr  Label        Fs     Type        Size     Status     Info
----------  ---  -----------  -----  ----------  -------  ---------  --------
Volume 0     C                NTFS   Partition    222 GB  Healthy    Boot
Volume 1     E   Area-51-Hyp  NTFS   Partition   1863 GB  Healthy

DISKPART> exit

(Exit out of Diskpart.)

run

mbr2gpt /validate /disk:0

one done you can boot back into BIOS using F2 option and then change the boot from legacy to UEFI and boot.  Once this is done run the BIOS update again and it should run without errors.

| improve this answer | |

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

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