Jump to content
30960 posts in this topic

Recommended Posts

you can already specify alternate config.plist in clover gui manually. you would just have to have them in the same efi as the clover you are booting.

 

Well darn, do I feel dumb. So, I can have three different config.plist files (config_1012, config_1013, etc, etc) and pick which one is used based on which boot disk is picked on the boot screen. I am off to try it, thank you!

if (Prop && IsPropertyTrue (Prop)) {
+        gSettings.HWP = TRUE;
+        AsmWriteMsr64 (MSR_IA32_PM_ENABLE, 1);
+      }

Here is the code for turning HWP on for Clover. But it became ineffective when computer waked up from sleep. Is there a way we can manually call this method so that HWP remains effective after sleep?

 

It must be a kext to work after wake up.

Can you confirm that the state of this MSR differs before and after sleep?

It must be a kext to work after wake up.

Can you confirm that the state of this MSR differs before and after sleep?

Yep. By using Pike's AppleIntelInfo.kext, pretty sure the status of this register changed after waking up. The frequency reported by Intel Power Gadgets could also prove hwp ineffective.

Yep. By using Pike's AppleIntelInfo.kext, pretty sure the status of this register changed after waking up. The frequency reported by Intel Power Gadgets could also prove hwp ineffective.

Show me the kext output before and after.

Show me the kext output before and after.

Before Sleep:

AppleIntelInfo.kext v2.4 Copyright © 2012-2017 Pike R. Alpha. All rights reserved.

Settings:
------------------------------------------
logMSRs..................................: 1
logIGPU..................................: 0
logCStates...............................: 1
logIPGStyle..............................: 1
InitialTSC...............................: 0x3360753488 (6 MHz)
MWAIT C-States...........................: 1319200

Processor Brandstring....................: Intel(R) Pentium(R) CPU G4600 @ 3.60GHz

Processor Signature..................... : 0x906E9
------------------------------------------
 - Family............................... : 6
 - Stepping............................. : 9
 - Model................................ : 0x9E (158)

Model Specific Registers (MSRs)
------------------------------------------

MSR_CORE_THREAD_COUNT............(0x35)  : 0xFFFFFF80256C8700
------------------------------------------
 - Core Count........................... : 2
 - Thread Count......................... : 4

MSR_PLATFORM_INFO................(0xCE)  : 0x80838F1012400
------------------------------------------
 - Maximum Non-Turbo Ratio.............. : 0x24 (3600 MHz)
 - Ratio Limit for Turbo Mode........... : 1 (programmable)
 - TDP Limit for Turbo Mode............. : 1 (programmable)
 - Low Power Mode Support............... : 0 (LMP not supported)
 - Number of ConfigTDP Levels........... : 0 (only base TDP level available)
 - Maximum Efficiency Ratio............. : 8
 - Minimum Operating Ratio.............. : 8

MSR_PMG_CST_CONFIG_CONTROL.......(0xE2)  : 0x1E008006
------------------------------------------
 - I/O MWAIT Redirection Enable......... : 0 (not enabled)
 - CFG Lock............................. : 1 (MSR locked until next reset)
 - C3 State Auto Demotion............... : 1 (enabled)
 - C1 State Auto Demotion............... : 1 (enabled)
 - C3 State Undemotion.................. : 1 (enabled)
 - C1 State Undemotion.................. : 1 (enabled)
 - Package C-State Auto Demotion........ : 0 (disabled/unsupported)
 - Package C-State Undemotion........... : 0 (disabled/unsupported)

MSR_PMG_IO_CAPTURE_BASE..........(0xE4)  : 0x31814
------------------------------------------
 - LVL_2 Base Address................... : 0x1814
 - C-state Range........................ : 3 (C-States not included, I/O MWAIT redirection not enabled)

IA32_MPERF.......................(0xE7)  : 0x142D8280A1
IA32_APERF.......................(0xE8)  : 0x1058C4053F

MSR_FLEX_RATIO...................(0x194) : 0x0
------------------------------------------

