Patrick Georgi submitted this change.
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(-)
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);
To view, visit change 51072. To unsubscribe, or for help writing mail filters, visit settings.