Issue #554 has been updated by Evgeny Zinoviev.

> I just said you were being very helpful

I know, I saw, thank you for that. I'm just saying that IFD is not the 
problem... I gave you correct (I believe) instructions on how to fix it.

Flashrom was unable to flash 0x00800000 and above because there were no such 
region in the ifd layout, so, I guess, it just wasn't mapped in memory. So the 
obvious fix was to adjust the ifd layout, allocating the `00800000:00bfffff` to 
something harmless like `pd` and leaving all other regions intact, then flash 
only the new `fd` region, then power off the machine, then power it back on 
(new ifd takes effect only on cold boot, thus we need this power cycle), and 
then you could flash above `0x00800000`.

Obviously, you had to change the ifd layout again, so that the new `bios` would 
now be `00500000:00bfffff` (as it originally was) instead of 
`00500000:007fffff`, and flash new `fd` and new `bios`, all that using the 
right ROM image of course.

Then, after one more power cycle, it all should've been working. What went 
wrong on your side, I have no idea...

> Technically, they have floating CS lines. It's a deficiency of some boards 
> that you always have to connect both chips' CS, one to VCC (preferably 
> through a resistor) the other to the programmer.

Yeah, thanks for pointing that out.

----------------------------------------
Other #554: Do not follow ch1p's guide on flashing Thinkpad W530 with only 8MB 
chip!!
https://ticket.coreboot.org/issues/554#change-1902

* Author: Simon Dominic
* Status: Rejected
* Priority: Normal
* Target version: none
* Start date: 2024-08-23
----------------------------------------
I had to learn this the hard way and (literally) pay the price (for it to be 
repaired) for following this guide (both on their own 
[website](https://ch1p.io/coreboot-t530-one-chip/) and a [reddit 
post](https://www.reddit.com/r/coreboot/comments/956ymu/howto_flash_coreboot_on_x230t430t530w530_using/)).
 I often make tweaks to my coreboot config which often breaks my system by not 
being able to boot, and thus requires a fully disassembly to access the 4MB 
chip to externally flash. As you can imagine, doing this every time I mess up 
is annoying, and so the idea that I could do it with just the 8MB chip, which 
is easily accessible, was very attractive.

Right off the bat, I'll say this this method causes so many problems and going 
through the pain and frustration is not worth the convenience of not doing full 
disassembly. I was in contact with ch1p who was very helpful in trying to help 
me out. However, it must be said that this guide should **NOT** be followed!

This completely messes up the bios chips' firmware tabling, making it 
impossible to internally or externally flash (while the chips were still on the 
motherboard). You cannot read or write from either of the chips, and the 8MB 
chip thinks it 4MB.

I would get errors like this:
```
Reading old flash chip contents... done.
Erasing and writing flash chip... FAILED at 0x00000000! Expected=0xff, 
Found=0x16, failed byte count from 0x00000000-0x00000fff: 0x1000
ERASE FAILED!
Reading current flash chip contents... done. Looking for another erase function.
FAILED at 0x00000000! Expected=0xff, Found=0x16, failed byte count from 
0x00000000-0x0000ffff: 0x10000
ERASE FAILED!
Reading current flash chip contents... done. Looking for another erase function.
FAILED at 0x00000000! Expected=0xff, Found=0x16, failed byte count from 
0x00000000-0x0000ffff: 0x10000
ERASE FAILED!
Reading current flash chip contents... done. Looking for another erase function.
FAILED at 0x00000000! Expected=0xff, Found=0x16, failed byte count from 
0x00000000-0x003fffff: 0x400000
ERASE FAILED!
Reading current flash chip contents... done. Looking for another erase function.
FAILED at 0x00000000! Expected=0xff, Found=0x16, failed byte count from 
0x00000000-0x003fffff: 0x400000
ERASE FAILED!
Reading current flash chip contents... done. Looking for another erase function.
Looking for another erase function.
Looking for another erase function.
No usable erase functions left.
FAILED!
Uh oh. Erase/write failed. Checking if anything has changed.
Reading current flash chip contents... done.
Apparently at least some data has changed.
Your flash chip is in an unknown state.
Please report this to the mailing list at flash...@flashrom.org or
on IRC (see https://www.flashrom.org/Contact for details), thanks!
```

Thanks to [this](https://github.com/flashrom/flashrom/issues/190) github issue, 
I figured the only way to fix this was to have the chips physically removed and 
then flash them. Since I can't solder, I paid someone to do it (they charge for 
disassembly, so saved by dissembling myself and giving them just the 
motherboard).

The bad news is the 8MB always thinks it's 4MB, so impossible to externally 
flash that chip. The good news is the 4MB chip is perfectly fine, which is 
great because that's the chip for the actually bios. From there, you can 
internally flash (both chips), so that problem sorts itself out.

I had to pay someone to fix the mess that the guide caused. If someone with a 
Thinkpad W530 happens to stumble upon this post, you will save yourself time, 
pain and money by ignoring the guide and just dealing with full disassembly. 
It's not worth it.



-- 
You have received this notification because you have either subscribed to it, 
or are involved in it.
To change your notification preferences, please click here: 
https://ticket.coreboot.org/my/account
_______________________________________________
coreboot mailing list -- coreboot@coreboot.org
To unsubscribe send an email to coreboot-le...@coreboot.org

Reply via email to