xref: /xnu-8020.121.3/config/MASTER.arm64.MacOSX (revision fdd8201d7b966f0c3ea610489d29bd841d358941) !
1#
2# Mach Operating System
3# Copyright (c) 1986 Carnegie-Mellon University
4# Copyright 2001-2018 Apple Inc.
5#
6# All rights reserved.  The CMU software License Agreement
7# specifies the terms and conditions for use and redistribution.
8#
9######################################################################
10#
11#  Master Apple configuration file (see the master machine independent
12#  configuration file for a description of the file format).
13#
14######################################################################
15#
16#  Standard Apple OS Configurations:
17#  -------- ----- -- ---------------
18#
19#  KERNEL_BASE =    [ arm64 medium msgb_large config_arrow config_requires_u32_munging config_delay_idle_sleep config_proc_udata_storage config_uexc config_darkboot ARM_EXTRAS_BASE ]
20#  KERNEL_RELEASE = [ KERNEL_BASE ]
21#  KERNEL_DEV =     [ KERNEL_BASE development mach_assert config_xnupost proc_ref_debug config_proc_resource_limits ]
22#  KERNEL_DEBUG =   [ KERNEL_BASE debug mach_assert config_xnupost config_waitq_stats config_workloop_debug config_proc_resource_limits ]
23#  BSD_BASE =       [ mach_bsd sysv_sem sysv_msg sysv_shm config_netboot config_imageboot config_workqueue psynch config_proc_uuid_policy config_coredump pgo config_personas ]
24#  BSD_RELEASE =    [ BSD_BASE ]
25#  BSD_DEV =        [ BSD_BASE config_vnguard ]
26#  BSD_DEBUG =      [ BSD_BASE config_vnguard ]
27#  FILESYS_BASE =   [ devfs fdesc fifo fs_compression config_protect config_mnt_rootsnap config_rosv_startup config_mount_vm config_mount_prebootrecovery config_basesystemroot config_fse quota namedstreams config_imgsrc_access config_triggers config_ext_resolver config_searchfs config_volfs config_appledouble nullfs config_mnt_suid config_firmlinks config_dataless_files config_union_mounts ]
28#  FILESYS_RELEASE= [ FILESYS_BASE ]
29#  FILESYS_DEV =    [ FILESYS_BASE config_iocount_trace ]
30#  FILESYS_DEBUG =  [ FILESYS_BASE config_iocount_trace ]
31#  NFS =            [ nfsclient nfsserver config_nfs4 config_nfs_gss ]
32#  SKYWALK_BASE =   [ skywalk config_nexus_user_pipe config_nexus_kernel_pipe config_nexus_monitor config_nexus_flowswitch config_nexus_netif ]
33#  SKYWALK_RELEASE = [ SKYWALK_BASE ]
34#  SKYWALK_DEV =    [ SKYWALK_BASE ]
35#  SKYWALK_DEBUG =  [ SKYWALK_BASE ]
36#  NETWORKING =     [ inet bpfilter dummynet traffic_mgt sendfile ah_all_crypto bond vlan gif stf ifnet_input_chk config_mbuf_jumbo if_bridge MULTIPATH if_fake remote_vif ]
37#  NETWORKING_RELEASE = [ NETWORKING ]
38#  NETWORKING_DEV = [ NETWORKING_RELEASE packet_mangler if_headless sixlowpan ]
39#  NETWORKING_DEBUG = [ NETWORKING_DEV ]
40#  VPN =            [ ipsec flow_divert necp content_filter ]
41#  PF =             [ pf pflog ]
42#  MULTIPATH =      [ multipath mptcp ]
43#if SOC_CONFIG_t8020 || SOC_IS_VIRTUALIZED
44#  HIBERNATION =    [ ]
45#else /*!(SOC_CONFIG_t8020 || SOC_IS_VIRTUALIZED)*/
46#  HIBERNATION =    [ ]
47#endif /*SOC_CONFIG_t8020 || SOC_IS_VIRTUALIZED*/
48#  IOKIT_BASE =     [ iokit iokitcpp no_kernel_hid config_sleep iokitstats HIBERNATION ]
49#  IOKIT_RELEASE =  [ IOKIT_BASE ]
50#  IOKIT_DEV =      [ IOKIT_BASE iotracking ]
51#  IOKIT_DEBUG =    [ IOKIT_BASE iotracking ]
52#  LIBKERN_BASE =   [ libkerncpp config_blocks config_kec_fips crypto_sha2 config_img4 ]
53#  LIBKERN_RELEASE =[ LIBKERN_BASE zlib ]
54#  LIBKERN_DEV =    [ LIBKERN_BASE zlib iotracking ]
55#  LIBKERN_DEBUG =  [ LIBKERN_BASE zlib iotracking ]
56#  PERF_DBG_BASE =  [ config_dtrace mach_kdp config_serial_kdp kdp_interactive_debugging config_kdp_coredump_encryption PERFMON_BASE kperf kpc ]
57#  PERF_DBG_RELEASE=[ PERF_DBG_BASE ist_kdebug ]
58#  PERF_DBG_DEV =   [ PERF_DBG_BASE lock_stats zleaks alternate_debugger interrupt_masked_debug config_debug_syscall_rejection sched_preemption_disable_debug ]
59#  PERF_DBG_DEBUG = [ PERF_DBG_BASE lock_stats zleaks alternate_debugger interrupt_masked_debug config_debug_syscall_rejection sched_preemption_disable_debug ]
60#  MACH_BASE =      [ mach slidable config_ecc_logging vc_progress_white mdebug ipc_debug ipc_lockfree_space importance_inheritance config_atm config_coalitions config_iosched config_sysdiagnose config_telemetry config_mach_bridge_recv_time config_quiesce_counter config_arm_pfz config_user_notification phys_write_acct config_service_port_info config_voucher_deprecated ]
61#  MACH_RELEASE =   [ MACH_BASE ]
62#  MACH_DEV =       [ MACH_BASE task_zone_info config_io_accounting importance_trace config_ledger_interval_max ]
63#  MACH_DEBUG =     [ MACH_BASE task_zone_info config_io_accounting importance_trace config_ledger_interval_max importance_debug ]
64#  SCHED_BASE =     [ config_sched_traditional config_sched_multiq config_sched_deferred_ast config_clutch config_sched_sfi config_sched_auto_join config_preadopt_tg ]
65#  SCHED_RELEASE =  [ SCHED_BASE ]
66#  SCHED_DEV =      [ SCHED_BASE ]
67#  SCHED_DEBUG =    [ SCHED_BASE config_sched_grrr config_sched_proto ]
68#  VM_BASE =        [ vm_pressure_events memorystatus config_code_decryption encrypted_swap config_background_queue ]
69#  VM_RELEASE =     [ VM_BASE ]
70#  VM_DEV =         [ VM_BASE dynamic_codesigning pgzalloc ]
71#  VM_DEBUG =       [ VM_BASE dynamic_codesigning pgzalloc ]
72#  VM_KASAN =       [ VM_BASE dynamic_codesigning config_kasan config_ubsan config_kcov config_ksancov ]
73#  SECURITY =       [ config_macf config_audit kernel_integrity config_csr config_csr_from_dt config_setuid config_kas_info config_secure_bsd_root config_arcade config_supplemental_signatures second_static_trust_cache reslide_shared_cache ]
74#  BASE =           [ PF VPN SECURITY NFS ]
75#  RELEASE =        [ BASE KERNEL_RELEASE BSD_RELEASE FILESYS_RELEASE SKYWALK_RELEASE NETWORKING_RELEASE IOKIT_RELEASE LIBKERN_RELEASE    PERF_DBG_RELEASE MACH_RELEASE SCHED_RELEASE VM_RELEASE ]
76#  DEVELOPMENT =    [ BASE KERNEL_DEV     BSD_DEV     FILESYS_DEV     SKYWALK_DEV     NETWORKING_DEV     IOKIT_DEV     LIBKERN_DEV        PERF_DBG_DEV     MACH_DEV     SCHED_DEV     VM_DEV     ]
77#  DEBUG =          [ BASE KERNEL_DEBUG   BSD_DEBUG   FILESYS_DEBUG   SKYWALK_DEBUG   NETWORKING_DEBUG   IOKIT_DEBUG   LIBKERN_DEBUG      PERF_DBG_DEBUG   MACH_DEBUG   SCHED_DEBUG   VM_DEBUG   ]
78#  KASAN =          [ BASE KERNEL_DEV     BSD_DEV     FILESYS_DEV     SKYWALK_DEV     NETWORKING_DEV     IOKIT_DEV     LIBKERN_DEV        PERF_DBG_DEV     MACH_DEV     SCHED_DEV     VM_KASAN   ]
79#
80######################################################################
81#
82machine		"arm64"						# <arm64>
83
84makeoptions	OSFMK_MACHINE = "arm64"				# <mach>
85
86options		COUNT_SYSCALLS		# count bsd system calls 	# <countcalls>
87options     TRASH_VFP_ON_SAVE   # <debug,trash_vfp>
88options		ALTERNATE_DEBUGGER	# <alternate_debugger>
89
90options   CONFIG_VNODES=1024		# <xsmall>
91
92options   CONFIG_FREEZE_SUSPENDED_MIN=4		# <xsmall>
93
94options	  CONFIG_MACH_APPROXIMATE_TIME
95
96options   CONFIG_KERNEL_INTEGRITY		# <kernel_integrity>
97
98options CONFIG_MACF_LAZY_VNODE_LABELS   # Turn on labels, don't preallocate
99
100options CONFIG_HYPERVISOR_PUBLIC   # unrestricted entitlement for hypervisor
101
102options   CONFIG_RESLIDE_SHARED_CACHE		# <reslide_shared_cache>
103