WARNING: flashing the new BIOS can brick your laptop, DON'T do it if you don't know what you're doing or just for the sake of having the latest firmware. Make sure you actually need it and that both your laptop's power AC adapter is plugged in and the battery is fully charged.
If you've got one the ideapad gaming 3 laptops you might face the problem with updating the BIOS, if your model isn't covered via fwupd.
There are ways to workaround it with some crazy shit magic tools, but the safest way is just use the Windows environent in the absence of a BIOS update file for Linux.
Fortunately, you can download the Windows ISO and boot it without installation, and then safely update the BIOS.
You'll need two USB sticks for that (well, you can play a little bit, modify the ISO to bundle the BIOS update file into it, but I had two sticks handy so went the lazy way).
Format both sticks as FAT32.
Use one to create a bootable Windows 10 or WinPE ISO to get a working windows terminal environment.
- https://www.microsoft.com/en-us/software-download/windows10ISO
- https://www.osdcloud.com/sandbox/winpe-downloads
sudo dd if=Win10_22H2_English_x64v1.iso of=/dev/sdX bs=4M status=progress
On the second stick, copy just the BIOS update file, i.e. h3cn46ww.exe for ideapad Gaming 3-15ACH6 (look for yours at https://pcsupport.lenovo.com/uu/en -> Browse Product -> Laptops -> Gaming Series Laptops). The model number is on a sticker on the back cover of the laptop.
- https://pcsupport.lenovo.com/uu/en/products/laptops-and-netbooks/gaming-series/ideapad-gaming-3-15ach6/downloads/driver-list/
- https://download.lenovo.com/consumer/mobiles/h3cn46ww.exe
Boot the Windows 10 or WinPE ISO (reboot -> keep pressing F12 -> choose the USB stick -> press any key).
If you have Windows 10 ISO you'll need to click "Next" on the first screen with language, time and keyboard selection, then at the next screen click on the "Repair your computer" at the bottom, then again "Repair your computer" and choose "Command Prompt".
If you have WinPE ISO you'll be in the command prompt right away.
When the command prompt pops up:
- plug the power AC adapter (BIOS update will fail without it)
- insert the second stick with BIOS update file and type:
d:
dir
h3cn46ww.exe
The letter of a drive may vary so try c:, then d:, e: and so on, followed with dir command to view if you're on the right drive.
After that the updater window will appear, which lets you start the update. Next, it will restart your laptop and let you know that it's working with a progress bar, don't do anything, wait for it to restart again. Once you can boot your system again, it's done. Until it happens don't interrupt the process, don't touch the keyboard, don't touch the power button, don't breathe (ok, you can actually breathe, just don't touch the laptop while it's updating the BIOS), sometimes the laptop will be unresponsive for a brief time, it's completely normal.
Then you can check the BIOS version with lshw.