|
| 1 | +# Configuration for a X230 running Qubes 4.1 and other Linux Based OSes (through kexec) |
| 2 | +# |
| 3 | +# Based on https://review.coreboot.org/c/coreboot/+/28950 for FHD mod |
| 4 | +# This has been reported to work with the following panels: |
| 5 | +# LP125WF2-SPB4 (1920*1080, 12.5") |
| 6 | +# LQ125T1JW02 (2560*1440, 12.5") |
| 7 | +# LQ133M1JW21 (1920*1080, 13.3") |
| 8 | +# LTN133HL10-201 (1920*1080, 13.3") |
| 9 | +# B133HAN04.6 (1920*1080, 13.3") |
| 10 | +# B133QAN02.0 (2560*1600, 13.3") |
| 11 | +# |
| 12 | +# Other eDP panels not on this list should work as well. |
| 13 | +# Please verify if your panel needs a firmware mod. |
| 14 | +# |
| 15 | +# Includes |
| 16 | +# - Deactivated+neutered ME and expanded consequent IFD BIOS regions |
| 17 | +# - Forged 00:DE:AD:C0:FF:EE MAC address (if not extracting gbe.bin from backup with blobs/xx30/extract.sh) |
| 18 | +# - Note that this MAC address can be modified under build/coreboot-VER/util/bincfg/gbe-82579LM.set |
| 19 | +# |
| 20 | +# - Includes: Nitrokey/Librem Key HOTP Security dongle remote attestation (in addition to TOTP remote attestation through Qr Code) |
| 21 | +export CONFIG_COREBOOT=y |
| 22 | +export CONFIG_COREBOOT_VERSION=4.13 |
| 23 | +export CONFIG_LINUX_VERSION=4.14.62 |
| 24 | + |
| 25 | +CONFIG_COREBOOT_CONFIG=config/coreboot-x230-maximized-fhd_edp.config |
| 26 | +CONFIG_LINUX_CONFIG=config/linux-x230-maximized.config |
| 27 | + |
| 28 | +#Additional hardware support |
| 29 | +CONFIG_LINUX_USB=y |
| 30 | +CONFIG_LINUX_E1000E=y |
| 31 | + |
| 32 | +CONFIG_CRYPTSETUP2=y |
| 33 | +CONFIG_FLASHROM=y |
| 34 | +CONFIG_FLASHTOOLS=y |
| 35 | +CONFIG_GPG2=y |
| 36 | +CONFIG_KEXEC=y |
| 37 | +CONFIG_UTIL_LINUX=y |
| 38 | +CONFIG_LVM2=y |
| 39 | +CONFIG_MBEDTLS=y |
| 40 | +CONFIG_PCIUTILS=y |
| 41 | + |
| 42 | +#Remote attestation support |
| 43 | +#TPM based requirements |
| 44 | +export CONFIG_TPM=y |
| 45 | +CONFIG_POPT=y |
| 46 | +CONFIG_QRENCODE=y |
| 47 | +CONFIG_TPMTOTP=y |
| 48 | +#HOTP based remote attestation for supported USB Security dongle |
| 49 | +#With/Without TPM support |
| 50 | +CONFIG_HOTPKEY=y |
| 51 | + |
| 52 | +#Nitrokey Storage admin tool |
| 53 | +CONFIG_NKSTORECLI=n |
| 54 | + |
| 55 | +#GUI Support |
| 56 | +#Console based Whiptail support(Console based, no FB): |
| 57 | +#CONFIG_SLANG=y |
| 58 | +#CONFIG_NEWT=y |
| 59 | +#FBWhiptail based (Graphical): |
| 60 | +CONFIG_CAIRO=y |
| 61 | +CONFIG_FBWHIPTAIL=y |
| 62 | + |
| 63 | +#Additional tools: |
| 64 | +#SSH server (requires ethernet drivers, eg: CONFIG_LINUX_E1000E) |
| 65 | +CONFIG_DROPBEAR=y |
| 66 | + |
| 67 | +export CONFIG_BOOTSCRIPT=/bin/gui-init |
| 68 | +export CONFIG_BOOT_REQ_HASH=n |
| 69 | +export CONFIG_BOOT_REQ_ROLLBACK=n |
| 70 | +export CONFIG_BOOT_KERNEL_ADD="intel_iommu=on intel_iommu=igfx_off" |
| 71 | +export CONFIG_BOOT_KERNEL_REMOVE="quiet" |
| 72 | +export CONFIG_BOOT_DEV="/dev/sda1" |
| 73 | +export CONFIG_BOARD_NAME="Thinkpad X230-hotp-maximized-eDP" |
| 74 | +export CONFIG_FLASHROM_OPTIONS="--force --noverify-all -p internal" |
| 75 | + |
| 76 | +# xx30-*-maximized boards require of you initially call one of the |
| 77 | +# following to have gbe.bin ifd.bin and me.bin |
| 78 | +# - blobs/xx30/download_clean_me.sh |
| 79 | +# To download Lenovo original ME binary, neuter+deactivate ME, produce |
| 80 | +# reduced IFD ME region and expanded BIOS IFD region. |
| 81 | +# - blobs/xx30/extract.sh |
| 82 | +# To extract from backuped 8M (bottom SPI) ME binary, GBE and IFD blobs. |
| 83 | +# |
| 84 | +# This board has two SPI flash chips, an 8 MB that holds the IFD, |
| 85 | +# the ME image and part of the coreboot image, and a 4 MB one that |
| 86 | +# has the rest of the coreboot and the reset vector. |
| 87 | +# |
| 88 | +# As a consequence, this replaces the need of having to flash x230-flash |
| 89 | +# and expands available CBFS region (11.5Mb available CBFS space) |
| 90 | +# |
| 91 | +# When flashing via an external programmer it is easiest to have |
| 92 | +# two separate files for these pieces. |
| 93 | +all: $(build)/$(BOARD)/$(CB_OUTPUT_FILE) |
| 94 | + @sha256sum $@ | tee -a "$(HASHES)" |
| 95 | + |
| 96 | +all: $(build)/$(BOARD)/heads-$(BOARD)-$(HEADS_GIT_VERSION)-bottom.rom |
| 97 | +$(build)/$(BOARD)/heads-$(BOARD)-$(HEADS_GIT_VERSION)-bottom.rom: $(build)/$(BOARD)/$(CB_OUTPUT_FILE) |
| 98 | + $(call do,DD 8MB,$@,dd of=$@ if=$< bs=65536 count=128 skip=0 status=none) |
| 99 | + @sha256sum $@ | tee -a "$(HASHES)" |
| 100 | + |
| 101 | +all: $(build)/$(BOARD)/heads-$(BOARD)-$(HEADS_GIT_VERSION)-top.rom |
| 102 | +$(build)/$(BOARD)/heads-$(BOARD)-$(HEADS_GIT_VERSION)-top.rom: $(build)/$(BOARD)/$(CB_OUTPUT_FILE) |
| 103 | + $(call do,DD 4MB,$@,dd of=$@ if=$< bs=65536 count=64 skip=128 status=none) |
| 104 | + @sha256sum $@ | tee -a "$(HASHES)" |
0 commit comments