xxxzc / xps15-9570-macos

macOS Monterey/Ventura on XPS15-9570 with OpenCore
194 stars 28 forks source link

Force kext to load doesn't work on 10.15 #71

Closed shasen1235 closed 3 years ago

shasen1235 commented 3 years ago

Hello, I've been following you builds and so far they are all solid!

However, today when I updated to 10.15.3 from 10.14, I found that Kernel>>Force under Opencore no longer works.

My Wireless card is Intel AX200 ver.003, force IOFamily80211.kext method works perfectly on 10.14.

But on 10.15 I can't get it to work, not from S/L/E nor copying to other place then force it works.

The other method setting SecureBoot to default results in violation during boot up and even if works, I still prefer leaving it disabled.

Any suggestion on Catalina? Thanks!

xxxzc commented 3 years ago

force is working for me in 15.7,are you sure your are using the airportitlwm that is built for catalina?

shasen1235 commented 3 years ago

force is working for me in 15.7,are you sure your are using the airportitlwm that is built for catalina?

Yeah, I'm pretty sure about that. When I look up in the extension list in the system info, IOFamily80211.kext is listed as compatible but not loaded. I also tried putting this in OC/kexts and it reported IOFamily80211.kext successfully loaded and so was Airportitlwm(Same file so I assume I'm using the correct build all the time) https://github.com/khronokernel/IO80211-Patches

xxxzc commented 3 years ago

force is working for me in 15.7,are you sure your are using the airportitlwm that is built for catalina?

Yeah, I'm pretty sure about that. When I look up in the extension list in the system info, IOFamily80211.kext is listed as compatible but not loaded. I also tried putting this in OC/kexts and it reported IOFamily80211.kext successfully loaded and so was Airportitlwm(Same file so I assume I'm using the correct build all the time) https://github.com/khronokernel/IO80211-Patches

dose this method work?

shasen1235 commented 3 years ago

force is working for me in 15.7,are you sure your are using the airportitlwm that is built for catalina?

Yeah, I'm pretty sure about that. When I look up in the extension list in the system info, IOFamily80211.kext is listed as compatible but not loaded. I also tried putting this in OC/kexts and it reported IOFamily80211.kext successfully loaded and so was Airportitlwm(Same file so I assume I'm using the correct build all the time) https://github.com/khronokernel/IO80211-Patches

dose this method work?

Yes, but if both works, I would prefer the forcing Vanilla IO80211 in S/L/E method, which is way more cleaner IMO.

Strange thing is that even if I replace my entire OC build with your latest release with slightly changes in Platforminfo to match my previous build, the kext in S/L/E still refuses to be forced.

Another thing I change is uncheck AppleCpuPmCfgLock and AppleXcpmCfgLock in kernel section since I've disabled CFG Lock in my Bios so they are no longer needed, but I think it is not relevant to this problem?

========= Also, if you don't mind, here's another problem but with solution this time I would like to report.

With AppleALC layout-id changed to 16 in the past few releases, switching between speaker and headphone works perfectly without any further extension installed.

But it comes with another problem(At least on my machine) that causes driver conflicts and leads to 70% of CPU usage in kernel_task when on battery.

I solved it by changing id to 32 according to the suggestion from @smallssnow https://github.com/smallssnow/XPS9570-8570H-macos

But it requires Combo-jack patch otherwise headphone would be distorted in minutes after running on battery.

With all patches applied I got fully working audio switch and kernel_task staying in single digit during my hours long test on battery and AC charger.

Sorry for the long post, but I really appreciate your works and think by giving back some feedback can help the process.

Thank you, Sincerely.

xxxzc commented 3 years ago

Thanks for your feedback.

Can you see any log about IO80211Family? log show --last boot | grep -i io80211

I've been using headphone only in AC mode for a long time so I didn't notice that. I will change layout-id to 32.

shasen1235 commented 3 years ago

log show --last boot | grep -i io80211

Strange, after removing the patched IO80211Family.kext, force seems to be working now. I did remember clearly that corecapture were not forced successfully either, but now it works as well. Probably I need to use other method to activate once or clear the nvram first after big update. (Was on 10.14.6 working fine>>10.15.3 did not work>>proceeded to update to 11.1 still not working) None the less, here's the log from my current working build. IO80211Family boot log.txt

And about the layout-id, some say that different machine may have different layout despite having the same alc298 https://github.com/erenatas/Dell-XPS-15-9570-macOS#solve-the-super-high-occupancy-of-kernel_task I doubt if it's true, user may just not realize the problem all the time and it doesn't make sense to use different layout in the same machine. But since many have reported different experience on different id, I think providing possible combination might be the best for this case.

xxxzc commented 3 years ago

ComboJack are made by knnspeed to combine with layout-id 72(also made by him) for XPS15-9550. But some people don't want to use ComboJack or don't have a look at my README, so I set default layout-id to 16 (30 variant).

shasen1235 commented 3 years ago

OK, that sounds logical.