MSR_IA32_PERF_STATUS.............(0x198) : 0x22F800002400
------------------------------------------
 - Current Performance State Value...... : 0x2400 (3600 MHz)

MSR_IA32_PERF_CONTROL............(0x199) : 0x2400
------------------------------------------
 - Target performance State Value....... : 0x2400 (3600 MHz)
 - Intel Dynamic Acceleration........... : 0 (IDA engaged)

IA32_CLOCK_MODULATION............(0x19A) : 0x0

IA32_THERM_INTERRUPT.............(0x19B) : 0x0

IA32_THERM_STATUS................(0x19C) : 0x883B0000
------------------------------------------
 - Thermal Status....................... : 0
 - Thermal Log.......................... : 0
 - PROCHOT # or FORCEPR# event.......... : 0
 - PROCHOT # or FORCEPR# log............ : 0
 - Critical Temperature Status.......... : 0
 - Critical Temperature log............. : 0
 - Thermal Threshold #1 Status.......... : 0
 - Thermal Threshold #1 log............. : 0
 - Thermal Threshold #2 Status.......... : 0
 - Thermal Threshold #2 log............. : 0
 - Power Limitation Status.............. : 0
 - Power Limitation log................. : 0
 - Current Limit Status................. : 0
 - Current Limit log.................... : 0
 - Cross Domain Limit Status............ : 0
 - Cross Domain Limit log............... : 0
 - Digital Readout...................... : 59
 - Resolution in Degrees Celsius........ : 1
 - Reading Valid........................ : 1 (valid)

MSR_THERM2_CTL...................(0x19D) : 0x0

IA32_MISC_ENABLES................(0x1A0) : 0x850089
------------------------------------------
 - Fast-Strings......................... : 1 (enabled)
 - FOPCODE compatibility mode Enable.... : 0
 - Automatic Thermal Control Circuit.... : 1 (enabled)
 - Split-lock Disable................... : 0
 - Performance Monitoring............... : 1 (available)
 - Bus Lock On Cache Line Splits Disable : 0
 - Hardware prefetch Disable............ : 0
 - Processor Event Based Sampling....... : 0 (PEBS supported)
 - GV1/2 legacy Enable.................. : 0
 - Enhanced Intel SpeedStep Technology.. : 1 (enabled)
 - MONITOR FSM.......................... : 1 (MONITOR/MWAIT supported)
 - Adjacent sector prefetch Disable..... : 0
 - CFG Lock............................. : 0 (MSR not locked)
 - xTPR Message Disable................. : 1 (disabled)

MSR_TEMPERATURE_TARGET...........(0x1A2) : 0x641400
------------------------------------------
 - Turbo Attenuation Units.............. : 0 
 - Temperature Target................... : 100
 - TCC Activation Offset................ : 0

MSR_MISC_PWR_MGMT................(0x1AA) : 0x1CC0
------------------------------------------
 - EIST Hardware Coordination........... : 0 (hardware coordination enabled)
 - Energy/Performance Bias support...... : 1
 - Energy/Performance Bias.............. : 0 (disabled/MSR not visible to software)
 - Thermal Interrupt Coordination Enable : 0 (thermal interrupt not rerouted)

MSR_TURBO_RATIO_LIMIT............(0x1AD) : 0x24242424
------------------------------------------
 - Maximum Ratio Limit for C01.......... : 24 (3600 MHz) 
 - Maximum Ratio Limit for C02.......... : 24 (3600 MHz) 

MSR_POWER_CTL....................(0x1FC) : 0x38005F
------------------------------------------
 - Bi-Directional Processor Hot..........: 1 (enabled)
 - C1E Enable............................: 1 (enabled)

MSR_RAPL_POWER_UNIT..............(0x606) : 0xA0E03
------------------------------------------
 - Power Units.......................... : 3 (1/8 Watt)
 - Energy Status Units.................. : 14 (61 micro-Joules)
 - Time Units .......................... : 10 (976.6 micro-Seconds)

