Jump to content

RehabMan

RehabMan

Member Since 25 Jun 2012
Online Last Active A minute ago
*****

#2481826 Clover General discussion

Posted by RehabMan on 19 August 2017 - 03:46 PM

Guys, why you want XCPM? Does it has advantages? XCPM on Ivy useful for certain laptop CPUs to avoid panic otherwise. (probably mismatch between X86PlatformPlugin data and CPU capabilities).

#2478659 Clover General discussion

Posted by RehabMan on 13 August 2017 - 09:59 PM

Not sure what you mean, Xcode uses clang which is forked from GCC 4.2 (earlier versions just use GCC)... It has way more messed up default rules than even GCC, neither actually follows the standard and decides to make a hybrid of C89/90 and C99, just differently. The C89/90 standard should be followed when writing C code, because that's standard C and what compilers should default to without being overridden. Also technically, C99 is dead and withdrawn from both ANSI and ISO in favor of C11. Not very many compilers actually have a full C99 implementation, I only know of GCC. And only like GCC and VS support C11, I know some versions don't support the full implementation but I'm pretty sure they both have full now. You should not be targeting anything but C89/90 unless you need a specific language feature, which is not needed, so should be using standard C here. I'm pretty sure I've seen options inside the Xcode project manager to disable C99 (and probably other extensions). But I'm...

#2476999 Clover General discussion

Posted by RehabMan on 09 August 2017 - 08:43 PM

I want to say does real mac ivy use xcpm? No. But XCPM on Ivy is a useful feature when AppleIntelCPUPowerManagement will not work properly (certain CPUs, likely mismatch with data in X86PlatformPlugin plists).

#2476892 Clover General discussion

Posted by RehabMan on 09 August 2017 - 04:09 PM

I think users would like auto detection and delete some confusing options. Too many options too complicated, and devs have the ability to judge which cases to use which fixes, instead of leaving users endless messy option. Please sorry for my bad English. that's my two cents opinion. Auto detection is not always possible. Hackintosh cannot be completely automatic, but instead requires the human brain to make decisions based on the specific problem at hand and the solutions available. XCPM (and related patches) on Ivy is one such perfect example. It is a solution employed only if necessary. The conditions under which it is needed are determined by the human with their hands on the keyboard.

#2475823 Clover Bug/Issue Report and Patch

Posted by RehabMan on 07 August 2017 - 05:16 PM

This patch required for 10.11.6 security update 2017-003. The XCPM MSR tables have changed slightly (probably due to some small amount of KabyLake support sneaking in):   Index: rEFIt_UEFI/Platform/kernel_patcher.c===================================================================--- rEFIt_UEFI/Platform/kernel_patcher.c (revision 4138)+++ rEFIt_UEFI/Platform/kernel_patcher.c (working copy)@@ -689,6 +689,12 @@ DBG("Kernel power management patch 10.11.1(beta 15B38b)(data3) found and patched\n"); return TRUE; }+ //rehabman: change for 10.11.6 security update 2017-003 15G1611+ else if (0x00001b90000000E2ULL == (*((UINT64 *)Ptr))) {+ (*((UINT64 *)Ptr)) = 0x0000000000000000ULL;+ DBG("Kernel power management patch 10.11.6(2017-003 15G1611)(data3) found and patched\n");+ return TRUE;+ } //Sherlocks: change for 10.12 DP1 else if (0x00003390000000E2ULL == (*((UINT64 *)Ptr))) { (*((UINT64 *)Ptr)) = 0x0000000000000000ULL;Without this ch...

#2465438 Latest Kext Utility macOS "Sierra" Super Speed Edition.

Posted by RehabMan on 18 July 2017 - 08:16 PM

Hi, Arslan2012. LPCSensors.kext should be placed in the directory FakeSMC.kext/Contents/PlugIns/. Don't install it separately. It actually does not matter.Any kext placed in /S/L/E/SomeKext.kext/Contents/Plugins is the same as placing directly in /S/L/E.

#2448822 Clover General discussion

Posted by RehabMan on 21 June 2017 - 04:58 PM

In this case, I think it's better for us to follow Apple, not enabling HWP for now on desktops.Ah yes... Just adding related power features.It won't be too complex I guess, with the help of some kexts that help us write corresponding MSRs. (I don't own any Skylake+ desktops to test though...) IMO it must bring negative effects to performance without SpeedStep. HWP can be just a small part of PM, it doesn't really matter. :) No special kext necessary for HWP enabling (including after sleep/wake).  The code is already in the kernel/X86PlatformPlugin.Agree probably best to avoid HWP on desktop (even though it works), as Apple is not using it.  But it is still interesting to experiment with it...

#2448431 Clover General discussion

Posted by RehabMan on 20 June 2017 - 10:37 PM

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.

#2448402 Clover General discussion

Posted by RehabMan on 20 June 2017 - 08:56 PM

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

#2448378 Clover Bug/Issue Report and Patch

Posted by RehabMan on 20 June 2017 - 07:47 PM

Sure? You can take XNU sources and find all kernel flags in them.For example sSafeBoot = PE_parse_boot_argn("-x", bootArgBuffer, sizeof(bootArgBuffer)) ? true : false;There is no "-f". The bootargument was introduced in Chameleon. It is the bootloader that load kernel and kext into memory by itself. Later version also loaded kernelcache or extensions.mkexts if not "-f" specified#define kOldSafeModeFlag "-f" if ( getValueForKey( kOldSafeModeFlag, &val, &cnt, &bootInfo->bootConfig ) ) { gBootMode = kBootModeSafe; trycache = (((gBootMode & kBootModeSafe) == 0) &&The flag has no relation to boot.efi or to kernel any version.The flag "-f" absent in Clover since first revision. -f still having a measured effect here. The situation is quite simple:- AppleHDA injector installed, all appropriate Clover patches present, layout-id injected, etc.- but it is not working (AppleHDA doesn't load)- solution: boot with -f, re...

#2448171 Clover Bug/Issue Report and Patch

Posted by RehabMan on 20 June 2017 - 02:18 PM

What exactly does it do now? I knew it was still present in boot.efi, but not what it was actually used for after prelinkedkernel was made the only way to boot. This is how it is used... (no idea what it is actually doing)...It is very common for AppleHDA to "fall out of cache" during updates, or when installing kexts (no idea why...)After that happens, Clover KextsToPatch will not apply, as it will not be loading from kernel cache.The only way to jumpstart things at that point, is to boot without caches (kernel flag -f), which causes AppleHDA to load.  Following that, a kernel cache rebuild will get it back in cache, where you can then boot normally (with cache) with the AppleHDA KextsToPatch being applied... until the next time it breaks. Bottom line:- kernel flag -f is still useful on current macOS- and Clover is still used with older systems (as I mentioned) anyway (even if -f stopped doing anything in 10.13+)- therefore, the option in Clover should never have bee...

#2448155 Clover Bug/Issue Report and Patch

Posted by RehabMan on 20 June 2017 - 01:33 PM

If I remembered correctly, no cache mode got deprecated since a beta version of 10.12? Kernel flag "-f" not deprecated. As I wrote, it still does something and is still useful.It may not do exactly what it used to, but still useful.And besides that, Clover is still used with older OS X.

#2447724 Clover Bug/Issue Report and Patch

Posted by RehabMan on 19 June 2017 - 09:17 PM

I suggest we bring back "Boot without caches"...- it is still useful on current versions... although it doesn't do what it used to, -f is still needed for cases using injector kexts with symlinks (aka. "Dummy kexts")- and it is also useful for older versions of OS X, where still works as it originally did (I have a system that can run all versions SL->Sierra) The diffs:--- rEFIt_UEFI/entry_scan/loader.c (revision 4093)+++ rEFIt_UEFI/entry_scan/loader.c (working copy)@@ -759,7 +759,6 @@     }    -//    AddMenuCheck(SubScreen, "Without caches",       OSFLAG_NOCACHES, 69); //    AddMenuCheck(SubScreen, "With injected kexts",  OSFLAG_WITHKEXTS, 69);     AddMenuInfo(SubScreen, L"=== boot-args ===");     if (!KernelIs64BitOnly) {@@ -767,6 +766,7 @@       AddMenuCheck(SubScreen, "macOS 64bit",          OPT_X64,  68);   ...

#2447504 [pre-release] macOS High Sierra

Posted by RehabMan on 19 June 2017 - 04:42 PM

 What do I need to do in order to run "native" kbl kexts? Like, what adjustments from the normal way of doing things with kext(like the ones you've made). I have Kaby Lake 7700HQ on dell xps 15. Typical setup:- config.plist/Inject/Intel=true- config.plist/ig-platform-id set to valid ig-platform-id for KabyLake.  My process was on a desktop, so I used 0x59120000.  Laptops would be different.- config.plist/Devices/FakeID/IntelGFX=0- as mentioned, kernel flag -disablegfxfirmware (if you get the problem with firmware load)- Lilu.kext + IntelGraphicsFixup.kext probably needed (latest versions)- DVMT-prealloc set to 64mb or larger (or use patch ig-platform-id data as required for 32mb)- no need for FakePCIID_Intel_HD_Graphics.kext, but if you install it in this scenario... it won't do anything (it doesn't load with native KBL device-id) Extracted ig-platform-id values from AppleIntelKBLGraphicsFramebuffer.kext.... ig-platform-id values KBL 10.13.dp1 00 0...

#2447474 [pre-release] macOS High Sierra

Posted by RehabMan on 19 June 2017 - 03:45 PM

For anyone that runs into the endless "Begin Gfx firmware load process"... "Hash data from ME never returned", when attempting to use native KBL kexts with Kaby Lake integrated graphics...You can add kernel flag "-disablegfxfirmware" to config.plist/Boot/Arguments to skip the firmware load code.Probably same thing with 10.12.6 native KBL kexts, but I only tested on 10.13.dp1.

© 2016 InsanelyMac  |   News  |   Forum  |   Downloads  |   OSx86 Wiki  |   Mac Netbook  |   PHP hosting by CatN  |   Designed by Ed Gain  |   Logo by irfan  |   Privacy Policy