]> git.saurik.com Git - apple/xnu.git/blobdiff - osfmk/arm/cpu_internal.h
xnu-6153.121.1.tar.gz
[apple/xnu.git] / osfmk / arm / cpu_internal.h
index 227863b4c84159a18df34cb7dff28e9684d807b1..8e4a31454475b45bb32aaab147b6fbc7702b95bd 100644 (file)
 /*
  * @OSF_COPYRIGHT@
  */
-#ifndef        _ARM_CPU_INTERNAL_H_
-#define        _ARM_CPU_INTERNAL_H_
+#ifndef _ARM_CPU_INTERNAL_H_
+#define _ARM_CPU_INTERNAL_H_
 
 
 #include <mach/kern_return.h>
 #include <arm/cpu_data_internal.h>
 
-extern void                                            cpu_bootstrap(
-                                                                               void);
+extern void                                             cpu_bootstrap(
+       void);
 
-extern void                                            cpu_init(
-                                                                               void);
+extern void                                             cpu_init(
+       void);
 
-extern void                                            cpu_timebase_init(boolean_t from_boot);
+extern void                                             cpu_timebase_init(boolean_t from_boot);
 
-extern kern_return_t                   cpu_signal(
-                                                                               cpu_data_t              *target,
-                                                                               unsigned int    signal,
-                                                                               void                    *p0,
-                                                                               void                    *p1);
+extern kern_return_t                    cpu_signal(
+       cpu_data_t              *target,
+       unsigned int    signal,
+       void                    *p0,
+       void                    *p1);
 
-extern kern_return_t                   cpu_signal_deferred(
-                                                                               cpu_data_t              *target);
+extern kern_return_t                    cpu_signal_deferred(
+       cpu_data_t              *target);
 
-extern void                    cpu_signal_cancel(
-                                                                               cpu_data_t              *target);
+extern void                     cpu_signal_cancel(
+       cpu_data_t              *target);
 
-#define SIGPnop                        0x00000000U             /* Send IPI with no service */
-#define SIGPdec                        0x00000001U             /* Request decremeter service */
-#define        SIGPchud                0x00000002U             /* CHUD CPU Signal request types */
-#define SIGPxcall              0x00000004U             /* Call a function on a processor */
-#define SIGPast                        0x00000008U             /* Request AST check */
-#define SIGPdebug              0x00000010U             /* Request Debug call */
-#define SIGPLWFlush            0x00000020UL            /* Request LWFlush call */
-#define SIGPLWClean            0x00000040UL            /* Request LWClean call */
-#define SIGPkptimer            0x00000100U             /* Request kperf timer */
+#define SIGPnop                 0x00000000U             /* Send IPI with no service */
+#define SIGPdec                 0x00000001U             /* Request decremeter service */
+/* 0x2U unused */
+#define SIGPxcall               0x00000004U             /* Call a function on a processor */
+#define SIGPast                 0x00000008U             /* Request AST check */
+#define SIGPdebug               0x00000010U             /* Request Debug call */
+#define SIGPLWFlush             0x00000020UL            /* Request LWFlush call */
+#define SIGPLWClean             0x00000040UL            /* Request LWClean call */
+#define SIGPkptimer             0x00000100U             /* Request kperf timer */
+#define SIGPxcallImm            0x00000200U             /* Send a cross-call, fail if already pending */
 
-#define SIGPdisabled           0x80000000U             /* Signal disabled */
-
-extern void *                                  chudxnu_cpu_alloc(
-                                                                               boolean_t boot_processor);
-
-extern void                                            chudxnu_cpu_free(
-                                                                               void *per_proc_chud);
+#define SIGPdisabled            0x80000000U             /* Signal disabled */
 
 extern unsigned int real_ncpus;
 
+#if defined(CONFIG_XNUPOST) && __arm64__
+extern void arm64_ipi_test(void);
+#endif /* defined(CONFIG_XNUPOST) && __arm64__ */
+
+#if defined(KERNEL_INTEGRITY_CTRR)
+extern void init_ctrr_cpu_start_lock(void);
+extern lck_spin_t ctrr_cpu_start_lck;
+extern bool ctrr_cluster_locked[__ARM_CLUSTER_COUNT__];
+#endif /* defined(KERNEL_INTEGRITY_CTRR) */
 
-#endif /* _ARM_CPU_INTERNAL_H_ */
+#endif  /* _ARM_CPU_INTERNAL_H_ */