2 * Copyright (c) 2004-2005 Apple Computer, Inc. All rights reserved.
4 * @APPLE_LICENSE_HEADER_START@
6 * The contents of this file constitute Original Code as defined in and
7 * are subject to the Apple Public Source License Version 1.1 (the
8 * "License"). You may not use this file except in compliance with the
9 * License. Please obtain a copy of the License at
10 * http://www.apple.com/publicsource and read it before using this file.
12 * This Original Code and all software distributed under the License are
13 * distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, EITHER
14 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
15 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
16 * FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT. Please see the
17 * License for the specific language governing rights and limitations
20 * @APPLE_LICENSE_HEADER_END@
26 * @APPLE_FREE_COPYRIGHT@
30 * Purpose: Routines for handling the machine independent
37 #define EndOfAllTime 0xFFFFFFFFFFFFFFFFULL
39 /* extern void rtclock_intr(int inuser, uint64_t iaddr); - this is currently MD */
40 typedef void (*etimer_intr_t
)(int, uint64_t);
42 extern int setTimerReq(void);
43 extern void etimer_intr(int inuser
, uint64_t iaddr
);
45 extern void etimer_set_deadline(uint64_t deadline
);
46 extern int setPop(uint64_t time
);
48 extern void etimer_resync_deadlines(void);
50 extern uint32_t rtclock_tick_interval
;
52 extern uint64_t tsc_to_nanoseconds(uint64_t abstime
);
54 #if 0 /* this is currently still MD */
56 struct rtclock_timer_t
{
59 /*boolean_t*/ is_set
:1,
64 typedef struct rtclock_timer_t rtclock_timer_t
;
68 #endif /* _ETIMER_H_ */