MSR_PKG_POWER_LIMIT..............(0x610) : 0x42FFD0001AEA82
------------------------------------------
 - Package Power Limit #1............... : 3408 Watt
 - Enable Power Limit #1................ : 1 (enabled)
 - Package Clamping Limitation #1....... : 0 (disabled)
 - Time Window for Power Limit #1....... : 13 (20480 milli-Seconds)
 - Package Power Limit #2............... : 4090 Watt
 - Enable Power Limit #2................ : 1 (enabled)
 - Package Clamping Limitation #2....... : 0 (disabled)
 - Time Window for Power Limit #2....... : 33 (10 milli-Seconds)
 - Lock................................. : 0 (MSR not locked)

MSR_PKG_ENERGY_STATUS............(0x611) : 0xFC97AE
------------------------------------------
 - Total Energy Consumed................ : 1010 Joules (Watt = Joules / seconds)

MSR_CONFIG_TDP_NOMINAL...........(0x648) : 0x24
MSR_CONFIG_TDP_LEVEL1............(0x649) : 0x0
MSR_CONFIG_TDP_LEVEL2............(0x64a) : 0x0
MSR_CONFIG_TDP_CONTROL...........(0x64b) : 0x80000000
MSR_TURBO_ACTIVATION_RATIO.......(0x64c) : 0x0
MSR_PKGC3_IRTL...................(0x60a) : 0x884E
MSR_PKGC6_IRTL...................(0x60b) : 0x8876
MSR_PKGC7_IRTL...................(0x60c) : 0x8894
MSR_PKG_C2_RESIDENCY.............(0x60d) : 0x0
MSR_PKG_C3_RESIDENCY.............(0x3f8) : 0x0
MSR_PKG_C2_RESIDENCY.............(0x60d) : 0x0
MSR_PKG_C3_RESIDENCY.............(0x3f8) : 0x0
MSR_PKG_C6_RESIDENCY.............(0x3f9) : 0x0
MSR_PKG_C7_RESIDENCY.............(0x3fa) : 0x0

MSR_PLATFORM_ENERGY_COUNTER......(0x64D) : 0x0 (not supported by hardware/BIOS)

MSR_PPERF........................(0x64E) : 0x229D97CC64
------------------------------------------
 - Hardware workload scalability........ : 148672859236

MSR_CORE_PERF_LIMIT_REASONS......(0x64F) : 0x0
HDC Supported

IA32_PKG_HDC_CTL.................(0xDB0) : 0x0

IA32_PM_CTL1.....................(0xDB1) : 0x1
------------------------------------------
HDC Allow Block..................(0xDB1) : 1 (HDC blocked)

IA32_THREAD_STALL................(0xDB2) : 0x0

MSR_PKG_HDC_CONFIG...............(0x652) : 0x2
------------------------------------------
Pkg Cx Monitor ..................(0x652) : 2 (count package C3 and deeper)
MSR_CORE_HDC_RESIDENCY...........(0x653) : 0x0

MSR_PKG_HDC_SHALLOW_RESIDENCY....(0x655) : 0x0

MSR_PKG_HDC_DEEP_RESIDENCY.......(0x656) : 0x0

IA32_TSC_DEADLINE................(0x6E0) : 0x33692FC834
MSR_PPERF........................(0x63E) : 0x1 (34)

IA32_PM_ENABLE...................(0x770) : 0x1 (HWP Supported and Enabled)

IA32_HWP_CAPABILITIES............(0x771) : 0x10F2424
-----------------------------------------
 - Highest Performance.................. : 36
 - Guaranteed Performance............... : 36
 - Most Efficient Performance........... : 15
 - Lowest Performance................... : 1

IA32_HWP_INTERRUPT...............(0x773) : 0x1
------------------------------------------
 - Guaranteed Performance Change........ : 1 (Interrupt generated on change of)
 - Excursion Minimum.................... : 0 (Interrupt generation disabled)

