Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

X230 suspend #608

Closed
kmeaw opened this issue Sep 10, 2019 · 15 comments
Closed

X230 suspend #608

kmeaw opened this issue Sep 10, 2019 · 15 comments
Labels
Bounty Work could be funded bug help wanted

Comments

@kmeaw
Copy link

kmeaw commented Sep 10, 2019

I am having issue with Thinkpad X230 suspend when OS is booted using Heads.

When I try to suspend my laptop, running Linux 5.2.11-arch1-1-ARCH, it disables the backlight (as usual), but instead of suspending after a second enables the backlight again, delays for a few seconds, and then disables the backlight and finally suspends.

On resume the backlight does not enable immediately — I see a delay of a few seconds, then the backlight enables and I see the VT screen, but the CPU fan is running at 100% and the system is immensely slow ­— echoing a single character typed on a keyboard takes about a minute.

No such problem occurs on a vanilla coreboot 563b869 with SeaBIOS and Intel VBT.

@kmeaw
Copy link
Author

kmeaw commented Sep 10, 2019

Update: the problem does not occur if I extract fallback/payload from the heads ROM file and inject it into vanilla coreboot's ROM, then run the heads payload through the SeaBIOS's boot menu.

@merge
Copy link
Contributor

merge commented Sep 23, 2019

yes. suspend and resume on the X230 is simply broken in coreboot 4.8, which is old, but still used in current builds of Heads. This will be fixed when we use coreboot 4.10 or later.

@kmeaw
Copy link
Author

kmeaw commented Sep 23, 2019

Should I try rebuilding with coreboot 4.10 by just changing version (and hash) inside modules/coreboot ?

@merge
Copy link
Contributor

merge commented Sep 23, 2019

nope. it's quite some work to do that (dealing with the Heads-patches on top of coreboot). in fact there've been numerous issues/PRs starting to do that. one needs to take time, start over and finish that work.

@tlaurion
Copy link
Collaborator

tlaurion commented Sep 24, 2019 via email

@gordon-quad
Copy link

@merge This question might be a little bit out of scope of this issue, but Is there a place where I can check which patches are those and why they are there?
If I understand correctly heads is just linux kernel + initrd, what stops me from just compiling it and flashing into my existing 4.11 coreboot as payload?

@tlaurion
Copy link
Collaborator

@merge This question might be a little bit out of scope of this issue, but Is there a place where I can check which patches are those and why they are there?
If I understand correctly heads is just linux kernel + initrd, what stops me from just compiling it and flashing into my existing 4.11 coreboot as payload?

@gordon-quad : The answer to your question can be found here

If you have questions about this, please open another issue.

@tlaurion
Copy link
Collaborator

tlaurion commented Jul 6, 2020

Was working in same coreboot version before (4.8.1). Not sure what is happening here

@tlaurion
Copy link
Collaborator

tlaurion commented Jul 6, 2020

If I understand correctly heads is just linux kernel + initrd, what stops me from just compiling it and flashing into my existing 4.11 coreboot as payload?

@gordon-quad : That would need coreboot patches or equivalent to take benefit of measured boot, which never landed on coreboot for Ivy/Sandy bridges, which #605 #721 #709 are about.

@tlaurion
Copy link
Collaborator

#721 (comment)

@tlaurion tlaurion added Bounty Work could be funded bug help wanted labels Aug 24, 2020
@tlaurion
Copy link
Collaborator

@jans23

@tlaurion
Copy link
Collaborator

tlaurion commented Aug 26, 2020

@PatrickRudolph do you have a quote to fix this resume from suspend issue still present under coreboot 4.12 (measured boot, not VBOOT+measured boot) testing builds (based on #721) ?

This can be tested from here https://app.circleci.com/pipelines/github/tlaurion/heads/303/workflows/55b002ed-357f-42da-9de7-5af4e66f8828/jobs/329/artifacts on x230.

x230-htop-verification internal flashable rom (BIOS region only) is here: https://329-103208611-gh.circle-artifacts.com/0/build/x230-hotp-verification/coreboot.rom

@tlaurion
Copy link
Collaborator

Tested https://github.com/Thrilleratplay/coreboot-builder-scripts
with updated docker on QubesOS instruction https://gist.github.com/tlaurion/9113983bbdead492735c8438cd14d6cd

Result: no suspend resume problem.

user@coreboot-native:~/coreboot-builder-scripts/x230$ cat defconfig-4.12 
CONFIG_VENDOR_LENOVO=y
CONFIG_CBFS_SIZE=0x400000
CONFIG_BOARD_LENOVO_X230=y
CONFIG_GENERIC_LINEAR_FRAMEBUFFER=y
CONFIG_DRIVERS_PS2_KEYBOARD=y
CONFIG_DEFAULT_CONSOLE_LOGLEVEL_8=y
CONFIG_COREINFO_SECONDARY_PAYLOAD=y
CONFIG_MEMTEST_SECONDARY_PAYLOAD=y
CONFIG_NVRAMCUI_SECONDARY_PAYLOAD=y
CONFIG_TINT_SECONDARY_PAYLOAD=y
user@coreboot-native:~/coreboot-builder-scripts/x230$ cd ..
user@coreboot-native:~/coreboot-builder-scripts$ ls
build.sh  common  flash.sh  LICENSE  README.md  spec  t430  x220  x230
user@coreboot-native:~/coreboot-builder-scripts$ cd ..
user@coreboot-native:~$ ls
coreboot-builder-scripts  Desktop  Documents  Downloads  Music  Pictures  Public  Templates  Videos
user@coreboot-native:~$ git clone^C
(reverse-i-search)`git': git clone https://github.com/Thrilleratplay/coreboot-builder-scripts.^Ct
user@coreboot-native:~$ ls^C
user@coreboot-native:~$ ^C
user@coreboot-native:~$ ls
coreboot-builder-scripts  Desktop  Documents  Downloads  Music  Pictures  Public  Templates  Videos
user@coreboot-native:~$ cd coreboot-builder-scripts/
user@coreboot-native:~/coreboot-builder-scripts$ ./build.sh -t 4.12 x230
Fetching origin
remote: Enumerating objects: 467, done.
remote: Counting objects: 100% (467/467), done.
remote: Compressing objects: 100% (141/141), done.
Receiving objects: 100% (287/287), 39.03 KiB | 974.00 KiB/s, done.
remote: Total 287 (delta 236), reused 194 (delta 143), pack-reused 0
Resolving deltas: 100% (236/236), completed with 158 local objects.
From https://github.com/coreboot/coreboot
   3999aa6cdb..4b58d14fa7  master     -> origin/master
Fetching origin
Fetching origin
HEAD is now at f2c32515ee Documentation/releases: Update for 4.12
Skipping submodule '3rdparty/amd_blobs'
Skipping submodule '3rdparty/blobs'
Skipping submodule '3rdparty/fsp'
Skipping submodule '3rdparty/intel-microcode'
Submodule path '3rdparty/arm-trusted-firmware': checked out '76a08094c53faac3250b845dc12b4884f7e42d84'
remote: Enumerating objects: 126, done.
remote: Counting objects: 100% (126/126), done.
remote: Compressing objects: 100% (104/104), done.
remote: Total 126 (delta 50), reused 98 (delta 22), pack-reused 0
Receiving objects: 100% (126/126), 172.03 KiB | 449.00 KiB/s, done.
Resolving deltas: 100% (50/50), done.
From https://github.com/coreboot/chrome-ec
   4cb500f66..5df4dd14c  firmware-octopus-11297.B     -> origin/firmware-octopus-11297.B
   e26799893..2d6ed727c  firmware-zork-13434.B-master -> origin/firmware-zork-13434.B-master
   248a04dcf..100d6ae9e  master                       -> origin/master
Submodule path '3rdparty/chromeec': checked out '100d6ae9ec1f637f61b414a14c4c9299ce341e09'
Submodule path '3rdparty/libgfxinit': checked out '3318bf26803c77d41b18bef6d7ae4e051b97f9f2'
Submodule path '3rdparty/libhwbase': checked out 'a3edc6ef32d09c566b7ea3555bc753458ec63039'
Submodule path '3rdparty/opensbi': checked out 'c1c7c3ee9eb70e5c25914621f0363bfe244ebc79'
remote: Enumerating objects: 46, done.
remote: Counting objects: 100% (46/46), done.
remote: Compressing objects: 100% (8/8), done.
remote: Total 46 (delta 37), reused 46 (delta 37), pack-reused 0
Unpacking objects: 100% (46/46), done.
From https://github.com/coreboot/vboot
   ade6151a..750da40f  master     -> origin/master
Submodule path '3rdparty/vboot': checked out '750da40fb8a9b6692d2ce6df39e527f5120c128c'
Submodule path 'util/nvidia/cbootimage': checked out '80c499ebbe8a64aa2ee4222e6a8f342f465f6680'
Using existing config
*** Default configuration is based on 'configs/defconfig'
#
# configuration written to /home/coreboot/cb_build/.config
#
Skipping submodule '3rdparty/amd_blobs'
Skipping submodule '3rdparty/blobs'
Skipping submodule '3rdparty/fsp'
Skipping submodule '3rdparty/intel-microcode'
#
# configuration written to /home/coreboot/cb_build/.config
#
build/auto.conf:714:notice: override: reassigning to symbol PADMELON_SOC
build/auto.conf:1226:notice: override: reassigning to symbol PICASSO_UART_CLOCK_SOURCE
build/auto.conf:1809:notice: override: reassigning to symbol TGL_EC
    CC         bootblock/mainboard/lenovo/x230/static.o
    CC         bootblock/arch/x86/boot.o
    CC         bootblock/arch/x86/bootblock_crt0.o
    CC         bootblock/arch/x86/cf9_reset.o
    CC         bootblock/arch/x86/cpu_common.o
    CC         bootblock/arch/x86/id.o
    CC         bootblock/arch/x86/memcpy.o
    FMAP       build/util/cbfstool/fmaptool -h build/fmap_config.h build/fmap.fmd build/fmap.fmap
SUCCESS: Wrote 224 bytes to file 'build/fmap.fmap' (and generated header)
The sections containing CBFSes are: COREBOOT
    CP         bootblock/arch/x86/memlayout.ld
    CC         bootblock/arch/x86/memset.o
    CC         bootblock/arch/x86/mmap_boot.o
    CC         bootblock/arch/x86/post.o
    CC         bootblock/arch/x86/timestamp.o
    CC         bootblock/arch/x86/walkcbfs.o
    CC         bootblock/commonlib/bsd/lz4_wrapper.o
    CC         bootblock/commonlib/cbfs.o
    CC         bootblock/commonlib/iobuf.o
    CC         bootblock/commonlib/mem_pool.o
    CC         bootblock/commonlib/region.o
    CC         bootblock/console/console.o
    CC         bootblock/console/die.o
    CC         bootblock/console/init.o
    CC         bootblock/console/post.o
    CC         bootblock/console/printk.o
    CC         bootblock/console/vsprintf.o
    CC         bootblock/console/vtxprintf.o
    CC         bootblock/cpu/intel/car/bootblock.o
    CC         bootblock/cpu/intel/car/non-evict/cache_as_ram.o
    CC         bootblock/cpu/intel/common/fsb.o
    CC         bootblock/cpu/intel/microcode/microcode.o
    CC         bootblock/cpu/intel/microcode/microcode_asm.o
    CC         bootblock/cpu/intel/model_206ax/bootblock.o
    CC         bootblock/cpu/x86/early_reset.o
    CC         bootblock/cpu/x86/lapic/boot_cpu.o
    CC         bootblock/cpu/x86/mtrr/debug.o
    CC         bootblock/cpu/x86/mtrr/earlymtrr.o
    CC         bootblock/cpu/x86/name/name.o
    CC         bootblock/cpu/x86/pae/pgtbl.o
    CC         bootblock/cpu/x86/tsc/delay_tsc.o
    CC         bootblock/device/device_const.o
    CC         bootblock/device/i2c.o
    CC         bootblock/device/mmio.o
    CC         bootblock/device/pci_early.o
    CC         bootblock/device/pci_ops.o
    CC         bootblock/drivers/pc80/pc/i8254.o
    CC         bootblock/drivers/pc80/rtc/mc146818rtc.o
    CC         bootblock/drivers/pc80/rtc/mc146818rtc_boot.o
    CC         bootblock/drivers/pc80/rtc/option.o
    CC         bootblock/drivers/spi/adesto.o
    CC         bootblock/drivers/spi/amic.o
    CC         bootblock/drivers/spi/atmel.o
    CC         bootblock/drivers/spi/bitbang.o
    CC         bootblock/drivers/spi/eon.o
    CC         bootblock/drivers/spi/gigadevice.o
    CC         bootblock/drivers/spi/macronix.o
    CC         bootblock/drivers/spi/spansion.o
    CC         bootblock/drivers/spi/spi-generic.o
    CC         bootblock/drivers/spi/spi_flash.o
    CC         bootblock/drivers/spi/sst.o
    CC         bootblock/drivers/spi/stmicro.o
    CC         bootblock/drivers/spi/winbond.o
    CC         bootblock/ec/acpi/ec.o
    CC         bootblock/ec/lenovo/h8/sense.o
    CC         bootblock/ec/lenovo/pmh7/pmh7.o
    CC         bootblock/lib/boot_device.o
    CC         bootblock/lib/bootblock.o
    CC         bootblock/lib/bootmode.o
    CC         bootblock/lib/cbfs.o
    CC         bootblock/lib/cbmem_console.o
    CC         bootblock/lib/crc_byte.o
    CC         bootblock/lib/delay.o
    CC         bootblock/lib/fmap.o
    CC         bootblock/lib/gcc.o
    CC         bootblock/lib/halt.o
    CC         bootblock/lib/hexdump.o
    CC         bootblock/lib/libgcc.o
    CC         bootblock/lib/memchr.o
    CC         bootblock/lib/memcmp.o
    CC         bootblock/lib/prog_loaders.o
    CC         bootblock/lib/prog_ops.o
    CP         bootblock/lib/program.ld
    CC         bootblock/lib/reset.o
    CC         bootblock/lib/string.o
    CC         bootblock/lib/timestamp.o
    CC         bootblock/lib/version.o
    CC         bootblock/mainboard/lenovo/x230/early_init.o
    CC         bootblock/mainboard/lenovo/x230/gpio.o
    CC         bootblock/northbridge/intel/sandybridge/bootblock.o
    CC         bootblock/security/tpm/tspi/tspi.o
    CC         bootblock/security/tpm/tss/tcg-1.2/tss.o
    CC         bootblock/southbridge/intel/bd82x6x/bootblock.o
    CC         bootblock/southbridge/intel/bd82x6x/early_pch.o
    CC         bootblock/southbridge/intel/common/gpio.o
    CC         bootblock/southbridge/intel/common/pmbase.o
    CC         bootblock/southbridge/intel/common/reset.o
    CC         bootblock/southbridge/intel/common/rtc.o
    CC         bootblock/southbridge/intel/common/spi.o
    CC         bootblock/southbridge/intel/common/usb_debug.o
    LINK       cbfs/fallback/bootblock.debug
    OBJCOPY    cbfs/fallback/bootblock.elf
    OBJCOPY    bootblock.raw.elf
    OBJCOPY    bootblock.raw.bin
    CC         romstage/mainboard/lenovo/x230/static.o
    CC         romstage/arch/x86/acpi_s3.o
    CC         romstage/arch/x86/assembly_entry.o
    CC         romstage/arch/x86/boot.o
    CC         romstage/arch/x86/cbmem.o
    CC         romstage/arch/x86/cf9_reset.o
    CC         romstage/arch/x86/cpu_common.o
    CC         romstage/arch/x86/gdt_init.o
    CC         romstage/arch/x86/memcpy.o
    CP         romstage/arch/x86/memlayout.ld
    CC         romstage/arch/x86/memmove.o
    CC         romstage/arch/x86/memset.o
    CC         romstage/arch/x86/mmap_boot.o
    CC         romstage/arch/x86/post.o
    CC         romstage/arch/x86/postcar_loader.o
    CC         romstage/arch/x86/timestamp.o
    CC         romstage/commonlib/bsd/lz4_wrapper.o
    CC         romstage/commonlib/cbfs.o
    CC         romstage/commonlib/iobuf.o
    CC         romstage/commonlib/mem_pool.o
    CC         romstage/commonlib/region.o
    CC         romstage/console/console.o
    CC         romstage/console/die.o
    CC         romstage/console/init.o
    CC         romstage/console/post.o
    CC         romstage/console/printk.o
    CC         romstage/console/vsprintf.o
    CC         romstage/console/vtxprintf.o
    CC         romstage/cpu/intel/car/romstage.o
    CC         romstage/cpu/intel/common/fsb.o
    CC         romstage/cpu/intel/microcode/microcode.o
    CC         romstage/cpu/intel/model_206ax/common.o
    CC         romstage/cpu/x86/lapic/boot_cpu.o
    CC         romstage/cpu/x86/mtrr/debug.o
    CC         romstage/cpu/x86/mtrr/earlymtrr.o
    CC         romstage/cpu/x86/name/name.o
    CC         romstage/cpu/x86/pae/pgtbl.o
    CC         romstage/cpu/x86/smm/tseg_region.o
    CC         romstage/cpu/x86/tsc/delay_tsc.o
    CC         romstage/device/device_const.o
    CC         romstage/device/dram/ddr2.o
    CC         romstage/device/dram/ddr3.o
    CC         romstage/device/dram/ddr4.o
    CC         romstage/device/dram/ddr_common.o
    CC         romstage/device/i2c.o
    CC         romstage/device/mmio.o
    CC         romstage/device/pci_early.o
    CC         romstage/device/pci_ops.o
    CC         romstage/drivers/mrc_cache/mrc_cache.o
    CC         romstage/drivers/pc80/pc/i8254.o
    CC         romstage/drivers/pc80/rtc/mc146818rtc.o
    CC         romstage/drivers/pc80/rtc/mc146818rtc_boot.o
    CC         romstage/drivers/pc80/rtc/option.o
    CC         romstage/drivers/pc80/tpm/tis.o
    CC         romstage/drivers/spi/adesto.o
    CC         romstage/drivers/spi/amic.o
    CC         romstage/drivers/spi/atmel.o
    CC         romstage/drivers/spi/bitbang.o
    CC         romstage/drivers/spi/eon.o
    CC         romstage/drivers/spi/gigadevice.o
    CC         romstage/drivers/spi/macronix.o
    CC         romstage/drivers/spi/spansion.o
    CC         romstage/drivers/spi/spi-generic.o
    CC         romstage/drivers/spi/spi_flash.o
    CC         romstage/drivers/spi/sst.o
    CC         romstage/drivers/spi/stmicro.o
    CC         romstage/drivers/spi/winbond.o
    CC         romstage/ec/acpi/ec.o
    CC         romstage/ec/lenovo/h8/panic.o
    CC         romstage/ec/lenovo/h8/sense.o
    CC         romstage/ec/lenovo/pmh7/pmh7.o
    CC         romstage/lib/boot_device.o
    CC         romstage/lib/bootmode.o
    CC         romstage/lib/cbfs.o
    CC         romstage/lib/cbmem_common.o
    CC         romstage/lib/cbmem_console.o
    CC         romstage/lib/compute_ip_checksum.o
    CC         romstage/lib/crc_byte.o
    CC         romstage/lib/delay.o
    CC         romstage/lib/ext_stage_cache.o
    CC         romstage/lib/fmap.o
    CC         romstage/lib/gcc.o
    CC         romstage/lib/halt.o
    CC         romstage/lib/hexdump.o
    CC         romstage/lib/imd.o
    CC         romstage/lib/imd_cbmem.o
    CC         romstage/lib/libgcc.o
    CC         romstage/lib/lzma.o
    CC         romstage/lib/lzmadecode.o
    CC         romstage/lib/memchr.o
    CC         romstage/lib/memcmp.o
    CC         romstage/lib/memrange.o
    CC         romstage/lib/prog_loaders.o
    CC         romstage/lib/prog_ops.o
    CP         romstage/lib/program.ld
    CC         romstage/lib/ramtest.o
    CC         romstage/lib/region_file.o
    CC         romstage/lib/reset.o
    CC         romstage/lib/rmodule.o
    CC         romstage/lib/romstage_handoff.o
    CC         romstage/lib/selfboot.o
    CC         romstage/lib/spd_bin.o
    CC         romstage/lib/stack.o
    CC         romstage/lib/string.o
    CC         romstage/lib/timestamp.o
    CC         romstage/lib/version.o
    CC         romstage/mainboard/lenovo/x230/early_init.o
    CC         romstage/mainboard/lenovo/x230/gpio.o
    CC         romstage/northbridge/intel/sandybridge/common.o
    CC         romstage/northbridge/intel/sandybridge/early_dmi.o
    CC         romstage/northbridge/intel/sandybridge/early_init.o
    CC         romstage/northbridge/intel/sandybridge/memmap.o
    CC         romstage/northbridge/intel/sandybridge/raminit.o
    CC         romstage/northbridge/intel/sandybridge/raminit_common.o
    CC         romstage/northbridge/intel/sandybridge/raminit_native.o
    CC         romstage/northbridge/intel/sandybridge/raminit_shared.o
    CC         romstage/northbridge/intel/sandybridge/raminit_tables.o
    CC         romstage/northbridge/intel/sandybridge/romstage.o
    CC         romstage/security/memory/memory.o
    CC         romstage/security/tpm/tspi/tspi.o
    CC         romstage/security/tpm/tss/tcg-1.2/tss.o
    CC         romstage/southbridge/intel/bd82x6x/early_me.o
    CC         romstage/southbridge/intel/bd82x6x/early_pch.o
    CC         romstage/southbridge/intel/bd82x6x/early_rcba.o
    CC         romstage/southbridge/intel/bd82x6x/early_smbus.o
    CC         romstage/southbridge/intel/bd82x6x/early_thermal.o
    CC         romstage/southbridge/intel/bd82x6x/early_usb.o
    CC         romstage/southbridge/intel/bd82x6x/me_status.o
    CC         romstage/southbridge/intel/common/gpio.o
    CC         romstage/southbridge/intel/common/pmbase.o
    CC         romstage/southbridge/intel/common/pmclib.o
    CC         romstage/southbridge/intel/common/reset.o
    CC         romstage/southbridge/intel/common/rtc.o
    CC         romstage/southbridge/intel/common/smbus.o
    CC         romstage/southbridge/intel/common/spi.o
    CC         romstage/southbridge/intel/common/usb_debug.o
    LINK       cbfs/fallback/romstage.debug
    OBJCOPY    cbfs/fallback/romstage.elf
    CC         ramstage/superio/common/conf_mode.o
    CC         ramstage/southbridge/intel/common/acpi_pirq_gen.o
    CC         ramstage/southbridge/intel/common/gpio.o
    CC         ramstage/southbridge/intel/common/madt.o
    CC         ramstage/southbridge/intel/common/pciehp.o
    CC         ramstage/southbridge/intel/common/pmbase.o
    CC         ramstage/southbridge/intel/common/pmutil.o
    CC         ramstage/southbridge/intel/common/rcba_pirq.o
    CC         ramstage/southbridge/intel/common/reset.o
    CC         ramstage/southbridge/intel/common/rtc.o
    CC         ramstage/southbridge/intel/common/smbus.o
    CC         ramstage/southbridge/intel/common/smi.o
    CC         ramstage/southbridge/intel/common/spi.o
    CC         ramstage/southbridge/intel/common/usb_debug.o
    CC         ramstage/southbridge/intel/common/watchdog.o
    CC         ramstage/southbridge/intel/bd82x6x/azalia.o
    CC         ramstage/southbridge/intel/bd82x6x/lpc.o
    CC         ramstage/southbridge/intel/bd82x6x/me.o
    CC         ramstage/southbridge/intel/bd82x6x/me_8.x.o
    CC         ramstage/southbridge/intel/bd82x6x/me_status.o
    CC         ramstage/southbridge/intel/bd82x6x/pch.o
    CC         ramstage/southbridge/intel/bd82x6x/pci.o
    CC         ramstage/southbridge/intel/bd82x6x/pcie.o
    CC         ramstage/southbridge/intel/bd82x6x/sata.o
    CC         ramstage/southbridge/intel/bd82x6x/smbus.o
    CC         ramstage/southbridge/intel/bd82x6x/usb_ehci.o
    CC         ramstage/southbridge/intel/bd82x6x/usb_xhci.o
    CC         ramstage/security/tpm/tss/tcg-1.2/tss.o
    CC         ramstage/security/tpm/tspi/tspi.o
    CC         ramstage/security/memory/memory.o
    CC         ramstage/security/memory/memory_clear.o
    CC         ramstage/northbridge/intel/sandybridge/acpi.o
    CC         ramstage/northbridge/intel/sandybridge/common.o
    CC         ramstage/northbridge/intel/sandybridge/gma.o
    CC         ramstage/northbridge/intel/sandybridge/memmap.o
    CC         ramstage/northbridge/intel/sandybridge/northbridge.o
    CC         ramstage/northbridge/intel/sandybridge/pcie.o
    CC         ramstage/mainboard/lenovo/x230/static.o
    CC         ramstage/mainboard/lenovo/x230/acpi_tables.o
    GENERATE   libhwbase/common/hw-config.ads
couldn't parse value '-1' for 'SEABIOS_DEBUG_LEVEL'
    GENERATE   libgfxinit/common/hw-gfx-gma-config.ads
    GCC        ramstage/mainboard/lenovo/x230/gma-mainboard.o
    CC         ramstage/mainboard/lenovo/x230/hda_verb.o
    CC         ramstage/mainboard/lenovo/x230/mainboard.o
    GCC        ramstage/libhwbase/debug/hw-debug.o
    GCC        ramstage/libhwbase/common/direct/hw-pci-dev.o
    GCC        ramstage/libhwbase/common/hw-mmio_regs.o
    GCC        ramstage/libhwbase/common/hw-pci-mmconf.o
    GCC        ramstage/libhwbase/common/hw-pci.o
    GCC        ramstage/libhwbase/common/hw-port_io.o
    GCC        ramstage/libhwbase/common/hw-sub_regs.o
    GCC        ramstage/libhwbase/common/hw-time.o
    GCC        ramstage/libhwbase/common/hw.o
    GCC        ramstage/libhwbase/common/hw-config.o
    GCC        ramstage/libhwbase/ada/dynamic_mmio/hw-mmio_range.o
    GCC        ramstage/libgfxinit/common/ironlake/hw-gfx-gma-connectors-edp.o
    GCC        ramstage/libgfxinit/common/ironlake/hw-gfx-gma-connectors-fdi.o
    GCC        ramstage/libgfxinit/common/ironlake/hw-gfx-gma-connectors.o
    GCC        ramstage/libgfxinit/common/ironlake/hw-gfx-gma-pch-dp.o
    GCC        ramstage/libgfxinit/common/ironlake/hw-gfx-gma-pch-hdmi.o
    GCC        ramstage/libgfxinit/common/ironlake/hw-gfx-gma-pch-lvds.o
    GCC        ramstage/libgfxinit/common/ironlake/hw-gfx-gma-plls.o
    GCC        ramstage/libgfxinit/common/ironlake/hw-gfx-gma-port_detect.o
    GCC        ramstage/libgfxinit/common/ironlake/hw-gfx-gma-power_and_clocks.o
    GCC        ramstage/libgfxinit/common/ironlake/hw-gfx-gma-power_and_clocks_ironlake.o
    GCC        ramstage/libgfxinit/common/dyncpu/hw-gfx-gma-config.o
    GCC        ramstage/libgfxinit/common/hw-gfx-dp_aux_ch.o
    GCC        ramstage/libgfxinit/common/hw-gfx-dp_defs.o
    GCC        ramstage/libgfxinit/common/hw-gfx-dp_info.o
    GCC        ramstage/libgfxinit/common/hw-gfx-dp_training.o
    GCC        ramstage/libgfxinit/common/hw-gfx-edid.o
    GCC        ramstage/libgfxinit/common/hw-gfx-framebuffer_filler.o
    GCC        ramstage/libgfxinit/common/hw-gfx-gma-config_helpers.o
    GCC        ramstage/libgfxinit/common/hw-gfx-gma-connector_info.o
    GCC        ramstage/libgfxinit/common/hw-gfx-gma-display_probing.o
    GCC        ramstage/libgfxinit/common/hw-gfx-gma-dp_aux_ch.o
    GCC        ramstage/libgfxinit/common/hw-gfx-gma-dp_aux_request.o
    GCC        ramstage/libgfxinit/common/hw-gfx-gma-dp_info.o
    GCC        ramstage/libgfxinit/common/hw-gfx-gma-i2c.o
    GCC        ramstage/libgfxinit/common/hw-gfx-gma-panel.o
    GCC        ramstage/libgfxinit/common/hw-gfx-gma-pch-fdi.o
    GCC        ramstage/libgfxinit/common/hw-gfx-gma-pch-sideband.o
    GCC        ramstage/libgfxinit/common/hw-gfx-gma-pch-transcoder.o
    GCC        ramstage/libgfxinit/common/hw-gfx-gma-pch-vga.o
    GCC        ramstage/libgfxinit/common/hw-gfx-gma-pch.o
    GCC        ramstage/libgfxinit/common/hw-gfx-gma-pcode.o
    GCC        ramstage/libgfxinit/common/hw-gfx-gma-pipe_setup.o
    GCC        ramstage/libgfxinit/common/hw-gfx-gma-registers.o
    GCC        ramstage/libgfxinit/common/hw-gfx-gma-transcoder.o
    GCC        ramstage/libgfxinit/common/hw-gfx-gma.o
    GCC        ramstage/libgfxinit/common/hw-gfx-i2c.o
    GCC        ramstage/libgfxinit/common/hw-gfx.o
    CC         ramstage/lib/b64_decode.o
    CC         ramstage/lib/boot_device.o
    CC         ramstage/lib/bootmem.o
    CC         ramstage/lib/bootmode.o
    GCC        ramstage/lib/cb.o
    CC         ramstage/lib/cbfs.o
    CC         ramstage/lib/cbmem_common.o
    CC         ramstage/lib/cbmem_console.o
    CC         ramstage/lib/compute_ip_checksum.o
    CC         ramstage/lib/coreboot_table.o
    CC         ramstage/lib/crc_byte.o
    CC         ramstage/lib/delay.o
    CC         ramstage/lib/dimm_info_util.o
    CC         ramstage/lib/edid.o
    CC         ramstage/lib/ext_stage_cache.o
    CC         ramstage/lib/fallback_boot.o
    CC         ramstage/lib/fmap.o
    CC         ramstage/lib/gcc.o
    CC         ramstage/lib/halt.o
    CC         ramstage/lib/hardwaremain.o
    CC         ramstage/lib/hexdump.o
    CC         ramstage/lib/hexstrtobin.o
    GCC        ramstage/lib/hw-time-timer.o
    CC         ramstage/lib/imd.o
    CC         ramstage/lib/imd_cbmem.o
    CC         ramstage/lib/list.o
    CC         ramstage/lib/lzma.o
    CC         ramstage/lib/lzmadecode.o
    CC         ramstage/lib/malloc.o
    CC         ramstage/lib/memchr.o
    CC         ramstage/lib/memcmp.o
    CC         ramstage/lib/memrange.o
    CC         ramstage/lib/prog_loaders.o
    CC         ramstage/lib/prog_ops.o
    CC         ramstage/lib/region_file.o
    CC         ramstage/lib/reset.o
    CC         ramstage/lib/rmodule.o
    CC         ramstage/lib/romstage_handoff.o
    CC         ramstage/lib/rtc.o
    CC         ramstage/lib/selfboot.o
    CC         ramstage/lib/stack.o
    CC         ramstage/lib/string.o
    CC         ramstage/lib/timestamp.o
    CC         ramstage/lib/uuid.o
    CC         ramstage/lib/version.o
    CC         ramstage/lib/wrdd.o
    CC         ramstage/ec/lenovo/pmh7/pmh7.o
    CC         ramstage/ec/lenovo/h8/bluetooth.o
    CC         ramstage/ec/lenovo/h8/h8.o
    CC         ramstage/ec/lenovo/h8/panic.o
    CC         ramstage/ec/lenovo/h8/sense.o
    CC         ramstage/ec/lenovo/h8/ssdt.o
    CC         ramstage/ec/lenovo/h8/wwan.o
    CC         ramstage/ec/acpi/ec.o
    CC         ramstage/drivers/wifi/generic.o
    CC         ramstage/drivers/tpm/tpm.o
    CC         ramstage/drivers/spi/adesto.o
    CC         ramstage/drivers/spi/amic.o
    CC         ramstage/drivers/spi/atmel.o
    CC         ramstage/drivers/spi/bitbang.o
    CC         ramstage/drivers/spi/boot_device_rw_nommap.o
    CC         ramstage/drivers/spi/eon.o
    CC         ramstage/drivers/spi/gigadevice.o
    CC         ramstage/drivers/spi/macronix.o
    CC         ramstage/drivers/spi/spansion.o
    CC         ramstage/drivers/spi/spi-generic.o
    CC         ramstage/drivers/spi/spi_flash.o
    CC         ramstage/drivers/spi/sst.o
    CC         ramstage/drivers/spi/stmicro.o
    CC         ramstage/drivers/spi/winbond.o
    CC         ramstage/drivers/ricoh/rce822/rce822.o
    CC         ramstage/drivers/pc80/tpm/tis.o
    CC         ramstage/drivers/pc80/rtc/mc146818rtc.o
    CC         ramstage/drivers/pc80/rtc/mc146818rtc_boot.o
    CC         ramstage/drivers/pc80/rtc/option.o
    CC         ramstage/drivers/pc80/pc/i8254.o
    CC         ramstage/drivers/pc80/pc/i8259.o
    CC         ramstage/drivers/pc80/pc/isa-dma.o
    CC         ramstage/drivers/pc80/pc/keyboard.o
    CC         ramstage/drivers/mrc_cache/mrc_cache.o
    CC         ramstage/drivers/intel/wifi/wifi.o
    GCC        ramstage/drivers/intel/gma/hires_fb/gma-gfx_init.o
    CC         ramstage/drivers/intel/gma/acpi.o
    GCC        ramstage/drivers/intel/gma/gma.o
    CC         ramstage/drivers/intel/gma/opregion.o
    CC         ramstage/drivers/i2c/at24rf08c/at24rf08c.o
    CC         ramstage/drivers/i2c/at24rf08c/lenovo_serials.o
    CC         ramstage/drivers/broadcom/bcm57xx_aspm_disable.o
    CC         ramstage/device/cardbus_device.o
    CC         ramstage/device/cpu_device.o
    CC         ramstage/device/device.o
    CC         ramstage/device/device_const.o
    CC         ramstage/device/device_util.o
    CC         ramstage/device/i2c.o
    CC         ramstage/device/i2c_bus.o
    CC         ramstage/device/mmio.o
    CC         ramstage/device/pci_class.o
    CC         ramstage/device/pci_device.o
    CC         ramstage/device/pci_ops.o
    CC         ramstage/device/pci_rom.o
    CC         ramstage/device/pciexp_device.o
    CC         ramstage/device/pcix_device.o
    CC         ramstage/device/pnp_device.o
    CC         ramstage/device/root_device.o
    CC         ramstage/device/smbus_ops.o
    CC         ramstage/cpu/x86/tsc/delay_tsc.o
    CC         smm/mainboard/lenovo/x230/static.o
    CC         smm/arch/x86/memcpy.o
    CC         smm/arch/x86/memmove.o
    CC         smm/arch/x86/memset.o
    CC         smm/arch/x86/mmap_boot.o
    CC         smm/commonlib/cbfs.o
    CC         smm/commonlib/iobuf.o
    CC         smm/commonlib/region.o
    CC         smm/console/die.o
    CC         smm/console/post.o
    CC         smm/cpu/intel/common/fsb.o
    CC         smm/cpu/intel/model_206ax/common.o
    CC         smm/cpu/intel/model_206ax/finalize.o
    CC         smm/cpu/x86/pae/pgtbl.o
    CC         smm/cpu/x86/smm/smm_module_handler.o
    CC         smm/cpu/x86/tsc/delay_tsc.o
    CC         smm/device/device_const.o
    CC         smm/device/pci_ops.o
    CC         smm/drivers/pc80/pc/i8254.o
    CC         smm/drivers/pc80/rtc/mc146818rtc.o
    CC         smm/drivers/pc80/rtc/option.o
    CC         smm/ec/acpi/ec.o
    CC         smm/ec/lenovo/h8/sense.o
    CC         smm/ec/lenovo/pmh7/pmh7.o
    CC         smm/lib/boot_device.o
    CC         smm/lib/cbfs.o
    CC         smm/lib/crc_byte.o
    CC         smm/lib/delay.o
    CC         smm/lib/fmap.o
    CC         smm/lib/gcc.o
    CC         smm/lib/halt.o
    CC         smm/lib/hexdump.o
    CC         smm/lib/malloc.o
    CC         smm/lib/memcmp.o
    CC         smm/lib/reset.o
    CC         smm/lib/string.o
    CC         smm/lib/version.o
    CC         smm/mainboard/lenovo/x230/smihandler.o
    CC         smm/northbridge/intel/sandybridge/common.o
    CC         smm/northbridge/intel/sandybridge/finalize.o
    CC         smm/southbridge/intel/bd82x6x/me.o
    CC         smm/southbridge/intel/bd82x6x/me_8.x.o
    CC         smm/southbridge/intel/bd82x6x/pch.o
    CC         smm/southbridge/intel/bd82x6x/smihandler.o
    CC         smm/southbridge/intel/common/finalize.o
    CC         smm/southbridge/intel/common/gpio.o
    CC         smm/southbridge/intel/common/pmbase.o
    CC         smm/southbridge/intel/common/pmutil.o
    CC         smm/southbridge/intel/common/smihandler.o
    CP         rmodules_x86_32/lib/rmodule.ld
    OBJCOPY    ramstage/cpu/x86/smm/smm.manual
    CC         smmstub/cpu/x86/smm/smm_stub.o
    OBJCOPY    ramstage/cpu/x86/smm/smmstub.manual
    CC         ramstage/cpu/x86/smm/smm_module_loader.o
    CC         ramstage/cpu/x86/smm/tseg_region.o
    CC         ramstage/cpu/x86/pae/pgtbl.o
    CC         ramstage/cpu/x86/name/name.o
    CC         ramstage/cpu/x86/mtrr/debug.o
    CC         ramstage/cpu/x86/mtrr/mtrr.o
    CC         ramstage/cpu/x86/lapic/boot_cpu.o
    CC         ramstage/cpu/x86/lapic/lapic.o
    CC         ramstage/cpu/x86/lapic/lapic_cpu_init.o
    CC         ramstage/cpu/x86/lapic/secondary.o
    CC         ramstage/cpu/x86/cache/cache.o
    CC         rmodules_x86_32/cpu/x86/sipi_vector.o
    OBJCOPY    ramstage/cpu/x86/sipi_vector.manual
    CC         ramstage/cpu/x86/backup_default_smm.o
    CC         ramstage/cpu/x86/mp_init.o
    CC         ramstage/cpu/intel/turbo/turbo.o
    CC         ramstage/cpu/intel/smm/gen1/smmrelocate.o
    CC         ramstage/cpu/intel/smm/smm_reloc.o
    CC         ramstage/cpu/intel/model_206ax/acpi.o
    CC         ramstage/cpu/intel/model_206ax/common.o
    CC         ramstage/cpu/intel/model_206ax/model_206ax_init.o
    CC         ramstage/cpu/intel/microcode/microcode.o
    CC         ramstage/cpu/intel/common/common_init.o
    CC         ramstage/cpu/intel/common/fsb.o
    CC         ramstage/console/console.o
    CC         ramstage/console/die.o
    GCC        ramstage/console/hw-debug_sink.o
    CC         ramstage/console/init.o
    CC         ramstage/console/post.o
    CC         ramstage/console/printk.o
    CC         ramstage/console/vsprintf.o
    CC         ramstage/console/vtxprintf.o
    CC         ramstage/commonlib/bsd/lz4_wrapper.o
    CC         ramstage/commonlib/cbfs.o
    CC         ramstage/commonlib/iobuf.o
    CC         ramstage/commonlib/mem_pool.o
    CC         ramstage/commonlib/region.o
    CC         ramstage/commonlib/sort.o
    CC         ramstage/arch/x86/acpi_s3.o
    CC         ramstage/arch/x86/boot.o
    CC         ramstage/arch/x86/c_start.o
    CC         ramstage/arch/x86/cf9_reset.o
    CC         ramstage/arch/x86/cpu.o
    CC         ramstage/arch/x86/cpu_common.o
    CC         ramstage/arch/x86/ebda.o
    CC         ramstage/arch/x86/exception.o
    CC         ramstage/arch/x86/gdt.o
    CC         ramstage/arch/x86/idt.o
    CC         ramstage/arch/x86/ioapic.o
    CC         ramstage/arch/x86/memcpy.o
    CC         ramstage/arch/x86/memmove.o
    CC         ramstage/arch/x86/memset.o
    CC         ramstage/arch/x86/mmap_boot.o
    CC         ramstage/arch/x86/post.o
    CC         ramstage/arch/x86/rdrand.o
    CC         ramstage/arch/x86/smbios.o
    CC         ramstage/arch/x86/tables.o
    CC         ramstage/arch/x86/timestamp.o
    CC         ramstage/arch/x86/wakeup.o
    CC         ramstage/acpi/acpi.o
    CC         ramstage/acpi/acpigen.o
    CC         ramstage/acpi/acpigen_dsm.o
    CC         ramstage/acpi/acpigen_ps2_keybd.o
    CC         ramstage/acpi/device.o
    CC         ramstage/acpi/pld.o
    CC         ramstage/acpi/sata.o
    GCC        ramstage/cb-config.o
    CP         ramstage/arch/x86/memlayout.ld
    CP         ramstage/lib/program.ld
    BIND       ramstage/b__ramstage.adb
    GCC        ramstage/b__ramstage.o
    CC         generated/ramstage.o
    CC         cbfs/fallback/ramstage.debug
    Checking out SeaBIOS revision f21b5a4aeb020f2a5e2c6503f906a9349dd2f069
Switched to branch 'master'
Your branch is up to date with 'origin/master'.
Deleted branch coreboot (was f21b5a4).
Switched to a new branch 'coreboot'
    CONFIG     SeaBIOS f21b5a4aeb020f2a5e2c6503f906a9349dd2f069
#
# configuration written to /home/coreboot/cb_build/payloads/external/SeaBIOS/seabios/.config
#
    MAKE       SeaBIOS f21b5a4aeb020f2a5e2c6503f906a9349dd2f069
  Build Kconfig config file
  Compile checking out/src/misc.o
  Compile checking out/src/stacks.o
  Compile checking out/src/output.o
  Compile checking out/src/string.o
  Compile checking out/src/block.o
  Compile checking out/src/cdrom.o
  Compile checking out/src/disk.o
  Compile checking out/src/mouse.o
  Compile checking out/src/kbd.o
  Compile checking out/src/system.o
  Compile checking out/src/serial.o
  Compile checking out/src/sercon.o
  Compile checking out/src/clock.o
  Compile checking out/src/resume.o
  Compile checking out/src/pnpbios.o
  Compile checking out/src/vgahooks.o
  Compile checking out/src/pcibios.o
  Compile checking out/src/apm.o
  Compile checking out/src/cp437.o
  Compile checking out/src/hw/pci.o
  Compile checking out/src/hw/timer.o
  Compile checking out/src/hw/rtc.o
  Compile checking out/src/hw/dma.o
  Compile checking out/src/hw/pic.o
  Compile checking out/src/hw/ps2port.o
  Compile checking out/src/hw/serialio.o
  Compile checking out/src/hw/usb.o
  Compile checking out/src/hw/usb-uhci.o
  Compile checking out/src/hw/usb-ohci.o
  Compile checking out/src/hw/usb-ehci.o
  Compile checking out/src/hw/usb-hid.o
  Compile checking out/src/hw/usb-msc.o
  Compile checking out/src/hw/usb-uas.o
  Compile checking out/src/hw/blockcmd.o
  Compile checking out/src/hw/floppy.o
  Compile checking out/src/hw/ata.o
  Compile checking out/src/hw/ramdisk.o
  Compile checking out/src/hw/lsi-scsi.o
  Compile checking out/src/hw/esp-scsi.o
  Compile checking out/src/hw/megasas.o
  Compile checking out/src/hw/mpt-scsi.o
  Compile checking out/src/post.o
  Compile checking out/src/e820map.o
  Compile checking out/src/malloc.o
  Compile checking out/src/romfile.o
  Compile checking out/src/x86.o
  Compile checking out/src/optionroms.o
  Compile checking out/src/pmm.o
  Compile checking out/src/font.o
  Compile checking out/src/boot.o
  Compile checking out/src/bootsplash.o
  Compile checking out/src/jpeg.o
  Compile checking out/src/bmp.o
  Compile checking out/src/tcgbios.o
  Compile checking out/src/sha1.o
  Compile checking out/src/hw/pcidevice.o
  Compile checking out/src/hw/ahci.o
  Compile checking out/src/hw/pvscsi.o
  Compile checking out/src/hw/usb-xhci.o
  Compile checking out/src/hw/usb-hub.o
  Compile checking out/src/hw/sdcard.o
  Compile checking out/src/fw/coreboot.o
  Compile checking out/src/fw/lzmadecode.o
  Compile checking out/src/fw/multiboot.o
  Compile checking out/src/fw/csm.o
  Compile checking out/src/fw/biostables.o
  Compile checking out/src/fw/paravirt.o
  Compile checking out/src/fw/shadow.o
  Compile checking out/src/fw/pciinit.o
  Compile checking out/src/fw/smm.o
  Compile checking out/src/fw/smp.o
  Compile checking out/src/fw/mtrr.o
  Compile checking out/src/fw/xen.o
  Compile checking out/src/fw/acpi.o
  Compile checking out/src/fw/mptable.o
  Compile checking out/src/fw/pirtable.o
  Compile checking out/src/fw/smbios.o
  Compile checking out/src/fw/romfile_loader.o
  Compile checking out/src/hw/virtio-ring.o
  Compile checking out/src/hw/virtio-pci.o
  Compile checking out/src/hw/virtio-blk.o
  Compile checking out/src/hw/virtio-scsi.o
  Compile checking out/src/hw/tpm_drivers.o
  Compile checking out/src/hw/nvme.o
  Compiling whole program out/ccode32flat.o
  Compiling whole program out/code32seg.o
  Compiling whole program out/ccode16.o
  Compiling (16bit) out/romlayout.o
  Building ld scripts
Version: rel-1.13.0-0-gf21b5a4
Fixed space: 0xe05b-0x10000  total: 8101  slack: 14  Percent slack: 0.2%
16bit size:           35872
32bit segmented size: 1699
32bit flat size:      31853
32bit flat init size: 53728
Lowmem size:          2240
f-segment var size:   1392
  Linking out/rom16.o
  Stripping out/rom16.strip.o
  Linking out/rom32seg.o
  Stripping out/rom32seg.strip.o
  Linking out/rom.o
  Prepping out/bios.bin.prep
Total size: 130400  Fixed: 70816  Free: 672 (used 99.5% of 128KiB rom)
  Creating out/bios.bin.elf
  Compile checking out/vgasrc/vgainit.o
  Compile checking out/vgasrc/vgabios.o
  Compile checking out/vgasrc/vgafb.o
  Compile checking out/vgasrc/swcursor.o
  Compile checking out/vgasrc/vgafonts.o
  Compile checking out/vgasrc/vbe.o
  Compile checking out/vgasrc/stdvga.o
  Compile checking out/vgasrc/stdvgamodes.o
  Compile checking out/vgasrc/stdvgaio.o
  Compile checking out/vgasrc/clext.o
  Compile checking out/vgasrc/svgamodes.o
  Compile checking out/vgasrc/atiext.o
  Compile checking out/vgasrc/bochsvga.o
  Compile checking out/vgasrc/geodevga.o
  Compile checking out/vgasrc/cbvga.o
  Compile checking out/vgasrc/bochsdisplay.o
  Compile checking out/vgasrc/ramfb.o
  Compiling whole program out/vgaccode16.raw.s
  Fixup VGA rom assembler
  Compiling (16bit) out/vgaentry.o
  Linking out/vgarom.o
Version: rel-1.13.0-0-gf21b5a4
  Extracting binary out/vgabios.bin.raw
  Finalizing rom out/vgabios.bin
    CREATE     build/mainboard/lenovo/x230/cbfs-file.L2WDpG.out (from /home/coreboot/cb_build/.config)
    IASL       build/dsdt.aml

Intel ACPI Component Architecture
ASL+ Optimizing Compiler/Disassembler version 20180810
Copyright (c) 2000 - 2018 Intel Corporation

coreboot toolchain v1.53 August 16th, 2018
dsdt.asl   2500:  Method (MLCG, 1)
Remark   2146 -             ^ Method Argument is never used (Arg0)

dsdt.asl   2536:  Method (WAKE, 1)
Remark   2146 -             ^ Method Argument is never used (Arg0)

ASL Input:     dsdt.asl - 3078 lines, 52383 bytes, 1451 keywords
AML Output:    dsdt.aml - 14889 bytes, 557 named objects, 894 executable opcodes

Compilation complete. 0 Errors, 0 Warnings, 2 Remarks, 430 Optimizations, 9 Constants Folded
    IASL       build/dsdt.aml disassembled correctly.
    CREATE     build/mainboard/lenovo/x230/cbfs-file.T6kEJw.out (from src/mainboard/lenovo/x230/cmos.default)
    CC         postcar/mainboard/lenovo/x230/static.o
    CC         postcar/arch/x86/acpi_s3.o
    CC         postcar/arch/x86/boot.o
    CC         postcar/arch/x86/cf9_reset.o
    CC         postcar/arch/x86/cpu_common.o
    CC         postcar/arch/x86/exit_car.o
    CC         postcar/arch/x86/gdt_init.o
    CC         postcar/arch/x86/memcpy.o
    CP         postcar/arch/x86/memlayout.ld
    CC         postcar/arch/x86/memmove.o
    CC         postcar/arch/x86/memset.o
    CC         postcar/arch/x86/mmap_boot.o
    CC         postcar/arch/x86/post.o
    CC         postcar/arch/x86/postcar.o
    CC         postcar/arch/x86/timestamp.o
    CC         postcar/commonlib/bsd/lz4_wrapper.o
    CC         postcar/commonlib/cbfs.o
    CC         postcar/commonlib/iobuf.o
    CC         postcar/commonlib/mem_pool.o
    CC         postcar/commonlib/region.o
    CC         postcar/console/console.o
    CC         postcar/console/die.o
    CC         postcar/console/init.o
    CC         postcar/console/post.o
    CC         postcar/console/printk.o
    CC         postcar/console/vsprintf.o
    CC         postcar/console/vtxprintf.o
    CC         postcar/cpu/intel/car/non-evict/exit_car.o
    CC         postcar/cpu/intel/common/fsb.o
    CC         postcar/cpu/x86/lapic/boot_cpu.o
    CC         postcar/cpu/x86/mtrr/debug.o
    CC         postcar/cpu/x86/pae/pgtbl.o
    CC         postcar/cpu/x86/smm/tseg_region.o
    CC         postcar/cpu/x86/tsc/delay_tsc.o
    CC         postcar/device/device_const.o
    CC         postcar/device/pci_early.o
    CC         postcar/device/pci_ops.o
    CC         postcar/drivers/pc80/pc/i8254.o
    CC         postcar/drivers/pc80/rtc/mc146818rtc.o
    CC         postcar/drivers/pc80/rtc/mc146818rtc_boot.o
    CC         postcar/drivers/pc80/rtc/option.o
    CC         postcar/drivers/pc80/tpm/tis.o
    CC         postcar/drivers/spi/adesto.o
    CC         postcar/drivers/spi/amic.o
    CC         postcar/drivers/spi/atmel.o
    CC         postcar/drivers/spi/bitbang.o
    CC         postcar/drivers/spi/eon.o
    CC         postcar/drivers/spi/gigadevice.o
    CC         postcar/drivers/spi/macronix.o
    CC         postcar/drivers/spi/spansion.o
    CC         postcar/drivers/spi/spi-generic.o
    CC         postcar/drivers/spi/spi_flash.o
    CC         postcar/drivers/spi/sst.o
    CC         postcar/drivers/spi/stmicro.o
    CC         postcar/drivers/spi/winbond.o
    CC         postcar/ec/lenovo/h8/sense.o
    CC         postcar/lib/boot_device.o
    CC         postcar/lib/bootmode.o
    CC         postcar/lib/cbfs.o
    CC         postcar/lib/cbmem_common.o
    CC         postcar/lib/cbmem_console.o
    CC         postcar/lib/crc_byte.o
    CC         postcar/lib/delay.o
    CC         postcar/lib/ext_stage_cache.o
    CC         postcar/lib/fmap.o
    CC         postcar/lib/gcc.o
    CC         postcar/lib/halt.o
    CC         postcar/lib/hexdump.o
    CC         postcar/lib/imd.o
    CC         postcar/lib/imd_cbmem.o
    CC         postcar/lib/libgcc.o
    CC         postcar/lib/lzma.o
    CC         postcar/lib/lzmadecode.o
    CC         postcar/lib/memchr.o
    CC         postcar/lib/memcmp.o
    CC         postcar/lib/prog_loaders.o
    CC         postcar/lib/prog_ops.o
    CP         postcar/lib/program.ld
    CC         postcar/lib/reset.o
    CC         postcar/lib/rmodule.o
    CC         postcar/lib/romstage_handoff.o
    CC         postcar/lib/string.o
    CC         postcar/lib/timestamp.o
    CC         postcar/lib/version.o
    CC         postcar/northbridge/intel/sandybridge/memmap.o
    CC         postcar/security/memory/memory.o
    CC         postcar/security/tpm/tspi/tspi.o
    CC         postcar/security/tpm/tss/tcg-1.2/tss.o
    CC         postcar/southbridge/intel/common/pmbase.o
    CC         postcar/southbridge/intel/common/reset.o
    CC         postcar/southbridge/intel/common/rtc.o
    CC         postcar/southbridge/intel/common/spi.o
    LINK       cbfs/fallback/postcar.debug
    Checking out Memtest86+ revision Stable (0bd34c22604660e4283316331f3e7bf8a3863753)
Switched to branch 'master'
Your branch is up to date with 'origin/master'.
Deleted branch coreboot (was 0bd34c2).
Switched to a new branch 'coreboot'
    MAKE       Memtest86+ Stable
make[2]: Entering directory '/home/coreboot/cb_build/payloads/external/Memtest86Plus/memtest86plus'
rm -f *.o *.pre.s *.iso memtest.bin memtest memtest_shared \
	memtest_shared.bin memtest.iso
i386-elf-gcc -E -traditional head.S -o head.pre.s
i386-elf-as  -32   -o head.pre.o head.pre.s
i386-elf-gcc -c -Wall -march=i486 -m32 -O0 -fomit-frame-pointer -fno-builtin -ffreestanding -fPIC  -fno-stack-protector -fgnu89-inline -fno-strict-aliasing reloc.c
i386-elf-gcc -Wall -march=i486 -m32 -O0 -fomit-frame-pointer -fno-builtin -ffreestanding -fPIC  -fno-stack-protector -fgnu89-inline   -c -o main.o main.c
i386-elf-gcc -c -Wall -march=i486 -m32 -O0 -fomit-frame-pointer -fno-builtin -ffreestanding test.c
i386-elf-gcc -Wall -march=i486 -m32 -O0 -fomit-frame-pointer -fno-builtin -ffreestanding -fPIC  -fno-stack-protector -fgnu89-inline   -c -o init.o init.c
i386-elf-gcc -Wall -march=i486 -m32 -O0 -fomit-frame-pointer -fno-builtin -ffreestanding -fPIC  -fno-stack-protector -fgnu89-inline   -c -o lib.o lib.c
i386-elf-gcc -Wall -march=i486 -m32 -O0 -fomit-frame-pointer -fno-builtin -ffreestanding -fPIC  -fno-stack-protector -fgnu89-inline   -c -o patn.o patn.c
i386-elf-gcc -Wall -march=i486 -m32 -O0 -fomit-frame-pointer -fno-builtin -ffreestanding -fPIC  -fno-stack-protector -fgnu89-inline   -c -o screen_buffer.o screen_buffer.c
i386-elf-gcc -Wall -march=i486 -m32 -O0 -fomit-frame-pointer -fno-builtin -ffreestanding -fPIC  -fno-stack-protector -fgnu89-inline   -c -o config.o config.c
i386-elf-gcc -Wall -march=i486 -m32 -O0 -fomit-frame-pointer -fno-builtin -ffreestanding -fPIC  -fno-stack-protector -fgnu89-inline   -c -o cpuid.o cpuid.c
i386-elf-gcc -Wall -march=i486 -m32 -O0 -fomit-frame-pointer -fno-builtin -ffreestanding -fPIC  -fno-stack-protector -fgnu89-inline   -c -o coreboot.o coreboot.c
i386-elf-gcc -Wall -march=i486 -m32 -O0 -fomit-frame-pointer -fno-builtin -ffreestanding -fPIC  -fno-stack-protector -fgnu89-inline   -c -o pci.o pci.c
i386-elf-gcc -Wall -march=i486 -m32 -O0 -fomit-frame-pointer -fno-builtin -ffreestanding -fPIC  -fno-stack-protector -fgnu89-inline   -c -o memsize.o memsize.c
i386-elf-gcc -Wall -march=i486 -m32 -O0 -fomit-frame-pointer -fno-builtin -ffreestanding -fPIC  -fno-stack-protector -fgnu89-inline   -c -o spd.o spd.c
spd.c: In function 'sb800_get_smb':
spd.c:57:20: warning: variable 'result' set but not used [-Wunused-but-set-variable]
  int lbyte, hbyte, result;
                    ^~~~~~
i386-elf-gcc -Wall -march=i486 -m32 -O0 -fomit-frame-pointer -fno-builtin -ffreestanding -fPIC  -fno-stack-protector -fgnu89-inline   -c -o error.o error.c
i386-elf-gcc -Wall -march=i486 -m32 -O0 -fomit-frame-pointer -fno-builtin -ffreestanding -fPIC  -fno-stack-protector -fgnu89-inline   -c -o dmi.o dmi.c
i386-elf-gcc -Wall -march=i486 -m32 -O0 -fomit-frame-pointer -fno-builtin -ffreestanding -fPIC  -fno-stack-protector -fgnu89-inline   -c -o controller.o controller.c
i386-elf-gcc -Wall -march=i486 -m32 -O0 -fomit-frame-pointer -fno-builtin -ffreestanding -fPIC  -fno-stack-protector -fgnu89-inline   -c -o smp.o smp.c
i386-elf-gcc -Wall -march=i486 -m32 -O0 -fomit-frame-pointer -fno-builtin -ffreestanding -fPIC  -fno-stack-protector -fgnu89-inline   -c -o vmem.o vmem.c
i386-elf-gcc -c -Wall -march=i486 -m32 -O3 -fomit-frame-pointer -fno-builtin -ffreestanding random.c
i386-elf-gcc -Wall -march=i486 -m32 -O0 -fomit-frame-pointer -fno-builtin -ffreestanding -fPIC  -fno-stack-protector -fgnu89-inline   -c -o multiboot.o multiboot.c
i386-elf-ld.bfd  -z max-page-size=0x1000 --warn-constructors --warn-common -static -T memtest_shared.lds \
 -o memtest_shared head.pre.o reloc.o main.o test.o init.o lib.o patn.o screen_buffer.o config.o cpuid.o coreboot.o pci.o memsize.o spd.o error.o dmi.o controller.o smp.o vmem.o random.o multiboot.o && \
i386-elf-ld.bfd  -z max-page-size=0x1000 -shared -Bsymbolic -T memtest_shared.lds -o memtest_shared head.pre.o reloc.o main.o test.o init.o lib.o patn.o screen_buffer.o config.o cpuid.o coreboot.o pci.o memsize.o spd.o error.o dmi.o controller.o smp.o vmem.o random.o multiboot.o
i386-elf-objcopy -O binary memtest_shared memtest_shared.bin
i386-elf-gcc -E -traditional bootsect.S -o bootsect.pre.s
i386-elf-as  -32   -o bootsect.pre.o bootsect.pre.s
i386-elf-gcc -E -traditional setup.S -o setup.pre.s
i386-elf-as  -32   -o setup.pre.o setup.pre.s
i386-elf-ld.bfd  -z max-page-size=0x1000 -T memtest.bin.lds bootsect.pre.o setup.pre.o -b binary \
memtest_shared.bin -o memtest.bin
i386-elf-ld.bfd  -z max-page-size=0x1000 -s -T memtest.lds -b binary memtest_shared.bin -o memtest
make[2]: Leaving directory '/home/coreboot/cb_build/payloads/external/Memtest86Plus/memtest86plus'
Created CBFS (capacity = 4128216 bytes)
    CBFS       fallback/romstage
    CBFS       cpu_microcode_blob.bin
    CBFS       fallback/ramstage
    CBFS       vgaroms/seavgabios.bin
    CBFS       config
    CBFS       revision
    CBFS       fallback/dsdt.aml
    CBFS       cmos.default
    CBFS       vbt.bin
    CBFS       cmos_layout.bin
    CBFS       fallback/postcar
    CBFS       img/coreinfo
    CBFS       img/nvramcui
    CBFS       fallback/payload
    CBFS       payload_config
    CBFS       payload_revision
    CBFS       img/tint
    CBFS       img/memtest
    CBFS       coreboot.rom
    SeaBIOS    Wait up to 5000 ms for PS/2 keyboard controller initialization
    CBFSLAYOUT  coreboot.rom

This image contains the following sections that can be manipulated with this tool:

'RW_MRC_CACHE' (size 65536, offset 8388608)
'COREBOOT' (CBFS, size 4128256, offset 8454656)

It is possible to perform either the write action or the CBFS add/remove actions on every section listed above.
To see the image's read-only sections as well, rerun with the -w option.
    CBFSPRINT  coreboot.rom

FMAP REGION: COREBOOT
Name                           Offset     Type           Size   Comp
cbfs master header             0x0        cbfs header        32 none
fallback/romstage              0x80       stage           78188 none
cpu_microcode_blob.bin         0x13280    microcode       26624 none
fallback/ramstage              0x19b00    stage          113629 none
vgaroms/seavgabios.bin         0x35740    raw             28160 none
config                         0x3c5c0    raw               366 none
revision                       0x3c780    raw               664 none
fallback/dsdt.aml              0x3ca80    raw             14889 none
cmos.default                   0x40500    cmos_default      256 none
vbt.bin                        0x40640    raw              1433 LZMA (4281 decompressed)
cmos_layout.bin                0x40c40    cmos_layout      1836 none
fallback/postcar               0x413c0    stage           19060 none
img/coreinfo                   0x45e80    simple elf      52781 none
img/nvramcui                   0x52d00    simple elf      68796 none
fallback/payload               0x63a00    simple elf      68665 none
payload_config                 0x74680    raw              1728 none
payload_revision               0x74d80    raw               236 none
img/tint                       0x74ec0    simple elf      48387 none
img/memtest                    0x80c00    simple elf      47417 none
etc/ps2-keyboard-spinup        0x8c580    raw                 8 none
(empty)                        0x8c5c0    null          3487704 none
bootblock                      0x3dfdc0   bootblock       65536 none

Built lenovo/x230 (ThinkPad X230)

	** WARNING **
coreboot has been built without an Intel Firmware Descriptor.
Never write a complete coreboot.rom without an IFD to your
board's flash chip! You can use flashrom's IFD or layout
parameters to flash only to the BIOS region.

4+0 records in
4+0 records out
4194304 bytes (4.2 MB, 4.0 MiB) copied, 0.0294928 s, 142 MB/s
user@coreboot-native:~/coreboot-builder-scripts$ cat x230/build/coreboot_lenovo-x230-complete.rom.sha256 
42b9909467100ace50760656356ad8f31d2d347df86ea732c8ff119f87bbdc57  /home/coreboot/cb_build/coreboot_lenovo-x230-complete.rom

tlaurion added a commit to tlaurion/heads that referenced this issue Sep 19, 2020
…" by disabling board "CONFIG_DROPBEAR=y" and "CONFIG_LINUX_E1000E" to save space per @alex-nitrokey test under osresearch#770 to fix osresearch#608
@tlaurion
Copy link
Collaborator

tlaurion commented Sep 19, 2020

Successfull build per tlaurion@b1886f3
Direct link to ROM to reproduce and comment: https://430-103208611-gh.circle-artifacts.com/0/build/x230-hotp-verification/coreboot.rom

If it works, it means that the maximum space available in CBFS for BIOS is really 0x700000 (I remember I did the calculations somewhere under Heads....)

EDIT: explanation is here

I'll try to test in next test batch @alex-nitrokey

tlaurion added a commit to tlaurion/heads that referenced this issue Oct 17, 2020
…" by disabling board "CONFIG_DROPBEAR=y" and "CONFIG_LINUX_E1000E" to save space per @alex-nitrokey test under osresearch#770 to fix osresearch#608
@tlaurion
Copy link
Collaborator

fixed under 30852aa

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Bounty Work could be funded bug help wanted
Projects
None yet
Development

No branches or pull requests

4 participants