Patrick Georgi has submitted this change. ( https://review.coreboot.org/c/coreboot/+/51072 )
Change subject: nb/intel/ironlake: Handle broken ME firmware ......................................................................
nb/intel/ironlake: Handle broken ME firmware
This allows booting without ME firmware, even though the 30-minute auto-shutdown still happens. Without this patch, an HP ProBook 6550b cannot get past the `setup_heci_uma` function call.
Change-Id: I446c02ac6034ede75cb873a2e676c40e4ef84b7c Signed-off-by: Angel Pons th3fanbus@gmail.com Reviewed-on: https://review.coreboot.org/c/coreboot/+/51072 Tested-by: build bot (Jenkins) no-reply@coreboot.org Reviewed-by: Patrick Rudolph siro@das-labor.org Reviewed-by: Paul Menzel paulepanter@users.sourceforge.net --- M src/northbridge/intel/ironlake/raminit.c 1 file changed, 5 insertions(+), 3 deletions(-)
Approvals: build bot (Jenkins): Verified Paul Menzel: Looks good to me, but someone else must approve Patrick Rudolph: Looks good to me, approved
diff --git a/src/northbridge/intel/ironlake/raminit.c b/src/northbridge/intel/ironlake/raminit.c index 9ba21d0..a5de86a 100644 --- a/src/northbridge/intel/ironlake/raminit.c +++ b/src/northbridge/intel/ironlake/raminit.c @@ -1725,7 +1725,7 @@
static void setup_heci_uma(struct raminfo *info) { - if (!info->memory_reserved_for_heci_mb && !(pci_read_config32(HECIDEV, 0x40) & 0x20)) + if (!info->memory_reserved_for_heci_mb || !(pci_read_config32(HECIDEV, 0x40) & 0x20)) return;
const u64 heci_uma_addr = @@ -3215,8 +3215,10 @@ ;
/* Wait for ME to be ready */ - intel_early_me_init(); - info.memory_reserved_for_heci_mb = intel_early_me_uma_size(); + if (intel_early_me_init() == 0) + info.memory_reserved_for_heci_mb = intel_early_me_uma_size(); + else + info.memory_reserved_for_heci_mb = 0;
/* before SPD */ timestamp_add_now(101);