IA32_HWP_REQUEST................(0x774) : 0x8000FF01
-----------------------------------------
 - Minimum Performance................. : 1
 - Maximum Performance................. : 255
 - Desired Performance................. : 0
 - Energy Efficient Performance........ : 128
 - Activity Window..................... : 0, 0
 - Package Control..................... : 0

IA32_HWP_STATUS..................(0x777) : 0x0
-----------------------------------------
 - Guaranteed Performance Change....... : 0 (has not occured)
 - Excursion To Minimum................ : 0 (has not occured)

CPU Ratio Info:
------------------------------------------
Base Clock Frequency (BLCK)............. : 100 MHz
Maximum Efficiency Ratio/Frequency.......:  8 ( 800 MHz)
Maximum non-Turbo Ratio/Frequency........: 36 (3600 MHz)
Maximum Turbo Ratio/Frequency............: 36 (3600 MHz)
P-State ratio * 100 = Frequency in MHz
------------------------------------------
CPU P-States [ (8) 29 36 ]
CPU C7-Cores [ 2 3 ]
CPU P-States [ (8) 29 36 ]
CPU P-States [ (8) 29 32 36 ]
CPU P-States [ 8 (24) 29 32 36 ]
CPU P-States [ 8 (12) 24 29 32 36 ]

After Sleep:

AppleIntelInfo.kext v2.4 Copyright © 2012-2017 Pike R. Alpha. All rights reserved.
enableHWP................................: 0

Settings:
------------------------------------------
logMSRs..................................: 1
logIGPU..................................: 0
logCStates...............................: 1
logIPGStyle..............................: 1
InitialTSC...............................: 0x8ce3cee488 (16 MHz)
MWAIT C-States...........................: 1319200

Processor Brandstring....................: Intel(R) Pentium(R) CPU G4600 @ 3.60GHz

Processor Signature..................... : 0x906E9
------------------------------------------
 - Family............................... : 6
 - Stepping............................. : 9
 - Model................................ : 0x9E (158)

Model Specific Registers (MSRs)
------------------------------------------

MSR_CORE_THREAD_COUNT............(0x35)  : 0xFFFFFF8016907500
------------------------------------------
 - Core Count........................... : 2
 - Thread Count......................... : 4

MSR_PLATFORM_INFO................(0xCE)  : 0x80838F1012400
------------------------------------------
 - Maximum Non-Turbo Ratio.............. : 0x24 (3600 MHz)
 - Ratio Limit for Turbo Mode........... : 1 (programmable)
 - TDP Limit for Turbo Mode............. : 1 (programmable)
 - Low Power Mode Support............... : 0 (LMP not supported)
 - Number of ConfigTDP Levels........... : 0 (only base TDP level available)
 - Maximum Efficiency Ratio............. : 8
 - Minimum Operating Ratio.............. : 8

MSR_PMG_CST_CONFIG_CONTROL.......(0xE2)  : 0x1E008006
------------------------------------------
 - I/O MWAIT Redirection Enable......... : 0 (not enabled)
 - CFG Lock............................. : 1 (MSR locked until next reset)
 - C3 State Auto Demotion............... : 1 (enabled)
 - C1 State Auto Demotion............... : 1 (enabled)
 - C3 State Undemotion.................. : 1 (enabled)
 - C1 State Undemotion.................. : 1 (enabled)
 - Package C-State Auto Demotion........ : 0 (disabled/unsupported)
 - Package C-State Undemotion........... : 0 (disabled/unsupported)

MSR_PMG_IO_CAPTURE_BASE..........(0xE4)  : 0x31814
------------------------------------------
 - LVL_2 Base Address................... : 0x1814
 - C-state Range........................ : 3 (C-States not included, I/O MWAIT redirection not enabled)

IA32_MPERF.......................(0xE7)  : 0xD0B842C36
IA32_APERF.......................(0xE8)  : 0xFDE3043

MSR_FLEX_RATIO...................(0x194) : 0x10000
------------------------------------------

MSR_IA32_PERF_STATUS.............(0x198) : 0x232C00002400
------------------------------------------
 - Current Performance State Value...... : 0x2400 (3600 MHz)

