+/*
+ * The following are in pmCPU.c not machine_routines.c.
+ */
+extern void ml_set_maxsnoop(uint32_t maxdelay);
+extern unsigned ml_get_maxsnoop(void);
+extern void ml_set_maxbusdelay(uint32_t mdelay);
+extern uint32_t ml_get_maxbusdelay(void);
+extern void ml_set_maxintdelay(uint64_t mdelay);
+extern uint64_t ml_get_maxintdelay(void);
+extern boolean_t ml_get_interrupt_prewake_applicable(void);
+
+
+extern uint64_t tmrCvt(uint64_t time, uint64_t conversion);
+
+extern uint64_t ml_cpu_int_event_time(void);
+
+#endif /* KERNEL_PRIVATE */
+
+/* Get Interrupts Enabled */
+boolean_t ml_get_interrupts_enabled(void);
+
+/* Set Interrupts Enabled */
+boolean_t ml_set_interrupts_enabled(boolean_t enable);
+
+/* Check if running at interrupt context */
+boolean_t ml_at_interrupt_context(void);
+
+/* Zero bytes starting at a physical address */
+void bzero_phys(
+ addr64_t phys_address,
+ uint32_t length);
+
+/* Bytes available on current stack */
+vm_offset_t ml_stack_remaining(void);
+
+#if CONFIG_COUNTERS
+void ml_get_csw_threads(thread_t * /*old*/, thread_t * /*new*/);
+#endif /* CONFIG_COUNTERS */
+
+__END_DECLS
+
+#ifdef XNU_KERNEL_PRIVATE
+boolean_t ml_fpu_avx_enabled(void);
+void interrupt_latency_tracker_setup(void);
+void interrupt_reset_latency_stats(void);
+void interrupt_populate_latency_stats(char *, unsigned);