Please help! Huawei Matebook D 14 - KPL-W00 - Insyde2H0 BIOS Unlock

Hello everyone!

Looking for some help, I have a Matebook D 14 and it would be great to access some advanced options in the BIOS. If you could give me tips or check it our yourself, it would be greatly appreciated!
Model number and name are in the title of the thread, it’s a AMD machine. What I’m looking for is an “Advanced” menu in the BIOS or menus related to “AMD CBS”, like iGPU memory size and RAM speed/timings, etc.

The BIOS itself is very basic currently, but under H2OUVE I can see options for plenty of things, sadly neither writing directly to the NVRAM or to a BIOS image work. If you have or could guide me towards a working H2OUVE that can write, then I could try that approach first (or maybe I’m missing something obvious?)

Been looking around forums and I’ve seen there has been interest for this BIOS to include some advanced features but the threads always die before anyone tries, i.e. an offer is made but the OP does not reply anymore. I didn’t want to necro any of those old threads though. If things should go bad, I also have a SPI flasher at hand, hopefully it won’t be needed though (also, if anyone here might know, is there a easy USB flash stick method of BIOS recovery for these newer Insyde2H0 BIOSes?)

I’ve included a image of my current BIOS as an attachment. Digging out a image from the official BIOS update is also possible but isn’t as straight forward (needs 7z, UEFI tool, etc).

If anyone has any ideas, tips or wants to try something, please let me know! These laptops are still very decent and now can be had for very little on the second hand market, being able to configure them slightly better (i.e. if you don’t play any games, reduce dedicated iGPU to gain more general RAM or if you do play games, might be possible to increase the timings and frequency of the memory slightly, as the iGPU and Zen in general benefit greatly from faster RAM).

Thanks!

matebookd14amd2500u.zip (4.07 MB)

@ea00 - Please dump BIOS with programmer and send to me. What is BIOS chip ID, read it yourself, don’t tell me what software gives you as ID that’s not always correct.
This way I can tell you what is best software/version to read and write to the chip with. Also, if you go ahead and dump chip before I give you this info, tell me what software/version you use to dump with in case I need to have you do it again before we get started

The way this BIOS is laid out is terrible, I am not sure if we can add tabs back, maybe only make things visible in place where they are now with all in that Main tab.

@Lost_N_BIOS

Hello! Thanks for the reply and interest!
How critical is access to the BIOS chip itself right now? Would reading it with Flashrom under Linux be okay too for the dump and chip name? Since I don’t feel like taking the motherboard out unless necessary.
The current dump is made with the tools in the Insyde toolkit, the toolkit with UVE, SDE, etc, think I used UVEs option to dump ROM.

I’m aware how awful the BIOS is but anything would go, even just adding a long list of options to the single screen or if there are tabs, they would be welcome too. Thanks.

Since you seem to have quite the experience in the field, I have a few questions if you don’t mind and have time.
Do you know if the modern Insyde BIOSes still support the key combination recovery flash from USB? If so, how could I get the filename needed? I’ve tried checking strings for the name in the BIOS but nothing, Andy’s tool didn’t help also.
Last, know anything about using a key combination at start to clear CMOS? I know some laptops had the option, wonder if Inside does too. The question about flashing from USB and resetting CMOS is just quality of life improvements when messing with the BIOS extensively and it’s options to make going back easier (without having to take the battery out to clear CMOS or the motherboard to flash back another BIOS, etc). Not directly necessary but nice to knows.

I could also try manually changing variables in NVRAM with the setup_var GRUB shell, but I’m clueless how to extract a variable list from my BIOS, I’ve been looking around but sadly haven’t managed to figure it out, even being able to change variables like that would be huge.

Thanks again!

@ea00 - It’s kind of critical, because I want to make sure you have a good backup so you can recover in case of brick, due to how this BIOS is laid out.
Can you read and write to the chip from Linux w/ flashrom? If yes, then OK, yes, that would be safe backup (and way to flash in mod BIOS). If it bricks, then you would be able to use that backup to recover with.

Yes, that long list/single tab stuff is what I was talking about. I think we’ll have to make stuff visible like that, I doubt I can see how to make this into a normal tabbed BIOS due to what they’ve done.
Sorry, I am not familiar with laptops, nor Insyde BIOS all that much (just can unlock some), so I can’t comment on USB recovery or USB forcing BIOS flashes etc. But, I can probably find the name needed, if there is one in the BIOS (I doubt it’s setup for that, due to how they already trashed the BIOS)
If it’s used from BIOS, and system is configured to recover somehow from USB or CD or HDD etc, it would be one of these names.
isflash.bin (common)
04X.bin

Sorry, not sure how to clear CMOS here, it’s probably not possible unless there is a clear CMOS pad/jumper on the board itself
Sometimes there it, often TINY circle, with hair-thin line between +/- pads, it will look like a single gold dot on the PCB, but when you look close you will see the split

You do not need to clear the CMOS to reset anything, you can simply reload optimal defaults. Clearing CMOS has nothing to do with BIOS flashing either, it would be wiped during any BIOS update almost always.

Grub/setup_var does not work on Insyde BIOS, you would have to use either RU method, or H2OUVE to dump vars and reflash in mod vars.

@Lost_N_BIOS

Sorry for the late reply, haven’t had much time to deal with this. Thanks for all the info!
I’ll try a Flashrom backup and restore and if it works, I’ll also upload the image here and we can discuss modding that when you have time and interest, but before I have a question.

The RU method seems good too if all I want is one time changes to variables, might be quicker, easier and safer than actually even editing the BIOS? If all I want is to change one or two BIOS options that are normally hidden, but the question is, where or how could I generate a table of variables for my BIOS so I know what to edit in RU?

Also have a question about H2OUVE, is it true that there’s different versions of it? Since the one I have can’t save modifications neither to images or runtime. I modify and save a BIOS image I dumped with it and next time I load that image again in UVE, it’s like I didn’t change anything.

Thanks!

@ea00 - It’s OK, I am always behind too, so I know the feeling

Yes, if all you want is to change a setting or two, you can change via RU, make sure you are making change in the correct Varstore (each setting in IFR will say the varstoreID)
Then find that varstore ID at top of that settings section in the IFR and you will see the varstore’s name and GUID, then you go to that exact GUID in RU to make your changes

Here is the IFR for your BIOS, this is from stock 1.22 BIOS (MateBook_D_14_AMD_BIOS_1.22 - MD5 = 65D10FA9CB33C093917910366ED7405E)
If your BIOS above is not this version, let me know and I will grab from it instead, variables may not be same) - Some of this is not correct/proper, due to they purposefully try to stop IFR generation
http://s000.tinyupload.com/index.php?fil…210031821212556

Yes, there is many versions of H2OUVE, sorry, I don’t know about using it to edit/save BIOS files, I do all edits manually/directly - I do know what you mean though/have seen that myself sometimes
I think it’s either not compatible with all BIOS, or you need to make the changes in variables instead of settings, I’ve never taken the time to figure out why it does that or how to make it save properly etc.

@Lost_N_BIOS

Thanks! I’ll try that first. Also thanks for the IFR, looks to be correct.
I’ve been having problems getting RU to run, even with Secureboot disabled, it just reboots without displaying anything, but I haven’t tried any older versions yet.

Anyways, I’ll try with RU right now and if that fails, then look into editing default options in a BIOS image with H2OUVE again, maybe another version would work.
I’ll report in the upcoming days if I had any luck with either method.

P.S. One quick question, if you have looked or have the ability to quickly check, have you seen anything related to AMD CBS or it’s settings in the BIOS?