Adapting BIOS for a different chipset

Hey guys, this is my first post in this forum. Sorry if I am posting in the wrong section.

I have an ASUS GL552 which had a bad PCH (SR17E - HM86 chipset), my replacement PCH from china was faulty (shorted) and with current pandemic I am unable to order another at a reasonable price. I had a donor board with an SR17D (HM87 Chipset) and after a some digging around I found they are not too different and have same pinout. Out of curiosity, I decided to use it as replacement for the SR17E. When power adapter is connected, laptop start on its own and if prompted to turn off with power button, it’ll boot right up.

I tried tinkering with the BIOS, but I am a complete newbie at this. My results range from no change to above mentioned boot cycle or simple no boot at all. My question is, is it possible to adapt the BIOS meant for the SR17E to work with the SR17D or is it that it just simply will not work because they are different chipset?

I would really love to learn more about BIOS modding and this forum is a wealth of information. Any help is greatly appreciated.

Well compare chipset registers for the PCH
https://www.intel.com/content/dam/www/pu…h-datasheet.pdf

And don’t forget about ME, some chipset configuration registers are configured in FIT and stored in flash descriptor. I wouldn’t expect to many hassles on bios side, maybe worth to start with ‘clean/empty’ NVRAM.

Checking ME settngs is basically the same like cleaning the ME, just that you’d have to compare settings for the different configurations/ chipsets, required tools in the second link.
[Guide] Clean Dumped Intel Engine (CS)ME/(CS)TXE Regions with Data Initialization
Intel (Converged Security) Management Engine: Drivers, Firmware and Tools

Worth a try a fpt(w(64)) -greset on a administrators command prompt… I assume you did reset CMOS?

You do have a CH341 programmer?

Hi lfb6, thank you for your reply.

I did a clean ME on the original BIOS as well as CMOS reset after I changed the PCH. I’ll go through the provided links and cross check registers as suggested and report back. How do I go about with a clean/empty NVRAM?

I use RT809H as programmer.

Sorry if I ask dumb questions, am a newbie to BIOS :slight_smile:

Bios region GL552VXK-AS.303 as example. There’s one or two NVRAM stores, second one is often generated first when in use. One group StdDefaults, otherwise empty (GUID store in the end). Make valid bios dump and replace this volume from stock.
Backup might be possible with fpt(w(64)) -bios -d biosreg.bin Normally writing with fpt isn’t possible.

12.jpg

To be honest, at present I have no idea what else I can do until I understand this topic properly. Could you please help me with modding the BIOS? Please find attached unedited/uncleaned BIOS dump.

I only played around in FITC, I have no idea yet how to properly work with UEFITool. This is what I had tried so far in FITC with the dumped BIOS:
1. Only cleanME
2. Change the platform from H86 to H87 in the dropdown menu
3. Tried using ME region version (from repository) as identify from BIOS dumps of donor board (SR17D board)

I am not too sure about how to check/change register yet. Grateful if you can help me out. I’ll try my best to learn on the go. Let me know if any other files might be needed.

Thanking you in anticipation.

ASUS_GL552JX_Ori (SR17E).rar (3.23 MB)

What do you mean by:

Please post the bios of the donor board (SR17D), too.


The ME version of the SR17D is different compared to SR17E. Since I was already testing, I tried the me version of the SR17D on the SR17E dump when cleaning ME


Please find attached same. I forgot to mention in earlier post, but I also tried mapping the SR17D to SR17E in FITC by comparing them side by side and changing straps, enabling GbE, etc. I also tried moving SR17E BIOS region to SR17D (setting default length to 0 so it would take the new length automatically). I don’t think I tried moving FD yet though.

Thank you again for your help.

SR17D donor dump.rar (3.57 MB)

Wouldn’t try donor bios, ec firmware might possibly not be compatible.

Try one of the attached files. Cleaned ME with settings of the HM86 image, I didn’t find any settings which seemed related to different chipset. NVRAM is emptied, bios is 205 and 209 except for the small pad with serial, Win- key…But there may be things ‘hard coded’ in bios like version of LPC controller…

205own_me.zip (3.29 MB)

209own_me.zip (3.29 MB)

Thank you for the files but unfortunately no change, I still have same behavior. It could well be there are other issues with the board. The person who brought it in said it was in another shop before. When I received it, some screw post near CPU and GPU holding the heatsink was ripped off. I wont be surprise if this board might have a bad CPU also.

Can you please explain what exactly did you modify in the attached firmware?

Nothing more that written already, emptied NVRAM see picture in #4, and cleaned ME according to guis mentioned in #2. And yes, there are lot’s of other possibilities why this board won’t work…

I am using this board to learn more anyway. When power is plugged in, laptop start on its own and will restart itself if prompted by power button to turn off. When only battery is connected, laptop stays off and only turns on after pressing power button. Once on though, it will have similar issue as aforementioned.

I already checked RTC section and everything seems ok there. I’ll try probing around more and hoping its not a dead CPU since I cannot 100% rule out that potentially the SR17D is simply not compatible as a drop in replacement.

What kind of information does NVRAM stores when it comes to BIOS?

Use UEFIToolNE, most names are readable. Goes from PCH intialisation over bios setup to secure boot

You might extract setup information and corresponding stores from bios by ifrextract, looks like attached text-file

Section_Freeform_subtype_GUID_97E409E6-4CC1-11D9-81F6-000000000000_Setup_Setup IFR.txt (1.09 MB)