cbfstool: fix FIT entry checksum type value for ucode entries
commit c1072f2
[cbfstool: Update FIT entries in the second bootblock]
incorrectly changed the value of type_checksum_valid for microcode
entries from FIT_TYPE_MICROCODE to 0, breaking microcode loading on
Skylake/FSP1.1 devices (and others?). Correct this by reverting to the
previous value.
Test: build/boot google/chell, observe FspTempRamInit no longer fails,
device boots as expected.
Change-Id: Ib2a90137c7d4acf6ecd9f06cb6f856bd7e783676
Signed-off-by: Matt DeVillier <matt.devillier@gmail.com>
Reviewed-on: https://review.coreboot.org/27266
Reviewed-by: Aaron Durbin <adurbin@chromium.org>
Reviewed-by: Naresh Solanki <naresh.solanki@intel.com>
Reviewed-by: Nico Huber <nico.h@gmx.de>
Reviewed-by: Furquan Shaikh <furquan@google.com>
Reviewed-by: Arthur Heymans <arthur@aheymans.xyz>
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
This commit is contained in:
parent
cbe73ea28b
commit
0a36c2ce15
|
@ -182,8 +182,7 @@ static void update_fit_ucode_entry(struct fit_table *fit,
|
||||||
* rather from the MCU header, hence we can assign zero here
|
* rather from the MCU header, hence we can assign zero here
|
||||||
*/
|
*/
|
||||||
entry->size_reserved = 0x0000;
|
entry->size_reserved = 0x0000;
|
||||||
/* Checksum valid should be cleared for MCU */
|
entry->type_checksum_valid = FIT_TYPE_MICROCODE;
|
||||||
entry->type_checksum_valid = 0;
|
|
||||||
entry->version = FIT_MICROCODE_VERSION;
|
entry->version = FIT_MICROCODE_VERSION;
|
||||||
entry->checksum = 0;
|
entry->checksum = 0;
|
||||||
fit_entry_add_size(&fit->header, sizeof(struct fit_entry));
|
fit_entry_add_size(&fit->header, sizeof(struct fit_entry));
|
||||||
|
|
Loading…
Reference in New Issue