Tested with ThinkPad X1 Carbon Gen 5 and OpenBSD 6.6-beta

WARNING
Flashing the BIOS incorrectly may lead to an unusable system. Follow these instructions at your own risk.

Flash ThinkPad BIOS and boot logo

boot logo

Find and download BIOS Update for ThinkPad X1 Carbon (for example, n1mur23w works for types 20HQ, 20HR, 20K3, 20K4, version 1.40, released 16 Jul 2019, 23MB).

Make a bootable USB drive with geteltorito and dd.

Prepare an image of a boot logo based on requirements from FLASH/README.TXT (size: up to 60KB, format: GIF) and copy it to the USB drive.

Boot from the USB drive and follow the instructions.

# cd /tmp
# ftp -V https://download.lenovo.com/pccbbs/mobiles/n1mur23w.iso
n1mur23w.iso 100% |**************************| 23916 KB    00:09
# ftp -V https://rgz.ee/thinkpad/bios.SHA256
bios.SHA256  100% |**************************|    89       00:00
# sha256 -C bios.SHA256 n1mur23w.iso
(SHA256) n1mur23w.iso: OK
# pkg_add geteltorito
quirks-3.172 signed on 2019-08-20T12:39:11Z
geteltorito-0.6: ok
# geteltorito -o n1mur23w.img n1mur23w.iso
Booting catalog starts at sector: 20
Manufacturer of CD: NERO BURNING ROM
Image architecture: x86
Boot media type is: harddisk
El Torito image starts at sector 27 and
has 47104 sector(s) of 512 Bytes

Image has been written to file "n1mur23w.img".
# dd if=n1mur23w.img of=/dev/rsd3c bs=1m
23+0 records in
23+0 records out
24117248 bytes transferred in 2.138 secs (11276684 bytes/sec)
# mkdir /mnt/sd3i
# mount /dev/sd3i /mnt/sd3i
# ftp -V https://rgz.ee/thinkpad/logo.gif
logo.gif     100% |**************************|  4555       00:00
# cp logo.gif /mnt/sd3i/FLASH/LOGO.GIF
# umount /dev/sd3i
# reboot