1 /** @file 2 Platform specific Debug Agent abstraction for timer used by the agent. 3 4 The timer is used by the debugger to break into a running program. 5 6 Copyright (c) 2008 - 2010, Apple Inc. All rights reserved.<BR> 7 8 This program and the accompanying materials 9 are licensed and made available under the terms and conditions of the BSD License 10 which accompanies this distribution. The full text of the license may be found at 11 http://opensource.org/licenses/bsd-license.php 12 13 THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, 14 WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. 15 16 **/ 17 18 #ifndef __GDB_TIMER_LIB__ 19 #define __GDB_TIMER_LIB__ 20 21 22 23 /** 24 Setup all the hardware needed for the debug agents timer. 25 26 This function is used to set up debug enviroment. It may enable interrupts. 27 28 **/ 29 VOID 30 EFIAPI 31 DebugAgentTimerIntialize ( 32 VOID 33 ); 34 35 36 /** 37 Set the period for the debug agent timer. Zero means disable the timer. 38 39 @param[in] TimerPeriodMilliseconds Frequency of the debug agent timer. 40 41 **/ 42 VOID 43 EFIAPI 44 DebugAgentTimerSetPeriod ( 45 IN UINT32 TimerPeriodMilliseconds 46 ); 47 48 49 /** 50 Perform End Of Interrupt for the debug agent timer. This is called in the 51 interrupt handler after the interrupt has been processed. 52 53 **/ 54 VOID 55 EFIAPI 56 DebugAgentTimerEndOfInterrupt ( 57 VOID 58 ); 59 60 #endif 61 62 63