Jump to content

Leaderboard


Popular Content

Showing content with the highest reputation on 04/13/19 in all areas

  1. 1 point
    Your Clover config contains many incorrect settings and would gain from being revisited, especially the ACPI section. With regards to the wireless, identify the device your card attaches to in IOReg (with IORegistryExplorer app) and patch your DSDT according to what I posted on p1of this thread. You may also refer to our wireless inventory thread where you'll find all the necessary information you need to get your BCM43225 card working. Your DSDT contains an incomplete patch for a wireless card attached to RP02.ARPT@1C,1:0 which may not even be applicable and your Clover config contains some incorrect Broadcom properties injection for a device located @3,0:0! Homework is required here...
  2. 1 point
    I'm sorry for that, my settings don't work on your machine, or you can try edit 2FScrollAccelMode and ScrollSmoothSamples values yourself located at IOKitPersonalities-> Smart-Pad-> Preferences-> Scrolling on the info.plist.
  3. 1 point
    Last update: 11 Apr 2019 I've finally been able to play with that card on a laptop, fitted with an M.2 2230 Key A+E WLAN slot, that I targeted for Mojave. /!\ The 1st thing I want to report is that I encountered difficulties booting my Mojave USB installer and installing macOS with the card plugged in and without any particular tuning for it. I had to disable wireless in BIOS to be able to install Mojave. Once it was installed, booting Mojave with wireless enabled in BIOS would cause quite severe lag and performance degradation once at the desktop, as if the card just clogged up CPU ressources. /!\ Searching through the Web for that DW1820A/BCM4350, I came accross a few forum posts/threads that mentionned: rolling back the Yosemite IO80211Family kext to get the card to work, although with instability and regular KPs removing AirPortBrcmNIC plugin kext from IO80211Family kext, patching AirPortBrcm4360 plugin kext with the id of the DW1820A and installing AirportBrcmFixup kext with a couple of parameters (Credits to Hugotai, cf. his post @Voldemort's place, 2nd Dec 2018) Whilst I did not really contemplate doing the 1st thing, I did envisage the 2nd one and started to look at the differences between Yosemite's version of IO80211Family kext and Mojave's. The main difference I had already noticed was that device id 14e4:43a3 was handled by AirPortBrcm4360 up to Sierra 10.12 and by AirPortBrcmNIC since High Sierra 10.13. Building on Hugotai's success, I seeked to work out an easier solution that would not require kext removal and Info.plist patching but, instead, something that could be implemented through hardware properties injection, either through DSDT patching or Clover configuration. Once Hugotai's solution was verified and confirmed, I worked out the following Clover-based solution for HighSierra/Mojave: identify the IOReg/ACPI device to which the DW1820A card is attached (use IORegistryExplorer app to that effect) inject the following properties either in DSDT or through Clover (latter recommended): compatibility of the card with Broadcom chips 14e4:4331 or 14e4:4353 that are handled by IO80211Family's PlugIn kext AirPortBrcm4360 optionally, add SysProfiler's cosmetic info such as PCIe Slot, card's make and model, etc. if your raw/BIOS DSDT has no individual entry under the PCI root bridge for the device, select "FixAirport" ACPI Fix in Clover. That'll create a device "ARPT" @0 under the root bridge and that's what you'll inject properties to. and that's it ! Nothing to do to IO80211Family kext ir its PlugIns which all remain untouched/unmodified/full vanilla in /S/L/E. It really could not be simpler... NB: if your card's country code requires to be changed, add the following steps: install AirportBrcmFixup kext in /L/E + repair permissions + rebuild your cache or inject it through Clover's EFI/CLOVER/kexts/Other add boot argument brcmfx-country=XX (where XX is the target value, eg: US, FR, #a, etc.) to the Boot section of your Clover config but, beware, I found that using AirportBrcmFixup has some non-negligable negative impact on wireless performance (much reduced rate). Example: On my laptop, the DW1820A was found attached to device RP03.PXSX located at IO address 0x001C0002, i.e. 1C,2. The DSDT patch required to inject properties could look like this (devices names will differ from one computer to another of course!): Device (RP03) // PCIe Root Bridge { name (_ADR, 0x001C0002) [...] [...] [...] Device (PXSX) // DW1820A card attached to this device (FixAirport fix required if such device is missing) { Name (_ADR, Zero) [...] [...] [...] Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method { If (LEqual (Arg2, Zero)) { Return (Buffer (One) { 0x03 }) } Return (Package () { "AAPL,slot-name", // Optional Buffer () { "WLAN" }, "device_type", // Optional Buffer () { "Airport Extreme" }, "name", // Optional Buffer () { "Airport" }, "model", // Optional Buffer () { "Dell DW1820A 802.11ac wireless" }, "compatible", // Mandatory Buffer () { "pci14e4,4331" // Declares compatibility with BCM94331; "pci14e4:4353" for BCM43224 may also be used } }) } } } An easier alternative is to inject those properties in Clover via Clover Configurator app. This can be done within the Devices section by injecting the desired properties in the Properties sub-section: In the left part, add the PCIe address of the targeted device in the form PciRoot(0x0)/Pci(<root device address>)/Pci(<actual device address>) In the right part, add the above properties in single lines and with the right types (String, Data, Number) For instance, in the case of my laptop, the target device will be PciRoot (0x0)/Pci(0x1C,0x02)/Pci(0x0,0x0) for PCI0@0->RP03@1C,2->PXSX@0. Then, properties will be injected as lines of keys of 3 x possible types: strings, hex data blocks or numbers. For instance, to declare compatibility with 14e4:4353, the line will consist of Property Key set to compatible, Key Value set to pci14e4,4353 and Key Type set to STRING. The complete properties injection will be: Device = PciRoot(0x0)/Pci(0x1c,0x02)/Pci(0x0,0x0) Key = compatible | Value = pci14e4,4353 | Type = STRING Key = AAPL,slot-name | Value = WLAN | Type = STRING (optional) Key = device_type | Value = Airport Extreme | Type = STRING (optional) Key = name | Value = Airport | Type = STRING (optional) Key = model | Value = Dell DW1820 (BCM4350) 802.11ac wireless | Type = STRING (optional) Once the device properties are injected in Clover or DSDT, there's nothing left to do but reboot the computer. The DW1820A card will then be fully active and capable to connect to 2.4/5GHz networks at full speed. On the Bluetooth side, once the usual Rehabman's kexts are installed (BrcmFirmwareRepo + BrcmPatchRAM), the BT4.1 module will be fully operational and capable of supporting AirDrop and Handoff! Links: Clover Configurator app Rehabman's Broadcom Firmware patching kexts Acidanthera AirportBrcmFixup kext
This leaderboard is set to Amsterdam/GMT+02:00
×
×
  • Create New...