• Become a Premium Member for $25/year with no ads to improve your community experience. Upgrade to Pro Account for faster response and no wait times!

INFO Common Boot Args for macOS [Clover/OpenCore]

EliteMacx86

Administrator
Staff member
Joined
Jul 22, 2018
Messages
8,461
Motherboard
Supermicro X11SPA-T
CPU
Intel Xeon W-3275 28 Core
Graphics
2xAMD RX 580 8GB
OS X/macOS
13.x
Bootloader
  1. OpenCore (UEFI)
Mac
  1. Mac mini
  2. MacBook Pro
Mobile Phone
  1. Android
  2. iOS
Common Boot Args for macOS [Clover/OpenCore]

Booting macOS requires some boot args. Boot args are also known as boot flags. There are several boot args used for different purposes. There are some common boot args and some are kexts specific. This is a list of common boot boot args for macOS which can be used on Clover and OpenCore as well.

Common Boot Args


Boot ArgsPurpose
-v
  • Enables verbose mode. Replaces the progress bar below the Apple logo with a text output of the boot process.
  • Helpful to track the installation progress or when booting.
  • We recommend using this boot arg.
  • Once you're done with the installation and post-installation, you can disable this boot arg.
-s
  • Enables single-user mode.
  • Boots macOS in Terminal mode.
-x
  • Enables safe mode.
  • Boots macOS with a minimal set of system extensions and features.
  • Useful for reverting the root patches applied by OpenCore Legacy Patcher if they no longer work or if macOS won't boot after applying the patches.
-f
  • Enables cacheless booting.
  • Only applicable for Clover Bootloader. OpenCore uses a different option available in Kernel>Scheme>KernelCache. Change Auto to Cacheless.
  • Only applicable to OS X 10.6 to OS X 10.9.
debug=0x100This disables macOS's watchdog which helps prevents a reboot on a kernel panic.
keepsyms=1
  • This is a companion setting to debug=0x100 that tells the OS to also print the symbols on a kernel panic.
  • This can give some more helpful insight as to what's causing the panic itself.
rootless=0
  • Enables Rootless Mode
  • Only valid on Yosemite.
slide=0
dart=0
  • Disables VT-d
  • Drops OEM DMAR table.
  • Superseded by OpenCore's DisableIoMapper Quirk.
cpus=1Enables Single CPU Core Mode.
-xcpm
  • Enables XCPM
  • Only required on OS X 10.11 and older
kext-dev-mode=1
  • Allows loading of unsigned kexts
  • Only valid on Yosemite
-disablegfxfirmware
  • To avoid firmware load endless loop
  • Only applicable to IGPUs.
-no_compat_check
  • Disables macOS compatibility checks.
  • Allows booting macOS with unsupported SMBIOS/board-ids.
  • Required for booting new macOS version on old hardware while using the old SMBIOS, which is considered obsolete by Apple.
  • A clean install isn't possible when using this boot arg. In addition, you cannot install system updates if this boot-arg is active.
npci=0x2000
  • Disables PCI debugging related to kIOPCIConfiguratorPFM64.
  • Required for all HEDT and a few 500 and 600 series Motherboards.
  • This issue can also fix stuck on "PCI Start Configuration Begin" as there are IRQ conflicts relating to PCI lanes.
  • This boot flag may cause a hang on systems where it is not required.
  • Do not use npci=0x2000 and npci=0x3000 together
npci=0x3000
  • Required for all HEDT and a few 500 and 600 series Motherboards.
  • Required where npci=0x2000 is not compatible
  • This issue can also fix stuck on "PCI Start Configuration Begin" as there are IRQ conflicts relating to PCI lanes.
  • This boot flag may cause a hang on systems where it is not required.
  • Do not use npci=0x3000 and npci=0x2000 together
nvda_drv=1
  • Enables loading of NVIDIA Drivers
  • Similar to Clover's NVIDIAWeb
nv_disable=1
  • Disables loading of NVIDIA Drivers.
  • If you're having NVIDIA GPU and cannot reach the installation screen or unable to boot into your Desktop after the installation, use this boot arg to disable the NVIDIA drivers and install the drivers at the time of postinstallation.



Kexts Specific

Lilu



-liludbgEnables debug printing. Requires DEBUG version of Lilu.
-liludbgallEnables debug printing in Lilu and all loaded plugins (available in DEBUG binaries).
-liluoff
  • Disables Lilu.
  • All other kexts relying on Lilu will not be injected when using this boot-arg.
  • Be careful when using this boot-arg. It's highly recommended not to use this boot-arg.
-liluuseroffDisables Lilu user patcher (for e.g. dyld_shared_cache manipulations).
-liluslowEnables legacy user patcher.
-lilulowmemDisables kernel unpack (disables Lilu in recovery mode).
-lilubetaEnables Lilu on unsupported macOS versions (macOS 13 and below are enabled by default).
  • Usually relevant for newly announced macOS.
-lilubetaallEnables Lilu and all loaded plugins on unsupported os versions (use very carefully).
-liluforceEnables Lilu regardless of the mode, OS, installer, or recovery.
liludelay=1000Adds 1 second (100ms) delay after each print for troubleshooting.
lilucpu=N
  • Spoofs CPU Generation.
  • The Nrefers to the following Intel generations:
    • 4 - Sandy Bridge
    • 5 - Ivy Bridge
    • 6 - Haswell
    • 7 - Broadwell
    • 8 - Skylake
    • 9 - Kaby Lake
    • 10 - Coffee Lake
liludump=N
  • to let Lilu DEBUG version dump log to /var/log/Lilu_VERSION_KERN_MAJOR.KERN_MINOR.txt after N seconds


VirtualSMC


-vsmcdbg
  • Enables debug printing.
  • Requires DEBUG version of VirtualSMC.
-vsmcoff
  • Disables all the Lilu enhancements.
  • Without this kext, no macOS/OS X version will boot due to a lack of SMC Emulation.
  • Be careful when using this boot-arg. It's highly recommended not to use this boot-arg.
-vsmcbeta
  • Enables VirtualSMC on unsupported macOS versions (macOS 13 and below are enabled by default).
  • Usually relevant for newly announced macOS.
-vsmcrptReports missing SMC keys to the system log.
-vsmccompPrefer existing hardware SMC implementation if found.
vsmcgen=XForces exposing X-gen SMC device (1 and 2 are supported).
vsmchbkp=XSets HBKP dumping mode (0 - off, 1 - normal, 2 - without encryption).
vsmcslvl=XSet value serialisation level (0 - off, 1 - normal, 2 - with sensitive data (default)).
smcdebug=0xffEnables AppleSMC debug information printing.
watchdog=0
  • Disables WatchDog timer.
  • Required if you get accidental reboots.

WhateverGreen


Global

-wegdbg
  • Enables debug printing. Requires DEBUG version of WhateverGreen
-wegoff
  • Disables WhateverGreen
  • Disabling this boot-arg can cause several Graphics related issues.
  • Be careful when using this boot-arg. It's highly recommended not to use this boot-arg.
-wegbeta
  • Enables WhateverGreen on unsupported macOS versions (macOS 13 and below are enabled by default).
  • Usually relevant for newly announced macOS.
-cdfon
  • Enables CoreDisplayFixup functionality via WhateverGreen.kext.
  • Enables HDMI 2.0 patches on IGPU and dGPU.
  • Patches CheckTimingWithRange in CoreDisplay.framework to skip validation of the pixel clock.
  • This prevents a black screen for HDMI in UHD resolution with 60FPS or more.
  • Required for Laptops and OEM systems with 4K/UHD/QHD Displays.
  • If you get "gIOScreenLockState3 error", you'll need to use this property.
  • Does not work on macOS Big Sur (11.x) and later.
wegtree=1
  • Forces device renaming on Apple FW.
gfxrst=1
  • Prefers drawing Apple logo at 2nd boot stage instead of framebuffer copying.
gfxrst=4
  • Disables framebuffer init interaction during 2nd boot stage


Board-id

Boot ArgsPurpose
agdpmod=vit9696
  • Disables board-id check.
  • Fixes black screen
agdpmod=pikera
  • Fixes black screen when macOS finishes loading.
  • Required for Navi based AMD GPU.
agdpmod=ignore
  • Disables AGDP patches


GPU Switching

-wegnoegpu
  • Disables all external GPUs (NVIDIA and AMD). Mainly required on Dual GPU Laptops.
  • Users who have patched ACPI and dGPU is disabled via DSDT and SSDT, you don't need to use this boot arg.
  • This boot arg is a temporary solution. It's recommended to patch your DSDT and related SSDTs to disable the discrete Graphics for a better power management and improved battery performance.
-wegnoigpu
  • Disables internal GPU
-wegswitchgpu
  • Disables internal GPU when external GPU is installed.



NVIDIA Graphics
-ngfxdbg
  • Enables NVIDIA driver error logging
ngfxgl=1
  • Disables metal support on NVIDIA GPUs
ngfxcompat=1
  • Ignores compatibility check in NVDAStartupWeb
