1 /** @file
2   Header file for debug timer to support debug agent library implementation.
3 
4   Copyright (c) 2010 - 2015, Intel Corporation. All rights reserved.<BR>
5   This program and the accompanying materials
6   are licensed and made available under the terms and conditions of the BSD License
7   which accompanies this distribution.  The full text of the license may be found at
8   http://opensource.org/licenses/bsd-license.php.
9 
10   THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
11   WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
12 
13 **/
14 
15 #ifndef _DEBUG_TIMER_H_
16 #define _DEBUG_TIMER_H_
17 
18 /**
19   Initialize CPU local APIC timer.
20 
21   @param[out] TimerFrequency  Local APIC timer frequency returned.
22   @param[in]  DumpFlag        If TRUE, dump Local APIC timer's parameter.
23 
24   @return   32-bit Local APIC timer init count.
25 **/
26 UINT32
27 InitializeDebugTimer (
28   OUT UINT32     *TimerFrequency,
29   IN  BOOLEAN    DumpFlag
30   );
31 
32 /**
33   Check if the timer is time out.
34 
35   @param[in] TimerCycle             Timer initial count.
36   @param[in] Timer                  The start timer from the begin.
37   @param[in] TimeoutTicker          Ticker number need time out.
38 
39   @return TRUE  Timer time out occurs.
40   @retval FALSE Timer does not time out.
41 
42 **/
43 BOOLEAN
44 IsDebugTimerTimeout (
45   IN UINT32                     TimerCycle,
46   IN UINT32                     Timer,
47   IN UINT32                     TimeoutTicker
48   );
49 
50 #endif
51 
52