Libreboot/Install/ThinkPad X60 and T60

From Wikibooks, open books for an open world
Jump to navigation Jump to search

Back up Original BIOS[edit]

If you choose to make a backup, click [Expand] on the right and follow the directions.

  1. From the libreboot_bin/ folder, enter the flashrom/ folder.
    cd flashrom 
  2. Run both of these commands to backup the BIOS to factory.bin (don't panic, nothing is being installed):
    sudo ./flashrom_lenovobios_sst -p internal -r factory.bin
sudo ./flashrom_lenovobios_macronix -p internal -r factory.bin 
  1. If a factory.bin file was created in the flashrom/ folder, the Lenovo BIOS has been backed up successfully. If not, try the commands again. Copy this dump to a safe place.
  2. Return to the libreboot_bin/ folder.
    cd .. 

Libreboot First Flash[edit]

If you are flashing Libreboot for the first time, on an unmodified ThinkPad running Lenovo's BIOS, you will need to follow this special process.

  1. Run the first flash script for Lenovo BIOSes:
    sudo ./lenovobios_firstflash bin/YOURBOARD/YOURROM
  2. Wait for the process to finish. Expect to see "critical errors" during flashing, but don't panic; proceed to the next step to check if the flash ran correctly.
  3. The line below is displayed if bucts 1 was enabled successfully.
    Updated BUC.TS=1 - 64kb address ranges at 0xFFFE0000 and 0xFFFF0000 are swapped.
  1. The following "errors" are displayed if flashrom installed Libreboot correctly. The output must be very similar (later versions of flashrom may have minor differences).
    Reading old flash chip contents... done.
    Erasing and writing flash chip... spi_block_erase_20 failed during command execution at address 0x0
    Reading current flash chip contents... done. spi_block_erase_52 failed during command execution at address 0x0
    Reading current flash chip contents... done. Transaction error!
    spi_block_erase_d8 failed during command execution at address 0x1f0000
    Reading current flash chip contents... done. spi_chip_erase_60 failed during command execution
    Reading current flash chip contents... done. spi_chip_erase_c7 failed during command execution
    FAILED!
    Uh oh. Erase/write failed. Checking if anything changed.
    Your flash chip is in an unknown state.
  1. If the "errors" closely match the lines above, shut down the laptop (don't restart).
  2. Wait a few seconds, and then boot. Libreboot will start up.
  3. Use the Search for GRUB configuration on local storage option if the normal menu options don't work.
  4. After booting into Linux, proceed to Libreboot Second Flash.

Enable Trackpoint[edit]

On a few rare X60 variants, the Trackpoint mouse might not work out of the box. Not to worry though, just use nvramtool with the Libreboot package to enable it.

  1. Boot and log into Linux. (you may need to use text mode, find keyboard shortcuts)
  2. Open a Terminal (somehow... without the mouse. Hopefully you have Yakuake installed!)
  3. Navigate to the libreboot_bin/nvramtool folder.
  4. Build nvramtool with make .
    make 
  5. Use nvramtool to enable the TrackPoint mouse.
    sudo ./nvramtool -w trackpoint=Enable 
  6. Reboot the laptop (using sudo reboot), and the TrackPoint will be enabled. If it still doesn't work, try this command instead:
    sudo ./nvramtool -y ../../src/mainboard/lenovo/x60/cmos.layout -w trackpoint=Enable 

Libreboot Second Flash[edit]

Now that Libreboot has been installed and is up and running, it must be flashed a second time to fully remove the Lenovo BIOS.

  1. Open a Terminal and navigate to the libreboot_bin directory.
  2. Run the following command to flash Libreboot a second time.
    sudo ./lenovobios_secondflash /path/to/libreboot.rom
  1. The following line will be displayed if bucts was set back to 0 again. If it was not set to 0, run the script again.
    Updated BUC.TS=0 - 128kb address range 0xFFFE0000-0xFFFFFFFF is untranslated 
  2. The following should also be displayed, without any errors:
    Verifying flash... VERIFIED. 
  3. Shut down again, wait a few seconds, and then boot. Libreboot has been successfully installed.

Replace the WiFi Card[edit]

If you are planning on using Trisquel or some other FSF-approved GNU/Linux distro, you must replace the Intel mPCI wifi card with an Atheros Wireless-N mPCI card ($10-15).

The Intel card requires proprietary blobs, makes the palmrest extremely hot, and only supports the slower Wireless-G anyway; so it's well worth the upgrade.

  1. Follow this guide for the X60/X60s or the HMM for the X60 tablet to remove the palmrest.
  2. Remove the Intel 3945bgn WiFi Card.
  3. Replace it with an Atheros Wireless-N MiniPCI card.

(needs more info and photos)

Updating Libreboot or Installing Custom ROMs[edit]

In the future, if you ever want to update Libreboot on the X60 (or restore the factory BIOS), follow this process.

  1. Download and extract the latest Libreboot binary release.
  2. Open a Terminal, and navigate to the libreboot_bin directory.
  3. Run the following command to flash your chosen rom:
    sudo ./flash /path/to/libreboot.rom
  1. The following should be displayed, without any errors:
    Verifying flash... VERIFIED. 
  2. Shut down again, wait a few seconds, and then boot. Libreboot has been successfully updated.