Skip to content

OC integration

chris1111 edited this page Apr 20, 2022 · 22 revisions

OC intergration

Rev 5119 commit 620401d

Included OcQuirks and OpenRuntime into Clover repository.

The drivers will be built at Clover compilation.

Further they will be improved and included into package.

Quirks: ⇩

## Config.plist Quirks structure

<key>Quirks</key>
        <dict>
            <key>AvoidRuntimeDefrag</key>
            <true/>
            <key>DevirtualiseMmio</key>
            <false/>
            <key>DisableSingleUser</key>
            <false/>
            <key>DisableVariableWrite</key>
            <false/>
            <key>DiscardHibernateMap</key>
            <false/>
            <key>EnableSafeModeSlide</key>
            <true/>
            <key>EnableWriteUnprotector</key>
            <true/>
            <key>ForceExitBootServices</key>
            <false/>
            <key>ForceOcWriteFlash</key>
            <false/>
            <key>MmioWhitelist</key>
            <array>
                <dict>
                    <key>Address</key>
                    <integer>4275159040</integer>
                    <key>Comment</key>
                    <string>Haswell: SB_RCBA is a 0x4 page memory region, containing SPI_BASE at 0x3800 (SPI_BASE_ADDRESS)</string>
                    <key>Enabled</key>
                    <false/>
                </dict>
                <dict>
                    <key>Address</key>
                    <integer>4278190080</integer>
                    <key>Comment</key>
                    <string>Generic: PCI root is a 0x1000 page memory region used by some firmwares</string>
                    <key>Enabled</key>
                    <false/>
                </dict>
            </array>
            <key>ProtectMemoryRegions</key>
            <false/>
            <key>ProtectSecureBoot</key>
            <false/>
            <key>ProtectUefiServices</key>
            <false/>
            <key>ProvideCustomSlide</key>
            <false/>
            <key>ProvideMaxSlide</key>
            <integer>0</integer>
            <key>RebuildAppleMemoryMap</key>
            <false/>
            <key>ResizeAppleGpuBars</key>
            <integer>-1</integer>
            <key>SetupVirtualMap</key>
            <true/>
            <key>SignalAppleOS</key>
            <false/>
            <key>SyncRuntimePermissions</key>
            <true/>
            <key>FuzzyMatch</key>
            <true/>
            <key>KernelCache</key>
            <string>Auto</string>
            <key>AppleXcpmExtraMsrs</key>
            <false/>
            <key>AppleXcpmForceBoost</key>
            <false/>
            <key>DisableIoMapper</key>
            <true/>
            <key>DisableLinkeditJettison</key>
            <true/>
            <key>DummyPowerManagement</key>
            <false/>
            <key>ExtendBTFeatureFlags</key>
            <false/>
            <key>ExternalDiskIcons</key>
            <false/>
            <key>IncreasePciBarSize</key>
            <false/>
            <key>PowerTimeoutKernelPanic</key>
            <false/>
            <key>ThirdPartyDrives</key>
            <false/>
            <key>XhciPortLimit</key>
            <false/>
            <key>ProvideCurrentCpuInfo</key>
            <false/>
        </dict>

OpenRuntime: ⇩

Booting macOS 11 and macOS 12 OpenRuntime.efi is need.

Screen Shot 2022-04-20 at 4 39 08 PM

Rev 5142+ Using new OpenRuntime.efi.

There is incompatibility with older version. Clover before 5142 requires OpenRuntime.efi version 1.1 while 5142+ requires version 1.2.

What to do if you sometime want to reboot with older version?

Screenshot2022-02

Slice made special folder drivers/5142 where I placed OpenRuntime-v12.efi. And common folder drivers/UEFI contains OpenRuntime-v11.efi.

How it works ⤵︎

Old Clover not see the folder 5142 and uses common folder drivers/UEFI and read here openRuntime-v11.efi.

New Clover see the folder drivers/5142 and read here new OpenRuntime-v12.efi which is in priority.

That's all!

OpenCorePkg: ⇩

OpenCorePkg repos use by Clover ☞ OpenCorePkg use by Clover


Clone this wiki locally