soc/intel/cannonlake: Invoke pmc and hard reset only if CSE fails to reset
If CSE fails to do a global reset with the calling sequence of heci reset/send/receive, then invoke pmc and hard reset. TEST= Force global reset from early or late romstage. The function send_heci_reset_message has the calling sequence of heci reset/send/receive. It is observed timed out error (associated with heci_receive) occurs only if global reset is forced during early romstage. If global reset is trigged at late stage (i.e, after fsp_memory_init), then no timed out error and CSE handles reset properly. Change-Id: I5bb12554e5745d7704a1b684a3a51034bb35f787 Signed-off-by: John Zhao <john.zhao@intel.com> Reviewed-on: https://review.coreboot.org/22549 Reviewed-by: Aaron Durbin <adurbin@chromium.org> Reviewed-by: Lijian Zhao <lijian.zhao@intel.com> Tested-by: build bot (Jenkins) <no-reply@coreboot.org>
This commit is contained in:
parent
8f06ce3512
commit
bfd62fabc9
|
@ -80,7 +80,9 @@ static int send_heci_reset_message(void)
|
||||||
void do_global_reset(void)
|
void do_global_reset(void)
|
||||||
{
|
{
|
||||||
/* Ask CSE to do the global reset */
|
/* Ask CSE to do the global reset */
|
||||||
send_heci_reset_message();
|
if (!send_heci_reset_message())
|
||||||
|
return;
|
||||||
|
|
||||||
/* global reset if CSE fail to reset */
|
/* global reset if CSE fail to reset */
|
||||||
pmc_global_reset_enable(1);
|
pmc_global_reset_enable(1);
|
||||||
hard_reset();
|
hard_reset();
|
||||||
|
|
Loading…
Reference in New Issue