Bug #436
closedBerknip doesn't want to boot with the built image
0%
Description
I was trying to flash the build 4.18 Coreboot image for my HP c645, as only RW_LEGACY image was available for this machine at MrChromebox.
Now the machine, heat's the CPU if I plug in the USB-C adapter or the battery, but shows no image at all.
I can manage to flash back the original image, I just wanted to highlight this.
Build logs are added as attachments.
I compared the CBFS regions side by side and it seems:
- Google build only 1 microcode blob, while I have 3 and
- the VBGFX.bin is missing at my build, however however the optionroms for the iGP is added.
apu/amdfw 0x5aafc0 raw 13155 | apu/amdfw 0x5aafc0 amdfw 12574
bootblock 0x77afc0 bootblock 655 | build_info 0x27e00 raw
cbfs master header 0x0 cbfs header | cbfs_master_header 0x0 cbfs header
config 0x2b840 raw 8 | config 0x27940 raw 4
cpu_microcode_blob.bin 0xd5c0 microcode 96 | cpu_microcode_8180.bin 0x7a80 microcode 32
(empty) 0x48280 null 33 | cpu_microcode_8181.bin 0x8740 microcode 32
(empty) 0x52d3c0 null 5150 | cpu_microcode_8201.bin 0x9400 microcode 32
(empty) 0x6ec300 null 5848 | (empty) 0x6de000 null 7085
fallback/dsdt.aml 0x2bf00 raw 157 | (empty) 0x81c00 null 54117
fallback/payload 0x511a00 simple elf 1129 | fallback/dsdt.aml 0x27ec0 raw 155
fallback/ramstage 0xfbc0 (unknown) 1136 | fallback/payload 0x6fac0 simple elf 718
fallback/romstage 0x80 (unknown) 545 | fallback/ramstage 0xa0c0 stage 1208
> fallback/romstage 0x80 stage 310
FMAP REGION: COREBOOT FMAP REGION: COREBOOT
font.bin 0x4e4a80 raw 50 | fspm.bin 0x2bc00 fsp 996
fspm.bin 0x2fcc0 fsp 994 | fsps.bin 0x44180 fsp 697
fsps.bin 0x48fc0 fsp 692 | header_pointer 0x78afc0 cbfs header
locale_ar.bin 0x46dcc0 raw 789 <
locale_bg.bin 0x157d40 raw 1109 <
locale_bn.bin 0x1185c0 raw 981 <
locale_ca.bin 0x1d9e40 raw 969 <
locale_cs.bin 0x42c980 raw 954 <
locale_da.bin 0x1f1980 raw 938 <
locale_de.bin 0x9e1c0 raw 1121 <
locale_el.bin 0xf95c0 raw 1269 <
locale_en.bin 0x4fd040 raw 843 <
locale_es-419.bin 0x2b1200 raw 1058 <
locale_es.bin 0x4145c0 raw 991 <
locale_et.bin 0x269400 raw 858 <
locale_fa.bin 0x4b0900 raw 787 <
locale_fi.bin 0x2cb000 raw 902 <
locale_fil.bin 0x1a8500 raw 1005 <
locale_fr.bin 0x24ee40 raw 1078 <
locale_gu.bin 0x3e8f40 raw 824 <
locale_he.bin 0xd1340 raw 559 <
locale_hi.bin 0x221780 raw 796 <
locale_hr.bin 0x38a380 raw 970 <
locale_hu.bin 0xdee00 raw 1084 <
locale_id.bin 0x3a1f00 raw 924 <
locale_it.bin 0x372a00 raw 965 <
locale_ja.bin 0x297e40 raw 1032 <
locale_kn.bin 0x33f1c0 raw 1190 <
locale_ko.bin 0x443ec0 raw 646 <
locale_lt.bin 0x3fd1c0 raw 951 <
locale_lv.bin 0x4e5e40 raw 946 <
locale_ml.bin 0x4c3d40 raw 1343 <
locale_mr.bin 0x318700 raw 733 <
locale_ms.bin 0x35c340 raw 917 <
locale_nb.bin 0x747c0 raw 898 <
locale_nl.bin 0x481140 raw 969 <
locale_pl.bin 0x2e1100 raw 1092 <
locale_pt-BR.bin 0x3d0580 raw 1006 <
locale_pt-PT.bin 0x208840 raw 1021 <
locale_ro.bin 0x498c40 raw 973 <
locale_ru.bin 0x234f00 raw 1062 <
locales 0x48180 raw 1 <
locale_sk.bin 0x3b88c0 raw 974 <
locale_sl.bin 0xb9840 raw 969 <
locale_sr.bin 0x453bc0 raw 1066 <
locale_sv.bin 0x172f40 raw 951 <
locale_ta.bin 0x18a380 raw 1231 <
locale_te.bin 0x27e3c0 raw 1049 <
locale_th.bin 0x146d00 raw 695 <
locale_tr.bin 0x302ec0 raw 880 <
locale_uk.bin 0x1c0e40 raw 1023 <
locale_vi.bin 0x130580 raw 919 <
locale_zh-CN.bin 0x8a700 raw 804 <
locale_zh-TW.bin 0x32a5c0 raw 849 <
Name Offset Type Size Name Offset Type Size
pci1002,15d8,c1.rom 0x59ec0 optionrom 542 | payload_config 0x81400 raw 16
pci1002,15dd,c4.rom 0x67340 optionrom 542 | payload_revision 0x81ac0 raw 2
revision 0x2bc00 raw 6 | pci1002,15d8,c1.rom 0x55240 optionrom 542
vbgfx.bin 0x2fbc00 raw 292 | pci1002,15dd,c4.rom 0x62680 optionrom 542
> revision 0x27b00 raw 7
Files
Updated by Balazs Vinarz about 2 years ago
I used the 4ed38e55a098024166f8cdbef24239bce453c2e5 commit as the version for amd_blobs repo.
Updated by Nico Huber about 2 years ago
Hi, just one quick question (I'm not an expert on AMD builds). Did you enable vboot in your build?
AIUI, the PSP binaries that come with the Chromebooks only boot if there is a verstage embedded. I'm not sure about the binaries in the blobs repo. There was a patch to build a psp-verstage without vboot, alas abandoned.
Updated by Balazs Vinarz about 2 years ago
- File google_berknip.conf google_berknip.conf added
- File coreboot_berknip.conf coreboot_berknip.conf added
Nico Huber wrote in #note-2:
Hi, just one quick question (I'm not an expert on AMD builds). Did you enable vboot in your build?
AIUI, the PSP binaries that come with the Chromebooks only boot if there is a verstage embedded. I'm not sure about the binaries in the blobs repo. There was a patch to build a psp-verstage without vboot, alas abandoned.
No, I tried to build the vanilla configuration for Berknip. That's pretty much the case for the version 4.17.
Couple of minutes ago I was looking at the configuration for the backup and there are some other configurations for this board, which the vanilla configuration doesn't have, like:
CONFIG_FRAMEBUFFER_VESA_MODE_USER=y
CONFIG_FRAMEBUFFER_VESA_MODE=0x1D4
The VBOOT was not enabled at all.
Unfortunately the flash chip can be burned if I remove it from the board.
Updated by Matt DeVillier about 2 years ago
here is the correct defconfig for berknip, boot tested w/4.18 tag
CONFIG_USE_AMD_BLOBS=y
CONFIG_VENDOR_GOOGLE=y
CONFIG_NO_POST=y
# CONFIG_CONSOLE_SERIAL is not set
CONFIG_VBOOT=y
CONFIG_BOARD_GOOGLE_BERKNIP=y
CONFIG_FRAMEBUFFER_SET_VESA_MODE=y
CONFIG_FRAMEBUFFER_VESA_MODE_USER=y
CONFIG_FRAMEBUFFER_VESA_MODE=0x1d4
# CONFIG_SMMSTORE is not set
CONFIG_PAYLOAD_EDK2=y
CONFIG_EDK2_BOOT_MANAGER_ESCAPE=y
CONFIG_EDK2_FOLLOW_BGRT_SPEC=y
# CONFIG_EDK2_FULL_SCREEN_SETUP is not set
CONFIG_EDK2_CUSTOM_BUILD_PARAMS=""
vboot is required, the PSP will not release x86 from reset without it.
Updated by Raul Rangel about 2 years ago
You can try pinging the following bug: https://issuetracker.google.com/issues/235109717
Updated by Balazs Vinarz about 2 years ago
Matt DeVillier wrote in #note-4:
here is the correct defconfig for berknip, boot tested w/4.18 tag
CONFIG_USE_AMD_BLOBS=y CONFIG_VENDOR_GOOGLE=y CONFIG_NO_POST=y # CONFIG_CONSOLE_SERIAL is not set CONFIG_VBOOT=y CONFIG_BOARD_GOOGLE_BERKNIP=y CONFIG_FRAMEBUFFER_SET_VESA_MODE=y CONFIG_FRAMEBUFFER_VESA_MODE_USER=y CONFIG_FRAMEBUFFER_VESA_MODE=0x1d4 # CONFIG_SMMSTORE is not set CONFIG_PAYLOAD_EDK2=y CONFIG_EDK2_BOOT_MANAGER_ESCAPE=y CONFIG_EDK2_FOLLOW_BGRT_SPEC=y # CONFIG_EDK2_FULL_SCREEN_SETUP is not set CONFIG_EDK2_CUSTOM_BUILD_PARAMS=""
vboot is required, the PSP will not release x86 from reset without it.
Doesn't seem to work either, I assume some kind of restart noise from the coil whines and the fan get's rotated some spins at 10 seconds now.
Updated by Balazs Vinarz about 2 years ago
Balazs Vinarz wrote in #note-6:
Matt DeVillier wrote in #note-4:
here is the correct defconfig for berknip, boot tested w/4.18 tag
CONFIG_USE_AMD_BLOBS=y CONFIG_VENDOR_GOOGLE=y CONFIG_NO_POST=y # CONFIG_CONSOLE_SERIAL is not set CONFIG_VBOOT=y CONFIG_BOARD_GOOGLE_BERKNIP=y CONFIG_FRAMEBUFFER_SET_VESA_MODE=y CONFIG_FRAMEBUFFER_VESA_MODE_USER=y CONFIG_FRAMEBUFFER_VESA_MODE=0x1d4 # CONFIG_SMMSTORE is not set CONFIG_PAYLOAD_EDK2=y CONFIG_EDK2_BOOT_MANAGER_ESCAPE=y CONFIG_EDK2_FOLLOW_BGRT_SPEC=y # CONFIG_EDK2_FULL_SCREEN_SETUP is not set CONFIG_EDK2_CUSTOM_BUILD_PARAMS=""
vboot is required, the PSP will not release x86 from reset without it.
Doesn't seem to work either, I assume some kind of restart noise from the coil whines and the fan get's rotated some spins at 10 seconds now.
I gave it another try, because I wasn't able to read back the content I wrote to the SPI chip previously.
So I restored the original factory firmware and updated the Coreboot image with flashrom's internal programmer.
So it's working not, there are some minor glitches like the amdgpu kernel driver doesn't want to work just like the acpi poweroff.
Can we update the default config for Berknip to contain the VBOOT?
Updated by Martin Roth almost 2 years ago
- Status changed from New to Resolved
This is actually a much bigger question than just berknip. Many of the coreboot "default" configs are not bootable, either due to requiring binaries that are not redistributable.
I've added that question to the next coreboot leadership meeting.
Since the berknip board is working and the problem was a config issue, I'm marking this as resolved.