Take a look at our
ThinkPads.com HOME PAGE
For those who might want to contribute to the blog, start here: Editors Alley Topic
Then contact Bill with a Private Message
ThinkPads.com HOME PAGE
For those who might want to contribute to the blog, start here: Editors Alley Topic
Then contact Bill with a Private Message
X210 bricked after coreboot flash
X210 bricked after coreboot flash
So I tried flashing coreboot on my X210, and, well, it didn't go so well. It powers on, display seems to initialize, and keyboard appears functional (NumLk led is active, at least), but nothing is displayed and nothing boots. I had previously flashed the modded EC by vladisslav2011, from harrykipper's repo, against stock BIOS, seemingly without issue.
I then proceeded to build a new coreboot image, seeing this as the safer choice since I believe my model is earlier than 3rd gen (it was bought third hand, so I'm not entirely sure of the gen, nor how to check), and because I wanted SeaBIOS so as to not limit myself to UEFI (which I mainly find serves to frustrate, after working with BIOSes for 30 years). I really want coreboot - partly because I want to neuter ME - but as a first attempt I decided to leave it in in hopes of not messing things up too badly off the bat, and then to build a new image if that succeeded. So much for that, I guess. I still do want coreboot, and to get rid of ME, but more than that I obviously want a functioning Thinkpad again.
I acknowledge I am in over my head here - I'm a sysadmin, not a hardware hacker or a dev, and I mostly work with software. That said, I'm a decades long Thinkpad addict, trying to update from a series of X220s, which although still highly functional, are starting to get a little bit long in the tooth in terms of CPU. Like most, I suppose, I bought the X210 to get a modern CPU with a non-crappy keyboard and trackpad.
I have backups of everything that went into this process, including original images/ROMs, complete build and flash logs, everything that could seem even remotely useful or valuable. I will post the .config for my build (attachments appear to be disabled), built against the latest coreboot tree as of yesterday (coreboot docs also surprisingly suggested this for end users, rather than a release version). I first did make oldconfig to go through any missing options, opting almost entirely for default choices, and then make menuconfig to verify the rest. From memory, main changes are payload (SeaBIOS + Memtest86+), S/N, resolution (I believe my panel is not 3K though it's hard to check right now) and libgfxinit instead of GOP. I tried to follow the build instructions from harrykipper's repo to the letter: https://github.com/harrykipper/x210
So as you've probably guessed by now, if you read this far, my questions are:
1) How can I unbrick it
2) What did I do wrong
3) How can I get coreboot working the way I'd hoped
As for 1), I realize I may have already exhausted the ability to recover this without the use of additional hardware. If so, I would very much appreciate some guidance, as this is entirely new territory for me. What should I get, how should I use it etc. I've never touched anything from DediProg or some such, but with guidance I should be able to operate it - I've rooted or jailbroken most of my otherwise locked down devices, just always purely in software. Again, I am not really a hardware guy.
I'll be more than happy to provide any details or files that may be helpful. Many thanks in advance for any help!
I then proceeded to build a new coreboot image, seeing this as the safer choice since I believe my model is earlier than 3rd gen (it was bought third hand, so I'm not entirely sure of the gen, nor how to check), and because I wanted SeaBIOS so as to not limit myself to UEFI (which I mainly find serves to frustrate, after working with BIOSes for 30 years). I really want coreboot - partly because I want to neuter ME - but as a first attempt I decided to leave it in in hopes of not messing things up too badly off the bat, and then to build a new image if that succeeded. So much for that, I guess. I still do want coreboot, and to get rid of ME, but more than that I obviously want a functioning Thinkpad again.
I acknowledge I am in over my head here - I'm a sysadmin, not a hardware hacker or a dev, and I mostly work with software. That said, I'm a decades long Thinkpad addict, trying to update from a series of X220s, which although still highly functional, are starting to get a little bit long in the tooth in terms of CPU. Like most, I suppose, I bought the X210 to get a modern CPU with a non-crappy keyboard and trackpad.
I have backups of everything that went into this process, including original images/ROMs, complete build and flash logs, everything that could seem even remotely useful or valuable. I will post the .config for my build (attachments appear to be disabled), built against the latest coreboot tree as of yesterday (coreboot docs also surprisingly suggested this for end users, rather than a release version). I first did make oldconfig to go through any missing options, opting almost entirely for default choices, and then make menuconfig to verify the rest. From memory, main changes are payload (SeaBIOS + Memtest86+), S/N, resolution (I believe my panel is not 3K though it's hard to check right now) and libgfxinit instead of GOP. I tried to follow the build instructions from harrykipper's repo to the letter: https://github.com/harrykipper/x210
So as you've probably guessed by now, if you read this far, my questions are:
1) How can I unbrick it
2) What did I do wrong
3) How can I get coreboot working the way I'd hoped
As for 1), I realize I may have already exhausted the ability to recover this without the use of additional hardware. If so, I would very much appreciate some guidance, as this is entirely new territory for me. What should I get, how should I use it etc. I've never touched anything from DediProg or some such, but with guidance I should be able to operate it - I've rooted or jailbroken most of my otherwise locked down devices, just always purely in software. Again, I am not really a hardware guy.
I'll be more than happy to provide any details or files that may be helpful. Many thanks in advance for any help!
Re: X210 bricked after coreboot flash
.config is here: https://pastebin.com/8ZiiS80c
Re: X210 bricked after coreboot flash
Hi yitzhaq,
if you only have one RAM slot filled try switching your stick to the other slot. Alternatively try booting with an external screen attached. If nothing works I'm afraid you'll have to hardware flash the stock bios or a precompiled coreboot image. You'll need a SOIC8 clip and a hardware programmer.
The chip location is shown here https://doc.coreboot.org/mainboard/51nb/x210.html
I hope the cause of your problem wasn't my outdated .config... I just uploaded a new one.
Good luck
if you only have one RAM slot filled try switching your stick to the other slot. Alternatively try booting with an external screen attached. If nothing works I'm afraid you'll have to hardware flash the stock bios or a precompiled coreboot image. You'll need a SOIC8 clip and a hardware programmer.
The chip location is shown here https://doc.coreboot.org/mainboard/51nb/x210.html
I hope the cause of your problem wasn't my outdated .config... I just uploaded a new one.
Good luck
Re: X210 bricked after coreboot flash
Hey,
I did see your earlier post about the RAM slot weirdness. I have both slots filled, but I'll try to experiment a bit with that as well.
If none of this should work, then I guess as you say I need a hardware programmer, though looking into this today, I was quite surprised at how pricey these devices seem to be! Is the Dediprog SF600 like the Ferrari of hardware programmers, or is there a budget alternative which may be usable for a grunt who's likely to not use this again anytime soon?
As for the SOIC8 clip, would I need just the clip, like https://www.ebay.com/itm/123927180832 , or what appears to be a full kit of sorts, like https://www.ebay.com/itm//202178755085 ?
Thanks for the updated config - I'll be sure to base any further attempts on this. Did you see any issues with my config as compared to that one? Any issues with using SeaBIOS and libgfxinit as opposed to Tianocore and GOP?
And has anyone (successfully) tried to neuter ME on the X210, or do people generally tend to leave it in, and if so why?
Many thanks once more!
Many thanks for your suggestions. I will definitely play around with an external monitor to see if I can spot any signs of life. There shouldn't be any difference between VGA and mini-DP, I hope?harryK wrote: ↑Mon Jan 04, 2021 7:18 amif you only have one RAM slot filled try switching your stick to the other slot. Alternatively try booting with an external screen attached. If nothing works I'm afraid you'll have to hardware flash the stock bios or a precompiled coreboot image. You'll need a SOIC8 clip and a hardware programmer.
The chip location is shown here https://doc.coreboot.org/mainboard/51nb/x210.html
I hope the cause of your problem wasn't my outdated .config... I just uploaded a new one.
Good luck
I did see your earlier post about the RAM slot weirdness. I have both slots filled, but I'll try to experiment a bit with that as well.
If none of this should work, then I guess as you say I need a hardware programmer, though looking into this today, I was quite surprised at how pricey these devices seem to be! Is the Dediprog SF600 like the Ferrari of hardware programmers, or is there a budget alternative which may be usable for a grunt who's likely to not use this again anytime soon?
As for the SOIC8 clip, would I need just the clip, like https://www.ebay.com/itm/123927180832 , or what appears to be a full kit of sorts, like https://www.ebay.com/itm//202178755085 ?
Thanks for the updated config - I'll be sure to base any further attempts on this. Did you see any issues with my config as compared to that one? Any issues with using SeaBIOS and libgfxinit as opposed to Tianocore and GOP?
And has anyone (successfully) tried to neuter ME on the X210, or do people generally tend to leave it in, and if so why?
Many thanks once more!
Re: X210 bricked after coreboot flash
Hi there, haven't yet tried hardware flashing myself, but you basically need a reliable way to connect to those pins on the memory chip. https://www.ebay.com/itm/123927180832 will also need so called "dupont" female-female cables, just look them up on ebay. Or you may find a clip that comes with them.yitzhaq wrote: ↑Mon Jan 04, 2021 12:17 pmAs for the SOIC8 clip, would I need just the clip, like https://www.ebay.com/itm/123927180832 , or what appears to be a full kit of sorts, like https://www.ebay.com/itm//202178755085 ?
What "host" machine are you going to be programming BIOS from? Is it another PC or laptop running Linux? Or possibly Raspberi PI? %)
My understanding was that with a Raspberry PI you just need to plug those "dupont" cables correctly and you don't need anything else except for the clip/the cables/Raspberry PI.
If you're going to use another laptop/desktop running Linux you will also need a USB programmer in addition to cables and clip. I understand people don't normally use something as fancy as Dediprog SF600. I was under impression they normally use USB programmers of CH340 family. I think I've seen people warning strenuously to use the 3.3V variety not 5V. Some like this one even have a toggle between 3.3V and 5V. I guess checking it with a multi-meter is still a good idea.
https://www.ebay.com/itm/202178755085 seems to be coming with some sort of PCB attached to the clip and my experience isn't sufficient to say what it is. My gut feeling however is that you probably don't need that but some variety of CH340 instead.
I'll let people with more experience to do further talking
P.S. entirely unrelated to OP's question, but I'm waiting for an FTDI USB device for a few ££. They seem to be providing a COM port (UART) with the driver that loads by default in Linux. Can you flash BIOS with that?.. Or with FTDI USB dongle + D2XX drivers? I'm just being curious..
X220, 2 *T520
-
- Admin Emeritus
- Posts: 23825
- Joined: Mon Sep 18, 2006 5:17 am
- Location: Loch Garman, Éire
Re: X210 bricked after coreboot flash
Dupont female-to-female wires e.g. hereatagunov wrote: ↑Mon Jan 04, 2021 2:08 pmhttps://www.ebay.com/itm/202178755085 seems to be coming with some sort of PCB attached to the clip and my experience isn't sufficient to say what it is. My gut feeling however is that you probably don't need that but some variety of CH340 instead.
That PCB is nothing more than a (narrow-to-wide) male-to-male adapter-board between (narrow) female cable-connector and (wide) female IC-socket on the CH341A/TL866A/etc.
For a more complete kit, see e.g. this.
I got (and use) all of that stuff to read/program various chips.
I also highly recommend to get a genuine Pomona 5250 8-pin SOIC clip, rather than use the wishy-washy Chinese knock-off.
Lovely day for a Guinness! (The Real Black Stuff)
Lenovo: X240, X250, T440p, T480, M900 Tiny.
PS: the old Boardroom website is still available on the Wayback Machine.
Lenovo: X240, X250, T440p, T480, M900 Tiny.
PS: the old Boardroom website is still available on the Wayback Machine.
-
- Junior Member
- Posts: 404
- Joined: Sun Nov 18, 2012 5:42 pm
- Location: San Francisco Bay Area
Re: X210 bricked after coreboot flash
Hi,
I've done a lot of experimentation with coreboot on the X210. I use a Raspberry Pi with flashrom & the blue Pomona clip. It's pretty easy to set up & there are a few tutorials out there.
However, if you're going to be playing around with ROMs that might brick the board more often, I would (personally) recommend you replace the chip entirely with a socket like this one. It fits on the board just fine, I have one.
Then grab a few blank chips from Digikey (or equivalent where you are) and brick to your heart's content
FWIW, when I flash a new ROM it doesn't always boot up the first time. Try unplugging everything (remove battery), wait a few minutes and then try again. Also, the first boot often takes a minute or two before you get anything on screen...
R
I've done a lot of experimentation with coreboot on the X210. I use a Raspberry Pi with flashrom & the blue Pomona clip. It's pretty easy to set up & there are a few tutorials out there.
However, if you're going to be playing around with ROMs that might brick the board more often, I would (personally) recommend you replace the chip entirely with a socket like this one. It fits on the board just fine, I have one.
Then grab a few blank chips from Digikey (or equivalent where you are) and brick to your heart's content
FWIW, when I flash a new ROM it doesn't always boot up the first time. Try unplugging everything (remove battery), wait a few minutes and then try again. Also, the first boot often takes a minute or two before you get anything on screen...
R
Re: X210 bricked after coreboot flash
Thanks for all your suggestions and insights. I think I have a somewhat better understanding of the process now. I've tried connecting external monitor (VGA), switching memory units around in every possible combination, power cycling any number of times, and left it on over night to see if something would eventually happen, all to no avail. So I'm back to hardware flashing as seemingly the only way to revive my X210.
So what I'm gonna try is:
Plan A: Raspberry Pi with Raspbian
Plan B: CH341A with Linux
I've picked up a kit which looks identical to https://www.ebay.com/itm/293921478261 from a local vendor, so I don't have to wait the two or so months it takes for stuff to arrive from China nowadays. The software side of things seems reasonably straightforward, but actually connecting the GPIO on the Raspberry Pi to the clip (and in turn the BIOS chip) is making my head spin!
The cable attached to the clip has a plug at the end (female 8-pin), which I assumed would line up with the relevant pins somewhere on the RPi GPIO. If that is the case, I am struggling to figure out how or where. I've found various maps of the RPi GPIO, both for the 26-pin and 40-pin versions (I have various generations of RPis avaiable), but it seems to me as though the relevant pins on the GPIO are somewhat arbitrarily located relative to the plug on the cable, and thus I would need to break it out with individual Dupont cables (using the adapter in the kit) to get every pin connected correctly. Can someone confirm whether this is true, or if I'm completely misunderstanding this, what I should be doing? Cause Dupont cables were the one thing missing from that kit..
Also, assuming the pins on the GPIO need to match up with the pins on the BIOS chip (through various clips, cables and possibly adapters), I would imagine there is a left and right, and it matters which way I connect the clip, relative to the pins on the GPIO. How can I know which way is right and which is wrong?
Finally, seeing as I've never done any of this before; how concerned should I be? What's the worst that can happen if I don't get things right on the first go, and get one or more pins connected incorrectly? Can I fry the entire BIOS chip or something?
Again, greatly appreciate all your help and guidance regarding this! While the web seems chock full of various guides and instructions, most of them seem to be targeted at people who have prior tinkering experience with Arduions or whatnot, rather than plebs such as myself, foolishly wading out into the deep end of the pool before having actually learned to swim. I hope if I can get this connecting business sorted, I should have everything I need to complete this.
So what I'm gonna try is:
Plan A: Raspberry Pi with Raspbian
Plan B: CH341A with Linux
I've picked up a kit which looks identical to https://www.ebay.com/itm/293921478261 from a local vendor, so I don't have to wait the two or so months it takes for stuff to arrive from China nowadays. The software side of things seems reasonably straightforward, but actually connecting the GPIO on the Raspberry Pi to the clip (and in turn the BIOS chip) is making my head spin!
The cable attached to the clip has a plug at the end (female 8-pin), which I assumed would line up with the relevant pins somewhere on the RPi GPIO. If that is the case, I am struggling to figure out how or where. I've found various maps of the RPi GPIO, both for the 26-pin and 40-pin versions (I have various generations of RPis avaiable), but it seems to me as though the relevant pins on the GPIO are somewhat arbitrarily located relative to the plug on the cable, and thus I would need to break it out with individual Dupont cables (using the adapter in the kit) to get every pin connected correctly. Can someone confirm whether this is true, or if I'm completely misunderstanding this, what I should be doing? Cause Dupont cables were the one thing missing from that kit..
Also, assuming the pins on the GPIO need to match up with the pins on the BIOS chip (through various clips, cables and possibly adapters), I would imagine there is a left and right, and it matters which way I connect the clip, relative to the pins on the GPIO. How can I know which way is right and which is wrong?
Finally, seeing as I've never done any of this before; how concerned should I be? What's the worst that can happen if I don't get things right on the first go, and get one or more pins connected incorrectly? Can I fry the entire BIOS chip or something?
Again, greatly appreciate all your help and guidance regarding this! While the web seems chock full of various guides and instructions, most of them seem to be targeted at people who have prior tinkering experience with Arduions or whatnot, rather than plebs such as myself, foolishly wading out into the deep end of the pool before having actually learned to swim. I hope if I can get this connecting business sorted, I should have everything I need to complete this.
Re: X210 bricked after coreboot flash
Hi there! Please take anything I say with a pinch of salt, but..yitzhaq wrote: ↑Sun Jan 10, 2021 1:34 pmSo what I'm gonna try is:
Plan A: Raspberry Pi with Raspbian
Plan B: CH341A with Linux
I've picked up a kit which looks identical to https://www.ebay.com/itm/293921478261 from a local vendor
Plan A/Raspberry Pi:
I think what you need now to execute Plan A is a bunch of male-female "dupont" wires. Male part will go into the connector that is attached to your clip. Female will go onto pins in Raspberry PI. Then you will have full control over which pin on Raspberry you connect to which pin on the BIOS chip - and which pins you leave unconnected. All parts of the kit except for the clip itself will remain unused.
Plan B/CH341 with Linux:
Alternatively to this I suppose you could go straight to Plan B. What you have in your hands now is a CH341 programmer and a lot of wires/connectors. There should be some sensible way to connect this all together and to the BIOS chip. Unfortunately I don't know this kit and don't know how exactly to plug things together. Me myself - I would have picked up a simpler kit where the CH341 dongle only has a few pins sticking out of it (like this I guess) and a clip that has naked pins sticking out of it - no wire attached - and then I would have used female-female dupont wires - that way I'd again have full control over which pin connects where. Another super-important thing is - before even attempting to connect this CH341 in any way to BIOS chip please make sure it runs in 3.3V mode not in 5V mode. I'd imagine at least one combination of pins that you're going to connect to the BIOS chip will be ground-power and a multimeter should tell you what the voltage is. Apart from power pin there are TX and RX pins.. well do as much checking as you reasonably can
No idea if you can really render the chip unusable but I'd stay away from 5V as I said before. Also as Flyingfishfinger has pointed out this is a pretty common and cheap chip and the job shouldn't be super-very-complex to replace it. I guess - if you first purchase a replacement chip on your own - you should be able to have it replaced in a corner shop that repairs mobile phones. If you get to the stage when you want to do it you can as well follow Flyingfishginger's advice completely: purchase a socket for these chips and a few chips to work as a replacement. Then you ask the mobile phones guy to solder on the socket onto the motherboard and have freedom to swap chips at your leisure. But then I hope you won't need any of this done.
X220, 2 *T520
Re: X210 bricked after coreboot flash
If you're using a Raspberry pi follow this guide to get the clip pinout right https://libreboot.org/docs/install/rpi_setup.htmlyitzhaq wrote: ↑Sun Jan 10, 2021 1:34 pmAlso, assuming the pins on the GPIO need to match up with the pins on the BIOS chip (through various clips, cables and possibly adapters), I would imagine there is a left and right, and it matters which way I connect the clip, relative to the pins on the GPIO. How can I know which way is right and which is wrong?
That is not entirely unheard of, but very rare...Can I fry the entire BIOS chip or something?
Before you write to the chip with flashrom a good rule is to read the current content three or four times and make sure that the images read actually contain something, and then use diff to check that they are exactly the same. This will ensure that the thing is working properly.
Re: X210 bricked after coreboot flash
Yes, the ME can be neutered with me_cleaner during the coreboot building process, people routinely do that. Keep in mind that you don't strictly need coreboot if your only concern is to eliminate the ME. me_cleaner can be used standalone and it works with the stock BIOS.
Personally I left it in, because without the full ME certain power management functions do not work at all. In particular, the processor never reaches the deepest package c-states
Re: X210 bricked after coreboot flash
After no update for quite some time, I've finally gotten around to picking this back up, as the i7-2640M in my trusty X220 is really starting to wear on my patience (and battery life) these days. New attempts however mean new struggles, so I created a new topic in case anyone is able to help with the latest (now physical) problem on my X210: https://forum.thinkpads.com/viewtopic.php?f=80&t=135786
TIA
TIA
-
- Similar Topics
- Replies
- Views
- Last post
-
-
Question about Coreboot or Libreboot
by James1138 » Sun Jan 21, 2024 11:47 am » in ThinkPad T400/T410/T420 and T500/T510/T520 Series - 1 Replies
- 720 Views
-
Last post by axur-delmeria
Sun Jan 21, 2024 1:09 pm
-
-
-
Possibly missing SMD resistor on X210 board
by yitzhaq » Wed Nov 08, 2023 6:28 pm » in 51nb and other modded Thinkpads - 16 Replies
- 6412 Views
-
Last post by 755cdxd
Wed Jan 10, 2024 6:39 am
-
-
-
ThinkPad T460 refuses to stay on after power button is pressed
by Fropple! » Fri Dec 08, 2023 1:31 am » in ThinkPad T430-T490 / T530-T590 Series - 0 Replies
- 7470 Views
-
Last post by Fropple!
Fri Dec 08, 2023 1:31 am
-
-
-
W530 Bluetooth sound broken after switching to windows 10
by Gregui To » Sat Dec 09, 2023 6:17 pm » in ThinkPad W530/W540/W541/W550 Series - 1 Replies
- 2240 Views
-
Last post by mikemex
Wed Feb 21, 2024 12:42 am
-
Who is online
Users browsing this forum: No registered users and 13 guests