mirror of https://github.com/acidanthera/audk.git
Generic solution to handle reset failure in some special platforms.
Upon receiving RESET packet from HOST side, TARGET either sends OK packet and resets, or sends OK packet followed by TIMEOUT packet in 2 seconds indicating the reset failure. Signed-off-by: niruiyu Reviewed-by: vanjeff git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@12984 6f19259b-4bc3-4df7-8a09-765794883524
This commit is contained in:
parent
3e570e6e52
commit
b4ebbafff6
|
@ -2,7 +2,7 @@
|
|||
Transfer protocol defintions used by debug agent and host. It is only
|
||||
intended to be used by Debug related module implementation.
|
||||
|
||||
Copyright (c) 2010 - 2011, Intel Corporation. All rights reserved.<BR>
|
||||
Copyright (c) 2010 - 2012, Intel Corporation. All rights reserved.<BR>
|
||||
This program and the accompanying materials
|
||||
are licensed and made available under the terms and conditions of the BSD License
|
||||
which accompanies this distribution. The full text of the license may be found at
|
||||
|
@ -141,6 +141,7 @@ typedef struct {
|
|||
#define DEBUG_COMMAND_HALT_DEFERRED (DEBUG_COMMAND_RESPONSE | 5)
|
||||
#define DEBUG_COMMAND_HALT_PROCESSED (DEBUG_COMMAND_RESPONSE | 6)
|
||||
|
||||
#define DEBUG_COMMAND_TIMEOUT (DEBUG_COMMAND_RESPONSE | 7)
|
||||
#define DEBUG_COMMAND_NOT_SUPPORTED (DEBUG_COMMAND_RESPONSE | 15)
|
||||
|
||||
//
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
read/write debug packet to communication with HOST based on transfer
|
||||
protocol.
|
||||
|
||||
Copyright (c) 2010, Intel Corporation. All rights reserved.<BR>
|
||||
Copyright (c) 2010 - 2012, Intel Corporation. All rights reserved.<BR>
|
||||
This program and the accompanying materials
|
||||
are licensed and made available under the terms and conditions of the BSD License
|
||||
which accompanies this distribution. The full text of the license may be found at
|
||||
|
@ -637,9 +637,11 @@ CommandCommunication (
|
|||
|
||||
ResetCold ();
|
||||
//
|
||||
// Wait for reset
|
||||
// Assume system resets in 2 seconds, otherwise send TIMEOUT packet.
|
||||
// PCD can be used if 2 seconds isn't long enough for some platforms.
|
||||
//
|
||||
CpuDeadLoop ();
|
||||
MicroSecondDelay (2000000);
|
||||
SendAckPacket (DEBUG_COMMAND_TIMEOUT);
|
||||
break;
|
||||
|
||||
case DEBUG_COMMAND_GO:
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
/** @file
|
||||
Command header of for Debug Agent library instance.
|
||||
|
||||
Copyright (c) 2010 - 2011, Intel Corporation. All rights reserved.<BR>
|
||||
Copyright (c) 2010 - 2012, Intel Corporation. All rights reserved.<BR>
|
||||
This program and the accompanying materials
|
||||
are licensed and made available under the terms and conditions of the BSD License
|
||||
which accompanies this distribution. The full text of the license may be found at
|
||||
|
@ -30,6 +30,7 @@
|
|||
#include <Library/SynchronizationLib.h>
|
||||
#include <Library/LocalApicLib.h>
|
||||
#include <Library/DebugLib.h>
|
||||
#include <Library/TimerLib.h>
|
||||
|
||||
#include <TransferProtocol.h>
|
||||
#include <ImageDebugSupport.h>
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
## @file
|
||||
# Debug Agent library instance for Dxe Core and Dxe modules.
|
||||
#
|
||||
# Copyright (c) 2010, Intel Corporation. All rights reserved.<BR>
|
||||
# Copyright (c) 2010 - 2012, Intel Corporation. All rights reserved.<BR>
|
||||
#
|
||||
# This program and the accompanying materials
|
||||
# are licensed and made available under the terms and conditions of the BSD License
|
||||
|
@ -76,6 +76,7 @@
|
|||
SynchronizationLib
|
||||
MemoryAllocationLib
|
||||
LocalApicLib
|
||||
TimerLib
|
||||
|
||||
[Guids]
|
||||
gEfiDebugAgentGuid ## PRODUCES ## Configuration Table
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
## @file
|
||||
# Debug Agent library instance for SEC Core and PEI modules.
|
||||
#
|
||||
# Copyright (c) 2010 - 2011, Intel Corporation. All rights reserved.<BR>
|
||||
# Copyright (c) 2010 - 2012, Intel Corporation. All rights reserved.<BR>
|
||||
#
|
||||
# This program and the accompanying materials
|
||||
# are licensed and made available under the terms and conditions of the BSD License
|
||||
|
@ -72,6 +72,7 @@
|
|||
SynchronizationLib
|
||||
LocalApicLib
|
||||
DebugLib
|
||||
TimerLib
|
||||
|
||||
[Guids]
|
||||
gEfiDebugAgentGuid ## PRODUCES ## HOB
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
## @file
|
||||
# Debug Agent library instance for SMM modules.
|
||||
#
|
||||
# Copyright (c) 2010, Intel Corporation. All rights reserved.<BR>
|
||||
# Copyright (c) 2010 - 2012, Intel Corporation. All rights reserved.<BR>
|
||||
#
|
||||
# This program and the accompanying materials
|
||||
# are licensed and made available under the terms and conditions of the BSD License
|
||||
|
@ -71,6 +71,7 @@
|
|||
PcdLib
|
||||
SynchronizationLib
|
||||
LocalApicLib
|
||||
TimerLib
|
||||
|
||||
[Guids]
|
||||
gEfiDebugAgentGuid ## CONSUMES ## Configuration Table
|
||||
|
|
Loading…
Reference in New Issue