From 969eba7b0df70c9aa261eaf005085568b88de87c Mon Sep 17 00:00:00 2001 From: andrewfish Date: Sat, 3 Apr 2010 00:41:42 +0000 Subject: Add the beginning of a GDB based Debug Agent. IA-32 and X64 don't have low level interrupt code yet. I've been testing on ARM. git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@10334 6f19259b-4bc3-4df7-8a09-765794883524 --- EmbeddedPkg/Include/Library/DebugAgentTimerLib.h | 62 ++++++++++++++++++++++++ 1 file changed, 62 insertions(+) create mode 100755 EmbeddedPkg/Include/Library/DebugAgentTimerLib.h (limited to 'EmbeddedPkg/Include') diff --git a/EmbeddedPkg/Include/Library/DebugAgentTimerLib.h b/EmbeddedPkg/Include/Library/DebugAgentTimerLib.h new file mode 100755 index 0000000000..fed071ad77 --- /dev/null +++ b/EmbeddedPkg/Include/Library/DebugAgentTimerLib.h @@ -0,0 +1,62 @@ +/** @file + Platform specific Debug Agent abstraction for timer used by the agent. + + The timer is used by the debugger to break into a running program. + + Copyright (c) 2008-2010, Apple Inc. All rights reserved. + + All rights reserved. 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 + http://opensource.org/licenses/bsd-license.php + + THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, + WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. + +**/ + +#ifndef __GDB_TIMER_LIB__ +#define __GDB_TIMER_LIB__ + + + +/** + Setup all the hardware needed for the debug agents timer. + + This function is used to set up debug enviroment. It may enable interrupts. + +**/ +VOID +EFIAPI +DebugAgentTimerIntialize ( + VOID + ); + + +/** + Set the period for the debug agent timer. Zero means disable the timer. + + @param[in] TimerPeriodMilliseconds Frequency of the debug agent timer. + +**/ +VOID +EFIAPI +DebugAgentTimerSetPeriod ( + IN UINT32 TimerPeriodMilliseconds + ); + + +/** + Perform End Of Interrupt for the debug agent timer. This is called in the + interrupt handler after the interrupt has been processed. + +**/ +VOID +EFIAPI +DebugAgentTimerEndOfInterrupt ( + VOID + ); + +#endif + + \ No newline at end of file -- cgit v1.2.3