MSR_IA32_PERF_CONTROL............(0x199) : 0x2400
------------------------------------------
 - Target performance State Value....... : 0x2400 (3600 MHz)
 - Intel Dynamic Acceleration........... : 0 (IDA engaged)

IA32_CLOCK_MODULATION............(0x19A) : 0x0

IA32_THERM_INTERRUPT.............(0x19B) : 0x0

IA32_THERM_STATUS................(0x19C) : 0x88420000
------------------------------------------
 - Thermal Status....................... : 0
 - Thermal Log.......................... : 0
 - PROCHOT # or FORCEPR# event.......... : 0
 - PROCHOT # or FORCEPR# log............ : 0
 - Critical Temperature Status.......... : 0
 - Critical Temperature log............. : 0
 - Thermal Threshold #1 Status.......... : 0
 - Thermal Threshold #1 log............. : 0
 - Thermal Threshold #2 Status.......... : 0
 - Thermal Threshold #2 log............. : 0
 - Power Limitation Status.............. : 0
 - Power Limitation log................. : 0
 - Current Limit Status................. : 0
 - Current Limit log.................... : 0
 - Cross Domain Limit Status............ : 0
 - Cross Domain Limit log............... : 0
 - Digital Readout...................... : 66
 - Resolution in Degrees Celsius........ : 1
 - Reading Valid........................ : 1 (valid)

MSR_THERM2_CTL...................(0x19D) : 0x0

IA32_MISC_ENABLES................(0x1A0) : 0x850089
------------------------------------------
 - Fast-Strings......................... : 1 (enabled)
 - FOPCODE compatibility mode Enable.... : 0
 - Automatic Thermal Control Circuit.... : 1 (enabled)
 - Split-lock Disable................... : 0
 - Performance Monitoring............... : 1 (available)
 - Bus Lock On Cache Line Splits Disable : 0
 - Hardware prefetch Disable............ : 0
 - Processor Event Based Sampling....... : 0 (PEBS supported)
 - GV1/2 legacy Enable.................. : 0
 - Enhanced Intel SpeedStep Technology.. : 1 (enabled)
 - MONITOR FSM.......................... : 1 (MONITOR/MWAIT supported)
 - Adjacent sector prefetch Disable..... : 0
 - CFG Lock............................. : 0 (MSR not locked)
 - xTPR Message Disable................. : 1 (disabled)

MSR_TEMPERATURE_TARGET...........(0x1A2) : 0x641400
------------------------------------------
 - Turbo Attenuation Units.............. : 0 
 - Temperature Target................... : 100
 - TCC Activation Offset................ : 0

MSR_MISC_PWR_MGMT................(0x1AA) : 0x1CC0
------------------------------------------
 - EIST Hardware Coordination........... : 0 (hardware coordination enabled)
 - Energy/Performance Bias support...... : 1
 - Energy/Performance Bias.............. : 0 (disabled/MSR not visible to software)
 - Thermal Interrupt Coordination Enable : 0 (thermal interrupt not rerouted)

MSR_TURBO_RATIO_LIMIT............(0x1AD) : 0x24242424
------------------------------------------
 - Maximum Ratio Limit for C01.......... : 24 (3600 MHz) 
 - Maximum Ratio Limit for C02.......... : 24 (3600 MHz) 

MSR_POWER_CTL....................(0x1FC) : 0x38005F
------------------------------------------
 - Bi-Directional Processor Hot..........: 1 (enabled)
 - C1E Enable............................: 1 (enabled)

MSR_RAPL_POWER_UNIT..............(0x606) : 0xA0E03
------------------------------------------
 - Power Units.......................... : 3 (1/8 Watt)
 - Energy Status Units.................. : 14 (61 micro-Joules)
 - Time Units .......................... : 10 (976.6 micro-Seconds)

