cavium/bdk: Poke the watchdog while PCIe init
Prevent a reboot loop due to slow PCIe init. Poke the watchdog a few times. Change-Id: I03739d7dbad3072ccf77364fa4caba42c66ac643 Signed-off-by: Patrick Rudolph <patrick.rudolph@9elements.com> Reviewed-on: https://review.coreboot.org/27455 Reviewed-by: Philipp Deppenwiese <zaolin.daisuki@gmail.com> Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
This commit is contained in:
parent
bb11232210
commit
780114fb07
|
@ -61,6 +61,7 @@ void bdk_boot_pcie(void)
|
|||
{
|
||||
BDK_TRACE(INIT, "Initializing PCIe%d on Node %d\n", p, n);
|
||||
bdk_pcie_rc_initialize(n, p);
|
||||
bdk_watchdog_poke();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -549,6 +549,7 @@ static uint32_t cfg_read32_retry(bdk_node_t node, int pcie_port, int bus, int de
|
|||
return val;
|
||||
/* Failed, wait a little and try again */
|
||||
bdk_wait_usec(10000);
|
||||
bdk_watchdog_poke();
|
||||
} while (bdk_clock_get_count(BDK_CLOCK_TIME) < timeout);
|
||||
|
||||
BDK_TRACE(PCIE, "N%d.PCIe%d: Config read failed, can't communicate with device\n",
|
||||
|
@ -1123,6 +1124,7 @@ int bdk_pcie_rc_initialize(bdk_node_t node, int pcie_port)
|
|||
return -1;
|
||||
}
|
||||
retry_count++;
|
||||
bdk_watchdog_poke();
|
||||
}
|
||||
|
||||
/* Errata PCIE-28816: Link retrain initiated at GEN1 can cause PCIE
|
||||
|
|
Loading…
Reference in New Issue