soc/intel/common/cse: skip heci_init() if HECI1 is disabled

If the HECI1 PCI device is disabled, either via devicetree or other
method (HAP, me_cleaner), then we don't want/need to program a BAR,
set the PCI config, or call heci_reset(), as the latter will result
in a 15s timeout delay when booting.

Test: build/boot Purism Librem 13v2, verify heci_reset()
timeout delay is no longer present.

Change-Id: I0babe417173d10e37327538dc9e7aae980225367
Signed-off-by: Matt DeVillier <matt.devillier@puri.sm>
Reviewed-on: https://review.coreboot.org/c/coreboot/+/61407
Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
Reviewed-by: Tim Wawrzynczak <twawrzynczak@chromium.org>
Reviewed-by: Subrata Banik <subratabanik@google.com>
This commit is contained in:
Matt DeVillier 2022-01-25 19:48:38 -06:00 committed by Felix Held
parent f9e9250d46
commit f711bf03a6
1 changed files with 4 additions and 0 deletions

View File

@ -94,6 +94,10 @@ void heci_init(uintptr_t tempbar)
u16 pcireg;
/* Check if device enabled */
if (!is_cse_enabled())
return;
/* Assume it is already initialized, nothing else to do */
if (get_cse_bar(dev))
return;