MSR_PKG_POWER_LIMIT..............(0x610) : 0x42FFD0001AEA82
------------------------------------------
 - Package Power Limit #1............... : 3408 Watt
 - Enable Power Limit #1................ : 1 (enabled)
 - Package Clamping Limitation #1....... : 0 (disabled)
 - Time Window for Power Limit #1....... : 13 (20480 milli-Seconds)
 - Package Power Limit #2............... : 4090 Watt
 - Enable Power Limit #2................ : 1 (enabled)
 - Package Clamping Limitation #2....... : 0 (disabled)
 - Time Window for Power Limit #2....... : 33 (10 milli-Seconds)
 - Lock................................. : 0 (MSR not locked)

MSR_PKG_ENERGY_STATUS............(0x611) : 0x1B32F11
------------------------------------------
 - Total Energy Consumed................ : 1740 Joules (Watt = Joules / seconds)

MSR_CONFIG_TDP_NOMINAL...........(0x648) : 0x24
MSR_CONFIG_TDP_LEVEL1............(0x649) : 0x0
MSR_CONFIG_TDP_LEVEL2............(0x64a) : 0x0
MSR_CONFIG_TDP_CONTROL...........(0x64b) : 0x80000000
MSR_TURBO_ACTIVATION_RATIO.......(0x64c) : 0x0
MSR_PKGC3_IRTL...................(0x60a) : 0x884E
MSR_PKGC6_IRTL...................(0x60b) : 0x8876
MSR_PKGC7_IRTL...................(0x60c) : 0x8894
MSR_PKG_C2_RESIDENCY.............(0x60d) : 0x0
MSR_PKG_C3_RESIDENCY.............(0x3f8) : 0x0
MSR_PKG_C2_RESIDENCY.............(0x60d) : 0x0
MSR_PKG_C3_RESIDENCY.............(0x3f8) : 0x0
MSR_PKG_C6_RESIDENCY.............(0x3f9) : 0x0
MSR_PKG_C7_RESIDENCY.............(0x3fa) : 0x0

MSR_PLATFORM_ENERGY_COUNTER......(0x64D) : 0x0 (not supported by hardware/BIOS)

MSR_PPERF........................(0x64E) : 0xB1F51E169
------------------------------------------
 - Hardware workload scalability........ : 47770100073

MSR_CORE_PERF_LIMIT_REASONS......(0x64F) : 0x0
HDC Supported

IA32_PKG_HDC_CTL.................(0xDB0) : 0x0

IA32_PM_CTL1.....................(0xDB1) : 0x1
------------------------------------------
HDC Allow Block..................(0xDB1) : 1 (HDC blocked)

IA32_THREAD_STALL................(0xDB2) : 0x0

MSR_PKG_HDC_CONFIG...............(0x652) : 0x2
------------------------------------------
Pkg Cx Monitor ..................(0x652) : 2 (count package C3 and deeper)
MSR_CORE_HDC_RESIDENCY...........(0x653) : 0x0

MSR_PKG_HDC_SHALLOW_RESIDENCY....(0x655) : 0x0

MSR_PKG_HDC_DEEP_RESIDENCY.......(0x656) : 0x0

IA32_TSC_DEADLINE................(0x6E0) : 0x8CE9C8F075
(HWP Supported but not (yet) enabled)

CPU Ratio Info:
------------------------------------------
Base Clock Frequency (BLCK)............. : 100 MHz
Maximum Efficiency Ratio/Frequency.......:  8 ( 800 MHz)
Maximum non-Turbo Ratio/Frequency........: 36 (3600 MHz)
Maximum Turbo Ratio/Frequency............: 36 (3600 MHz)
P-State ratio * 100 = Frequency in MHz
------------------------------------------
CPU P-States [ (8) 36 ]
CPU P-States [ (8) 29 36 ]
CPU P-States [ 8 29 30 (36) ]
CPU P-States [ 8 29 30 34 (36) ]
CPU P-States [ (8) 29 30 32 34 36 ]
CPU P-States [ (8) 29 30 31 32 34 36 ]
CPU P-States [ 8 29 30 31 32 34 35 (36) ]
CPU P-States [ (8) 29 30 31 32 33 34 35 36 ]
CPU P-States [ (8) 27 29 30 31 32 33 34 35 36 ]
CPU P-States [ 8 26 27 29 30 31 32 33 34 35 (36) ]
CPU P-States [ (8) 26 27 28 29 30 31 32 33 34 35 36 ]

