Contribute
Register

[Guide] USB power property injection for Sierra (and later)

Hello RehabMan How do i know if my patch is correct & working?
- My smbios is iMac 18,1 and it is'nt in IOUSBHostFamily.kext
- The ioreg shows AppleBusPowerController loaded under the EC node (Not AppleBusPowerControllerUSB)

393829
 

Attachments

  • EFI.zip
    36 MB · Views: 324
  • Dư's iMac.ioreg
    5.8 MB · Views: 109
Last edited:
Hello RehabMan How do i know if my patch is correct & working?
- My smbios is iMac 18,1 and it is'nt in IOUSBHostFamily.kext
- The ioreg shows AppleBusPowerController loaded under the EC node (Not AppleBusPowerControllerUSB)

View attachment 393829
Your IOREG is corrupt / using incorrect IOREG version, read the @toleda guide on how to make a copy of ioreg and download correct version used here which is attached on his thread:
https://www.tonymacx86.com/threads/guide-how-to-make-a-copy-of-ioreg.58368/
 
thanks you
It seems to be ok but in order to confirm that i need to see other files as well, attach full set of "Problem Reporting" files
 
It seems to be ok but in order to confirm that i need to see other files as well, attach full set of "Problem Reporting" files
Thanks for your help
I have attached the necessary files below
 

Attachments

  • DuongDu.zip
    4.2 MB · Views: 205
I have checked my system and used IOReg to find out that I have a device named EC0.

Tried renaming it, but it hangs during boot. The only way it boots, is if I have it disabled (hence my config.plist)

I attach the "Problem Reporting" files.

Any ideas as to what might be causing this hang if I rename EC0 to EC?

Edit:
I have both H_EC and EC0 devices. H_EC is returning zero in (_STA) method. There is no (_STA) method in EC0, so I tried renaming it with the above results.
 

Attachments

  • debug_15569.zip
    2.6 MB · Views: 103
Last edited:
Seeing that my reply has received no advice at all, I thought maybe the information provided was inadequate.

Here is a picture of verbose boot while having the Rename enabled.

@RehabMan could you shed some light if you can, please? Thanks a lot
 

Attachments

  • IMG_3546.png
    IMG_3546.png
    2.1 MB · Views: 184
I have both H_EC and EC0 devices. H_EC is returning zero in (_STA) method. There is no (_STA) method in EC0, so I tried renaming it with the above results.

Hi, check your computer have an active EC (would say no because H_EC is not shown up in your ioreg).
If not, guide indicates you should add a "fake" EC :

As you can see, it is returning zero from _STA. Which according to the ACPI spec is "not present". It means this H_EC device is effectively ignored. You will notice that it doesn't show in ioreg, IOService plane.

DO NOT be tempted to activate the EC device by changing the return value of _STA. The reason it is returning zero here is because the computer DOES NOT HAVE an EC. In this case, you should add a "fake" EC as mentioned above.
 
Hi, check your computer have an active EC (would say no because H_EC is not shown up in your ioreg).
If not, guide indicates you should add a "fake" EC :

Hey, thanks for your reply.

Having read the thread, I should check for H_EC and EC0.

I don't have an H_EC, but I do have EC0, which I tried renaming to EC (to enable USB power), but my system hangs at boot with KP that I posted above.
 
I don't have an H_EC, but I do have EC0
Yet DSDT indicates H_EC as per guide - when a fake EC is needed because computer do not have active embedded controller :
Device (H_EC)
{
Name (_HID, EisaId ("PNP0C09")) // _HID: Hardware ID
Name (_UID, One) // _UID: Unique ID
Method (_STA, 0, NotSerialized) // _STA: Status
{
Store (0x03, ^^^GFX0.CLID)
Return (Zero)
}
Maybe when you rename EC0 the KP come because appleBusPowerController fails to load - simply because embedded controller is not active on your desktop
Explanation by experts on the forum would be interesting if they can read your PR post !
 
Back
Top