Jump to content

OpenCore General Discussion


dgsga
8,888 posts in this topic

Recommended Posts

2 hours ago, dgsga said:

If you read the scan policy section in the config pdf it shows you how to calculate the scan policy value to suit your situation (type of drive, file system etc. Add together the hex values you need then convert to decimal. I had to remove the file system lock to get my Windows SATA drive to show up.

I understand but I can't see a value for NTFS filesystem? Only for APFS and different hardware/disk devices.

Could you please elaborate a little bit further?

 

I need:

???????????  — OC_SCAN_ALLOW_FS_NTFS

0x00000100 — OC_SCAN_ALLOW_FS_APFS, allows scanning of APFS file system

0x00080000 — OC_SCAN_ALLOW_DEVICE_NVME, allow scanning NVMe devices

 

Edited by obus
Link to comment
Share on other sites

On 5/14/2019 at 1:28 PM, apfelnico said:

<key>ProcessorType</key>
            <integer>3841</integer>

Corresponds to Hex 0x0F01

 

"Intel Xeon W"

 

Do you happen to know if you have native XCPM power management working with that processor choice? Trying to get xpcm working with X-299/Intel 7920x combination and it's a bit broken.

Link to comment
Share on other sites

38 minutes ago, braindeadmac said:

 

Do you happen to know if you have native XCPM power management working with that processor choice? Trying to get xpcm working with X-299/Intel 7920x combination and it's a bit broken.

 
 
On Skylake-X/X299 Systems with unlocked mainboard BIOS MSR 0xE2 BIOS register and SMBIOS iMacPro1,1 we gain fully native HWP (IntelSpeedShift) Power Management after disabling the last remaining XCPM KernelToPatch entry "xcpm_core_scope_msrs" in the config.plist under Section "Kernel and Kext Patches" of Clover Configurator, which by default is still implemented but disabled in the config.plist of my actual respective X299 EFI-Folder distribution.
 
XCPM.thumb.png.53b953035d599b21a9f9b3c973e3f5fb.png
 
Users with locked mainboard BIOS MSR 0xE2 register, still have to use the "xcpm_core_scope_msrs" XCPM KernelToPatch entry to successfully boot their systems. Otherwise the OSX Kernel will write to that BIOS register and cause KP at boot!  
 
HWP is a way for the processor itself to manage the power consumption, with minor input from OSX on what it thinks it needs. In contrary, XCPM is the OSX power management part. It directly controls older hardware like Broadwell-E/EP or Haswell-E/EP and enables HWP on newer hardware like Skylake-X. It also sets some HWP variables, like the desired frequency at the maximum.
 
XCPM is enabled by default.
 
For it's complete configuration, XCPM still requires the CPU "plugin-type" injection to properly load the required XCPM frequency vectors from the iMacPro.plist, which can be directly achieved within the config.plist by checking "PluginType" in Section "ACPI" of Clover Configurator.
 
PluginType.thumb.png.b538366f5cf7090fe0efa017d9a91d21.png
 
How to verify a working xcpm configuration?
 
a.) Typically the command "sysctl machdep.xcpm.mode" reveals 1, which means that XCPM is active.
 
b.) Verify that in the IORegistryExplorer you have now under CP00@0 the following entry:
Property:         Type:         Value:
plugin-type       Number        0x1

c.) Also verify with the terminal command:

kextstat|grep -y x86plat

that the "X86PlatformPlugin.kext" is now loaded. If the command returns something like

112    1 0xffffff7f822bc000 0x17000    0x17000    com.apple.driver.X86PlatformPlugin (1.0.0) FD88AF70-3E2C-3935-99E4-C48669EC274B <111 19 18 13 11 7 6 5 4 3 1>
146    1 0xffffff7f822d3000 0x7000     0x7000     com.apple.driver.X86PlatformShim (1.0.0) DCEA94A4-3547-3129-A888-E9D5C77B275E <112 111 13 7 4 3>

d.) Verify with the following terminal command:

kextstat|grep -y appleintelcpu

that you got rid of the Apple Intel CPU power management. If the result is empty you are fine.

 
e.)  Verify with the following terminal command:
sysctl -n machdep.xcpm.vectors_loaded_count

If this command returns "1", the XCPM FrequencyVectors are properly loaded and you are all set.

 

 

Credit to KGP.

SSDT-PLUG.dsl.dsl

Edited by obus
Link to comment
Share on other sites

45 minutes ago, dgsga said:

Use the default value (0xF0103) minus fs lock value (0x1) = 0xF0102 and convert to decimal

Works but now Windows 10 is my primary boot partition.

Is there a way to change boot priority?

Edited by obus
Link to comment
Share on other sites

14 minutes ago, braindeadmac said:
32 minutes ago, obus said:
Thanks, @obus I'm aware of KGP's work. Under Clover I have xcpm working, and MSR 0xE2 is unlocked on my ASUS X299 Prime. However XCPM is not working correctly when I boot using the OpenCore bootloader.

Whit my processor I need FakeCPUID and  xcpm_pkg_scope_msrs_ for XCPM to work in OC.