You can see the output after waking up doesn't report the status of that register. But it said hwp is capable but not enabled right above CPU Ratio Info section.

if (Prop && IsPropertyTrue (Prop)) {
+        gSettings.HWP = TRUE;
+        AsmWriteMsr64 (MSR_IA32_PM_ENABLE, 1);
+      }

Here is the code for turning HWP on for Clover. But it became ineffective when computer waked up from sleep. Is there a way we can manually call this method so that HWP remains effective after sleep?

 

 

No need for that option at all...

For correct HWP implementation, use an SMBIOS that has HWP enabled or edit the plist in X86PlatformPlugin.kext/Resources appropriately.

HWP will be enabled on boot and on wake from sleep with correct SMBIOS/X86PlatformPlugin setup.

  • Like 3

Strange.

Can you check registers 0x770 and 0x771 after sleep with this tool http://www.insanelymac.com/forum/topic/291833-anvmsr-v10-tool-and-driver-to-read-from-or-write-to-cpu-msr-registers/?

pHs-Mac:AnVMSR_10.6 and + ph$ ./anvmsr read 770
RDMSR 770 returns value 0x1
pHs-Mac:AnVMSR_10.6 and + ph$ ./anvmsr read 771
RDMSR 771 returns value 0x10a2424

After waking up, I am sure the value of 0X770 is 0. That's to say, hwp is turned off. And after reading the value of 771, system crashed...

 

No need for that option at all...

For correct HWP implementation, use an SMBIOS that has HWP enabled or edit the plist in X86PlatformPlugin.kext/Resources appropriately.

HWP will be enabled on boot and on wake from sleep with correct SMBIOS/X86PlatformPlugin setup.

 Yeah. I am aware there are two implementation of HWP. But I have problems getting SMBIOS one working and this method has more requirements than the other for Pentiums.

I updated to the Clover r4091 and now I'm stuck here. Does anyone know how to solve it?

I saw this today when i tried setting <key>TextOnly</key><true/> in Clover's config.plist on a laptop which does not seem to support the text console after Clover's graphics are displayed. I had to make a separate boot option for Shell64U.efi which skips Clover so I could use the Shell. Anyway, Clover was still working, I just couldn't see the UI, so I was able to start an OS and set TextOnly back to false. You probably have a different problem though, since you probably wouldn't set TextOnly to true, and your PC probably supports TextOnly?

 

BTW, your screen shot shows a problem with the progress messages, where the ... on the left is not erased correctly between messages, so sometimes it shows 4 dots .... or overlapping dots. The fix is to change the code so that all progress messages are the same length with spaces like this:

// make sure these messages are all 30 (or 31 characters with an additional space to center odd number of characters)
"    Welcome to Clover %s    " 
"   ... testing hardware ...   "
"     ... user settings ...     "
"     ... scan entries ...     "
"                              "

Was the AMD graphics wakeup issue fixed finally?  Is it possible to switch primary bios display just before the amd driver will be loaded by using some kext or so? As I understand, the AMD card needs to be prevented to run the bios code?  So what if a kext would "hard reset" the amd card while boot sequence, before the graphics driver is loaded?

  • Like 1

Was the AMD graphics wakeup issue fixed finally?  Is it possible to switch primary bios display just before the amd driver will be loaded by using some kext or so? As I understand, the AMD card needs to be prevented to run the bios code?  So what if a kext would "hard reset" the amd card while boot sequence, before the graphics driver is loaded?

Yes, but how?

  • Like 2

Strange.

Can you check registers 0x770 and 0x771 after sleep with this tool http://www.insanelymac.com/forum/topic/291833-anvmsr-v10-tool-and-driver-to-read-from-or-write-to-cpu-msr-registers/?

