]> git.saurik.com Git - apple/xnu.git/blobdiff - osfmk/i386/misc_protos.h
xnu-2050.18.24.tar.gz
[apple/xnu.git] / osfmk / i386 / misc_protos.h
index 025396b315b95ebcb42b98d167eac462847757d9..4186c623b5a3430a99f1f62794f5455bd948009f 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * Copyright (c) 2000-2007 Apple Inc. All rights reserved.
+ * Copyright (c) 2000-2010 Apple Inc. All rights reserved.
  *
  * @APPLE_OSREFERENCE_LICENSE_HEADER_START@
  * 
 struct boot_args;
 struct cpu_data;
 
+extern boolean_t virtualized;
+
 extern void            vstart(vm_offset_t);
-extern void            i386_init(vm_offset_t);
+extern void            i386_init(void);
+extern void            x86_init_wrapper(uintptr_t, uintptr_t) __attribute__((noreturn));
 extern void            i386_vm_init(
                                uint64_t,
                                boolean_t,
@@ -105,6 +108,9 @@ extern unsigned int mul_scale(
 /* Move arbitrarily-aligned data from one physical address to another */
 extern void bcopy_phys(addr64_t from, addr64_t to, vm_size_t nbytes);
 
+/* allow a function to get a quick virtual mapping of a physical page */
+extern int apply_func_phys(addr64_t src64, vm_size_t bytes, int (*func)(void * buffer, vm_size_t bytes, void * arg), void * arg);
+
 extern void ml_copy_phys(addr64_t, addr64_t, vm_size_t);
 
 /* Flush all cachelines for a page. */
@@ -128,7 +134,7 @@ extern void rtc_nanotime_init_commpage(void);
 
 extern void    rtc_sleep_wakeup(uint64_t base);
 
-extern void rtc_lapic_start_ticking(void);
+extern void    rtc_timer_start(void);
 
 extern void    rtc_clock_stepping(
                        uint32_t new_frequency,
@@ -137,6 +143,7 @@ extern void rtc_clock_stepped(
                        uint32_t new_frequency,
                        uint32_t old_frequency);
 extern void    rtc_clock_napped(uint64_t, uint64_t);
+extern void    rtc_clock_adjust(uint64_t);
 
 extern void     pmap_lowmem_finalize(void);
 
@@ -160,8 +167,11 @@ copy_debug_state32(x86_debug_state32_t *src, x86_debug_state32_t *target, boolea
 void 
 copy_debug_state64(x86_debug_state64_t *src, x86_debug_state64_t *target, boolean_t all);
 
+extern void act_machine_switch_pcb(thread_t old, thread_t new);
+
 /* Fast-restart parameters */
 #define FULL_SLAVE_INIT        (NULL)
 #define FAST_SLAVE_INIT        ((void *)(uintptr_t)1)
 
+uint64_t ml_early_random(void);
 #endif /* _I386_MISC_PROTOS_H_ */