Credit to @PMheart

Screenshot 2019-05-17 at 17.26.41.png

Screenshot 2019-05-17 at 17.31.07.png

Edited by obus
Link to comment
Share on other sites

20 minutes ago, braindeadmac said:
38 minutes ago, obus said:
Thanks, @obus I'm aware of KGP's work. Under Clover I have xcpm working, and MSR 0xE2 is unlocked on my ASUS X299 Prime. However XCPM is not working correctly when I boot using the OpenCore bootloader.

HI

Maybe you have a working XCPM with clover setting plugin type set or with a SSDT for your cpu..

In OC I have a simple SSDT (thanks @gengik84) to have a working xcpm

Screen Shot 2019-05-17 at 5.39.14 PM.png

Link to comment
Share on other sites

Hi,

 

Just a little tweak.

When editing config.plist with Xcode, for example 0x1234 value written in item declared as number will be automatically convert to decimal.

No need to use a converter.

 

Fred 

Edited by FredWst
  • Like 1
Link to comment
Share on other sites

2 hours ago, dgsga said:

Use the default value (0xF0103) minus fs lock value (0x1) = 0xF0102 and convert to decimal

 

don't work on my side, if I set this value or 0, and boot from usb flash, then oc shows my windows boot entry, but if on my nvme ssd, none of these value shows my windows boot entry. only mojave and recovery.

Link to comment
Share on other sites

2 minutes ago, steve3d said:

 

don't work on my side, if I set this value or 0, and boot from usb flash, then oc shows my windows boot entry, but if on my nvme ssd, none of these value shows my windows boot entry. only mojave and recovery.

probably because the config that is on your USB is different from the config on your NVMe drive?

Link to comment
Share on other sites

Are you in your senses? What is wrong with copying EmuVariableEfi from e.g. MdeModulePkg or Clover (if you cannot compile) and just putting it to drivers? Sure, we do not support this configuration as we want a cleaner solution, but why would not it work in the first place?

 

@dgsga, am I right that Clover devs modded EmuVariable in a way that it does not load unless explicitly controlled with a protocol you added?

Edited by vit9696
  • Like 3
Link to comment
Share on other sites

@vit9696

I was indeed out of my senses. EmuVariableUefi.efi from Clover is a no go. EmuVariableRuntimeDxe.efi compiled from MdeModulePkg works just fine. No longer any need for the fork...

 

@MacFriedIntel

cd to your UDK folder. Compile EmuVariableRuntimeDxe driver from MdeModulePkg using the commands:

source edksetup.sh

build -a X64 -b RELEASE -t XCODE5 -p MdeModulePkg/MdeModulePkg.dsc -m MdeModulePkg/Universal/Variable/EmuRuntimeDxe/EmuVariableRuntimeDxe.inf

 

Add to the compiled driver to OpenCore and it should fix the KP issues. It did on my ASRock board...

Edited by dgsga
  • Like 2
Link to comment
Share on other sites

8 hours ago, dgsga said:

For those of you with z390 boards:

I have created a fork of OpenCore which solves the kernel panic on sleep/shutdown/restart 

https://github.com/dgsga/OpenCorePkg

It's a quick and dirty fix, it just loads the EmuVariableUefi protocol like Clover. Use EmuVariableUefi and AptioMemoryFix drivers as per usual. Note that this panic issue is NOT related to OpenCore so can I politely request that we don’t hassle the OC developers about it...:)

It didn't work for any of our Z390 users and if anything made the shutdown process worse. but the Z390 issue does need fixing

Link to comment
Share on other sites

On 5/17/2019 at 11:39 PM, steve3d said:

 

don't work on my side, if I set this value or 0, and boot from usb flash, then oc shows my windows boot entry, but if on my nvme ssd, none of these value shows my windows boot entry. only mojave and recovery.

It work in my configuration,,, just use "4132610 (0x3F0F02)" as scan policy :)

 

 

 image.thumb.png.fdd08fac6744ea61ef5a262264885e93.png

Link to comment
Share on other sites

bit0 OC_SCAN_FILE_SYSTEM_LOCK

bit1 OC_SCAN_DEVICE_LOCK

bit8 OC_SCAN_ALLOW_FS_APFS

bit16 OC_SCAN_ALLOW_DEVICE_SATA

bit17 OC_SCAN_ALLOW_DEVICE_SASEX

bit18 OC_SCAN_ALLOW_DEVICE_SCSI

bit19 OC_SCAN_ALLOW_DEVICE_NVME

bit20 OC_SCAN_ALLOW_DEVICE_ATAPI

bit21 OC_SCAN_ALLOW_DEVICE_USB

bit22 OC_SCAN_ALLOW_DEVICE_FIREWIRE

bit23 OC_SCAN_ALLOW_DEVICE_SDCARD

 

Use the calculator.
For example: All file systems and only sata.

230469879_2019-05-202_41_16.png.55d4f28845a63ea5b69be3094605846d.png

Link to comment
Share on other sites

×
×
  • Create New...