Link Search Menu Expand Document

Lenovo X230

X230 Hardware Maintenance Manual
X230 Tablet Hardware Maintenance Manual

Underside of the x230

First remove the battery or cable powering your device. The Thinkpad x230 has two SPI flash chips that hold the BIOS, ME, etc. and are located under the palm rest. To access these chips, first remove the indicated screws on the back of the laptop.

Keyboard tilted up

Removing these screws will allow you to remove the keyboard and palm rest.

Ribbon cable

The keyboard is connected to the motherboard by a ribbon cable which easily detaches from the motherboard. (The keyboard only needs to be removed so that the palm rest can be removed. After removing the palm rest, you can put the keyboard back.)

The palm rest is also connected to the motherboard, but there is a little latch holding its ribbon cable. After undoing that latch, the palm rest should be fairly easy to remove.

Pull up the black plastic on the bottom right of the palm rest to reveal the two SPI flash chips.

Flash chips

The top chip is 4MB and contains the BIOS and reset vector. The bottom chip is 8MB and has the Intel Management Engine (ME) firmware, plus the flash descriptor.

Based on the work done here, the chips should be one 4M and one 8M of the following:

|Vendor|Device| size| |–|–|–| |Eon | EN25QH32 | 4M| |Eon| EN25QH64 | 8M| |Macronix|MX25L3206E - MX25L3206E/MX25L3208E|4M| |Macronix|MX25L6405,MX25L6405D, MX25L6406E/MX25L6408E, MX25L6436E/MX25L6445E/MX25L6465E/MX25L6473E/MX25L6473F, MX25L6495F|8M| |Micron/Numonyx/ST|N25Q032..1E, N25Q032..3E|4M| |Micron/Numonyx/ST N25Q064..1E, N25Q064..3E|8M| |Winbond | W25Q32.V, W25Q32.W | 4M| |Winbond | W25Q64.V, W25Q32.W | 8M|

Try to read the name on the top SPI flash chip. Then, connect the clip and ch341a programmer to the top SPI flash chip. Use flashrom to check the chip that you are connected to:

sudo flashrom -p ch341a_spi

Find the chip and read from it twice (For me the SPI flash chip is YYY):

sudo flashrom -r ~/top.bin --programmer ch341a_spi -c YYY && \
    sudo flashrom -v ~/top.bin --programmer ch341a_spi -c YYY

If the files differ then try reconnecting your programmer to the SPI flash chip and make sure your flashrom software is up to date.

If they are the same then write x230-flash.rom to the SPI flash chip:

sudo flashrom -p ch341a_spi -c “YYY” -w ~/heads/build/x230-flash/x230-flash.rom

Try to read the name on the bottom SPI flash chip. Then, connect the clip and ch341a programmer to the bottom SPI flash chip. Use flashrom to check the chip that you are connected to:

sudo flashrom -p ch341a_spi

Find the chip and read from the chip twice (For me the SPI flash chip is ZZZ):

sudo flashrom -r ~/bottom.bin --programmer ch341a_spi -c ZZZ && \
    sudo flashrom -v ~/bottom.bin --programmer ch341a_spi -c ZZZ

The 8M bottom chip contains the ME firmware. It is strongly suggested that this is neutralized. Please see the section on Cleaning ME

If all goes well, you should see the keyboard LED flash, and within a second the Heads recovery splash screen will appear. It currently drops you immediately into the shell, to allow you to flash the full 12MB x230.bin Heads rom (or build/x230/coreboot.rom if you’ve built it locally). If it doesn’t work, well, sorry about that. Please let me know what the symptoms are or what happened during the flashing.