{ "version": "https://jsonfeed.org/version/1", "title": "Tyler Cipriani: Coreboot on the ThinkPad X220 with a Raspberry Pi", "home_page_url": "https://tylercipriani.com/blog/2016/11/13/coreboot-on-the-thinkpad-x220-with-a-raspberry-pi/", "feed_url": "https://tylercipriani.com/blog/2016/11/13/coreboot-on-the-thinkpad-x220-with-a-raspberry-pi/comments.json", "items": [ { "id": "https://tylercipriani.com/blog/2016/11/13/coreboot-on-the-thinkpad-x220-with-a-raspberry-pi/comment_1_8ed12951f3c4d1ed0d81678616975cc1/", "title": "2 memory modules unsupported?", "url": "https://tylercipriani.com/blog/2016/11/13/coreboot-on-the-thinkpad-x220-with-a-raspberry-pi/#comment-aa915f3fecb3f5d8ec6813a2b7cb72cb", "author": { "name": "clrwk85" }, "date_published": "2017-07-05T12:05:32Z", "date_modified": "2017-07-05T12:05:33Z", "content_html": "

Hi, I managed to get it running. But have a memory issue - linux sees only 8gb of ram (half installed) and it’s speed is reduced, these are 1866MHz modules that worked well on hacked 1.41 bios’ with coreboot Linux reports only 800MHz

\n

Additionally, would be awesome if someone released 1.41 with protection removed. I would like to flash between original bios and coreboot without need to disassemble my laptop. The reason is that original BIOS supports UEFI and coreboot doesn’t. With coreboot I can do reverse flash easly but other way it’s not so easy. I possibly could tweak this myself but fully functional IDA is out of my reach.

\n

Last thing, your config lacks console output to OS, apart from few other things that I had changed before compiling. Good job anyway and thumbs up!

\n\n" }, { "id": "https://tylercipriani.com/blog/2016/11/13/coreboot-on-the-thinkpad-x220-with-a-raspberry-pi/comment_2_c6321cd2a46ba1ff8c6bfd631b57d520/", "title": "SPI flashing using an Olimex Olinuxino Lime2 board", "url": "https://tylercipriani.com/blog/2016/11/13/coreboot-on-the-thinkpad-x220-with-a-raspberry-pi/#comment-d71c184182bd4c5fbdf828ade3d7740d", "author": { "name": "elvirolo" }, "date_published": "2018-01-09T10:11:39Z", "date_modified": "2018-01-09T10:11:40Z", "content_html": "

Hi!

\n

Thanks a lot for your guide, which has helped me tremendously. I’d like to add a few instructions here for people wanting to flash their BIOS chip with an Olimex Olinuxino Lime2 board. It took me several days to figure out how to do it, so I thought it might be helpful to include a brief summary of the required steps here.

\n
    \n
  1. Flash the latest version of Armbian (Debian) Stretch for the Lime2 board onto an SD card. It should also work with Olimex’s official image, but I couldn’t get it to work. If you do use the Olimex image, which includes a 3.xx kernel, please refer to this page. Since it didn’t work with me, I won’t be telling you how to do it here, but feel free to send me an email if you think I can help.

  2. \n
  3. Before booting the board, you should wire it up to the BIOS chip. Because the pin spacing (pitch) on the Lime 2 is smaller (0.05“) than that of the Raspberry Pi (0.1”), the easiest way to do it is to get this adapter as well as this ribbon cable from Olimex.

  4. \n
\n

Plug one end of the ribbon cable to the GPIO2 port on the board, and the other end on the adapter. Make sure to plug it in the right way (use the pin numbers that are printed on the board as a helper). Connect the jumper wires to the Pomona clip as described in Tyler’s guide. The pins you should use on the adapter are the following: GND: pin 2, VCC (3.3V): pin 3, CS(0): pin 29, CLK: pin 31, MOSI: pin 33, MISO: pin 35.

\n
    \n
  1. Boot your lime2 board, find its IP, and SSH into in (ssh root@ip). The default password is 1234. You will be prompted to change it when you log in.
  2. \n
\n

Add the following lines in /boot/armbianEnv.txt:

\n

overlays=spi0 spi-spidev

\n

param_spidev_spi_bus=0

\n

Reboot. /dev/spidev0.0 should have appeared!

\n

Note: I couldn’t get my board to power the chip, for some reason. I thus removed the VCC cable, and instead enabled Wake On Lan in the BIOS, switched the laptop off, removed the battery, plugged in the AC adapter and an Ethernet cable. The chip then gets powered and the flashing process works. I read that one cannot use me_cleaner if the chip is powered that way. I haven’t tried yet, so I can’t confirm that. I’d be grateful if someone who knows more about this would let me know.

\n

PS: I found a script that automates much of the process. I haven’t tried it, but it looks very helpful!

\n\n" }, { "id": "https://tylercipriani.com/blog/2016/11/13/coreboot-on-the-thinkpad-x220-with-a-raspberry-pi/comment_3_263e2e4a81912ed70ad9cea774157762/", "title": "me_cleaner ", "url": "https://tylercipriani.com/blog/2016/11/13/coreboot-on-the-thinkpad-x220-with-a-raspberry-pi/#comment-7394bd78014e0ea8a983d64e6d6108b6", "author": { "name": "elvirolo" }, "date_published": "2018-01-09T14:18:38Z", "date_modified": "2018-01-09T14:18:39Z", "content_html": "

I was able to flash the new ROM internally (with a neutered ME - see this guide) by running the following command on the laptop:

\n

flashrom -p internal:laptop=force_I_want_a_brick -c MX25L6445E -w coreboot_mecleaned.rom

\n

Of course, you need to recompile coreboot first. But it does work \":)\"

\n\n" }, { "id": "https://tylercipriani.com/blog/2016/11/13/coreboot-on-the-thinkpad-x220-with-a-raspberry-pi/comment_4_9d55ee553e29c3d286502b426ea3efcd/", "title": "thanks elvirolo", "url": "https://tylercipriani.com/blog/2016/11/13/coreboot-on-the-thinkpad-x220-with-a-raspberry-pi/#comment-11e06e76f4da947b70c251933ca05d3a", "author": { "name": "thcipriani" }, "date_published": "2018-01-12T15:46:40Z", "date_modified": "2018-01-12T15:46:40Z", "content_html": "

elvirolo – thank you for all the resources! Very cool!

\n

I definitely used me_cleaner on my machine as well following a guide on the hardened gnu/linux site.

\n

Comment by elvirolo — Tue 2018-01-09 02:18:38 PM

\n
\n

flashrom -p internal:laptop=force_I_want_a_brick -c MX25L6445E -w coreboot_mecleaned.rom

\n
\n

that command \":)\"

\n\n" }, { "id": "https://tylercipriani.com/blog/2016/11/13/coreboot-on-the-thinkpad-x220-with-a-raspberry-pi/comment_5_d9737cf6691117bfdc3f7b3b0bd3cefe/", "title": "Not always winbound chip", "url": "https://tylercipriani.com/blog/2016/11/13/coreboot-on-the-thinkpad-x220-with-a-raspberry-pi/#comment-9a4fb5daacc3a3b59363710b56f98339", "author": { "name": "techge" }, "date_published": "2018-12-25T19:22:55Z", "date_modified": "2018-12-30T19:29:57Z", "content_html": "

Hey,

\n

I used this instructions before and they really helped me in the past. Now I bought another x220 and wanted to do the same and was quite confused, that I couldn’t find the winbound chip anymore. I did the trick with spispeed=512 and expected to get it. Instead I needed to use the Macronix Chip with the flag ‘-c MX25L6405’ as flashrom suggest, but needed a long time to get that.

\n

So someone in the future: don’t get confused, not every x220 has a winbound chip, just proceed \";-)\"

\n

regards

\n\n" } ] }