Contribute
Register

[Guide] Lenovo ThinkPad L440

Status
Not open for further replies.
Hi Sniki, I change confic.plist and SSDT-X240 and reboot.
Working:
-video card
- have sound ( not checked for level because don’t have access for internet now)
Not working:
- battery status always stay 0%
-don’t have power to both USB ports
If I don’t have power to USB do you want me to test with usb2 and usb3 device?
Thank you
Ok, Sorry about battery status not displaying correctly, i have a known personal human bug where i rush things before analyzing 2-3 times to see if i missed something (propably due to overconfidence). Anyway:

While Further analyzing Static Battery Patch and comparing on diffmerge i realized that into:
Code:
Device (BAT1)
                    {
                        Name (_HID, EisaId ("PNP0C0A"))  // _HID: Hardware ID
                        Name (_UID, 0x01)  // _UID: Unique ID
                        Name (_PCL, Package (0x01)  // _PCL: Power Consumer List
                        {
                            \_SB
                        })
                        Name (B1ST, 0x00)
                        Name (SBLI, 0x01)
                        Name (XB1S, 0x00)
                        Name (BT1I, Package (0x0D)
                        {
                            0x00,
                            0xFFFFFFFF,
                            0xFFFFFFFF,
                            0x01,
                            0x2A30,
                            0x00,
                            0x00,
                            0x01,
                            0x01,
                            "",
                            "",
                            "",
                            ""
                        })
                        Name (BT1P, Package (0x04) {})
                        Method (_STA, 0, NotSerialized)  // _STA: Status
                        {
                            Following code.....
                         }
For some reasons i see that Method (_STA,0,N) following code does get removed on static patch which i assume it does cause issues.. which from my assumption thats why your battery status stay at 0%.

So i will need to copy the Patched "Device (BAT1)" to SSDT-BAT.dsl and rename to something that doesn't cause interference like XBAT1.
Thats about battery.
Now to your other not working stuff which i didn't understand well but:

1. What do you exactly mean with "i don't have power to Both USB Ports" (do you mean the popup when you insert usb ?)

2. even if the popup shows that USB No Power, ignore that and do the Active USB Port capture like i said.

Here are the new Files to test - attached at the end of the post.

Attach Full "Problem Reporting" Files after testing and using these files.
 

Attachments

  • SSDT-X240.aml
    8.6 KB · Views: 163
  • config.plist
    19.7 KB · Views: 204
Ok, Sorry about battery status not displaying correctly, i have a known personal human bug where i rush things before analyzing 2-3 times to see if i missed something (propably due to overconfidence). Anyway:

While Further analyzing Static Battery Patch and comparing on diffmerge i realized that into:
Code:
Device (BAT1)
                    {
                        Name (_HID, EisaId ("PNP0C0A"))  // _HID: Hardware ID
                        Name (_UID, 0x01)  // _UID: Unique ID
                        Name (_PCL, Package (0x01)  // _PCL: Power Consumer List
                        {
                            \_SB
                        })
                        Name (B1ST, 0x00)
                        Name (SBLI, 0x01)
                        Name (XB1S, 0x00)
                        Name (BT1I, Package (0x0D)
                        {
                            0x00,
                            0xFFFFFFFF,
                            0xFFFFFFFF,
                            0x01,
                            0x2A30,
                            0x00,
                            0x00,
                            0x01,
                            0x01,
                            "",
                            "",
                            "",
                            ""
                        })
                        Name (BT1P, Package (0x04) {})
                        Method (_STA, 0, NotSerialized)  // _STA: Status
                        {
                            Following code.....
                         }
For some reasons i see that Method (_STA,0,N) following code does get removed on static patch which i assume it does cause issues.. which from my assumption thats why your battery status stay at 0%.

So i will need to copy the Patched "Device (BAT1)" to SSDT-BAT.dsl and rename to something that doesn't cause interference like XBAT1.
Thats about battery.

No need to replace the entire BAT1 device.
Need "Problem reporting" files to discover the real problem.
 
No need to replace the entire BAT1 device.
Need "Problem reporting" files to discover the real problem.
@RehabMan
He didn't attach second set of file reporting yet, even first one doesn't have a copy of ioreg but attached IORegistryExplorer app.
on First set of files i missed this part on diffmerge.
So then i copied Device(BAT1) with Method (_STA,0,N) to return(0) on SSDT-BAT and renamed Device(BAT1) to (XBAT1).
BTW, id like you to check if the rename of BAT1 to XBAT1 is correct or not.
i didn't rename entire BAT1 since there are references on other parts of ACPI so i renamed only the device(BAT1).

To the battery Status Hotpatch
i disassembled ACPI and compared DSDT.dsl vs DSDT_BAT.dsl (Lenovo X220 Static Patch Applied) on DiffMerge.


Diffmerge.png


i Attached the ACPI & Hotpatch Folder + config.plist that i worked on to see if you can spot something missing..
Tip: these are the files that i recently uploaded to him on last post which he didn't try yet.
 

Attachments

  • X240.zip
    535.9 KB · Views: 100
@RehabMan
He didn't attach second set of file reporting yet, even first one doesn't have a copy of ioreg but attached IORegistryExplorer app.
on First set of files i missed this part on diffmerge.
So then i copied Device(BAT1) with Method (_STA,0,N) to return(0) on SSDT-BAT and renamed Device(BAT1) to (XBAT1).
BTW, id like you to check if the rename of BAT1 to XBAT1 is correct or not.
i didn't rename entire BAT1 since there are references on other parts of ACPI so i renamed only the device(BAT1).

To the battery Status Hotpatch
i disassembled ACPI and compared DSDT.dsl vs DSDT_BAT.dsl (Lenovo X220 Static Patch Applied) on DiffMerge.


View attachment 288642

i Attached the ACPI & Hotpatch Folder + config.plist that i worked on to see if you can spot something missing..
Tip: these are the files that i recently uploaded to him on last post which he didn't try yet.

You should be using SSDT-BATC to combine the two battery objects instead of trying to disable one with a _STA patch.
SSDT-BATC will prevent ACPIBatteryManager.kext from attaching to either of the battery objects.
And it will combine the two into one, even in the case that one of them is currently not connected to an actual battery.
It is one of those things that is generally done differently with hotpatch vs. static patch, just because SSDT-BATC is an easier way to solve the problem.
 
Ok so that was not the problem, because i did use SSDT-BATC even on previous files.
We need ioreg for that i guess and problem reporting to see what happened.
 
Ok, Sorry about battery status not displaying correctly, i have a known personal human bug where i rush things before analyzing 2-3 times to see if i missed something (propably due to overconfidence). Anyway:

While Further analyzing Static Battery Patch and comparing on diffmerge i realized that into:
Code:
Device (BAT1)
                    {
                        Name (_HID, EisaId ("PNP0C0A"))  // _HID: Hardware ID
                        Name (_UID, 0x01)  // _UID: Unique ID
                        Name (_PCL, Package (0x01)  // _PCL: Power Consumer List
                        {
                            \_SB
                        })
                        Name (B1ST, 0x00)
                        Name (SBLI, 0x01)
                        Name (XB1S, 0x00)
                        Name (BT1I, Package (0x0D)
                        {
                            0x00,
                            0xFFFFFFFF,
                            0xFFFFFFFF,
                            0x01,
                            0x2A30,
                            0x00,
                            0x00,
                            0x01,
                            0x01,
                            "",
                            "",
                            "",
                            ""
                        })
                        Name (BT1P, Package (0x04) {})
                        Method (_STA, 0, NotSerialized)  // _STA: Status
                        {
                            Following code.....
                         }
For some reasons i see that Method (_STA,0,N) following code does get removed on static patch which i assume it does cause issues.. which from my assumption thats why your battery status stay at 0%.

So i will need to copy the Patched "Device (BAT1)" to SSDT-BAT.dsl and rename to something that doesn't cause interference like XBAT1.
Thats about battery.
Now to your other not working stuff which i didn't understand well but:

1. What do you exactly mean with "i don't have power to Both USB Ports" (do you mean the popup when you insert usb ?)

2. even if the popup shows that USB No Power, ignore that and do the Active USB Port capture like i said.

Here are the new Files to test - attached at the end of the post.

Attach Full "Problem Reporting" Files after testing and using these files.


I'm on a way till Tuesday but when I back at home will testing your new files and will send a full Problem reporting. Thanks
 
I'm on a way till Tuesday but when I back at home will testing your new files and will send a full Problem reporting. Thanks
Make sure to send Problem reporting files from the current files that you are using. Not from the latest that i sent.
 
Hi Sniki,I attached request files and screen shot with message for USB ports.
 

Attachments

  • CLOVER.zip
    1.6 MB · Views: 120
  • com.apple.kext.caches.zip
    135.2 KB · Views: 112
  • RehabMan.zip
    41 KB · Views: 92
  • ThinkPad’s MacBook Pro.zip
    465.5 KB · Views: 102
  • screen.JPG
    screen.JPG
    1.3 MB · Views: 117
Hi Sniki,I attached request files and screen shot with message for USB ports.
Please read "Problem Reporting" carefully, i need only the terminal output of kext caches and kexstat
Provide output (in Terminal):
Code (Text):

kextstat|grep -y acpiplat
kextstat|grep -y appleintelcpu
kextstat|grep -y applelpc
kextstat|grep -y applehda

and

Attach output of (in Terminal):
Code (Text):

sudo touch /System/Library/Extensions && sudo kextcache -u /

You simply copy all the text on terminal window after you enter command and paste it here or attach as text file.
 
Status
Not open for further replies.
Back
Top