LyonLeBrun Posted September 10, 2020 Share Posted September 10, 2020 I am new to this site, but I am really coming to appreciate the depth of knowledge and the responsiveness to questions. In response to my comment about the AW-CE123H stopping working after a Mojave update, I was told: Quote You probably had replaced the IO80211Family kext in /S/L/E prior to your last update and that got replaced with a vanilla version after the update. That's to be expected. Hence why you should install the replacement kext(s) in /L/E where they won't be replaced/overwritten and you'll retain Wifi after any update. Typical example illustrating why /S/L/E should always remain full vanilla. Ahah. That's quite likely (I wasn't really sure what I was doing that first time 'round). Quote A little Search on the forum would have avoided you all that hassle and expenditure, do think of using the facility in the future... I didn't know about the OSX Latitude site earlier. A search might have helped me find the problem. But... It sounds as if dropping back to Mojave might be a different workaround. I did re-install with Mojave using Jake Lo's EFI folder for Latitude E7440 posted here. Wireless still doesn't. (In fact the Wi-Fi menu icon is a greyed-out fan with an "X", and it says, "Wi-Fi: No hardware installed" I'm new to all this, but I understood you to say: - Copy that Mojave kext (10.14.6_IO80211Family.kext) file to /Library/Extensions - Repair permissions and rebuild cache as per the process detailed here - Restart (couldn't hurt) This didn't work - perhaps I'm misinterpreting. What else should I check? Many thanks. Link to comment Share on other sites More sharing options...
Moderators Jake Lo Posted September 10, 2020 Moderators Share Posted September 10, 2020 You also need to patch it so it's compatible to a supported device that Mac recognizes. See here Link to comment Share on other sites More sharing options...
LyonLeBrun Posted September 10, 2020 Author Share Posted September 10, 2020 Thanks for the speedy response. I did see that "Supported/Unsupported Wireless Inventory" page before I posted, and saw this note: Quote NB: Patching means adding the PCI ids of the listed card to the Info.plist file found inside the listed kext. In rare cases, binary patching may also be necessary. My search queries did not turn up a page that describes/links to this procedure. There are a zillion responses, all telling me to do this, or to refer to Hervé's Guide (which I was also unable to locate). But none tell how to do it. NB: I have ProperTree and can see the Info.plist in the kext. I just need a hint of what to add... Thanks again. Link to comment Share on other sites More sharing options...
Moderators Jake Lo Posted September 10, 2020 Moderators Share Posted September 10, 2020 @LyonLeBrun Under Deviceproperties/PciRoot(0x0)/Pci(0x1C,0x3)/Pci(0x0,0x0) Change compatible to pci14e4,43a0 Save and reboot. See if that works Link to comment Share on other sites More sharing options...
LyonLeBrun Posted September 11, 2020 Author Share Posted September 11, 2020 Thank you for addressing my questions. I have the luxury of being able to blow away and re-install from scratch, so I am starting over with Catalina, using Jake Lo's E7440 EFI and it has booted fine. Now I want to get wireless running using the AW-CE123H. I see that Note 5 of the 2nd Wireless Inventory says that I can do a `DSDT/kext patch` on the 10.14.6_IO80211Family.kext.zip kext. If I understand the page correctly, I have two options: Patch one of the Plugins within the IO80211Family.kext. ("Show Package Contents" on the top level .kext, then open one of those plugins with "Show Package Contents" and add "14e4-43b1" to the IONameMatch array for the plugin's Info.plist. Then save, and copy the entire .kext file either to /L/E or /S/L/E, repair permissions and rebuild cache and reboot. This is straightforward, but may need to be re-done after an update. Three questions: a) Is this procedure correct? b) Are there any other steps? c) Which of the three plugins (AirPortBrcm4331, AirPortBrcm4360, or AirPortBrcmNIC) should get the "14e4-43b1"? Modify the DSDT This would likely not need to be re-done if I upgrade the OS (Is that correct?) But my search of the OSXLatitude site doesn't turn up a clear description of how to do this. I see the "json-like" key-value file on the Inventory page, but don't know what tool to use to view/edit that data. Could you provide a link? As always, many thanks. Link to comment Share on other sites More sharing options...
LyonLeBrun Posted September 13, 2020 Author Share Posted September 13, 2020 This didn't work. (But you hear this all the time...) I would feel really bad if I wasn't following your instructions carefully, so I wanted to document the exact steps I have followed: 1. I re-downloaded Jake Lo's E7440 EFI folder and used its contents to replace BOOT and OC folders the internal disk's EFI folder. (I used Clover Configurator 5.15.2.0 to Mount EFI, then copied unzipped contents from Jake Lo's archive. I rebooted, and the computer started up OK.) 2. I then re-downloaded the 10.14.6_IO80211Family.kext.zip from the Wireless Inventory #2 . I unzipped it and copied it to /Library/Extensions. (I had to supply my password.) 3. I used the following script to repair permissions and rebuild cache, and then restarted the computer. #!/bin/bash sudo echo 'Password Accepted: Fixing Kext Cache.' sudo chmod -Rf 755 /L*/E* sudo chown -Rf 0:0 /L*/E* sudo touch -f /L*/E* sudo kextcache -Boot -U / sudo kextcache -i / echo 'Done fixing kext cache' The result was: richb@Richs-MBP Desktop % sudo sh permission-E7440.sh Password: Password Accepted: Fixing Kext Cache. kextcache -Boot -U / kext allow list already up-to-date for boot 1381DFE9-B6EF-4E1D-AE99-F6E947E61C48 kextcache -i / kextcache -arch x86_64 -local-root -all-loaded -kernel /System/Library/Kernels/kernel -prelinked-kernel /Library/Apple/System/Library/PrelinkedKernels/prelinkedkernel -volume-root / /Library/Extensions /AppleInternal/Library/Extensions /Library/Apple/System/Library/Extensions /System/Library/Extensions KernelCache ID: 2829D03E8F958FF77117B46A9FD2AE79 Done fixing kext cache richb@Richs-MBP Desktop % 4. I used IORegistryExplorer.app to review the IO devices in my Dell. I wasn't quite sure what to look for, but when I searched for "Brcm" I found the "FakeBrcm" at the PCI address you mentioned (it matches the screen shot) and the IONameMatched is 'pci14e4,43b1' as expected. 5. I could not open the image "CC Devices.jpg..." in the post above, but... 6. I used Clover Configurator (same version) to a) Mount EFI, b) open /EFI/EFI/OC/config.plist 7. In Clover Configurator, I went to "Devices" on the sidebar, and added an item to the "List of PCI Devices" (at the bottom) with this value: PciRoot(0x0)/Pci(0x1C,0x3)/Pci(0x0,0x0) and set the Property "compatible" to the STRING "14e4,43a0" 8. I then used Save (not Save As...) and saw that the EFI's config.plist was changed within the last minute. 9. I rebooted. The Wi-Fi menu item is a grey fan, and opening System Preferences -> Network -> Wi-Fi gives a button that says, <do not loc> briefly before it changes to "Turn Wi-Fi On" Clicking the button has no effect. 10. Because of the differences between the screen shots and the advice from Thursday, I repeated Steps 6,7,8 above with the following choices. - "Compatible" and STRING "14e4,43a0" - "compatible" and STRING "pci14e4,43a0" - "Compatible" and STRING "pci14e4,43a0" 10. All four choices (of "compatible/Compatible" and "14e4,43a0"/"pci14e4,43a0") had the same behavior. Am I misinterpreting the instructions? Many thanks as always. Link to comment Share on other sites More sharing options...
LyonLeBrun Posted September 13, 2020 Author Share Posted September 13, 2020 Oh dear. I just realized that I have only installed Catalina 10.15.1 on this computer. Does this invalidate all the tests I've done? I will try upgrading... Link to comment Share on other sites More sharing options...
Moderators Jake Lo Posted September 13, 2020 Moderators Share Posted September 13, 2020 Here, replace with this Config. Tested on E7440 on Big Sur, Catalina and Mojave with DW1550 with pci14e4,43b1 made compatible with pci14e4,43a0. Although with pci14e4,431b would work too. config.plist.zip Link to comment Share on other sites More sharing options...
LyonLeBrun Posted September 14, 2020 Author Share Posted September 14, 2020 Alas... Replacing the /EFI/EFI/OC/config.plist with that file, then restarting did not change anything. Having worked as a software engineer for 40 years (writing assembly driver code for macOS back in the day), this tells me that SOMETHING ELSE IS WRONG. (I confirmed that the wireless card is indeed an AzureWave AW-CE123H, and that it was connected properly.) I am happy to start examining log files, searching for error messages, etc. but I need a hint about where to start looking. Thank you again for your patience. Link to comment Share on other sites More sharing options...
Moderators Jake Lo Posted September 14, 2020 Moderators Share Posted September 14, 2020 post IOReg file Link to comment Share on other sites More sharing options...
Recommended Posts