Jump to content
plutomaniac

Merge Clevo Bios & EC

Recommended Posts

Hello,

I was interested in merging my laptop's BIOS & EC together into one image and came to an interesting conclusion. My laptop is Clevo W25xHNx from 2011 (EOL). The latest BIOS is 1.01.07 and was released alongside EC 1.00.05. After some time EC 1.00.06 was released and no more updates after that. I opened BIOS 1.01.07 and EC 1.00.05 with AMIBCP and saw that both of them are based on the 1.01.07 BIOS which makes sense since they were released together.

QtXZQj.png

Next I opened EC 1.00.06 with AMIBCP and saw that it is also based on the 1.01.07 BIOS which again makes sense since it had to be based on the latest released BIOS.

mwQPc8.png

So I wondered whether I had to do anything to merge the 1.01.07 BIOS and 1.00.06 EC. I could just flash the 1.00.06 EC image (/E & /P /B /N) to update both EC and then BIOS. Obviously I had to make sure first that there were no other differences apart from an updated EC. Maybe the bare EC image didn't include parts of the main BIOS block. I opened both 07 BIOS and 06 EC with Beyond Compare and saw that only a small block was different on both of them. That block should contain the EC.

fnCBlu.png

However, since I don't know from where exactly I should copy-paste I decided to use UEFIExtract.

N0LtwP.png

I extracted both BIOS 07 and EC 06 and checked both folders for file differences with WinMerge. The only difference was a single 64KB "padding" file at the top of the main BIOS block: eW251HNQ.06.dump\2 BIOS region\0 Padding\body.bin

2nYdnD.png

I copied both files in a folder and after naming them appropriately I opened both of them with HxD hex editor.

EBNgXC.png

At the top I can see ITE which is the BIOS/EC chip manufacturer. Scrolling down a bit reveals the file's version number witch is 1.00.05 for the BIOS 07 one and 1.00.06 for the EC 06 one. This is definitely the EC firmware.

X8VnvV.png

iEMzNc.png

Now, I want to test whether the latest EC_06 is a full 1.01.07 BIOS + EC 1.00.06 image. I opened both BIOS 07 and the extracted 64KB EC 06 firmware. The first line of the extracted EC file is 02 00 2E 02 00 0E 22 22 22 22 22 02 06 80 C2 AF. I search that at the BIOS 07 image and find it at offset 180000.

SncVPb.png

I go back to the EC and right click > Select all > Copy. The length is 10000 as shown by HxD.

QzQLQI.png

Now I go back to BIOS 07 tab, click before the first hex number of the 180000 offset (02 in my case), Edit > Select block and enter the length of the EC file which is 10000 or 64KB.

cSE7XX.png

Then right click > Paste write. The 64KB that I replaced will appear in red.

CqXMV5.png

I save the result in a new file (TEST_BIOS07_EC06). In theory I have now created a 07 BIOS + 06 EC. So if I compare the stock Clevo 06 EC file with my TEST one, they should be identical. And I'm right, they both have the same SHA-1 hash.

nimXP8.png

So that proves that the EC_06 provided by Clevo can be used on it's own to update both the BIOS & EC of a machine. So, in my case I don't have to merge the 64KB EC firmware, I can use the EC image by itself. Of course, IF EC_06 was based on the 04 BIOS for example (whereas the latest BIOS is 07) I would have to extract the 64KB EC and insert it manually like I shown above. But in THIS case, that's not necessary.

Am I wrong?

Share this post


Link to post
Share on other sites

Sure you can just directly flash the v7 BIOS that comes with EC v6, same thing.

(In general be very careful with EC firmware, one bit too much or too less and it bricks the system.)

  • Thumbs Up 1

Share this post


Link to post
Share on other sites

Thank you for verifing that Prema, I'll base my mod on the "EC" file. That's what I thought. Btw, UEFITool can also be used for doing the extraction quickly without a hex editor and copy-pasting (I know you know that, just for helping others who might be looking into that). To insert it back though, a hex editor is needed since you cannot import and replace "padding".

p8Od3I.png

I checked one or two newer models for reference and saw that again the EC is signified by 02 00 2E 02 00 0E 22 22 22 22 22 02 06 with a size of 64KB or 10000 length. However, this is probably for systems with one EC firmware using one BIOS/EC ITE chip. The position, size etc might differ otherwise. Just pointing that out. And yes, I'm not going to mess with the actual EC. I can't afford bricks nor do I have a programmer! ;)

It's weird that Clevo has decided to have one BIOS and one EC image when they could easily release one file with both updated. And their batch files shut down the system after the EC making it more dangerous to actually cause a brick. Who knows, they probably have a reason... :beguiled:

Share this post


Link to post
Share on other sites

They just don't know what they are doing...they simply use the files the way they are spit out by the dev tools and send to them... ;)

