TechAndrew Posted January 27, 2022 Share Posted January 27, 2022 Hello, I'm having an issue where a DeviceProperties patch doesn't seem to be injected, as when I look at the device under IORegistryExplorer, not even the pci-aspm-default is changing nor is the device associated with a kext... Perhaps this explains the startup issue related to the DW1820A that I brought up in an earlier post, where my system often doesn't boot or takes 5+ minutes (stalls at PXSX), unless I disable Wi-Fi or boot out of luck. What could be causing this? Thanks! config.plist.zip Link to comment Share on other sites More sharing options...
Administrators Hervé Posted January 27, 2022 Administrators Share Posted January 27, 2022 Posted config file appears incorrect and cannot be opened with usual OC tools. Line 1246 carries a syntax error/ <string><>/string> Should be! <string></string> According to the IOReg screenshot you posted, none of the desired properties appear injected for the DW820A at the desired location 1C,0. That explains why you're not able to boot unless you disable wireless in BIOS. So, there's definitely something wrong in your config file. Check it out thoroughly and use the config verification tools. Please note that you should not require AirportBrcmFixup nor its PlugIns for the DW1820A, even in. Monterey. Link to comment Share on other sites More sharing options...
TechAndrew Posted January 27, 2022 Author Share Posted January 27, 2022 (edited) Apologies, that syntax error was made in the process of removing my serial number, etc. I have tried using an SSDT file instead, (adding it to config.plist too of course) but it is not loading/patching correctly at boot either, with an AE_ALREADY_EXISTS error: SSDT-BCM4350.zip Edited January 27, 2022 by Hervé Removed unnecessary quoting Link to comment Share on other sites More sharing options...
Moderators Jake Lo Posted January 27, 2022 Moderators Share Posted January 27, 2022 Try reset NVRam Link to comment Share on other sites More sharing options...
TechAndrew Posted January 27, 2022 Author Share Posted January 27, 2022 (edited) Still no luck… same error with the SSDT Edited January 27, 2022 by Hervé Removed unnecessary quoting Link to comment Share on other sites More sharing options...
Administrators Hervé Posted January 27, 2022 Administrators Share Posted January 27, 2022 If you wish to try the SSDT method, you need to declare device PXSX as eternal too because it already exists in the DSDT. If you don't declare it as external, your DSDT basically attempts to create a duplicate of a valid existing one and this is rejected. And, of course, if you inject AirportBrcmFixup or rename your wireless ACPI device as seems to be the case, device PXSX gets renamed to ARPT... So, you're basically shooting blanks for the time being. NB: as per our published rules, no systematic quoting to post replies please. Forum offers Reply boxes at the bottom of every page for that very specific purpose so please use that. Link to comment Share on other sites More sharing options...
TechAndrew Posted January 28, 2022 Author Share Posted January 28, 2022 I believe the device is still named PXSX in my case, even if AirportBrcmFixup is enabled, when I checked under IORegistry Explorer. Also, I am still getting the same error... Have I declared it as External correctly?? DefinitionBlock ("", "SSDT", 2, "ARPT ", "BCM4350", 0x00000000) { External (_SB_.PCI0.RP05, DeviceObj) Device (_SB.PCI0.RP05) { Device (PXSX) { Name (_ADR, Zero) // _ADR: Address Method (_DSM, 4, NotSerialized) // _DSM: Device-Specific Method { If ((Arg2 == Zero)) { Return (Buffer (One) { 0x03 // . }) } Return (Package (0x0C) { "AAPL,slot-name", Buffer (0x05) { "WLAN" }, "compatible", Buffer (0x0D) { "pci14e4,43a0" }, "device_type", Buffer (0x08) { "AirPort" }, "model", Buffer (0x24) { "Dell DW1820A 802.11ac Wireless Card" }, "name", Buffer (0x10) { "AirPort Extreme" }, "pci-aspm-default", Buffer (One) { 0x00 // . } }) } } } } Link to comment Share on other sites More sharing options...
Administrators Hervé Posted January 28, 2022 Administrators Share Posted January 28, 2022 No, you have not. You need declare RP05 AND its PXSX child as external. Ok, it's the SSDT table that you've named ARPT. And I'm pretty sure you need to use SCOPE for your target rather than DEVICE since we're dealing with existing ACPI objects, not new ones you wish to create. Original objets need to be renamed if you wish to replace them by new entries, otherwise your code is just ignored as I suspect yours is ('noticed the " 1 table load failures" error message?). Hence why renaming such as X--- or ---X can be found in Bootloader's configs to accompany pathed SSDTs. Eg: _OSI renamed to XOSI, OSID renamed to XSID, HPET renamed to XPET, etc. that complement specific patched SSDTs that redefine the original objects. To me, your SSDT should look like: external (xxxx.RP05.PXSX, DeviceObj) Scope (xxxxx.RP05.PXSX) { Method (_DSM, 4, NotSerialized) { [...] } } assuming, of course, that there's no existing _DSM method under RP05.PXSX in your vanilla DSDT. Link to comment Share on other sites More sharing options...
TechAndrew Posted January 28, 2022 Author Share Posted January 28, 2022 Thanks! It's injecting successfully now. However, whether or not I'm enabling the kexts AirportBrcmFixup, BrcmFirmwareData, etc., it's now freezing at the same point as in my last thread: https://osxlatitude.com/forums/topic/17059-e7470-not-booting-after-updating-to-monterey-121 If I revert to the original configuration, it takes 5+ minutes to boot with multiple "PXSX stalls". Link to comment Share on other sites More sharing options...
Moderators Jake Lo Posted January 29, 2022 Moderators Share Posted January 29, 2022 This is what I have running on my system, give it a try to see if it'll boot for you. I edited the wireless for your DW1820A. I have DW1830 running on mine. You might have to reset NVRam 1st. It's hidden, so press the spacebar at the Picker to select it. EFI-E7470_OC077.zip Link to comment Share on other sites More sharing options...
Recommended Posts