-
-
Notifications
You must be signed in to change notification settings - Fork 187
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Create 8mb flash images for t530/w530 (to bypass complete disassembly requirement) #1189
Comments
Naming proposition: w530-flash-bottom t530-flash-bottom? |
I did the following to bypass complete disassembly for flashing the w530. Downgrade BIOS to 2.58 or an earlier version for W530 (I downgraded to 2.50 if I remembered correctly) EC downgrade is not needed. Read the 8MB chip, I'm using the ch341a
Check if the same
Unlock firmware descriptor and ME region
Flash the 8MB chip with unlocked descriptor
Install and boot 1vyrain. See https://github.com/n4ru/1vyrain#installing 1. Press enter key to attempt BIOS exploit. |
@zifxify that would work of course, but requires a lot of back and forth that could be removed. Of course, it is always encouraged to backup original spi content for restore. 1- What I meant in automatizing https://ch1p.io/coreboot-t530-one-chip/ was to create new Heads flashing board configs which would result in 8mb ROM images that could be directly flashed. What is missing to accomplish this today is simply to create a valid unlocked descriptor (ifd), modified to have regions describing for 8m spi chip. Once that file is crafted and dropped under blobs/xx30 in tree, new board configs could be created including the same basic modules x230-flash currently has, and point to new coreboot configs pointing to new ifd, actual GBE and ME, but generating 8mb spi, not 12. That would result in CI being able to create ROM images, which could be used to flash t530 /w530 internally to their chosen board config ROMs flavors. From my understanding, we could reuse the ifd under blobs/xx30 to generate the new one. 1.1- It would also be nice to have additional backup scripts, able to read the content of the whole 12mb image internally and extract the 4mb flash chip content for backup purposes. That could easily be added in additional scripts and instructions given at boot, just like xx30-flash boards point to custom init scripts. User could combine his original 8mb image with this 4mb image to flash resulting ROM internally and get bet to stock bios. 2- We could also create hotp-verification board configs that would generate roms fittimg into 8mb flash only, just like they do on xx20. Goal here would be to never touch the 4mb flash, flashing internally only the bios region on upgrades, instead of reflashing the whole 12mb regions for xx30 as it is currently done for maximized boards. That way, the user could flash back the original 8mb image any time if desired. I think 1 and 1.1 are needed. |
So, got my w530 dgpu K1000 today. Disasembled keyboard+palmrest, and saw 8bm spi chip exposed only. Now, lets make a w530-flasher_exposed_under_palmrest for fun and profit. |
#1558 won't work. Field experience is that if crafting a 8mb self-contained firmware image that neuters ME, reduces it size and modify IFD that reduces ME region to minimal and maximizes BIOS region, we basically get a 8MB flash image that becomes a legacy board, not a maximized board that has 12mb of combined SPI space. The problem here is this:
So next steps as of now:
Alternative:
|
Can't be done #1558 (comment) |
Note that 8mb only could be done (legacy images vs maxmimized rom images). But since we try to get away of legacy boards.... That would need to have volonteers to struggle with me with smaller firmware footprint and jump into #590 revival. |
@tlaurion, you don't need full Windows to flash back to previous bios version. (to much hassle) If you also want to downgrade/upgrade EC (I have tried different bios versions with different ec firmwares and it always worked) |
This way no complete disassembly would be needed.
Since the 8mb SPI flash is the one exposed under palmrest and the 4mb is the one under bezel, we could create other flasher boards to flash maximized boards internally. The 8mb SPI flash being the one actually containing ifd GBE and me, a precooked ifd could be crafted and used in another specialized board config and coreboot config, crafted to create a valid 8mb ROM image.
The hypothesis here is since the ifd would be unlocked and the whole 12mb of combined 8mb+4mb flash space should be seen by flashrom, there should be no problem to flash the corresponding 12mb maximized board image from that image.
Basically automating the following: https://ch1p.io/coreboot-t530-one-chip/
How should those t530 and w530 boards be named?
The text was updated successfully, but these errors were encountered: