Skip to content

Latest commit

 

History

History
433 lines (414 loc) · 23.1 KB

Changelog.md

File metadata and controls

433 lines (414 loc) · 23.1 KB

OpenCore Changelog

v0.6.4

  • Added BlacklistAppleUpdate to fix 11.0 broken update optout
  • Dropped HII services from OpenDuet improving size and performance
  • Fixed patching of injected kexts in mkext
  • Added support for launching from relative paths
  • Added direct path passing for tools via RealPath
  • Allowed launching tools and entries in text mode via TextMode
  • Updated builtin firmware versions for SMBIOS and the rest
  • Fixed ACPI patches not applying if tables are in locked memory
  • Fixed EnableSafeModeSlide on macOS 11.0

v0.6.3

  • Added support for xml comments in plist files
  • Updated underlying EDK II package to edk2-stable202008
  • Provide fallbacks for NULL memory SMBIOS strings
  • Fixed BOOTx64.efi and BOOTIA32.efi convention
  • Fixed SMBIOS handling with multiple memory arrays
  • Fixed memory array handle assignment on empty slots
  • Fixed CPUID patching on certain versions of macOS 10.4.10 and 10.4.11
  • Fixed incorrect core/thread counts on Pentium M processors
  • Added SSDT-UNC.dsl ACPI sample to resolve X99 issues, thx @RemB
  • Updated builtin firmware versions for SMBIOS and the rest
  • Increased slide allocation reserve to 200 MB for Big Sur beta 10
  • Fixed assert when trying to enable direct renderer on blit-only GOP
  • Added support for custom memory properties
  • Fixed intermittent 32-bit prelinking failures caused by improper Mach-O expansion
  • Fixed failures in cacheless injection dependency resolution
  • Fixed detection issues with older Atom CPUs
  • Fixed ScanPolicy NVMe handling on MacPro5,1
  • Fixed I/O issues on platforms incapable of reading over 1MB at once
  • Fixed plist-only kext injection in Big Sur
  • Add ForceResolution option for enabling non-default resolutions
  • Fixed Ps2MouseDxe not properly loading under OpenDuetPkg
  • Added workaround for read-only errors on some X299 boards
  • Added support for x86legacy Secure Boot model
  • Added missing Secure Boot NVRAM variables required by 11.0
  • Added setting of system-id NVRAM variable
  • Added ForceSecureBootScheme quirk for virtual machines
  • Fixed kernel and ACPI patches failing to replace last bytes of memory

v0.6.2

  • Updated builtin firmware versions for SMBIOS and the rest
  • Added ProcessorType option to Generic allowing custom CPU names
  • Fixed UnblockFsConnect option not working with APFS JumpStart
  • Added IA32 binary variant to the release bundles
  • Fixed improper handling of cacheless kexts without an Info.plist
  • Fixed improper calculation of kext startup address for blocking
  • Added mkext 32-bit kext injection (10.4-10.6)
  • Added cacheless 32-bit kext injection (10.4-10.7)
  • Added 32-bit kernel/kext patching/blocking support
  • Fixed issues loading 10.7 EfiBoot
  • Added Type to ReservedMemory to fulfil hibernation hack needs
  • Added workaround to displaying Preboot instead of Macintosh HD
  • Added prelinkedkernel 32-bit kext injection (10.6-10.7)
  • Added SystemMemoryStatus to override memory replacement on some models
  • Added older Pentium CPU recognition in SMBIOS
  • Added ExtendBTFeatureFlags to properly set FeatureFlags for Bluetooth (which substitutes BT4LEContinuityFixup)
  • Added MinKernel/MaxKernel to CPUID emulation and DummyPowerManagement
  • Fixed -legacy not being added in KernelArch Auto mode
  • Fixed i386-user32 not forcing i386 on macOS 10.7 on X64 firmware
  • Fixed i386-user32 being incorrectly enabled in macOS 10.4, 10.5, and 10.7
  • Disabled prelinked boot for macOS 10.4 and 10.5 in KernelCache Auto mode
  • Fixed macserial compatibility with iMac20,x serials and other models from 2020
  • Added LegacyCommpage quirk to improve pre-SSSE3 userspace compatibility
  • Fixed legacy SATA HDDs displaying as external drives in the picker

v0.6.1

  • Improved recognition of early pressed hotkeys, thx @varahash
  • Made DMG loading support configurable via DmgLoading
  • Added iMac20,1 and iMac20,2 model codes
  • Fixed display name for older Xeon CPUs like Xeon E5450
  • Added Comet Lake-LP HDA device code
  • Fixed OS boot selection on SATA controllers with legacy OPROMs
  • Fixed RSDP ACPI table checksum recalculation
  • Added immutablekernel loading support for 10.13+
  • Fixed solving some symbols to zero in 11.0 kext inject
  • Reduced OpenCanopy size by restricting boot management access
  • Added BuiltinText variant for TextRenderer for older laptops
  • Fixed SyncRuntimePermissions creating invalid MAT table
  • Added EFI FAT image loading support (macOS 10.8 and earlier)
  • Added 64-bit cacheless kext injection and patching support (macOS 10.9 and earlier)
  • Added 64-bit mkext kext injection and patching support (macOS 10.6 and earlier)
  • Fixed XNU hook matching non-kernel files
  • Updated builtin firmware versions for SMBIOS and the rest
  • Fixed patching of ACPI tables in low memory
  • Fixed macOS 11.0 DMG recovery loading without hotplug
  • Fixed XhciPortLimit quirk on 10.12.6 and possibly other versions
  • Fixed IncreasePciBarSize quirk on 10.11.5 and possibly other versions
  • Fixed LapicKernelPanic quirk on 10.8.5 and possibly other versions
  • Fixed hard-lock caused by EHCI SMI in OpenDuetPkg
  • Added preview UEFI Secure Boot compatibility
  • Added FuzzyMatch option to support fuzzy kernelcache matching on 10.6 and earlier
  • Added KernelArch option to specify architecture preference on older kernels
  • Added KernelCache option to specify kernel caching preference for older kernels
  • Added Force section to provide support for injecting drivers in older macOS
  • Changed kernel driver injection to happen prior to kernel driver patching
  • Added Arch filtering option to Add, Block, Force, and Patch sections
  • Added DisableLinkeditJettison quirk to workaround 11.0b5 kernel panics
  • Added debugging of missing fields in the configuration

v0.6.0

  • Fixed sound corruption with AudioDxe
  • Fixed icon choice for Apple FW update in OpenCanopy
  • Fixed APFS driver loading on Fusion Drive
  • Added Comet Lake HDA device code
  • Fixed audio stream position reporting on non-Intel platforms
  • Added Firmware mode to ResetSystem to reboot into preferences
  • Replaced BlacklistAppleUpdate with run-efi-updater NVRAM variable
  • Fixed reset value and detection in FadtEnableReset ACPI quirk
  • Fixed freezes during boot option expansion with PXE boot entries
  • Updated underlying EDK II package to edk2-stable202005
  • Added ProvideMaxSlide quirk to improve laptop stability, thx @zhen-zen
  • Fixed slide choice on platforms when 0 slide is unavailable, thx @zhen-zen
  • Fixed assertions caused by unaligned file path access in DEBUG builds
  • Renamed ConfigValidity utility to ocvalidate for consistency
  • Added GlobalConnect for APFS loading to workaround older firmware issues
  • Added 11.0 support for AvoidRuntimeDefrag Booter quirk
  • Fixed 11.0 lapic kernel quirk as of DP1
  • Improved boot selection scripts for macOS without NVRAM
  • Added UGA protocol compatibility in ProvideConsoleGop quirk
  • Added UgaPassThrough option to support UGA protocol over GOP
  • Added AppleFramebufferInfo protocol implementation and override
  • Fixed serial initialisation when file logging is disabled
  • Fixed FSBFrequency reporting on Meron and similar CPUs
  • Fixed incorrect volume icon dimension requirements in OpenCanopy
  • Added preview version of KernelCollection injection code
  • Fixed ACPI reset register detection in DxeIpl
  • Added MacBookPro16,4 model code
  • Updated builtin firmware versions for SMBIOS and the rest
  • Fixed OSXSAVE reporting when emulating CPUID on newer CPUs
  • Added SerialInit option to perform serial initialisation separately
  • Fixed OpenDuetPkg booting on Intel G33 with SATA controller in RAID mode
  • PlatformInfo Automatic for all models
  • Fixed 32-bit OpenDuetPkg booting on machines with over 4 GBs of RAM
  • Fixed delays with OpenDuetPkg booting with certain SATA controllers in IDE mode
  • Fixed display name for some high core count i9 CPUs like 7920X
  • Fixed SSDT-EC-USBX

v0.5.9

  • Added full HiDPI support in OpenCanopy
  • Improved OpenCanopy font rendering by using CoreText
  • Fixed light and custom background font rendering
  • Added Boot#### options support in boot entry listing
  • Removed HideSelf by pattern recognising BOOTx64.efi
  • Added BlacklistAppleUpdate to avoid Apple FW updates
  • Fixed accidental tool and NVRAM reset booting by default
  • Fixed unrecognised select com.apple.recovery.boot entries
  • Changed NVRAM reset not to erase BootProtect boot options
  • Improved boot performance when picker UI is disabled
  • Enforced the use of builtin picker when external fails
  • Fixed warnings for empty NVRAM variables (e.g. rtc-blacklist)
  • Added ApplePanic to store panic logs on ESP root
  • Fixed ReconnectOnResChange reconnecting even without res change
  • Fixed OpenCanopy showing internal icons for external drives
  • Fixed OpenCanopy launching Shell with text over it
  • Added partial hotkey support to OpenCanopy (e.g. Ctrl+Enter)
  • Added builtin text renderer compatibility with Shell page mode
  • Fixed FadtEnableReset with too small FACP tables and some laptops
  • Fixed CPU detection crash with QEMU 5.0 and KVM accelerator
  • Removed RequestBootVarFallback due to numerous bugs
  • Added DeduplicateBootOrder UEFI quirk
  • Removed DirectGopCacheMode due to being ineffective
  • Fixed assertions on log exhaustion causing boot failures
  • Fixed builtin text renderer failing to provide ConsoleControl
  • Fixed compatibility with blit-only GOP (e.g. OVMF Bochs)
  • Fixed ignoring # in DeviceProperty and NVRAM Delete
  • Renamed Block to Delete in ACPI,DeviceProperties, and NVRAM
  • Added MacBookPro16,2 and MacBookPro16,3 model codes
  • Added PCI device scanning policy support (e.g. VIRTIO)
  • Improved playback performance in AudioDxe
  • Updated builtin firmware versions for SMBIOS and the rest
  • Added improved CPU type detection for newer CPU types
  • Added ConfigValidity utility and improved config validation
  • Added serial port initialisation for serial debug logging
  • Disabled empty debug log file creation to avoid ESP cluttering
  • Added TscSyncTimeout quirk to workaround debug kernel assertions
  • Added first-class Windows support to bless model
  • Fixed LapicKernelPanic kernel quirk on 10.9
  • Added prebuilt version of CrScreenshotDxe driver
  • Fixed Hyper-V frequency detection compatibility
  • Added SysReport option for DEBUG builds to dump system info
  • Fixed crashes on some AMD firmware when performing keyboard input

v0.5.8

  • Fixed invalid CPU object reference in SSDT-PLUG
  • Fixed incorrect utilities and resources packaging
  • Fixed Custom UpdateSMBIOSMode modifying SMBIOSv3 table
  • Updated docs to cover separating SMBIOS via UpdateSMBIOSMode
  • Fixed rendering macOS installer icons in OpenCanopy
  • Added APFS support with Fusion Drive and enhanced security
  • Added AppleEvent mouse support in OpenCanopy
  • Fixed AppleEvent and OpenCanopy compatibility with OVMF TPL restrictions
  • Added mouse drivers to the package as OVMF needs one
  • Added memory region reservation support
  • Added RtcRw tool to manipulate RTC memory
  • Added PatchAppleRtcChecksum kernel quirk
  • Added AppleRtcRam protocol implementation
  • Renamed Protocols to ProtocolOverrides for clarity
  • Added ResetSystem tool to allow shutdown/reset actions in the menu
  • Added experimental BootProtect Security option
  • Fixed kext injection in 10.8 installer
  • Added timeout support to OpenCanopy user interface
  • Fixed handling 24-bit screen resolutions
  • Added Ps2KeyboardDxe driver for DuetPkg
  • Updated BootInstall DuetPkg version (now opensource)
  • Added partial HiDPI support in OpenCanopy
  • Update builtin firmware
  • Fixed invalid checksum checks when creating vault (thx @dakanji)

v0.5.7

  • Added TimeMachine detection to picker
  • Added early preview version of OpenCanopy
  • Fixed FS discovery on NVMe with legacy drivers
  • Added DirectGopCacheMode option for FB cache policy
  • Added KeyFiltering option to workaround buggy KB drivers
  • Added tool and custom entry separation in audio assistant
  • Added OpenControl tool to configure full NVRAM access from Shell
  • Added boot.efi debug protocol support for 10.15.4+
  • Added boot.efi performance logging for 10.15.4+
  • Added ProtectUefiServices quirk to fix DevirtualiseMmio on Z390
  • Replaced BOOTCAMP Windows with Windows to match the original
  • Added bundled OpenShell originally available as OpenCoreShell
  • Rework readlabel utility into disklabel with encoding support
  • Renamed FwRuntimeServices driver to OpenRuntime
  • Renamed AppleUsbKbDxe driver to OpenUsbKbDxe
  • Update builtin firmware
  • Fixed PowerTimeoutKernelPanic on 10.15.4
  • Fixed 4K section alignment in OpenRuntime to fix Linux booting on SKL
  • Introduced SyncRuntimePermissions to fix multiple memory permission flaws
  • Introduced RebuildAppleMemoryMap to fix macOS booting on Dell 5490
  • Removed ShrinkMemoryMap in favour of more advanced RebuildAppleMemoryMap
  • Marked EnableWriteUnprotector as deprecated on modern systems
  • Introduced ProtectMemoryRegions to fix memory region handling
  • Removed ProtectCsmRegion in favour of ProtectMemoryRegions
  • Renamed PickerAttributes to ConsoleAttributes
  • Introduced PickerAttributes as a matter of UI configuration

v0.5.6

  • Various improvements to builtin text renderer
  • Fixed locating DMG recovery in APTIO IV firmware on FAT32
  • Fixed loading DMG recovery in APTIO IV firmware on FAT32
  • Removed AvoidHighAlloc quirk due to removed I/O over 4GB
  • Moved ConsoleMode, Resolution options to Output section
  • Moved console-related UEFI quirks to Output section
  • Replaced ConsoleControl and BuiltinTextRenderer with TextRenderer
  • Removed ConsoleBehaviourOs and ConsoleBehaviourUi
  • Fixed providing ConsoleOutHandle GOP when running from Shell
  • Added PickerAttributes option to colour picker
  • Added ProtectSecureBoot option through FwRuntimeServices
  • Replaced RequireVault and RequireSignature with Vault
  • Added BootKicker tool to support launching Apple BootPicker
  • Added BootPicker support as an external UI in OC through PickerMode
  • Added DirectGopRendering option to use direct GOP output
  • Multiple memory corruption and performance fixes for PNG support
  • Fixed DefaultBackgroundColor variable handling
  • Added HideAuxiliary and Auxiliary options
  • Fixed picker timeout and log timestamps for VMware
  • Fixed NULL parent DeviceHandle for launched tools
  • Added bundled HiiDatabase driver for very old firmware
  • Added SSE2 support in memory intrinsics for better performance
  • Improved ACPI PM timer CPU frequency calculation performance
  • Improved LapicKernelPanic compatibility with newer macOS versions
  • Fixed drivers starting with # not being skipped
  • Added audio support through AudioDxe with optional boot chime
  • Added VoiceOver accessability support in boot.efi for 10.13+
  • Added PickerAudioAssist option for audio assistance in picker
  • Added HdaCodecDump.efi tool in default package
  • Added legacy AudioDxe and Microsoft namespaces to Reset NVRAM
  • Merged OcSupportPkg with OpenCorePkg for easier bisection
  • Disabled warnings in release versions of NVMe and XHCI drivers

v0.5.5

  • Fixed CPU bus ratio calculation for Nehalem and Westmere
  • Fixed CPU package calculation on MacPro5,1 and similar
  • Improved OpenCore rerun detection for new versions
  • Fixed loading picker on boot failure when it is hidden
  • Added PMC ACPI sample for 300-series chipsets
  • Improved driver connection performance on APTIO IV
  • Fixed boot option saving in LogoutHook.command
  • Added support for OEM information in ExposeSensitiveData
  • Improved SanitiseClearScreen to avoid mode switching
  • Replaced SupportsCsm with AdviseWindows enabling UEFI mode
  • Fixed issues with default boot path selection on some boards
  • Update builtin firmware versions
  • Fixed AdviseWindows not setting FirmwareFeatures in NVRAM
  • Added TakeoffDelay option for improved action hotkey support
  • Added Mac GOP support to ProvideConsoleGop quirk
  • Added experimental BuiltinTextRenderer boot option
  • Added DummyPowerManagement kernel quirk to disable CPU PM

v0.5.4

  • Added Enter key handling in boot menu for quick proceed
  • Update builtin firmware versions
  • Bundled FwRuntimeServices driver with OpenCore
  • Allowed writing to non-volatile variables with disabled write
  • Fixed microcode reading on Intel CPUs
  • Fixed SMBIOS Type4 External Clock values
  • Improved Windows compatibility on some setups (acidanthera/bugtracker#614)
  • Added SupportsCsm and option in PlatformInfo/Generic
  • Added OSInfo protocol support
  • Added SignalAppleOS Booter quirk to enable IGPU on Macs in other OS
  • Added AppleSmcIoprotocol support (replaces VirtualSmc UEFI driver)
  • Added AuthRestart security property for VirtualSMC authenticated restart
  • Fixed input protocol initialisation on VMware fusion
  • Added arrow key handling in boot menu
  • FileVault 2-like key input is now the only supported input in boot menu
  • Fixed 5 second delay when exiting Shell to OpenCore Picker
  • Added default boot option update and AllowSetDefault Security option
  • Fixed CPU package detection on configurations with multiple CPUs
  • Bundled CleanNvram and VerifyMsrE2 tools for debugging
  • Added screen clearing after choosing boot entry in picker
  • Added WriteFlash NVRAM option to enable writing variables in Add
  • Added LegacyOverwrite NVRAM option to allow overwriting variables by nvram.plist
  • Added AppleXcpmForceBoost kernel quirk to maximise select Xeon performance
  • Bundled NvmExpressDxe and XhciDxe drivers for platforms that need them
  • Added IncreasePciBarSize kernel quirk for select platforms with PCI space issues

v0.5.3

  • Update builtin firmware versions
  • Fixed interpreting letters in boot menu
  • Fixed timeout abortion with PollAppleHotKeys quirk
  • Fixed rare kext injection failure due to plist-only kext in prelinkedkernel
  • Fixed error reporting for dmg loading
  • Added various debugging improvements
  • Added new crypto stack resulting in vault key format changes
  • Added UnblockFsConnect UEFI quirk to fix missing filesystems on some laptops
  • Added RequestBootVarFallback UEFI quirk to circumvent firmware boot option issues
  • Added ThirdPartyDrives kernel quirk fixing SSD trim and 10.15 SATA hibernation (thx @lvs1974)
  • Removed ThirdPartyTrim kernel quirk in favour of ThirdPartyDrives
  • Added Intel Xeon E5 (Broadwell-EP) support (thx @crazyi)
  • Switched to edk2-stable201911, which is now the minimum supportd EDK II version

v0.5.2

  • Fixed MinKernel and MaxKernel logic (thx @dhinakg, @reitermarkus)
  • Fixed ASSERT when booting non-Apple OSes without arguments from the DEBUG version
  • Added MmioWhitelist configuration option
  • Added PowerTimeoutKernelPanic kernel quirk
  • Fixed erratic cursor appearing in release builds
  • Moved ReconnectOnResChange to a user-configurable quirk to avoid freezes
  • Added OpenCore version to picker ui, configured by ExposeSensitiveData
  • Added hypervisor CPUID support to work with virtualization (thx @Leoyzen)

v0.5.1

  • Added support of kernel resource kext injection
  • Added support for 0.25% clock slowdown on Xeon Scalable CPUs (thx @mrmiller)
  • Replaced MatchKernel with MinKernel and MaxKernel
  • Added Arguments to Tools and Entries sections
  • Fixed broken timer for 300 series Intel chipsets
  • Added Input section for mouse and keyboard aggregation

v0.5.0

  • Added builtin firmware versions for new models 2019
  • Fixed LogoutHook leaving random directories in $HOME
  • Fixed FSBFrequency calculation on Xeon Scalable CPUs (thx @mrmiller)
  • Fixed ARTFrequency specifying on Intel server and atom models
  • Increased log size to 256 KB by default
  • Added ReplaceTabWithSpace quirk to improve Shell experience
  • Added ClearScreenOnModeSwitch quirk to avoid visual glitches
  • Added MISC_PWR_MGMT patch to AppleXcpmExtraMsrs quirk (thx @mrmiller)
  • Added DevirtualiseMmio quirk to Booter section
  • Added FileVault 2 user interface protocols formerly in AppleUiSupport
  • Improved kernel patch logging to include configuration comments
  • Added MSFT basic data and Linux root fs recognition to ScanPolicy
  • Fixed RT region protection restoration regression (thx Sniki)
  • Added OPT, CMD+R, CMD+OPT+P+R boot action hotkey support
  • Added PollAppleHotKeys to register boot.efi hotkeys in the picker
  • Added DisableSingleUser quirk to prohibit single user mode
  • Upgraded EDK II base package to edk2-stable201908
  • Prohibited argument changing by BootNext

v0.0.4

  • Fixed kext injection issues with dummy dependencies
  • Fixed kext injection issues with reused vtables
  • Fixed Custom SMBIOS table update patches
  • Added timestamp to the log file and changed extension to txt
  • Enhanced LogoutHook script used for emulated NVRAM saving
  • Fixed multiple operating system support in APFS containers
  • Added AvoidHighAlloc UEFI quirk to avoid high memory allocs
  • Updated builtin firmware versions for 10.15 beta support
  • Added Booter section for Apple bootloader preferences
  • Dropped AptioMemoryFix.efi support for Booter and FwRuntimeServices.efi
  • Fixed hibernation issues in Windows with RequestBootVarRouting
  • Significantly improved boot stability on APTIO
  • Added support for Windows & OpenCore on the same drive through BlessOverride
  • Added advanced user-specified boot entries through Misc -> Entries
  • Added DisableVariableWrite quirk to disable hardware NVRAM write in macOS

v0.0.3

  • Added complete modern platform database (2012+)
  • Added DisableIoMapper kernel quirk
  • Fixed ACPI modification failures with nested multiboot
  • Dropped IgnoreForWindows quirk legacy
  • Added basic AMD Zen CPU support
  • Added Misc -> Tools section to add third-party tools
  • Added Kernel -> Emulate section for CPUID patches
  • Added CustomSMBIOSGuid quirk for Custom SMBIOS update mode
  • Added PanicNoKextDump quirk to avoid kext dump in panics
  • Switched to EDK II stable and reduced image size
  • Added LapicKernelPanic kernel quirk
  • Added AppleXcpmExtraMsrs quirk and improved XCPM patches
  • Added (external) suffix for external drives in boot menu
  • Added UsePicker option, do enable for OC boot management
  • Added nvram.plist loading for legacy and incompatible platforms
  • Improved instructions for legacy and Windows installation
  • Added Windows Boot Camp switching support
  • Added basic hibernation detection & support
  • Added ResetHwSig ACPI quirk to workaround hibernation
  • Removed Custom subfolder requirement from ACPI tables
  • Fixed kext injection in 10.7.x and 10.8.x
  • Added ESP partition type detection to ScanPolicy
  • Added support for third-party user interfaces

v0.0.2

  • Documentation improvements (see Differences.pdf)
  • Platform information database updates
  • Fixed misbehaving Debug -> Target enable bit
  • Added ResetLogoStatus ACPI quirk
  • Added SpoofVendor PlatformInfo feature
  • Replaced ExposeBootPath with ExposeSensitiveData
  • Added builtin implementation of Data Hub protocol
  • Dropped UpdateSMBIOSMode Auto mode in favour of Create
  • Fixed SMBIOS CPU detection for Xeon and Core models
  • Moved ConsoleControl configuration to Protocols
  • Added Security -> ScanPolicy preference
  • Fixed invalid board-rev exposure in Data Hub
  • Fixed SMBIOS Type 133 table exposure
  • Added support for SMBIOS Type 134 table exposure

v0.0.1

  • Initial developer preview release