]> git.saurik.com Git - apple/xnu.git/blobdiff - osfmk/i386/machine_routines.h
xnu-344.2.tar.gz
[apple/xnu.git] / osfmk / i386 / machine_routines.h
index 920164a3b0d3b97c808cbaae001602764e2ededc..4908a08f5a5244963c6dc1aef29f40a993e51fbc 100644 (file)
 #include <kern/kern_types.h>
 #include <pexpert/pexpert.h>
 
-
-#if    defined(PEXPERT_KERNEL_PRIVATE) || defined(MACH_KERNEL_PRIVATE)
-/* IO memory map services */
-
-/* Map memory map IO space */
-vm_offset_t ml_io_map(
-       vm_offset_t phys_addr, 
-       vm_size_t size);
-
-/* boot memory allocation */
-vm_offset_t ml_static_malloc(
-       vm_size_t size);
-
-#endif
-
-vm_offset_t
-ml_static_ptovirt(
-       vm_offset_t);
-
-void ml_static_mfree(
-       vm_offset_t,
-       vm_size_t);
-
-/* virtual to physical on wired pages */
-vm_offset_t ml_vtophys(
-       vm_offset_t vaddr);
+#include <sys/appleapiopts.h>
 
 /* Interrupt handling */
 
@@ -72,6 +47,19 @@ boolean_t ml_at_interrupt_context(void);
 /* Generate a fake interrupt */
 void ml_cause_interrupt(void);
 
+void ml_get_timebase(unsigned long long *timestamp);
+
+/* Type for the IPI Hander */
+typedef void (*ipi_handler_t)(void);
+
+/* Register a processor */
+kern_return_t ml_processor_register(
+       cpu_id_t cpu_id,
+       vm_offset_t start_paddr,
+       processor_t *processor,
+       ipi_handler_t *ipi_handler,
+       boolean_t boot_cpu);
+
 /* Initialize Interrupts */
 void ml_install_interrupt_handler(
     void *nub,
@@ -80,6 +68,36 @@ void ml_install_interrupt_handler(
     IOInterruptHandler handler,
     void *refCon);
 
+#ifdef __APPLE_API_UNSTABLE
+vm_offset_t
+ml_static_ptovirt(
+       vm_offset_t);
+
+void ml_static_mfree(
+       vm_offset_t,
+       vm_size_t);
+
+/* virtual to physical on wired pages */
+vm_offset_t ml_vtophys(
+       vm_offset_t vaddr);
+
+#endif /* __APPLE_API_UNSTABLE */
+
+#ifdef __APPLE_API_PRIVATE
+#if    defined(PEXPERT_KERNEL_PRIVATE) || defined(MACH_KERNEL_PRIVATE)
+/* IO memory map services */
+
+/* Map memory map IO space */
+vm_offset_t ml_io_map(
+       vm_offset_t phys_addr, 
+       vm_size_t size);
+
+/* boot memory allocation */
+vm_offset_t ml_static_malloc(
+       vm_size_t size);
+
+#endif /* PEXPERT_KERNEL_PRIVATE || MACH_KERNEL_PRIVATE  */
+
 #ifdef  MACH_KERNEL_PRIVATE 
 /* check pending timers */
 #define machine_clock_assist()
@@ -88,19 +106,18 @@ void machine_idle(void);
 
 void machine_signal_idle(
         processor_t processor);
-#endif
+#endif /* MACH_KERNEL_PRIVATE */
 
-/* Type for the IPI Hander */
-typedef void (*ipi_handler_t)(void);
+void ml_thread_policy(
+       thread_t thread,
+       unsigned policy_id,
+       unsigned policy_info);
 
-/* Register a processor */
-kern_return_t ml_processor_register(
-       cpu_id_t cpu_id,
-       vm_offset_t start_paddr,
-       processor_t *processor,
-       ipi_handler_t *ipi_handler,
-       boolean_t boot_cpu);
+#define MACHINE_GROUP                                  0x00000001
+#define MACHINE_NETWORK_GROUP                  0x10000000
+#define MACHINE_NETWORK_WORKLOOP               0x00000001
+#define MACHINE_NETWORK_NETISR                 0x00000002
 
-void ml_get_timebase(unsigned long long *timestamp);
+#endif /* __APPLE_API_PRIVATE */
 
 #endif /* _I386_MACHINE_ROUTINES_H_ */