negative zero

Librebooting a T400: Updates

2021 November 29

[libreboot] [tech]


This is an update to Librebooting a T400.


I've been using my T400 laptop for almost 2 months now. I updated the BIOS a couple weeks ago, and I wanted to write about it.


Flashing Libreboot

I decided to flash a newer version of Libreboot. I went with 20210522, the latest testing release at the time. (20211122, also a testing release, has since been released, but I probably won't upgrade again until there's a new stable release.)

This time, I compiled Libreboot from source. The actual installation process was much simpler; once you do the hard work of externally flashing Coreboot/Libreboot, you can internally flash new versions fairly easily. I just had to set the iomem=relaxed kernel parameter and use the flashrom utility.

In my previous post, I talked about how the optical disk drive prevented Libreboot from booting from the hard drive. The new version of Libreboot fixed this problem.

I originally flashed a Libreboot image which used the GRUB payload by default, but I ended up re-flashing a SeaBIOS version. I'll talk about why in the next section.


Installing an OS

I was already running Debian, and it worked fine, but I took this as an opportunity to try something new.

I tried several times, without success, to get Libreboot GRUB's full-disk (with /boot) encryption to work. In the end, I gave up and just tried to go with a normal encrypted-/root-unencrypted-/boot setup. I still had some issues (which were likely my fault) where Libreboot's GRUB payload would try to decrypt my /root partition rather than loading GRUB on the unencrypted /boot partition. I ended up abandoning GRUB for SeaBIOS. It doesn't support encrypted /boot, but if I'm not planning to encrypt my /boot partition anyway, that's fine.

I tried again to install Fedora. It booted on the newer version of Libreboot, but for some reason, the display would only take up part of the physical screen. (Apparently it's a 1440x900 screen, but the display was stuck at 1280x720.)

I ended up installing Arch Linux instead, which is what I'm currently running. I might write about that in a separate post sometime.


Quirks, Revisited

Backlight issues

Same as before.


Suspend

This was apparently a userspace issue, not a BIOS issue.

I did end up getting suspend working properly (closing the lid locks the screen and suspends) on my laptop, but it took a lot of work. Here's my setup:

  1. I'm using Xfce with the light-locker screen locker.
  2. xfconf-query --create -c xfce4-session -p /general/LockCommand -t string -s "light-locker-command --lock"
  3. xfconf-query -c xfce4-session -p /shutdown/LockScreen -s false
  4. xfconf-query -c xfce4-power-manager -p /xfce4-power-manager/lock-screen-suspend-hibernate -s true

This was the only configuration I found with Xfce/light-locker which worked how I want.

When both (3) and (4) were set to true, suspending caused the screen to lock... but when I entered the password, I would be greeted by a second lock screen. For some reason, I could not place the cursor in the text box to type my password into this second lock screen, so I couldn't log back in.


Optical disk drive

This issue was fixed by the Libreboot update.


RAM

I tried to upgrade the laptop's RAM, but it wouldn't boot with the new RAM. I guess I'm stuck with 4GB. Fortunately, that should be enough for me. It just means I won't be trying to do much virtualization.