Jump to content
vit9696

Lilu — kext and process patcher

363 posts in this topic

Recommended Posts

Advertisement

I installed Lilu 1.21 and intelgraphicsfixup to clover/oem/vendor/kext/othe. If I activated intel hd4600 next to my nvidia 1050ti i bios settings and then added "-igfxoff" to boot args, the intel gfx still is listed as cuda device in luxmark in 10.13.2. So disabling does not work. I see that the kext is loaded in kextstat.

 

Why?

 

EDIT: If I put lilu and intelgrpahicsfixup into /L/E instead, same result.

 

EDIT: Do I have to use -liluforce for 10.13.2?  Why is the github page not hosting lilu v1.2.2?

 

EDIT: Sorry, had the wrong ig-platform-id in my dsdt, thought that clover would overwrite it. That was not the case.

Share this post


Link to post
Share on other sites

So.... latest Lilu give fatal CPU fault on 10.12.3 beta 4, anyone running into this issue?

Latest Lilu (1.2.1 & 1.2.2), AppleALC (1.2.2), & WhateverGreen (1.1.4) worked perfectly at either DP or HDMI port at 10.13.1, 10.13.2, & 10.13.3.

But it got blank screen of AMD R9 290X GPU at DP port at previously working 10.10.5, 10.11.6, & 10.12.6 in my P6TSE hackintosh.

Rolling back to previous versions of Lilu/AppleALC/WEG can not fix it yet by CLOVER r.4359 or r.4369.

Thanks for vit9696 again !

 

[solved by myself]

1. AMD R9 290X GPU only working at HDMI port at 10.10.5, 10.11.6, & 10.12.6 in my P6TSE hackintosh, not working at DP port.

2. HDMI audio working again at 10.12.6, but not working at 10.10.5 or 10.11.6.

Edited by jsl

Share this post


Link to post
Share on other sites

The crash is caused by a memory corruption in Intel GPU acceleration DRM key/certificate handling code. Therefore, only Ivy+ GPUs are affected.

 

Are you 100% sure it is only affecting Ivy and Sandy? Because if I use my haswell igpu hd4600 with connector-full next to nvidia gpu, there will be a hard crash/reset in Final Cut. I have seen these patches do not match for haswell igpu... Or is this problem unrelated?

Share this post


Link to post
Share on other sites

Hi.

 

I am having trouble  with Kernel Panics after updating macOS Sierra 10.12.6 to the latest security update patch from the app store today.

 

So, Cyberdev told me that there was a new version of Lilu availaible. I also updated NvidiaGraphicsFixup.kext since I use a GTX 560 TI. ALC and FakeSMC were up to date already.

But I still got kernel panics. So I removed nvidiagraphicsfixup.kext and booted without nvidia drivers. That worked, So then I could update to the latest webdrivers (Version 378.05.05.25f06). 

 

 

Now I have the latest webdrivers installed but I cannot use NvidiaGraphicsFixup.kext because it results in kernel panics:

 

https://www.dropbox.com/s/na4vw2n3d9e4o1o/panic3.jpg?dl=0

 

Next, I tried using NVWebDriverLibValFix.kext again instead, which I used before, but that fix/kext doesn't work any more... the GPU just turns off after boot.

 

These are the Kexts I currently use:

 

https://www.dropbox.com/s/hndg0zomj9eq6cx/Kexts.png?dl=0

 

I don't know what to do, can you see what the problem is? Do I need that whatevergreen.kext?

 

Any help would be highly appreciated!

Share this post


Link to post
Share on other sites

Hi @vit9696,

With Xcode 8.2.1 uder OS X 10.11.6 I got this warning:

Unused Entity Issue:
~/Projects/XCode/Lilu-master/Lilu/Headers/kern_iokit.hpp:187:9: Unused variable 'name'

(Refers to this):
#187: auto name = service->getName(); //Unused variable 'name'

But Lilu.kext built succeeded. Thanks  :)

 

#EDIT: a same warning with AppleALC build, but I could ignore it.

Share this post


Link to post
Share on other sites

Is it possible to use Lilu for code injection? Ala CydiaSubstrate for iOS? It'd be enough to be able to provide a dynamic library that can be loaded into all processes and have its __attribute__((constructor)) called

Share this post


Link to post
Share on other sites

Hi, what do you need this functionality for?

In brief, it is possible and the code for this exists, yet primarily in private as a part of the project Lilu codebase is based on. Some parts were published with Shiki, some others found its way to the latest Lilu release. You in fact do not even need a dylib with Lilu, since everything could be done entirely in memory.

As I said, a reasonably large codebase (userspace sdk) remains private for several reasons. It is a discussible question whether it should be published or not, so I would like to hear the reasons you need this in detail.

Share this post


Link to post
Share on other sites

Hi!

Thanks for replying so quickly. I think the use cases for such an SDK are wide. You can find precedent of it if you search for the large community which formed around the Unsanity Haxie tools for 10.4 which provided code injection and an API to replace functions at runtime.

Personally, I have a number of projects which are in great need of a platform to handle injection and code replacement. You may refer to AutumnBoard (https://github.com/alexzielenski/AutumnBoard) - a tool to replace system app, extension, etc. icon files at runtime allowing for a rich packaged theming API. Unfortunately, development was dropped as the tools being used for code injection became outdated. Additionally there is dockify (https://github.com/alexzielenski/dockify_library) - a library which if developed fully could allow customization of dock appearance.

A system-wide runtime theming library could easily be achievable with your system. Note that many tweaks would require injection into processes filterable by bundle identifier, frameworks loaded, process name, or a wildcard.

Many other possibilities exist for patches of OS X user space functionality large and small. For instance, one might opt to remove the feature of OS X which lower's system audio during a FaceTime call; and can easily do so with a patch like this: https://github.com/ParasiteTeam/crucible/blob/master/examples/com.apple.audio.CoreAudio/SpeakerTime.plist if there was a stable code injection platform. The addition of this SDK would create a community of tweak developers not too different from that which formed around the iOS jailbreak scene.

Extensions which could probably be ported immediately include and any SIMBL bundle that was created for OS X. You may ask what benefit this product could offer over SIMBL bundles?

1. SIMBL does not allow you to filter by library/framework. (though; admittedly this could be added to its injection process)

2. SIMBL requires an agent which receives late notifications of process events (in many applications of code injection tweaks it is crucial to inject early into process lifetime)

3. SIMBL can only filter against Cocoa UI applications - (headless or terminal applications are not able to be injected into)

4. SIMBL does not include a standardized code replacement SDK

 

You mentioned that a dylib is not required since patches could be done in memory with a Lilu plugin, but I think it would be best load dylibs and keep the 3rd party code running in userland which does not need kernel privileges.

The best way to implement a system like this would be as a separate Lilu plugin, which would act as a trampoline for a dynamically loaded plugin system retrieving filters from user space or the filesystem.

Edited by jivhg

Share this post


Link to post
Share on other sites

Thanks for the links and notes. Just as you said, the use cases for such functionality could broadly vary.

4 years ago, when AppleALC was not even planned, Lilu prototype was actually a modern replacement to SIMBL. However, when it comes to software modification there are two points to think about:

  1. Security
  2. Target audience

SIMBL was pretty impressive several years ago, where numerous developers created their extensions to patch different things. Later on their enthusiasm disappeared, and even though SIMBL still works on modern macOS versions (with some hacks and SIP workarounds), its userbase is largely dead. Basically the same with Cydia Substrate and Jailbreak itself, which no longer belong to the common sense.

More than that, SIMBL or a working Lilu-based solution with a SDK opens a possibility for malware writers and similar shady people to write harmful software at no effort. And that's if we forget about other possible bugs.

Regarding the "kernel privileges and stuff". We followed the exact model you described during the creation of an initial prototype of MiniSubstrate with 07151129. And it was badly wrong. Making it possible to let the user to dynamically load an extension during the system runtime causes an extreme security risk, having a plugin management system injected in every process is an additional risk to system stability, and a possibility to swap one dylib with another is another great security risk. The only way it could actually appear (and is actually implemented in Lilu) is to have a kext that is bundled with all the extensions with a defined process list, which is only loaded at boot time. If you think of it, this is similar to how Cydia Substrate works with a 'respring'. Do not take me wrong though, obviously nobody executes any code with kernel privileges, it uses app privileges and is no different from any other dylib. As a bonus this approach is in fact more performant.

All in all, while I still consider a possibility of this project going live, I remain unconvinced about the existence of an audience, which would actually write useful plugins. Perhaps, more actual projects and demand could work better here, but such a revival will take time.

Share this post


Link to post
Share on other sites
On 1/11/2018 at 12:28 PM, jsl said:

Latest Lilu (1.2.1 & 1.2.2), AppleALC (1.2.2), & WhateverGreen (1.1.4) worked perfectly at either DP or HDMI port at 10.13.1, 10.13.2, & 10.13.3.

But it got blank screen of AMD R9 290X GPU at DP port at previously working 10.10.5, 10.11.6, & 10.12.6 in my P6TSE hackintosh.

Rolling back to previous versions of Lilu/AppleALC/WEG can not fix it yet by CLOVER r.4359 or r.4369.

Thanks for vit9696 again !

 

[solved by myself]

1. AMD R9 290X GPU only working at HDMI port at 10.10.5, 10.11.6, & 10.12.6 in my P6TSE hackintosh, not working at DP port.

2. HDMI audio working again at 10.12.6, but not working at 10.10.5 or 10.11.6.

My Intel HD 4600 and AMD RX 560 worked at 10.13.4 and 10.13.5 beta1 (15F35e), but got blank screen from RX 560 after updated to 10.13.5 beta2 and beta3.

Another issue was related to versions of Lilu/AppleALC/WhateverGreen.kext:

only Lilu & AppleALC (1.2.1) with WhateverGreen (1.1.2) worked at 10.13.4 & 10.13.5 beta1, newer versions still got blank screen from RX 560.

 

After repeated testing with different versions of WhateverGreen.kext I found that WEG version 1.1.5, 1.1.6 or 1.1.7 got blank screen from AMD RX 560 if Intel HD 4600 enabled at BIOS. Lilu (1.2.3) & AppleALC (1.2.6) are compatible with WEG (1.1.2 or 1.1.3) in my hackintosh.

Only version 1.1.3 or 1.1.2 got normal display from both AMD RX 560 and Intel HD 4600 at 10.13.4 & 10.13.5 beta1(10.13.5 beta 2 & 3 will broke it again !).

Edited by jsl2000
More testing with different versions

Share this post


Link to post
Share on other sites

Hi @vit9696 and everyone! Many thanks all for your continuing support on these kexts.

 

I originally wanted to ask you @vit9696 for your comment/support on your GitHub but saw your message there and thought of starting off here. First of all, please take some time to update the URLs in your automated message as the one pointing to "Lilu and its plugins" is not valid :D

 

I accidentally discovered last year your IntelGraphicsFixup kext that I started using together with AppleALC and Lilu, of course, when you switched to it some time ago. As I am using HD5000 it was handy for the boot glitch and those problems with Safari and video playback that you seem to have resolved (Safari was getting sluggish).

 

Recently, I am having my screen going randomly black -- monitor seems to lose sync, as I see on my Dell the icon for the port, meaning a signal was lost for a moment. I was trying to see since when this started, I suspect the latest Security Update 2018-003 or with Clover r4558. Not sure.

 

Running Sierra 10.12.6 with Security Update 2018-003 on my Intel NUC D54250WYKH and latest (today) Clover r4586; most of my fixes are patched AML files, my Intel HD 5000 Graphics [8086:0a26] is declared as 0x0a26000d (desktop) and my config.plist has no kext patches at all (i.e. no "boot glitch fix"). Finally, I use Lilu v1.2.3 and AppleALC v1.2.7 together with IntelGraphicsFixup v1.2.7 (that I removed, for now) all three placed in /Library/Extensions/ that ran fine until recently.

 

If I update to Lilu v1.2.4 do you think it may prove to be useful? What kind of logs/output do you think you may require to better identify the issue? I cannot say that monitor going black is reproducible as it's random, not sure even if it's related to Safari (I think not) as it happened when I had rebooted, too.

 

Thank you again for your time, if anyone encountered the same issue, your kind feedback/assistance is appreciated!

K.

 

 

Edited by MacKonsti

Share this post


Link to post
Share on other sites

Hi,

 

Regarding the links, it is kind of hard to keep everything in sync, so any pull requests will be welcome.

Regarding the signal loss, it is most likely a hardware issue or a new problem that is not addressed by the kexts <which I do not plan to research at the moment>. One thing to suggest is to make sure you do NOT use GuC (igfxfw=1 boot arg). At the moment it causes a lot of issues. Other than that I have few ideas.

 

Vit

Share this post


Link to post
Share on other sites
59 minutes ago, vit9696 said:

Regarding the signal loss, it is most likely a hardware issue or a new problem that is not addressed by the kexts <which I do not plan to research at the moment>. One thing to suggest is to make sure you do NOT use GuC (igfxfw=1 boot arg). At the moment it causes a lot of issues. Other than that I have few ideas.

I sure hope not a H/W problem with my NUC :D:D

OK I have updated both Lilu and AppleALC to latest, and reverted IntelGraphicsFixup tho the one available (from April). Rebooted and will see what happens.

No, I am not using any boot args, my setup is pretty much vanilla (even my config.plist) as most simple fixes are done as DSL/AML files in "patched" folder of Clover (studied @RehabMan and @sebinouse posts and Git files, when I got this older but compatible NUC last year).

Any ideas to investigate and report, are welcome! Many thanks again, mate.

 

config-2018-06-24.plist

Edited by MacKonsti

Share this post


Link to post
Share on other sites

Hi @vit9696,

Sorry, I got strange behavior with Lilu (plus it's PlugIns) under OS X El Capitan 10.11.6 (15G22010) if I boot with Clover UEFI << but with Legacy they're working just fine (10.11.6 && 10.14 Beta have no issue). It seems, Lilu is not loaded on my UEFI-system that prevents AppleALC to be loaded as well:

 

Spoiler

Last login: Fri Jul 13 13:23:55 on console
MacBookPro:~ badruzeus$ cat /private/var/log/system.log | egrep "Lilu|AppleALC"
Jul 13 13:23:21 localhost kernel[0]: Kext as.vit9696.AppleALC - library kext as.vit9696.Lilu not found.
Jul 13 13:23:21 localhost kernel[0]: Can't load kext as.vit9696.AppleALC - failed to resolve library dependencies.
Jul 13 13:23:21 localhost kernel[0]: Kext as.vit9696.AppleALC failed to load (0xdc00800e).
Jul 13 13:23:21 localhost kernel[0]: Failed to load kext as.vit9696.AppleALC (error 0xdc00800e).
Jul 13 13:23:21 localhost kernel[0]: Couldn't alloc class "AppleALC"
MacBookPro:~ badruzeus$ kextstat | egrep "Lilu|AppleALC"
MacBookPro:~ badruzeus$
MacBookPro:~ badruzeus$ sw_vers
ProductName:	Mac OS X
ProductVersion:	10.11.6
BuildVersion:	15G22010
MacBookPro:~ badruzeus$ bdmesg
.....  .....  ...
0:100  0:000  Starting Clover revision: 4598 on American Megatrends EFI
0:100  0:000  Build with: [Args: -mc --no-usb -D NO_GRUB_DRIVERS_EMBEDDED -t XCODE8 | -D DISABLE_USB_SUPPORT -D NO_GRUB_DRIVERS_EMBEDDED --conf=/Users/badruzeus/src/edk2/Conf -D USE_BIOS_BLOCKIO -D USE_LOW_EBDA -a X64 -b RELEASE -t XCODE8 -n 5 | OS: 10.11.6 | XCODE: 8.2.1]
......  .....  ...
6:944  0:000  Boot redirected to Entry 1. 'OS X El Capitan'
6:944  0:000  EmuVariable UninstallEmulation: CloseEvent = Success, original var services restored
6:944  0:000  DefaultIndex=1 and MainMenu.EntryCount=12
7:067  0:123  GUI ready
24:207  17:140   boot with args: -liludbgall nvda_drv=1 -v 
24:208  0:000  Boot option Boot0000 not found
24:208  0:000  === [ StartLoader ] =======================================
24:208  0:000  Finally: ExternalClock=25MHz BusSpeed=99774kHz CPUFreq=2195MHz PIS: hw.busfrequency=100000000Hz
24:208  0:000  Loading boot.efi  status=Success
24:405  0:197  GetOSVersion: 10.11.6 (15G22010)
......  .....  ...
24:451  0:000  Beginning FSInjection
FSInjectionInstall ...
- Our FSI_SIMPLE_FILE_SYSTEM_PROTOCOL installed on handle: 217CE18
24:465  0:013  Use origin smbios table type 1 guid.
24:465  0:000  Preparing kexts injection for arch=x86_64 from EFI\CLOVER\kexts\10.11
24:465  0:000  Extra kext: EFI\CLOVER\kexts\10.11\RealtekRTL8111.kext (v.2.2.2)
24:514  0:048  Extra kext: EFI\CLOVER\kexts\10.11\IOath3kfrmwr.kext (v.1.2.1)
24:556  0:042  Extra kext: EFI\CLOVER\kexts\10.11\FakeSMC.kext (v.1787)
24:625  0:068    |-- PlugIn kext: EFI\CLOVER\kexts\10.11\FakeSMC.kext\Contents\PlugIns\LPCSensors.kext (v.1787)
24:832  0:207    |-- PlugIn kext: EFI\CLOVER\kexts\10.11\FakeSMC.kext\Contents\PlugIns\GPUSensors.kext (v.1787)
24:860  0:027    |-- PlugIn kext: EFI\CLOVER\kexts\10.11\FakeSMC.kext\Contents\PlugIns\CPUSensors.kext (v.1787)
24:881  0:020    |-- PlugIn kext: EFI\CLOVER\kexts\10.11\FakeSMC.kext\Contents\PlugIns\ACPISensors.kext (v.1787)
24:913  0:032  Extra kext: EFI\CLOVER\kexts\10.11\CodecCommander.kext (v.2.6.3)
24:962  0:048  Extra kext: EFI\CLOVER\kexts\10.11\CalDigitUSBxHCI.kext (v.1.3.8a2)
25:005  0:042  Extra kext: EFI\CLOVER\kexts\10.11\CalDigitFastIO.kext (v.2.6.1)
25:022  0:017  Extra kext: EFI\CLOVER\kexts\10.11\AsusACPIBackLightPanel.kext (v.1.7)
25:043  0:020  Extra kext: EFI\CLOVER\kexts\10.11\ApplePS2SmartTouchPad.kext (v.4.6.8)
25:156  0:112    |-- PlugIn kext: EFI\CLOVER\kexts\10.11\ApplePS2SmartTouchPad.kext\Contents\PlugIns\ApplePS2Keyboard.kext (v.4.6.8)
25:187  0:031    |-- PlugIn kext: EFI\CLOVER\kexts\10.11\ApplePS2SmartTouchPad.kext\Contents\PlugIns\ApplePS2Controller.kext (v.4.6.8)
25:210  0:023  Extra kext: EFI\CLOVER\kexts\10.11\AppleALC.kext (v.1.3.0)
26:408  1:197  Extra kext: EFI\CLOVER\kexts\10.11\ACPIBatteryManager.kext (v.1.81.4)
26:462  0:054  Custom boot screen not used because entry has unset use graphics

 

I attached my prebuilt Lilu && AppleALC (debug versions) plus preboot.log below. Thanks.

Lilu_AppleALC_dbg_A43SJ.zip

 

#EDIT: I use these /drivers64uefi (whole EFI Folder is on my sig):

 

AppleImageCodec-64.efi
AppleKeyAggregator-64.efi
AppleUITheme-64.efi
CsmVideoDxe-64.efi
DataHubDxe-64.efi
EmuVariableUefi-64.efi
FirmwareVolume-64.efi
FSInject-64.efi
OsxAptioFixDrv-64.efi
PartitionDxe-64.efi
SMCHelper-64.efi
VBoxHfs-64.efi

 

Edited by Badruzeus

Share this post


Link to post
Share on other sites
On 7/13/2018 at 1:53 PM, Badruzeus said:

Hi @vit9696,

Sorry, I got strange behavior with Lilu (plus it's PlugIns) under OS X El Capitan 10.11.6 (15G22010) if I boot with Clover UEFI << but with Legacy they're working just fine (10.11.6 && 10.14 Beta have no issue). It seems, Lilu is not loaded on my UEFI-system that prevents AppleALC to be loaded as well:

Oh, got it. I think the problem is from my EFI Partition; Fyi my Disk was converted to GPT from MBR using 3rd party app w/o reinstalling OS X (10.11.6). Then, I manually created 200MB EFI using gParted and set it as "boot, esp". gDisk seen my partition map as Pure GPT already, then macOS 10.14 was installed afterward. Sorry for confusing, I did some tests with creating Clover UEFI over USB, boot from it.. and got no issue at all with Lilu & PlugIns. Thanks anyway. :)

Share this post


Link to post
Share on other sites

Hi @vit9696, can Lilu patch info.plist? I have two info.plist patch in Clover, used to disable Apple's I2C kexts to load. But Clover can't patch kexts in recovery or installation, so I want to write a plugin to do that.

Share this post


Link to post
Share on other sites

@vit9696 hi.

i want to clean info for intelframebuffer of each gen in clover.

https://github.com/acidanthera/WhateverGreen/blob/master/Manual/IntelFramebuffer.bt

can i use this in terminal for each framebuffer target?

 

previously, i followed cecekpawon's script for framebuffer in clover.

https://github.com/cecekpawon/OSXOLVED/blob/master/yod-GPUFramebuffers.php

 

thanks in advance

Share this post


Link to post
Share on other sites
1 hour ago, vit9696 said:

Hi, you need 010 Editor (https://www.sweetscape.com/010editor/) to run this script on each framebuffer kext. And for 10.14+ framebuffers you need to dump them first via -igfxdump boot argument via WhateverGreen.

 

okay. sorry friendly this program. first, open bt file in 010 editor and f7, join file. then open AppleIntelFramebuffer_8_18.0

but i didn't see any clean result.

 

also here is log on my system.

Sherlocksui-MacBook-Pro-2:~ sherlocks$ log show --predicate 'process == "kernel" AND (eventMessage CONTAINS "WhateverGreen" OR eventMessage CONTAINS "Lilu")' --style syslog --source --last boot
Filtering the log data using "process == "kernel" AND (composedMessage CONTAINS "WhateverGreen" OR composedMessage CONTAINS "Lilu")"
Skipping info and debug messages, pass --info and/or --debug to include.
Timestamp                       (process)[PID]    
2018-07-18 22:39:03.978102+0900  localhost kernel[0]: calling mpo_policy_init for Lilu
2018-07-18 22:39:03.978107+0900  localhost kernel[0]: Security policy loaded: Lilu Kernel Extension 1.2.5 DEBUG build (Lilu)
2018-07-18 22:39:04.021559+0900  localhost kernel[0]: (kernel) WhateverGreen:     rad @ (DBG) not enabling CAIL_DisableDrmdmaPowerGating
2018-07-18 22:39:04.021565+0900  localhost kernel[0]: (kernel) WhateverGreen:     rad @ (DBG) not enabling CAIL_DisableGfxCGPowerGating
2018-07-18 22:39:04.021570+0900  localhost kernel[0]: (kernel) WhateverGreen:     rad @ (DBG) not enabling CAIL_DisableUVDPowerGating
2018-07-18 22:39:04.021574+0900  localhost kernel[0]: (kernel) WhateverGreen:     rad @ (DBG) not enabling CAIL_DisableVCEPowerGating
2018-07-18 22:39:04.021578+0900  localhost kernel[0]: (kernel) WhateverGreen:     rad @ (DBG) not enabling CAIL_DisableDynamicGfxMGPowerGating
2018-07-18 22:39:04.021583+0900  localhost kernel[0]: (kernel) WhateverGreen:     rad @ (DBG) not enabling CAIL_DisableGmcPowerGating
2018-07-18 22:39:04.021587+0900  localhost kernel[0]: (kernel) WhateverGreen:     rad @ (DBG) not enabling CAIL_DisableAcpPowerGating
2018-07-18 22:39:04.021591+0900  localhost kernel[0]: (kernel) WhateverGreen:     rad @ (DBG) not enabling CAIL_DisableSAMUPowerGating
2018-07-18 22:39:04.021598+0900  localhost kernel[0]: (kernel) WhateverGreen:   shiki @ (DBG) pre-config: online 0, bgra 0, compat 0, whitelist 0, id 0, stream 0
2018-07-18 22:39:04.098092+0900  localhost kernel[0]: (kernel) Lilu:     api @ force enabling NoTouchID (100) on an unsupported operating system due to beta flag
2018-07-18 22:39:04.225800+0900  localhost kernel[0]: (kernel) Lilu:     api @ force enabling BT4LEContiunityFixup (110) on an unsupported operating system due to beta flag
2018-07-18 22:39:04.250495+0900  localhost kernel[0]: (kernel) Lilu:     api @ force enabling AirportBrcmFixup (113) on an unsupported operating system due to beta flag
2018-07-18 22:39:11.277607+0900  localhost kernel[0]: (kernel) Lilu:    file @ VNOP_WRITE failed 14!
2018-07-18 22:39:11.277614+0900  localhost kernel[0]: (kernel) Lilu:    file @ failed to write /AppleIntelFramebuffer_8_18.0 file of 2166784 size
2018-07-18 22:39:11.277622+0900  localhost kernel[0]: (kernel) WhateverGreen:    igfx @ dumping framebuffer information to /AppleIntelFramebuffer_8_18.0
2018-07-18 22:39:11.277633+0900  localhost kernel[0]: (kernel) WhateverGreen:    igfx @ (DBG) Patching framebufferId 0x19160000 successful
2018-07-18 22:39:13.449851+0900  localhost kernel[0]: (kernel) WhateverGreen:     weg @ (DBG) failed to obtain display mode
2018-07-18 22:39:13.449869+0900  localhost kernel[0]: (kernel) WhateverGreen:     weg @ (DBG) failed to obtain display mode
2018-07-18 22:39:13.449876+0900  localhost kernel[0]: (kernel) WhateverGreen:     weg @ (DBG) failed to obtain display mode
2018-07-18 22:39:13.460326+0900  localhost kernel[0]: (kernel) WhateverGreen:    igfx @ (DBG) computeLaneCount: bpp = 24, available = 10
2018-07-18 22:39:13.489364+0900  localhost kernel[0]: (kernel) WhateverGreen:     weg @ (DBG) fb info 1: -2147479552:0 7680:0:32
2018-07-18 22:39:13.489372+0900  localhost kernel[0]: (kernel) WhateverGreen:     weg @ (DBG) fb info 2: 3:8 --------RRRRRRRRGGGGGGGGBBBBBBBB 0:1920:1080
2018-07-18 22:39:13.489397+0900  localhost kernel[0]: (kernel) WhateverGreen:     weg @ (DBG) attempting to copy...
2018-07-18 22:39:13.595898+0900  localhost kernel[0]: (kernel) WhateverGreen:    igfx @ (DBG) computeLaneCount: bpp = 24, available = 10
2018-07-18 22:39:13.637489+0900  localhost kernel[0]: (kernel) WhateverGreen:    igfx @ (DBG) computeLaneCount: bpp = 24, available = 10
2018-07-18 22:39:13.789014+0900  localhost kernel[0]: (kernel) WhateverGreen:    igfx @ (DBG) computeLaneCount: bpp = 24, available = 10

 

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

  • Recently Browsing   0 members

    No registered users viewing this page.

Announcements

  • Similar Content

    • By juanjullian
      So i managed to install latest Catalina with opencore 0.59 and latest acidanthera's work on my HP 840-g4. But i have just one annoying problem: IMEI.
       
      The issue is exactly the same as described here:
       
       
      and in other thread at the commercial hack site with big eyes.
       
      Most of the applications not responding after wake from sleep. crashed quicklookup, quicktime player, youtube, hackintool, etc, etc. (spinning color wheel).
       
      So surfing deeply on the forums, i noticed that the problem is related of lack of IMEI injection. So i tried manual HECI to IMEI patch, knowing that WhateverGreen do that work. No results.
       
      The only way that i can get IMEI on ioReg is changing the address from 16 to 0, through a ACPI patch:
       
      dict> <key>Comment</key> <string>HECI ADDRESS</string> <key>Count</key> <integer>0</integer> <key>Enabled</key> <true/> <key>Find</key> <data>SEVDSQhfQURSDAAAFgA=</data> <key>Limit</key> <integer>0</integer> <key>Mask</key> <data></data> <key>OemTableId</key> <data></data> <key>Replace</key> <data>SEVDSQhfQURSDAAAAAA=</data> <key>ReplaceMask</key> <data></data> <key>Skip</key> <integer>0</integer> <key>TableLength</key> <integer>0</integer> <key>TableSignature</key> <data></data> </dict>  
      So with this i can get IMEI on IoReg
       

       

       
       
      But i think that is a problem! Because the KBL FrameBuffer can't initialize the MEI Service, even with the IMEI at ioreg, this is from boot syslog:
       
      2020-06-24 16:38:29.075004-0400 localhost kernel[0]: (AppleIntelKBLGraphicsFramebuffer) <AppleIntelKBLGraphicsFramebuffer`AppleIntelFramebufferController::createMEIDriver()> [IGFB][ERROR ] Failed to start MEI service! 2020-06-24 16:38:29.075014-0400 localhost kernel[0]: (AppleIntelKBLGraphicsFramebuffer) <AppleIntelKBLGraphicsFramebuffer`AppleIntelFramebufferController::createMEIDriver()> [IGFB][ERROR ] Failed to create MEI service  
       
      Soooo, the question is:
       
      How can i solve this?!!
       
      I also tried:
       
      1. SSDT-IGPU from Rehabman
      2. SSDT-IMEI
      3. Rename HECI to IMEI ACPI patch
      All these with no luck.
       
      PD: I have to say that not SDcard mount after wake from sleep and this are the only two thing left to solve in order to get full working hackintosh laptop.!
       
       
      Thanks in advance
       
      EFI.zip
      ioreg_imei0.ioreg.zip
      syslog.txt
    • By miliuco
      Install macOS 10.15 Catalina on Gigabyte P55-USB3 with Radeon RX 580 graphics card using a USB device created with the createinstallmedia command and Clover as bootloader. Instructions to install macOS 10.14 Mojave on this computer are almost identical, replacing Catalina app with Mojave, so this article is suitable for both versions of macOS. The Gigabyte P55-USB3 motherboard (and some others from the same brand with the P55 / H55 chipset) have made it easy to build a hackintosh and install macOS since 10 years ago. Although it is an old motherboard, the behavior with Mojave or Catalina is very good after changing the classic hard drive (HDD) for a solid state drive (SSD).

      Components of the hackintosh
      Gigabyte GA-P55-USB3 motherboard: P55 chipset, 1156 socket, ALC892 audio, Gigabit RTL8111D network, DDR3 RAM Intel Core i5-750 processor for socket 1156: 4 cores, 8MB cache, clock rate 2.66 GHz Fenvi FV-T919 wireless + Bluetooth card: PCI-Express, wifi is ac type, detected by macOS as Airport and Apple Bluetooth Radeon RX 580 8 GB graphics card: works OOB but with a few details to be considered, it has its own article.  
      Previous requirements
      Install macOS Catalina app in /Applications folder USB flash drive with at least 16GB prepared from Disk Utility with MBR partition scheme and formatted as Mac Os Plus (on older Gigabyte boards like mine, USB sticks partitioned with GUID scheme instead of MBR usually hang the system when booting) Recent version of Clover (I have used r5117) Recent versions of Lilu (at least 1.4.4) and WhateverGreen (at least 1.3.9) to fine-tune the behavior of the graphics card Recent version of RealtekRTL8111 (I have used 2.2.2) FaceSMC version 6.26-322 (newer versions disable automatic mounting of USB devices on my system).  
      Create install USB
      Run this command from Terminal (assuming the target device is called USB):
      Bash: sudo /Applications/Install\ macOS\ Catalina.app/Contents/Resources/createinstallmedia --volume /Volumes/USB /Applications/Install\ macOS\ Catalina.app
      Clover must be installed on the USB memory, I choose the following options:
      Bootloader > Install boot0af on the MBR CloverEFi > CloverEFI 64-bit SATA BIOS Drivers, 64 bit > Recommended drivers > FSInject + SMCHelper + XhciDxe BIOS Drivers, 64 bit > File System drivers > ApfsDriverLoader Install RC scripts on selected volume Optional RC scripts > Disable sleep proxy client.  
      You have to copy 4 kexts to the EFI/CLOVER/kexts/Other folder of the USB device: FaceSMC 6.26-322, Lilu 1.4.4, WhateverGreen 1.3.9 and RealtekRTL8111 2.2.2. Regarding the config.plist file, the most significant is:
      Boot > kext-dev-mode = 1 in Boot arguments GUI > Theme embedded, EmbeddedThemeType Dark, Screen Resolution 1920x1080, Preboot in Hide Volume Graphics > blank, nothing is checked except if foxbox solution is used to have more than 2 connectors enabled RT Variables > 0x28 in BooterConfig and 0x67 in CsrActiveConfig SMBios > iMac14,2 Sytem Parameters> Yes in Inject Kexts and check Inject System ID.  
      Install macOS Catalina

      Boot from the USB device and choose Install macOS from Install macOS Catalina. The installation program runs until the PC restarts. Here choose Install macOS from HDD (the name of the volume you are installing macOS on). With RX 580 graphics card, the screen goes black in this second phase of the installation, it is a phase in which the user has nothing to do until the PC is restarted so you can let it work until the Clover menu again. You have to choose Boot macOS from HDDto boot the installed system from the hard disk, the screen is recovered and you can configure the account and the initial options. From this moment the screen works fine.

      In summary:
      Boot from USB > Clover menu > Install macOS from Install macOS Catalina > screen works fine Boot from USB > Clover menu > Install macOS from HDD > black screen Boot from USB > Clover menu > Boot macOS from HDD > screen works fine.  
      Install Clover and kexts on the hard drive

      Clover needs to be installed on the disk where we just installed macOS. Options are the same as when installing it on the USB memory. You also have to copy the 4 kexts (FaceSMC 6.26-322, Lilu 1.4.4, WhateverGreen 1.3.9 and RealtekRTL8111 2.2.2) into the EFI/CLOVER/kexts/Other folder on the EFI partition of the disk. And review the config.plist file remembering the comments for the USB.

      If everything goes well, the computer starts from the hard disk with a running copy of macOS Catalina.
       
       

    • By miliuco
      Radeon RX 580 8 GB graphics card on macOS High Sierra (as of 10.13.6), Mojave and Catalina on the P55-USB3 board: excellent performance with acceleration (Metal) OOB, no need for drivers (kexts), with 3 drawbacks, one has to do with the boot of the operating system (a solution is proposed), another with the number of rear connectors enabled (a solution is proposed) and another that only affects to one phase of the Mojave or Catalina installation (without clear solution for now).

      I have placed the XFX AMD Radeon RX-580 P8DFD6 8GB Triple X Edition GDDR5, 256BIT, DVI + HDMI + 3DP graphics card on a 10 year old motherboard (Gigabyte P55-USB3) in order to update the hackintosh to 10.14 Mojave and 10.15 Catalina because the card that I have used in past years, Nvidia Geforce GTX 750 1GB, has stopped working after 10.13.6 High Sierra since this was the last version for which Nvidia published the alternate web drivers that were necessary for the card to work well with graphic acceleration.

      The new RX 580 card needs considerably more space than the old one although it fits perfectly in an ATX case, and requires an additional power connector. It has 2 big fans that most of the time are stopped, at least in my case. In macOS it works perfectly, even with Metal acceleration, without additional drivers and without extra settings in Clover. But it has drawbacks that I comment below.

      Alterations during startup

      During the boot of the operating system, when the screen goes from the basic driver to the AMD driver, 2 artifacts appear randomly, they are very short in duration (from one to a few seconds):
      Very short flashing white screen that may or may not be accompanied by purple lines The fans runs for a few seconds (the noise is clearly audible). This behavior is solved with the installation of 2 kexts, Lilu and WhateverGreen. Lilu is an extension created by acidantheraand vit9696 among others whose function is to help to patch kexts, processes and libraries during macOS boot. It is accompanied by specific plugins for the task required, for example WhateverGreen that injects necessary patches for certain AMD, Intel and Nvidia graphics cards. It is mandatory to have both extensions together, one of them separately does not correct the problem.
      I have installed Lilu 1.4.4 and WhateverGreen 1.3.9 in the EFI/CLOVER/kexts/Other folder of the EFI partition and artifacts have disappeared. Remember that these 2 extensions are not necessary for the card to work properly, if you tolerate those very brief distortions of the screen or the noise of the fans running for a few seconds, you can live without Lilu and WhateverGreen.

      Note: authors recommend that when using Lilu and WhateverGreen with Radeon cards, NO graphic settings have to be added to Clover (Inject ATI, etc.).

      Note: these alterations, especially the brief white screen and less frequently purple lines and fan noise, are also seen in Windows and some real Macs with the same card.

      Alteration during macOS installation

      Boot from USB > Clover menu > Install macOS from Install macOS Catalina > screen works fine
      Boot from USB > Clover menu > Install macOS from MacintoshHD > black screen
      Booting from USB > Clover menu > Boot macOS from MacintoshHD > screen works fine.

      In the first and third stages, screen works fine. In the second stage the screen goes black although the installation continues. The user has nothing to do at this moment so you can leave the PC working until the Clover menu is shown again, the screen is recovered, the initial account options can be configured and you can enter into the newly installed system with correct resolution and acceleration.
      This behavior is not corrected even by placing Lilu and WhateverGreen into the USB device. At least in my case I have not found a solution for it. Yo can install macOS perfectly with that drawback of not seeing how it progresses during the second phase of the installation.

      Only 2 connectors of the 5 available work

      This card has 3 Display Port (DP) ports, 1 HDMI port and 1 DVI port. In my case, only 2 DP work, those that are further from the HDMI connector. It is enough if you use a single monitor or 2 monitors that can be connected by DP. But if you want to have 3 or more connected devices or some of them only have HDMI, it is necessary to enable the 5 connectors or at least 4 of them since the DVI is obsolete and does not allow resolutions as high as DP and HDMI.
      User foxbox has proposed a solution in a thread titled [Solved] Sapphire RX 580 Nitro + SE | black screen on HDMI and DVI. Must inject from Clover a modification to the Orinoco framebuffer (which is used in the RX 580 card) so that the 5 connectors lack a fixedly assigned address and, instead, receive it dynamically. This change is made from the KextsToPatch section of Clover. Read the post from foxbox.
      This has to be accompanied by 3 changes in the Graphics section of Clover: Orinoco in FB Name / Inject ATI / 5 in Video Ports. I have tested this solution in macOS Catalina and it effectively enables the 5 ports of the card but, since I only use 1 monitor, I have removed it and I am with Lilu and WhateverGreen.
       

    • By miliuco
      Instalar macOS 10.15 Catalina en la placa Gigabyte P55-USB3 con tarjeta gráfica Radeon RX 580 utilizando un dispositivo USB con el programa de instalación creado con el comando createinstallmedia y con Clover como gestor de arranque. Las instrucciones para instalar macOS 10.14 Mojave en este ordenador son prácticamente las mismas, reemplazando la aplicación Catalina por Mojave, por lo que este artículo sirve para ambas versiones de macOS. La placa base Gigabyte P55-USB3 (y algunas otras de la misma marca con chipset P55 / H55) facilitaron el montaje de un hackintosh desde hace 10 años y la instalación de macOS desde la versión 10.6 Snow Leopard. Aunque se trata de una placa veterana, el comportamiento con Mojave o Catalina es muy bueno después de cambiar el disco duro clásico de platos giratorios (HDD) por uno de estado sólido (SSD).
       
      Componentes del hackintosh
       
      Placa base Gigabyte GA-P55-USB3: chipset P55, socket 1156, audio ALC892, red Gigabit RTL8111D, admite hasta 4 módulos de memoria RAM DDR3 Procesador Intel Core i5-750 para socket 1156: 4 núcleos, caché de 8MB, frecuencia de reloj 2,66 GHz Tarjeta inalámbrica + bluetooth fenvi FV-T919: PCI-Express, wifi es de tipo ac, reconocida por macOS como Airport y bluetooth de Apple Tarjeta gráfica Radeon RX 580 de 8GB: funciona bien tal como sale de la caja pero hay algunos detalles que merecen ser tenidos en cuenta, tiene su propio artículo.
        Requisitos previos
       
      La aplicación Instalar macOS Catalina en la carpeta /Aplicaciones Memoria USB de al menos 16gb preparada desde Utilidad de Discos con esquema de particiones MBR y formateada como Mac Os Plus con registro (en placas Gigabyte antiguas como la mía, las memorias USB particionadas con esquema GUID en vez de MBR suelen colgar el sistema al arrancar) Versión reciente de Clover (he utilizado la versión r5117) Versiones recientes de Lilu (al menos 1.4.4) y WhateverGreen (al menos 1.3.9) para afinar el comportamiento de la tarjeta gráfica Versión reciente de RealtekRTL8111.kext (he utilizado la versión 2.2.2) Versión 6.26-322 de FaceSMC (versiones más recientes inhabilitan el montaje automático de dispositivos USB en mi sistema).
        Crear USB de instalación
       
      Ejecutar este comando desde Terminal (suponiendo que el dispositivo de destino se llama USB):
      sudo /Applications/Install\ macOS\ Catalina.app/Contents/Resources/createinstallmedia --volume /Volumes/USB /Applications/Install\ macOS\ Catalina.app Al terminar la operación hay que instalar Clover en la memoria USB, en mi caso elijo las opciones siguientes:
       
      Instalar Clover en la partición ESP Gestor de arranque > Instalar boot0af en el MBR CloverEFi > CloverEFI 64-bits SATA BIOS Drivers, 64 bit > Recommended drivers > FSInject + SMCHelper + XhciDxe BIOS Drivers, 64 bit > File System drivers > ApfsDriverLoader Instalar los scripts RC en el volumen seleccionado Scripts RC opcionales > Disable sleep proxy client.
        Hay que copiar 4 extensiones a la carpeta EFI/CLOVER/kexts/Other del dispositivo USB: FaceSMC 6.26-322, Lilu 1.4.4, WhateverGreen 1.3.9 y RealtekRTL8111 2.2.2. Respecto al archivo config.plist lo más significativo es:
       
      Boot > kext-dev-mode=1 en Boot arguments Gui > Theme embedded, EmbeddedThemeType Dark, Screen Resolution 1920x1080 (es la de mi monitor), Preboot en Hide Volume Graphics > en blanco, no se marca nada salvo si se utiliza la solución de foxbox para tener más de 2 conectores habilitados RT Variables > 0x28 en BooterConfig y 0x67 en CsrActiveConfig SMBios > iMac14,2 Sytem Parameters > Yes en Inject Kexts y marcar Inject System ID.
        Instalar macOS Catalina
       
      Arrancar desde el dispositivo USB y elegir Install macOS from Install macOS Catalina. Comienza el programa de instalación hasta que se reinicia el PC. Aquí se elige Install macOS from HDD (el nombre del volumen en el que estás instalando macOS). Con la tarjeta gráfica RX 580 se pierde la pantalla (en negro) en esta segunda fase de la instalación, es una fase en la que el usuario no interviene hasta que se vuelve a reiniciar el PC por lo que puedes dejarlo funcionar hasta que se muestre el menú de Clover del USB otra vez. Hay que elegir Boot macOS from HDD para arrancar el sistema instalado desde el disco duro, se recupera la pantalla y se puede configurar la cuenta y las opciones iniciales. A partir de este momento la pantalla funciona bien. En resumen:
       
      Arranque desde USB > menú Clover > Install macOS from Install macOS Catalina > pantalla funciona bien Arranque desde USB > menú Clover > Install macOS from MacintoshHD > pantalla en negro Arranque desde USB > menú Clover > Boot macOS from MacintoshHD > pantalla funciona bien.
        Instalar Clover y extensiones en el disco duro
       
      Hay que instalar Clover en el disco en el que acabamos de instalar macOS. Las opciones son las mismas que al instalarlo en la memoria USB. También hay que copiar las 4 extensiones (FaceSMC 6.26-322, Lilu 1.4.4, WhateverGreen 1.3.9 y RealtekRTL8111 2.2.2) a la carpeta EFI/CLOVER/kexts/Other de la partición EFI del disco. Y repasar el archivo config.plist recordando lo comentado para el USB. Si todo ha ido bien, al reiniciar sin dispositivo USB el ordenador arranca desde el disco duro con macOS Catalina en marcha.
       
      Nota: no comento nada del sonido porque utilizo un dispositivo externo de sonido por USB que funciona sin requerir configuraciones adicionales de ningún tipo. Esta placa base lleva el chip de sonido Realtek ALC892 que tengo desactivado, si deseas utilizarlo hay opciones para activarlo, si buscas ALC892 Catalina o ALC892 Mojave encontrarás soluciones para ello.
       

×