ngfxsubmit=0
  • Disables interface stuttering fix on 10.13


AMD Graphics

-radvesa
  • Disables ATI/AMD graphics acceleration.
-rad24
  • Enforces 24-bit display mode
-raddvi
  • Enables DVI transmitter correction
  • Required for 290X, 370, etc.
-radcodec
  • Forces the spoofed PID to be used in AMDRadeonVADriver
radpg=15
  • Fixes initialization for Radeon HD 7730/7750/7770/R7 250/R7 250X
  • Disables several power gating modes


Intel Graphics

igfxframe=frame
  • Injects a dedicated framebuffer identifier into IGPU
  • Only for TESTING purposes.
igfxsnb=0
  • Disables IntelAccelerator name fix for Sandy Bridge CPUs.
igfxgl=1
  • Disables Metal support on IGPU.
igfxmetal=1to force enable Metal support on Intel for offline rendering.
igfxpavp=1to force enable PAVP output
igfxfw=2
  • Forces loading of Apple GuC firmware
  • Requires 300 series chipset.
-igfxvesa
  • Disables IGPU acceleration.
-igfxnohdmi
  • Disables DP to HDMI conversion patches for digital sound.
-igfxtypec
  • Forces DP connectivity for Type-C platforms.
-igfxdump
  • Dumps IGPU framebuffer kext to /var/log/AppleIntelFramebuffer_X_Y (available in DEBUG binaries).
-igfxfbdump
  • Dumps native and patched framebuffer table to IOReg at IOService:/IOResources/WhateverGreen
applbkl=0
  • Disables AppleBacklight.kext patches for IGPU
-igfxmlr
  • Fixes invalid maximum link rate
  • This property on IGPU can fix the invalid link rate otherwise a kernel panic can occur due to a division-by-zero.
  • Usually required by Laptops with a Sharp Display and more refresh rate.
-igfxhdmidivs
  • Fixes the infinite loop when establishing an HDMI connection with a higher pixel clock.
  • For example, connecting to a 2K/4K display with HDMI 1.4, otherwise, the system just hangs and the built-in display will remain black when plugging the HDMI cable.
-igfxlspcon
  • Enables LSPCPN driver support to enable DisplayPort to HDMI 2.0 output on IGPU.
  • LSPCON driver is only applicable for Laptops with HDMI 2.0 routed to IGPU.
  • If your HDMI 2.0 is routed to IGPU and is working properly right now, you don't need to enable this driver, as your onboard LSPCON might have been already configured in the firmware to work in PCON mode.
  • This property can also provide HDR signaling over HDMI.
-igfxi2cdbg
  • Enables verbose output in I2C-over-AUX transactions (only for debugging purposes).
-igfxnotelemetryloadDisables iGPU telemetry loading that may cause a freeze during startup on certain laptops such as Chromebooks
igfxagdc=0
  • Disables AGDC
igfxfcms=1to force complete modeset on Skylake or Apple firmwares.
igfxfcmsfbs=to specify indices of connectors for which complete modeset must be enforced. Each index is a byte in a 64-bit word; for example, value 0x010203 specifies connectors 1, 2, 3. If a connector is not in the list, the driver's logic is used to determine whether complete modeset is needed. Pass -1 to disable.
igfxonln=1
  • Forces online status on all displays.
  • Resolves display after wake on CFL and later.
igfxonlnfbs=MASKto specify indices of connectors for which online status is enforced. Format is similar to igfxfcmsfbs
wegtree=1
  • Forces device renaming on Apple FW.
igfxrpsc=1
  • Enables RPS control patch (improves IGPU performance)
-igfxcdc
  • Enables all valid Core Display Clock (CDCLK) frequencies on ICL platforms.
  • This property on IGPU can be used to prevent a kernel due to an unsupported CD clock decimal frequency.
  • Usually required by Laptops with lower clock frequency values such as 172.8MHz.
-igfxdvmt
  • Fixes Kernel Panic due to incorrect amount of DVMT pre-allocated memory.
  • This property on IGPU can fix the invalid link rate otherwise a kernel panic can occur due to a division-by-zero.
  • Usually required by Laptops where the BIOS is locked and the variables cannot be modified using Shell.
-igfxmpc
  • Fixes HDMI in UHD resolution with 60FPS
  • This property on IGPU can be used to raise the max pixel clock limit (as an alternative to patching CoreDisplay.framework).
  • Prevents black screen on 4K/UHD/QHD Displays @60Hz and HDMI 2.0 in UHD resolution with 60Hz or more.
  • Requires Invalid Maximum Link rate for Laptop Displays with more than 60Hz.
  • This property can be used for 4K@60Hz over HDMI 2.0.
  • Required for Laptops and OEM systems with 4K/UHD/QHD Displays @60Hz.
  • If you get "gIOScreenLockState3" when booting, you'll need to use this property.
-igfxbls
  • Make brightness transitions smoother on IVB+ platforms
-igfxdbeo
  • Fixes garbled display on the built-in screen on Ice Lake platforms.
-igfxsklaskbl
  • To enforce Kaby Lake (KBL) graphics kext loading on SKL.
  • KBL device-id and ig-platform-id are required.
applbkl=3
  • Enables PWM backlight control of AMD Radeon RX 5000 series graphic cards

Backlight
applbkl=0
  • Disables AppleBacklight.kext patches for IGPU
applbkl=3
  • Enables PWM backlight control of AMD Radeon RX 5000 series graphic cards


NootedRed


-nreddbgEnable debugging output from kext and FB.
-nreddmloggerEnables Display Core debugging output
-nredoffDisables NootedRed
-nredfbonlyBoot in FB-only, without acceleration. Visual artifacts and glitches are present.
-nred24bit


AppleALC


alcid=xx
  • Sets Layout ID for AppleALC.
  • The xx represents the layout ID for your codec.
-alcoff
  • Disables AppleALC
-alcdbg
  • Enables debug printing.
  • Requires DEBUG version of AppleALC
-alcbeta
  • Enables WhateverGreen on unsupported macOS versions (macOS 13 and below are enabled by default).
  • Usually relevant for newly announced macOS.
alcverbs=1Enables alc-verb support.
alcdelay=xxx
  • Adds delay in AppleHDAController.
  • Useful where the hardware isn't initialized in time for AppleHDAController which results in no Audio output.
  • The xx represents the delay in ms.
  • Must not exceed 3000ms.
alctcsel=1
  • Fixes Audio on macOS after rebooting from Windows.

AirPortBrcmFixup


-brcmfxdbg
  • Enables debug printing.
  • Requires DEBUG version of AirPortBrcmFixup
-brcmfxbeta
  • Enables AirPortBrcmFixup on unsupported macOS versions (macOS 13 and below are enabled by default).
  • Usually relevant for newly announced macOS.
-brcmfxoff
  • Disables AirPortBrcmFixup
-brcmfxwowl
  • Enables WOWL (WoWLAN)
  • WOWL is disabled by default
-brcmfx-alldrv
  • Allows patching for all supported drivers, disregarding the current system version
brcmfx-country=XX
  • Changes the country code to XX (US, CN, #a, ...)
  • Can be injected via DSDT or Properties → DeviceProperties in bootloader
brcmfx-aspm
  • Overrides value used for pci-aspm-default
brcmfx-delay=xxxxx
  • Delays start of native Broadcom driver for the specified amount of milliseconds.
  • It can solve panics or missing wi-fi devices in Monterey. You can start with 15 seconds (brcmfx-delay=15000) and successively reduce this value until you notice instability in boot.
  • The xxxxx represents the delay in ms.
brcmfx-driver=0|1|2|3Enables only one kext for loading
0 - AirPortBrcmNIC-MFG,
1 - AirPortBrcm4360,
2 - AirPortBrcmNIC,
3 - AirPortBrcm4331,
Can be injected via DSDT or Properties → DeviceProperties in bootloader


BrcmPatchRAM
Boot ArgsDescription
bpr_initialdelay=x
  • Changes mInitialDelay, where x represents the delay in ms before any communication happens with the device. The default value is 100.
bpr_handshake=x
  • Overrides mSupportsHandshake, firmware uploaded handshake support status.
  • 0 means wait bpr_preresetdelay ms after uploading firmware, and then reset the device.
  • 1 means wait for a specific response from the device and then reset the device. The default value depends on the device identifier.
bpr_preresetdeay
  • Changes mPreResetDelay, where x represents the delay in ms assumed to be needed for the device to accept the firmware. The value is unused when bpr_handshake is 1 (passed manually or applied automatically based on the device identifier). The default value is 250.
bpr_postresetdelay=x
  • Changes mPostResetDelay, where x represents the delay in ms assumed to be needed for the firmware to initialize after resetting the device upon firmware upload. The default value is 100.
bpr_probedelay=x
  • Changes mProbeDelay (removed in BrcmPatchRAM3), the delay in ms before probing the device. The default value is 0.
-btlfxallowanyaddr
  • Disables address check in macOS 12.4 and newer.
  • Required for macOS 12.4 and newer as Apple introduced a new address check in bluetoothd, which will trigger an error if two Bluetooth devices have the same address.
  • Only applicable for macOS 12.4 and newer.


itlwm

Boot ArgsDescription
itlwm_cc=COUNTRY_CODEChange the country code to a desired one, effective on all devices, mostly useful for iwn, 7000 & 8000 series iwm using itlwm.kext or running macOS earlier than 10.14.
-novhtDisables IEEE802.11AC support
Useful if the router has compatibility issues.
-noht40Disables 40MHz when using 2.4GHz (Use this option if the network with this config causes instabilities. Natively supported adapters by Apple disable 2.4GHz HT40 by default)


IntelMausi
Boot ArgsDescription
-mausiwol
  • Froce enables Wake on LAN functionality for Intel Ethernet for testing purposes.
  • Required for misconfigured hardware.
  • Requires IntelMausi.kext.

CPUTscSync
Boot ArgsDescription
-cputsdbg
  • Enables debug logging. Requires DEBUG version of CPUTscSync.
-cputsoff
  • Disables CPUTscSync.
-cputsbeta
  • Enables CPUTscSync on unsupported macOS versions (macOS 13 and below are enabled by default).
  • Usually relevant for newly announced macOS.
-cputsclock
  • Forces using of method clock_get_calendar_microtime to sync TSC (the same method is used when boot-arg TSC_sync_margin is specified)

CPUFriend
Boot ArgsDescription
-cpufdbg
  • Enables debug logging. Requires DEBUG version of CPUFriend.
-cpufoff
  • Disables CPUFriend.
-cpufbeta
  • Enables CPUFriend on unsupported macOS versions (macOS 13 and below are enabled by default).
  • Usually relevant for newly announced macOS.

CryptexFixup
Boot ArgsDescription
-cryptdbgEnables verbose logging. Requires DEBUG version of CryptexFixup
-cryptoffDisables CryptexFixup
-cryptbetaEnables CryptexFixup on unsupported macOS versions (macOS 13 and below are enabled by default).
  • Usually relevant for newly announced macOS.
-crypt_allow_hash_validationDisables APFS.kext patching
-crypt_force_avxForce installing Rosetta Cryptex on AVX2.0 systems


ECEnabler
Boot ArgsDescription
-ecedbgEnables verbose logging. Requires DEBUG version of ECEnabler.
-eceoffDisables ECEnabler
-ecebetaEnables ECEnabler on unsupported macOS versions (macOS 13 and below are enabled by default).
  • Usually relevant for newly announced macOS.

NVMeFix
Boot ArgsDescription
-nvmefdbgEnables debug logging. Requires DEBUG version of NVMeFix.
-nvmefoffDisables NVMeFix.
-nvmefaspmForces ASPM L1 on all the devices. This argument is recommended exclusively for testing purposes, as for daily usage one could inject pci-aspm-default device property with <02 00 00 00> value into the SSD devices and bridge devices they are connected to onboard. Updated values will be visible as pci-aspm-custom in the affected devices.

FeatureUnlock
Boot ArgsDescription
-cardbgEnables verbose logging. Requires DEBUG version of FeatureUnlock.
-carbetaEnables FeatureUnlock on unsupported macOS versions (macOS 13 and below are enabled by default).
  • Usually relevant for newly announced macOS.
-caroffDisables FeatureUnlock
-allow_sidecar_ipadEnables SideCar support on unsupported iPads.
-disable_sidecar_macDisables SideCar/AirPlay/Universal Control patches.
-disable_nightshiftDisables NightShift patches
-force_uni_controlForces Universal Control patching even when model doesn't require.

BrightnessKeys

Boot ArgsDescription
-brkeysdbgEnables debug printing. Requires DEBUG version of BrightnessKeys.


MacHyperVSupport

Core Controller (HyperVController)
Core Hyper-V controller module

Boot ArgDescription
-hvctrldbgEnables debug printing. Requires DEBUG version of MacHyperVSupport.

CPU Disabler (HyperVCPU)
Disables additional CPUs under macOS 10.4

-hvcpudbgEnables debug printing. Requires DEBUG version of MacHyperVSupport.

File Copy (HyperVFileCopy)
Provides host to guest file copy support (Guest Services). Requires the hvfilecopyd userspace daemon to be running.

-hvfcopydbgEnables debug printing. Requires DEBUG version of MacHyperVSupport.
-hvfcopymsgdbgEnables debug printing of message data. Requires DEBUG version of MacHyperVSupport.
-hvfcopyoffDisables this module

Graphics Bridge (HyperVGraphicsBridge)
Provides basic graphics support for macOS.

-hvgfxbdgbEnables debug printing. Requires DEBUG version of MacHyperVSupport.
-hvgfxbmsgdbgEnables debug printing of message data. Requires DEBUG version of MacHyperVSupport
-hvgfxboffDisables this module

Heartbeat (HyoerVHeartbeat)
Provides heartbeat reporting to Hyper-V.

-hvheartdbgEnables debug printing. Requires DEBUG version of MacHyperVSupport.
-hvheartmsgdbgEnables debug printing of message data. Requires DEBUG version of MacHyperVSupport
-hvheartoffDisables this module

Keyboard (HyperVKeyboard)
Provides keyboard support.

-hvkbddbgEnables debug printing. Requires DEBUG version of MacHyperVSupport.
-hvkbdmsgdbgEnables debug printing of message data. Requires DEBUG version of MacHyperVSupport
-hvkbdoffDisables this module

Mouse (HyperVMouse)
Provides mouse support.
-hvkbddbgEnables debug printing. Requires DEBUG version of MacHyperVSupport.
-hvkbdmsgdbgEnables debug printing of message data. Requires DEBUG version of MacHyperVSupport
-hvmouseoffDisables this module


Network (HyperVNetwork)
Provides networking support.
-hvnetdbgEnables debug printing. Requires DEBUG version of MacHyperVSupport.
-hvnetdmsgdbgEnables debug printing of message data. Requires DEBUG version of MacHyperVSupport
-hvnetoffDisables this module


PCI Bridge (HyperVPCIBridge)
Provides PCI passthrough support.

-hvpcibddbgEnables debug printing. Requires DEBUG version of MacHyperVSupport.
-hvpcibmsgdbgEnables debug printing of message data. Requires DEBUG version of MacHyperVSupport
-hvpciboffDisables this module

PCI Module Device (HyperVmoduleDevice)
Provides MMIO allocation/deallocation functions for PCI passthrough.

-hvpcimdbgEnables debug printing. Requires DEBUG version of MacHyperVSupport.

PCI Provider (HyperVPCIProvider)
Provides IOACPIPlatformDevice nub on generation 2 VMS for fake PCI root bridge (HyperVPCIRoot).

-hvkbddbgEnables debug printing. Requires DEBUG version of MacHyperVSupport.

PCI Root Bridge (HyperVPCIRoot)
Provides a fake PCI root bridge for proper macOS functionality on generation 2 VMs, and provides support for PCI passthrough.

-hvpcirddbgEnables debug printing. Requires DEBUG version of MacHyperVSupport.


Shutdown (HyperVShutdown)
Provides software shutdown through Virtual Machine Connection and PowerShell. Requires the hvshutdownd userspace daemon to be running.

-hvshutdbgEnables debug printing. Requires DEBUG version of MacHyperVSupport.
-hvshutmsgdbgEnables debug printing of message data. Requires DEBUG version of MacHyperSupport
-hvshutoffDisables this module

Storage (HyperVStorage)
Provides SCSI storage support.

-hvstordbgEnables debug printing. Requires DEBUG version of MacHyperVSupport.
-hvstormsgdbgEnables debug printing of message data. Requires DEBUG version of MacHyperSupport
-hvstoroffDisables this module

Time Synchronization (HyperVTimeSync)
Provides host to guest time synchronization support. Requires the hvtimesyncd userspace daemon to be running.

-hvtimedbgEnables debug printing. Requires DEBUG version of MacHyperVSupport.
-hvtimemsgdbgEnables debug printing of message data. Requires DEBUG version of MacHyperSupport
-hvtimeoffDisables this module

VMBus Controller (HyperVVMBus)
Provides root of VMBus devices and services.

-hvvmbusdbgEnables debug printing. Requires DEBUG version of MacHyperVSupport.

VMBus Device Nub (HyperVVMBusDevice)
Provides connection nub for child VMBus device modules.

-hvvmbusdebdbgEnables debug printing. Requires DEBUG version of MacHyperVSupport.







RealtekCardReader
Boot ArgsDescription
-iosd3v3initialize all cards at 3.3V, so cards can work at the default or the high speed mode only.
-iosddsminitialize all cards at the default speed mode. The maximum data transfer rate is limited to 12 MB/s.
-iosdhsminitialize all cards at the high speed mode. The maximum data transfer rate is limited to 25 MB/s.
-iosdsabrseparate each CMD18/25 request into multiple CMD17/24 ones, so the host driver will not access multiple blocks on the card in one shot.
-iosdnoacmd23ask the host driver not to issue the ACMD23 before sending the CMD25 to the card. When the driver processes a multi-block write (CMD25) request, the specification recommends to issue an ACMD23 to pre-erase blocks to be written to improve the write performance. By default, the host driver always sends the ACMD23 before the CMD25. Use this boot argument if you observe any write performance degradation.
iosdamnaSpecify the maximum number of attempts to retry an application command (ACMD*).
rtsxdcibSpecify the amount of time in milliseconds to delay the card initialization if the card is present when the driver starts. Increase the delay if your card cannot be initialized when the system boots.
rtsxdspiSpecify the interval in milliseconds of polling for the device status. A background thread checks whether a card is present every interval milliseconds and notifies other driver components if a card is inserted or removed. Increasing the interval will increase the latency of processing the card event, while decreasing the value will waste your CPU cycle, so please choose an interval value wisely.
-rtsxppstafetch the card status via the control endpoint instead of a bulk transfer. Some RTS5139 chips can report the card status only via the control endpoint thus are not compatible with the default mechanism.
rtsxdsscSpecify the amount of time in milliseconds to wait until the SSC clock becomes stable. If the value is too small, commands may timeout after the driver switches the card clock. Increase this value if you find that the driver fails to enable the 4-bit bus in the kernel log.


VoodooI2C
Boot ArgsDescription
-vi2c-force-polling
  • Force enable polling mode for specific I2C Controller.
  • Required where APIC interrupt is unavailable.

RTCMemoryFixup
Boot ArgsDescription
-rtcfxdbgEnables debug logging. Requires DEBUG version of RTCMemoryFixup.
rtcfx_exclude=offset1,offset2,start_offset-end_offsetList of offsets or ranges of offsets where writing is not allowed

HibernationFixup

Boot ArgsDescription
-hbfxdbgEnables debug logging. Requires DEBUG version of RTCMemoryFixup.
-hbfxbetaEnables FeatureUnlock on unsupported macOS versions (macOS 13 and below are enabled by default).
  • Usually relevant for newly announced macOS.
-hbfxoffdisables kext loading
-hbfx-dump-nvram
  • Saves NVRAM to a file nvram.plist before hibernation and after kernel panic (with panic info)
-hbfx-disable-patch-pcidisables patching of IOPCIFamily (this patch helps to avoid hang & black screen after resume (restoreMachineState won't be called for all devices)
hbfx-patch-pci=XHC,IMEI,IGPUallows to specify explicit device list (and restoreMachineState won't be called only for these devices). Also supports values none, false, off.
hbfx-ahbm=abhm_valuecontrols auto-hibernation feature, where abhm_value is an arithmetic sum of respective values below:

  • EnableAutoHibernation = 1: If this flag is set, system will hibernate instead of regular sleep (flags below can be used to limit this behavior)
  • WhenLidIsClosed = 2: Auto hibernation can happen when lid is closed (if bit is not set - no matter which status lid has)
  • WhenExternalPowerIsDisconnected = 4: Auto hibernation can happen when external power is disconnected (if bit is not set - no matter whether it is connected)
  • WhenBatteryIsNotCharging = 8: Auto hibernation can happen when battery is not charging (if bit is not set - no matter whether it is charging)
  • WhenBatteryIsAtWarnLevel = 16: Auto hibernation can happen when battery is at warning level (macOS and battery kext are responsible for this level)
  • WhenBatteryAtCriticalLevel = 32: Auto hibernation can happen when battery is at critical level (macOS and battery kext are responsible for this level)
  • DoNotOverrideWakeUpTime = 64: Do not alter next wake up time, macOS is fully responsible for sleep maintenance dark wakes
  • DisableStimulusDarkWakeActivityTickle = 128: Disable power event kStimulusDarkWakeActivityTickle in kernel, so this event cannot trigger a switching from dark wake to full wake

RestrictEvents
Boot ArgsDescription
-revdbgEnables verbose logging. Requires DEBUG version of RestrictEvents.
-revoffDisables RestrictEvents.
-revbetaEnables RestrictEvents on unsupported macOS versions (macOS 13 and below are enabled by default).
  • Usually relevant for newly announced macOS.
-revprocEnables verbose process logging. Requires DEBUG version of RestrictEvents.
revpatch=value
  • Enables patching as comma separated options. The default value is auto.
  • Possible values for patching:
    • memtab - enable memory tab in System Information on MacBookAir and MacBookPro10,x platforms
    • pci - prevent PCI configuration warnings in System Settings on MacPro7,1 platforms
    • cpuname - custom CPU name in System Information
    • diskread - disables uninitialized disk warning in Finder
    • asset - allows Content Caching when sysctl kern.hv_vmm_present returns 1 on macOS 11.3 or newer
    • sbvmm - forces VMM SB model, allowing OTA updates for unsupported models on macOS 11.3 or newer
    • f16c - resolve CoreGraphics crashing on Ivy Bridge CPUs by disabling f16c instruction set reporting in macOS 13.3 or newer
    • none - disable all patching
    • auto - same as memtab,pci,cpuname, without memtab and pci patches being applied on real Macs
revcpu=value
  • Enables or disables CPU brand string patching.
  • 1 = non-Intel default, 0 = Intel default
revcpuname=valueCustom CPU brand string (max 48 characters, 20 or less recommended, taken from CPUID otherwise)
revblock=value
  • To block processes as comma separated options. The default value is auto
  • Possible values for patching:
    • pci - prevent PCI and RAM configuration notifications on MacPro7,1 platforms
    • gmux - block displaypolicyd on Big Sur+ (for genuine MacBookPro9,1/10,1)
    • media - block mediaanalysisd on Ventura+ (for Metal 1 GPUs)
    • none - disable all blocking
    • auto - same as PCI

NOTE: 4D1FDA02-38C7-4A6A-9CC6-4BCCA8B30102:revpatch, 4D1FDA02-38C7-4A6A-9CC6-4BCCA8B30102:revcpu, 4D1FDA02-38C7-4A6A-9CC6-4BCCA8B30102:revcpuname and 4D1FDA02-38C7-4A6A-9CC6-4BCCA8B30102:revblock NVRAM variables work the same as the boot arguments, but have lower priority.

DebugEnhancer

Boot ArgsDescription
-dbgenhdbgEnables debugging output. Requires DEBUG version of DebugEnhancer
-dbgenhbetaEnables DebugEnhancer on unsupported macOS versions (macOS 13 and below are enabled by default).
  • Usually relevant for newly announced macOS.
-dbgenhoffDisables DebugEnhancer.
-dbgenhiologRedirects IOLog output to kernel vprintf (the same as for kdb_printf and kprintf)
 
Last edited:
  • Like
Reactions: oldman20
very clear, thank!
But i dont see some key like:
darkwake=0
abm_firstpolldelay=16000
alcverbs=1
Hope you can explain more! cheer

I found in acidanthera
  • alcverbs=1 — to enable alc-verb support (also alc-verbs device property);
    but dont clear alc-verb sp for what?

    In sbd github
  • darkwake=0
    Disable wake up of certain parts of your Mac from sleep, while leaving other parts in sleep mode. This feature often messes up sleep on Hackintoshes. Enter darkwake=1 to turn it on, if turning it off doesn’t do the trick). if your verbose boot is freezing be sure to remove SleepEnabler.kext completely by deleting it from either /Extra/Extensions or /System/Library/Extensions in your hard drive.

    and in tonymax has a post found darkwake=0 cause autosleep not working
    So i wonder what differrent between flag darkwake=no and didnt put this flag boot-arg?
  • Thank and sorry if wrong thread
 
Last edited:
  • Like
Reactions: EliteMacx86
very clear, thank!
But i dont see some key like:
darkwake=0
abm_firstpolldelay=16000
alcverbs=1
Hope you can explain more! cheer

I found in acidanthera
  • alcverbs=1 — to enable alc-verb support (also alc-verbs device property);
    but dont clear alc-verb sp for what?

    In sbd github
  • darkwake=0
    Disable wake up of certain parts of your Mac from sleep, while leaving other parts in sleep mode. This feature often messes up sleep on Hackintoshes. Enter darkwake=1 to turn it on, if turning it off doesn’t do the trick). if your verbose boot is freezing be sure to remove SleepEnabler.kext completely by deleting it from either /Extra/Extensions or /System/Library/Extensions in your hard drive.

    and in tonymax has a post found darkwake=0 cause autosleep not working
    So i wonder what differrent between flag darkwake=no and didnt put this flag boot-arg?
  • Thank and sorry if wrong thread
Thank you for your feedback on this thread!

We're in the process of redesigning the forum with some major improvements. You might have already noticed ;)

The threads will be updated as soon as we finish the backend tasks. We'll include all those args which you have mentioned. There is a lot more to add ;)

Cheers!
 
  • Like
Reactions: oldman20

Forum statistics

Threads
1,935
Messages
18,086
Members
27,828
Latest member
イツミてんちむデモン(Real_That_Itsu