Contribute
Register

Ar9285 Drops on Battery

Status
Not open for further replies.
Joined
Oct 6, 2013
Messages
32
Motherboard
CQ42-263TU
CPU
i5 450m
Graphics
Intel HD 1st Generation
Mac
  1. 0
Classic Mac
  1. 0
Mobile Phone
  1. 0
Hi Rehabman,

I installed Yosemite on my Dell N4030.


  • Intel P6100
  • ATI Radeon HD5430
  • Ar9285

Everything works fine except the wifi. I replaced my previous wifi adapter with ar9285. I enabled the wifi using WifiInjector.kext. It works ootb but the problem is when the battery is low (<20%), the airport drops. The problem is solved if I do cool boot. Sometimes the wifi adapter isn't detected by DPCIManager. However, the wifi works fine under AC power.

I figured out that the only workaround is by installing NullCPUPowerManagement.kext.

Is there any solution without dropping the speedstep?

Thank you
 
Hi Rehabman,

I installed Yosemite on my Dell N4030.


  • Intel P6100
  • ATI Radeon HD5430
  • Ar9285

Everything works fine except the wifi. I replaced my previous wifi adapter with ar9285. I enabled the wifi using WifiInjector.kext. It works ootb but the problem is when the battery is low (<20%), the airport drops. The problem is solved if I do cool boot. Sometimes the wifi adapter isn't detected by DPCIManager. However, the wifi works fine under AC power.

I figured out that the only workaround is by installing NullCPUPowerManagement.kext.

Is there any solution without dropping the speedstep?

Thank you

http://www.tonymacx86.com/yosemite-...-bridge-ivy-bridge-haswell-other-laptops.html

After you're done...

Download patchmatic: https://github.com/RehabMan/OS-X-MaciASL-patchmatic.
Extract the 'patchmatic' binary from the ZIP. Copy it to /usr/bin, such that you have the binary at /usr/bin/patchmatic.

In terminal,
Code:
rm -Rf ~/Downloads/RehabMan
mkdir ~/Downloads/RehabMan
cd ~/Downloads/RehabMan
patchmatic -extract

Post contents of Downloads/RehabMan directory (as ZIP).

Also, post ioreg: http://www.tonymacx86.com/audio/58368-guide-how-make-copy-ioreg.html. Please, use the IORegistryExplorer v2.1 attached to the post! DO NOT reply with an ioreg from any other version of IORegistryExplorer.app.

And output from:
Code:
kextstat|grep -y acpiplat
kextstat|grep -y appleintelcpu
 
Thank you for the reply
Anyway, I enabled speedstep using clover. I can see the cpu clock goes up and down in hwmonitor.

Here is the output:
Code:
kextstat|grep -y acpiplat
   13    1 0xffffff7f81f0d000 0x5f000    0x5f000    com.apple.driver.AppleACPIPlatform (3.1) <12 11 7 6 5 4 3 1>

kextstat|grep -y appleintelcpu
   23    0 0xffffff7f81db5000 0x2b000    0x2b000    com.apple.driver.AppleIntelCPUPowerManagement (218.0.0) <7 6 5 4 3 1>

Also, I attached my DSDT
Thank you
 

Attachments

  • IOReg.zip
    471.5 KB · Views: 49
  • RehabMan.zip
    18 KB · Views: 40
  • DSDT.aml
    37.2 KB · Views: 102
Thank you for the reply
Anyway, I enabled speedstep using clover. I can see the cpu clock goes up and down in hwmonitor.

Here is the output:
Code:
kextstat|grep -y acpiplat
   13    1 0xffffff7f81f0d000 0x5f000    0x5f000    com.apple.driver.AppleACPIPlatform (3.1) <12 11 7 6 5 4 3 1>

kextstat|grep -y appleintelcpu
   23    0 0xffffff7f81db5000 0x2b000    0x2b000    com.apple.driver.AppleIntelCPUPowerManagement (218.0.0) <7 6 5 4 3 1>

Also, I attached my DSDT
Thank you

Power management is not correct:
- NullCPUPowerManagement is loaded
- MacBookPro8,1 is not a very good match for your CPU

FYI: A bit strange to have RMNE SSDT, but not have NullEthernet.kext installed...
 
Power management is not correct:
- NullCPUPowerManagement is loaded
- MacBookPro8,1 is not a very good match for your CPU

FYI: A bit strange to have RMNE SSDT, but not have NullEthernet.kext installed...

Yep, I installed NullCPUPowerManagement.kext to avoid the airport from dropping
What version should I use then?
Should I install NullEthernet.kext too? I have NullEthernetInjector.kext installed btw
 
Yep, I installed NullCPUPowerManagement.kext to avoid the airport from dropping
What version should I use then?
Should I install NullEthernet.kext too? I have NullEthernetInjector.kext installed btw

The idea behind posting ioreg is to show a properly configured system, not with workarounds... NullCPU is going to cause issues on a laptop (heat, battery life issues).

If you wish to use NullEthernet for MAS access, NullEthernet.kext is required in all cases. When using NullEthernetInjector.kext, you would need both NullEthernet.kext and NullEthernetInjector.kext. NullEthernet.kext is the actual driver code. NullEthernetInjector is a catalyst to load the code, much like the RMNE DSDT patch or SSDT is. No need to use SSDT/DSDT patch and NullEthernetInjector at the same time. It is all covered in the instructions: https://github.com/RehabMan/OS-X-Null-Ethernet

Your DSDT is also lacking many common patches...

Likely candidates from here: https://github.com/RehabMan/Laptop-DSDT-Patch
"Fix _WAK Arg0 v2"
"HPET Fix"
"SMBUS Fix"
"IRQ Fix"
"RTC Fix"
"OS Check Fix"
"Fix Mutex with non-zero SyncLevel"
"Fix PNOT/PPNT"
"Add IMEI"
 
The idea behind posting ioreg is to show a properly configured system, not with workarounds... NullCPU is going to cause issues on a laptop (heat, battery life issues).

If you wish to use NullEthernet for MAS access, NullEthernet.kext is required in all cases. When using NullEthernetInjector.kext, you would need both NullEthernet.kext and NullEthernetInjector.kext. NullEthernet.kext is the actual driver code. NullEthernetInjector is a catalyst to load the code, much like the RMNE DSDT patch or SSDT is. No need to use SSDT/DSDT patch and NullEthernetInjector at the same time. It is all covered in the instructions: https://github.com/RehabMan/OS-X-Null-Ethernet

Your DSDT is also lacking many common patches...

Likely candidates from here: https://github.com/RehabMan/Laptop-DSDT-Patch
"Fix _WAK Arg0 v2"
"HPET Fix"
"SMBUS Fix"
"IRQ Fix"
"RTC Fix"
"OS Check Fix"
"Fix Mutex with non-zero SyncLevel"
"Fix PNOT/PPNT"
"Add IMEI"

I applied all those fixes above except "HPET Fix" because I got this following error:
Code:
Object is not accessible from this scope (BUF0)

Now I'm booting with speedstep enabled (no NullCPU). As I expected, I got random wifi drops under battery power :(

Also, I attach my IOReg without NullCPU
 

Attachments

  • IOReg2.zip
    459.4 KB · Views: 63
I applied all those fixes above except "HPET Fix" because I got this following error:
Code:
Object is not accessible from this scope (BUF0)

Sometimes patches need to be tweaked... It is unlikely HPET is the cause of your problem (usually sleep/boot problems) -- it is just in my "grab bag of patches."

Now I'm booting with speedstep enabled (no NullCPU). As I expected, I got random wifi drops under battery power :(

Also, I attach my IOReg without NullCPU

It could be something your EC / DSDT is doing to conserve power as battery drops under certain thresholds.

You should instrument EC (and perhaps GPE) to get more info about what is going on with the EC queries.

See: https://github.com/RehabMan/OS-X-ACPI-Debug

P.S. I wonder if the same thing happens on Linux?
 
Sometimes patches need to be tweaked... It is unlikely HPET is the cause of your problem (usually sleep/boot problems) -- it is just in my "grab bag of patches."
I think you're right. HPET isn't the culprit.

It could be something your EC / DSDT is doing to conserve power as battery drops under certain thresholds.

You should instrument EC (and perhaps GPE) to get more info about what is going on with the EC queries.

See: https://github.com/RehabMan/OS-X-ACPI-Debug

P.S. I wonder if the same thing happens on Linux?
I don't understand EC/DSDT editing :p
Anyway, when I plug the AC adapter in and plug it off the system reports that the battery is low although it's in 30% capacity. I use your ACPIBatteryManager.kext anyway.

FYI. this is the system log before the wifi drops
Code:
11/14/14 9:59:44.000 PM kernel[0]: 40.711194: ath_reset: unable to reset hardware; hal status 0
11/14/14 9:59:44.000 PM kernel[0]: 40.920923: ATHR: unknown locale: 52
It's quite frustrating. I guess I'll stick with disabling speedstep :D
Thanks anyway
 
Status
Not open for further replies.
Back
Top