DEF CON Forum Site Header Art

Coreboot + Heads External Bios Flashing on ThinkPad T430

Collapse
X
 
  • Time
  • Show
Clear All
new posts
  • fluke
    Member
    • Dec 2022
    • 4

    #1

    Coreboot + Heads External Bios Flashing on ThinkPad T430

    Im currently working on a project to build a laptop that NitroKey currently sell, a refurbished preconfigured T430 using Qubes OS called the 'Nitropad'. It's Bios also runs on coreboot but with 'Heads' so that the NitroKey Pro 2 usb dongle can be used to verify the hardware of the laptop at boot. Annoyingly for me I can only seem find tutorials for installing coreboot and heads on the x220/230. The few tutorials that exist for the T430 are not easy to follow and dont include Heads in the coreboot build stage. Some people have gone about installing coreboot using 1vyrain or skuls however these methods do not fully unlock the IFD descriptor region of the first Bios chip allowing ME to be cleaned and neutered, which is required in order to run a maximised board using HOTP verification. Does anyone know where I can find a concise guide to installing coreboot+heads on a T430 from scratch please?

    Heads - Wiki then says that I must also first check the bios version and ensure that it is up to date but not higher than 2.64 . I have already completely dismantled the laptop down to the mother board in order to gain physical access to the bios chips. Is there a way of reading the bios version with something like FlashRom cmd tool? So far I have only seen examples of it being used to verify the chip type/ID prior to flashing a compiled coreboot build and also extracting and backing up the legacy bios image. It would be annoying to have to assemble it just to find out what version it is and to potentially upgrade/downgrade it should it be a version above 2.64 that whitelists non legacy bios updates. I have all of the software and hardware required to build and perform the external flashing of the two bios chips. I have ssh set up into my raspberry Pi 2 model B, jumper leads and an SIOC 8pin Test Clip. Flashrom is installed with all its depository/lib files.

    The final issue im having that is stalling me a bit is not being able to confidently identify all of the correct GPIO header pins and connecting them to the Test Clip ribbon pcb termination. One tutorial uses an older Pi with fewer GPIO pins so that is no good as mine has a 40pin header. Another tutorial uses the 40pin header but again the target bios chips are in an x series laptop also there is discrepancies or it seems to unclear with the GPIO pin layout when compared with official raspberry documentation. The test clip pcb connections are numbered 1-8 and are very easily identified, Pin 1 having a red wire on the ribbon and the rest grey. To add to that confusion my 40pin GPIO extender with pin labels doesn't match documentation. The Heads - wiki pages say the "ch341a is recommended for new users", Since it is designed for 8pin flashing only and the ribbon is just plugged in. Maybe I should just get one of those instead of trying to use my Pi however this will not make any difference to the coding process.

    My references:

    https://osresearch.net/Prerequisites (note that the flashing guide tab for the T430 is currently unwritten, only X230 models are published)
    https://doc.coreboot.org/index.html
    https://pi4j.com/1.2/pins/model-2b-rev1.html

    Many Thanks in advanced if any of you can help me!!
    Last edited by fluke; December 20, 2022, 06:42.
  • soladi
    Member
    • May 2023
    • 1

    #2
    Hello, have you managed to install coreboot + heads? I am struggling to find a adequate guide for the T430 too. Any help would be appreciated.

    Comment

    Working...