Any conclusion here? HWP is turned off definitely after sleep. :(

 

Funky frank, on 20 Jun 2017 - 12:25 PM, said:snapback.png

Was the AMD graphics wakeup issue fixed finally?  Is it possible to switch primary bios display just before the amd driver will be loaded by using some kext or so? As I understand, the AMD card needs to be prevented to run the bios code?  So what if a kext would "hard reset" the amd card while boot sequence, before the graphics driver is loaded?

Yes, but how?

That might be ONE solution, but please consider also, that we don't get BlackScreen if none of the AMDRadeonX4xx0.kexts get loaded (yes, we have NO accelleration than, but we also have NO BlackScreen problem).

So maybe there is just the right patch needed as for Intel HD5x0/6x0 gfx as done with Lilu and IntelGraphicsFixup. But as long, as none of the main CLOVER coders (SLICE, SHERLOCK etc.) have one of these AMD cards on their own, and as long as those, who might have one of these cards, but not able to code - we may find never a solution.

 

And thats the reason, why i made the offer in this post here.

  • Like 3

Good afternoon everyone! I'm not sure how graphics injection works, but since the Sierra I could no longer patch on the fly through Clover and when I put the framebuffer Baboon or Eulemur for my video card, which always worked previously, stays with screen Black (monitors turn off). I tried several things, but I did not want to have to modify the kext manually, so I did not have to do this at all update. Now I was thinking, if the bootloader is who tells the system what framebuffer to use, it will be that in the bootloader, the address of the framebuffer informed is outdated, thus causing a deviation of the AMD5000Controller.kext to a wrong address, making it impossible to be completed The patch?

Good afternoon everyone! I'm not sure how graphics injection works, but since the Sierra I could no longer patch on the fly through Clover and when I put the framebuffer Baboon or Eulemur for my video card, which always worked previously, stays with screen Black (monitors turn off). I tried several things, but I did not want to have to modify the kext manually, so I did not have to do this at all update. Now I was thinking, if the bootloader is who tells the system what framebuffer to use, it will be that in the bootloader, the address of the framebuffer informed is outdated, thus causing a deviation of the AMD5000Controller.kext to a wrong address, making it impossible to be completed The patch?

Any conclusion here? HWP is turned off definitely after sleep. :(

 

It seems PC UEFI/BIOS make CPU initialization not as we want for macOS drivers. New kext needed.

 

I just tested on my Skylake Intel NUC6i7KYK.

I'm using iMac17,1 with a modified plist in X86PlatformPlugin (one that enables HWP).

I used AppleIntelInfo.kext to determine HWP enablement before and after sleep.

My tests confirm that HWP is enabled after sleep.

 

My procedure:

- enable HWP (using an X86PlatformPlugin "symlink" injector kext with modified Resources/board-id plist)

- use kextutil to load AppleIntelInfo.kext prior to sleep

- check for HWP enablement in AppleIntelInfo output

- unload AppleIntelInfo.kext with kextunload

- rm /tmp/AppleIntelInfo.dat (just to make sure)

- sleep/wake

- use kextutil to load AppleIntelInfo.kext prior to sleep

- check for HWP enablement in AppleIntelInfo output

  • Like 1

I saw iMac17,1, iMac18,x and even iMac19,1 (the coming iMac Pro) have no "hwp" power feature in their FreqeuncyVectors, unlike MacBook(Pro).

Maybe just like @Slice said, the mechanism is a little bit different...

 

It is why I added HWP to my iMac17,1 X86PlatformPlugin injector kext.

  • Like 2

 

hey wanted to tell you about a issue with 10.13 for my 290x 

 

so i use a bios mod to use multi monitors and have sleep work oob 

it worked in 10.12 and to 10.10 

the issue is when i try and boot with the bios mod on it never happens anymore so did anything change gfx wise with 10.13 and clover because ozmosis can still boot bios mod way

×
×
  • Create New...