All Clevo models since Sx series have the EC directly hosted in the ITE controller (some also have a secondary EC chip (co-lay).

Those ECs contained in BIOS files are only used until Ex series.

  • Thumbs Up 1

Share this post


Link to post
Share on other sites

I actually tested a W3xxST before and the EC block was there. That's the rom that I said I tested for reference.

Share this post


Link to post
Share on other sites

It is a left over and unused part, no difference if you write FF into the entire region and flash with /e, it is simply no longer used on Sx+ production units.

  • Thumbs Up 1

Share this post


Link to post
Share on other sites

Ha, ha. Oh Clevo... I can't imagine how many systems you must have bricked and brought back to life in order to know all these.

I guess I could transform this thread slightly into a small guide for older systems up until Ex series on how to do the BIOS/EC merger. Could be useful for someone, who is feeling dangerous, later on. ;)

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Similar Content

    • By racerxdl
      Hi all,
       
      It has been a while since I did anything to my laptop (Clevo P670RG-G) and since I recently got a VR Headset I wish I could overclock my GPU a little. So far the NVidia software (on windows) doesn't allow me to overclock it (the linux sort of allows, which some custom Xorg options) so I decided to give a try modding the vbios.
       
      I read all sorts of issues / guides about it, and it seens that the hardware topology (where the vbios is stored and how things are connected) changes from machine to machine.
       
      What I know about my laptop is that it has two VBios, one for Hybrid Mode and one for Discrete Mode. I'm currently running the discrete mode.
       
      I dumped my VBios using GPU-z and opened up in Maxwell II Bios Tweaker. Everything seens fine so far.
       
      So I have few questions about it:
       
      - There is a way to just unlock the VBios to show the overclocking options in NVidia software? (That way I dont need to reflash to change clocks)
      - I can just flash this GPU-z dump to my VBios?
      - If I brick my GPU, that GPU-z dumped image is the raw SPI image, so if I managed to physically access the VBios, I can just reflash over it?
      - I saw some people saying that I might need as well to flash the main laptop bios as well, is that really needed?
       
      Thanks!
       
      Lucas

    • By Klem
      In this thread you can post your requests for Lenovo ThinkPad T440p / T440s / T540p.
      If someone wants upgrade Wi-Fi card and remove whitelist, or unlock hidden additional menus and settings in bios setup menu, then you can post your request in this thread.
      Important!
      For creating bios backup and to flash bios mod, you must use any SPI programmer  (like CH341A programmer) and a SOIC8/SOP8 test clip!
       
      Just dump your Bios using any SPI programmer  (like CH341A programmer) and a SOIC8/SOP8 test clip, then post it in this thread or upload it to any fileserver and send me the link.
       
       


    • By Klem
      In this thread you can post your requests for Lenovo ThinkPad T450s.
      If someone wants upgrade Wi-Fi card and remove whitelist, or unlock hidden additional menus and settings in bios setup menu, or already upgraded Display and after that can't adjust screen brightness, then you can post your request in this thread.
      Important!
      For creating bios backup and to flash bios mod, you must use any SPI programmer  (like CH341A programmer) and a SOIC8/SOP8 test clip!
       
      Just dump your Bios using any SPI programmer  (like CH341A programmer) and a SOIC8/SOP8 test clip, then post it in this thread or upload it to any fileserver and send me the link.
       
       

      CH341A programmer:
      https://www.ebay.com/itm/USB-Programmer-CH341A-Series-Burner-Chip-24-EEPROM-BIOS-Writer-25-SPI-Flash-AU/153117073868?epid=577511738&hash=item23a67d21cc:g:XKEAAOSw5UdbW-iL
       
      https://www.amazon.com/Parts-tower-CH341A-Programmer-Software/dp/B01FVVHCVC/ref=sr_1_4?ie=UTF8&qid=1522179315&sr=8-4&keywords=ch341a&dpID=51BO7eGgO5L&preST=_SY300_QL70_&dpSrc=srch
       
      SOIC8/SOP8 test clip:
      https://www.ebay.com/itm/Soic8-Sop8-Flash-Chip-Ic-Test-Clips-Socket-Adpter-Bios-24-25-93-Programmer/201414947737?hash=item2ee5443399:g:up8AAOSw1Fda8qkt
       
      https://www.amazon.ca/MAUSAN-Socket-Adapter-150MIL-205MIL/dp/B06ZYSNJF3/ref=pd_sbs_21_3?_encoding=UTF8&psc=1&refRID=XM79QJWGED6B4K2VEZDJ
       
      How to use it:
       
      Also, you can search on YouTube a lot of guide for CH341a.
       
    • By BAKED
      Hey y'all! I'm planning on releasing BIOS mods for the newer MSI laptops.
      So I'm looking for some testers to evaluate my mods and give input.
      If you're interested just PM me and we'll take it from there 
×

Important Information

By using this site, you agree to our Terms of Use. We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue.