wireless_half-mini icon indicating copy to clipboard operation
wireless_half-mini copied to clipboard

[Azurewave AW-CE123H] Usual Clover DSDT FixAirport_4000 and AddDTGP_0001 + WIFI FakeID doesn't work anymore on 10.12.1

Open bpresles opened this issue 8 years ago • 67 comments

While it was perfectly working on 10.12, the usual Clover FakeID injection as described in "Airport Injection Methods/Enable WiFi" method 5. of https://github.com/toleda/wireless_half-mini/blob/master/README.md file, doesn't work anymore on 10.12.1 at least with Azurewave AW-CE123H (DeviceID: 43b1).

To fix that, I use Info.plist patch, but not by editing it directly, and use Clover Kext patch feature instead, that allows dynamic Info.plist patching (see pull request #9).

This offers multiple advantages compared to usual FakeID/Clover's DSDT Fixes:

  • Avoid direct edition of Kext (so should be update proof)
  • Avoid DSDT patching
  • Use real DeviceID instead of inject a fake one

bpresles avatar Oct 24 '16 18:10 bpresles

Please tell me, how to use this patch in Clover.

dbelyaeff avatar Oct 25 '16 20:10 dbelyaeff

The same please, how install this patch ? Thanks for your work

lesvink avatar Oct 26 '16 09:10 lesvink

config-bcm94352-120.plist/10.12-BCM94352-5GHz-US-FCC-dv works in 10.12 and 10.12.1, nothing changed. See README/Problem Reporting.

Other patches are not supported with this thread.

toleda avatar Oct 27 '16 00:10 toleda

@toleda Yes the existing patch work with 10.12.1 (it applies correctly and is still required), I never said the contrary. But on 10.12.1, 10.12-BCM94352-5GHz-US-FCC-dv is not enough to have the WiFi card detected by the OS and working and you need to add 3 additional patches (included in the config-bcm94352-121.plist I put in the pull rrequest).

If you just use the config-bcm94352-120.plist as is on 10.12.1, than WiFi doesn't work. Period.

bpresles avatar Oct 27 '16 04:10 bpresles

I tried adding all of the config patches and I still can't get this to work. I have an Azurewave BCM94352HMB. Had it working on 10.12. I have my config.plist file attached if anyone can help me out. Thanks in advance. config.plist.zip

Duffman1914 avatar Oct 27 '16 06:10 Duffman1914

@Duffman1914 There is a typo in your config.plist, you typed "AirPortCrcm4360" for the Name value of "10.12.1-BCM94352 Patch #2", while it's normally AirPortBrcm4360. Because of that the patch is not applied.

Fix the typo, and it should work (I've the same exact card as you, and it works for me).

bpresles avatar Oct 27 '16 07:10 bpresles

but it's necessary kext or only 3 patches?

johnnynunez avatar Oct 27 '16 12:10 johnnynunez

@bpresles: If you just use the config-bcm94352-120.plist as is on 10.12.1, than WiFi doesn't work. Period.

To be clear, 10.12 patch works in 10.12.1 with 4352. Without Problem Reporting files, impossible to determine what is not correct on your system.

toleda avatar Oct 27 '16 13:10 toleda

i used in 10.12 rehabman's kext, but in 10.12.1 with 3 patches not works for me, Do i have to use toleda's kext?

johnnynunez avatar Oct 27 '16 13:10 johnnynunez

@johnnynuca14 On 10.12.1 you need 4 patches (maybe not all the 4 but I didn't investigate fully on that part yet to see if all the patches are useful), the 10.2 patch (which was already in config-bcm94352-120.plist) and the additional 3 other patches included in the config-bcm94352-121.plist file attached, in the config.plist file of your Clover bootloader.

The rehabman kext is for Bluetooth firmware (if you are talking about BrcmPatchRAM), not for WiFi. And can be used additionally.

bpresles avatar Oct 27 '16 15:10 bpresles

@toleda As you can see this issue affect multiple users, so I don't think there is anything wrong with my system, just that the updated AirportBrcm4360 requires additional patches for the Azurewave BCM94352HMB WiFi card to be correctly and fully detected on 10.12.1.

Maybe it's only Azurewave BCM94352HMB owners, I don't know, but the fact is that for us if you only apply the 10.12 patch included in config-bcm94352-120.plist alone (without the 3 other patch I provided on my config-bcm94352-121.plist file), it doesn't work in 10.12.1 (but work perfectly in 10.12) and the OS display a message "No hardware present" when you click the Airport menu bar icon.

So at least for Azurewave BCM94352HMB owners, the 10.12-BCM94352-5GHz-US-FCC-dv is not enough to make the card detected by the OS.

If I apply the 3 additional patches here, then it's working perfectly again, with correct and full detection. Which demonstrate that at least one of these patches are required (maybe even all 3 of them) in addition to the existing "10.12-BCM94352-5GHz-US-FCC-dv".

I'll provide you more data (i'm not sure I'll be able to give you all what you listed on the "Problem report" section of your README, I'll try) later as soon as I can. I'll also investigate more the issue to see if a or a set of patch(es) in particular is/are fixing the issue among the 3 I added (taken from a hackintosh forum).

bpresles avatar Oct 27 '16 15:10 bpresles

I have GA-H97N-WIFI, when i updated to 10.12 i removed all patches and used this http://www.insanelymac.com/forum/topic/312759-fix-macos-sierra-dp1-bcm94532z-wifi/ everything is working fine and after the update to 10.12, if it helps..

StVak avatar Oct 27 '16 15:10 StVak

@bpresles, I have 2 Azurewave BCM94352HMB, both working after 10.12.1; no edits required. The patch is only to enable 5 GHz and is not the problem. Likely, did not properly install a README/Airport Injection Methods/Enable WiFi method (device_id injection).

toleda avatar Oct 27 '16 15:10 toleda

@toleda I double checked the device_id injection, trying Clover's method i, method ii separately and together. And without additional patch still "no hardware present".

The Device ID used is: 0x43a014e4

Find attach the complete config.plist file I used (in the file attached method ii is used (FakeID)) alongside other files listed in your "Problem report" section.

Procedure/method used: Clover config.plist

WiFi Card: AzureWave AW-CE123H

Clover Config: config.plist.zip

Motherboard: Gigabyte GA-Z87N-WIFI, BIOS Version: F6 (latest)

System Information report: SysInfo.spx.zip

IOReg: IOReg.ioreg.zip

DPCIManager Status: DCPIManagerStatus.png.zip

DPCIManager BootLog: DCPIManager_BootLog.txt.zip

MaciASL: MaciASL.acpi.zip

bpresles avatar Oct 27 '16 18:10 bpresles

IOReg shows Clover method "i" is not working. Try a different device-id injection method.

toleda avatar Oct 27 '16 20:10 toleda

@toleda After further investigation, the problem I have has nothing to do with device-id injection issue, because even if I add the real device id (14e4,43b1) by adding "pci14e4,43b1" in the "IONameMatch" section of the Info.plist file in /System/Library/Extensions/IO80211Family.kext/Contents/PlugIns/AirPortBrcm4360.kext/Contents, and regenerate the kext cache using "sudo touch /System/Library/Extensions && sudo kextcache -u /" and reboot, the card is still not detected.

And once I put back the 3 additional patches (originally coming from this source), it works at the very next reboot (even without patching kext Info.plist): http://www.insanelymac.com/forum/topic/316060-pre-release-macos-sierra-10121/page-1#entry2281834

So clearly these patches are useful on 10.12.1, at least with (some?) Azurewave AW-CE123H card. According to the forum entry above, they fixes PCI error(s) that is/are occurring with 10.12.1's AirportBrcm4360.kext (probably only with some cards or even some cards/motherboards combinations).

You said your have 2 Azurewave BCM94352HMB, is one of them (or both) a Azurewave AW-CE123H? Apparently the issue here occurs with Azurewave AW-CE123H (maybe only with certain cards? Or with certain card/motherboard combinations?).

When I don't put these 3 patches I can see in system.log the following line repeating continuously: com.apple.xpc.launchd1: Service only ran for 0 seconds. Pushing respawn out by 10 seconds.

For your own interest, find below the system information extract, DPCIManager Boot Log, IOReg extract and config.plist when the card is correctly working under 10.12.1 (so with the 3 additional patches):

DCPIManager_BootLog_working.txt.zip

IOReg_working.ioreg.zip

config_working.plist.zip

SysInfo_working.spx.zip

P.S: I updated config.plist, IOReg and DCPIManager Boot Log in original comment with 100% sure working injection but without the 3 patches (so not working) (in a nutshell it's just working config.plist with the 3 patches removed)

bpresles avatar Oct 28 '16 04:10 bpresles

After correcting the typo in AirPortBrcm4360 I still wasn't able to connect my card. I did copy and paste the kext patches from config_working.plist.zip file in the previous post into my config.plist and it is working now. I am not able to connect to my 5.0GHz network, but I do see other ones listed. I am not sure why that would be different, but I am happy that my laptop is once again useful.

Thanks for you hard work @bpresles and @toleda !

Duffman1914 avatar Oct 28 '16 08:10 Duffman1914

@Duffman1914 Did you also include the toleda 5GHz patch? Because the 3 patch I added are only to fix the PCI error, and don't enable the 5GHz support, for this you need to add also the 10.12-BCM94352-5GHz-US-FCC-dv patch.

bpresles avatar Oct 28 '16 09:10 bpresles

for me works now with 4 patches!

johnnynunez avatar Oct 28 '16 10:10 johnnynunez

@bpresles: the problem I have has nothing to do with device-id injection issue Wrong. IOReg/Search: ARPT Cancel Search No AirPort_Bcrm4360 kext loaded > no hardware detected - 4352 works/2.4 GHz only. Cause: dsdt/ARPT edits are not correct, remove patched/dsdt.aml Restart, reply with new IOReg.

toleda avatar Oct 28 '16 13:10 toleda

@toleda "Cancel Search No AirPort_Bcrm4360 kext loaded > no hardware detected - 4352 works/2.4 GHz only. Cause: dsdt/ARPT edits are not correct, remove patched/dsdt.aml Restart, reply with new IOReg."

The latest IOReg provided above are already on a running system without any patched dsdt or ssdt. Only with Clover DSDT Airport4000 and AddDTGP_0001 and FakeID 0x43a014e4.

It works perfectly on 10.12.0, and was also working perfectly in 10.10.x and 10.11.x.

Also the 3 additional patches by Neo.aka.Darkman are not at all related to injection, which is still required to make the card detected (if I don't inject device-id or patch the Kext directly, the card is not detected), it only fixes a PCI error on some hardware combination (Azurewave AW-CE123H (and probably also depending on motherboards)).

There is at least 2 reasons a card can be undetected, either the device is not recognized (wrong device-id) or the driver just fails to load. In our cases (mine and the others above having commented),

bpresles avatar Oct 28 '16 14:10 bpresles

IOReg_working.ioreg (above) shows no WiFi. There is no evidence to support any of your claims.

toleda avatar Oct 28 '16 15:10 toleda

@toleda If you look at the System Information extract you can see that the WiFi card is detected and perfectly working. So apparently IOReg here doesn't show WiFi while it's in reality present and working. I don't know how IOReg work and if it's fiable when device-id injection is done through Clover. The fact is all the _working files are from a running system with full WiFi working (using the 3 additional patch from Neo.aka.Darkman)

What I know for sure is:

  1. If I don't add Airport4000 and AddDTGP_0001 DSDT fixes and FakeID 0x43a014e4 on Clover (except if I patch the kext Info.plist to include the real device-id):

=> The card is not detected in all case (with or without Neo.aka.Darkman patches)

  1. If I add Airport4000 and AddDTGP_0001 DSDT fixes and FakeID 0x43a014e4 on Clover but I DON'T put the Neo.aka.Darkman patches

=> The card is not detected.

  1. If I add Airport4000 and AddDTGP_0001 DSDT fixes and FakeID 0x43a014e4 on Clover but I DO put the Neo.aka.Darkman patches

=> The WiFi is fully working

  1. On 10.2.0 WiFi was working with only Airport4000 and AddDTGP_0001 DSDT fixes and FakeID 0x43a014e4 on Clover (no need for additional patches)

bpresles avatar Oct 28 '16 15:10 bpresles

I think that would be useful if others affected persons (@Duffman1914, @johnnynuca14 , @lesvink, @codemotion) provide also data from their system (IOReg, DPCIManager boot log and status, Sys info extract...etc).

bpresles avatar Oct 28 '16 15:10 bpresles

@bpresles: I don't know how IOReg work True statement.

toleda avatar Oct 28 '16 15:10 toleda

@toleda How do you explain that I've full WiFi working and it doesn't seem to be visible on the IOReg extract?

I'm trying to be as useful as I can providing all the information I've. But I can't invent information that I don't have.

If IOReg isn't able to get WiFi related information even though it's fully detected and working by macOS (when using Airport4000 + AddDTGP_0001 DSDT fixes, FakeID 0x43a014e4 on Clover and Neo.aka.Darkman's patches), I don't see what can I do...

I've done all what you asked me to do, but it seems that you can't find any clue to help you to find why it's not working on our systems without Neo.aka.Darkman's patches.

If you can think of anything that can cause IOReg not to report data on WiFi and of anyhting that could fix it to report them, then don't hesitate to ask me.

I did remove all patched dsdt.aml (and ssdt.aml) files from Clover (and in fact I never had a patched dsdt.aml, only ssdt.aml) and it doesn't seem to help. So if you have any other suggestion, feel free to ask me.

bpresles avatar Oct 28 '16 15:10 bpresles

Asked and answered, nothing to explain.

toleda avatar Oct 28 '16 16:10 toleda

@toleda "Asked and answered, nothing to explain."

I finally had access to a macOS computer so I could look at the IOReg_working.ioreg file to see check that if there is WiFi information or not.

I found the following information in IOService:/AppleACPIPlatformExpert/PCI0@0/AppleACPIPCI/RP05@1C,4/IOPP/ARPT@0 with device-id value of 43a0 (which is what I but in Clover FakeID parameter. The exact value of device-id entry: a0 43 00 00). It's the same exact data on IOReg.ioreg file when booting without Neo.aka.Darkman patches.

So the device-id seems OK.

I noticed that some kexts patched through Clover seem to not be listed afterward in IORegistryExplorer.

But while there is not trace of AirPortBrcm4360 in IORegistryExplorer, you can see on the System Informations files (both working (SysInfo_working.spx and not working (SysInfo.spx)) that the AirPortBrcm4360.kext extension is loaded:

sysinfo_airportbrcm4360_loaded

IORegistryExplorer screenshots:

With Neo.aka.Darkman patches (and so WiFi fully detected and working):

ioreg_working_arpt

Without Neo.aka.Darkman patches (so with "hardware not present" message):

ioreg_not_working_arpt

bpresles avatar Oct 28 '16 16:10 bpresles

Missed this: Neo.aka.Darkman/Post #20: http://www.insanelymac.com/forum/topic/316060-pre-release-macos-sierra-10121/?p=2281980 Not AW-CE123H/43a0

toleda avatar Oct 28 '16 16:10 toleda

@toleda For information, my exact WiFi card is this one (link took straight from my original command back in November 2014): https://www.amazon.fr/gp/product/B00NTTZ81A/ref=oh_aui_search_detailpage?ie=UTF8&psc=1

So an AW-CE123H The original device id (as shown in DPCIManager PCIList tab, and in "IOName" key value of ARPT@0 entry in IOREgistryExplorer): 43b1 (14e4,43b1) Fake id used in Clover: 43a0 (14e4,43a0)

So the same exact card as Neo.aka.Darkman (see post #22 where he confirms to have original device-id of 43b1).

bpresles avatar Oct 28 '16 16:10 bpresles