Contribute
Register

Thinkpad X1 Carbon (3rd Gen) - Could use some hints.

Status
Not open for further replies.
Joined
Dec 28, 2014
Messages
149
Motherboard
Lenovo X1 Carbon (Gen 3 20BS) - Clover
CPU
i7-5600U
Graphics
HD 5500, 1920x1080
Thinkpad Carbon X1 (3rd Gen)
My X1 Carbon Specs:
CPU: Intel Core I7-5600U
GPU: Intel HD Graphics 5500 @ 1920x1080
Broadwell, CPUZ revealed no chipset id.
Lenovo Reference Doc: Link

Intro
First off, I am happy to announce that this device is compatible with the latest 10.10.3 Yosemite update. I am hoping to use this thread for support and eventually take everything I learn here and turn it into a guide.

Initial Thanks & Credit
Before I go any further, I want to say thanks to Rehabman for his patience and working with me, AustereJ. and Lisai9093 for their work on the HD5500 graphics compatibility and nguyenmac who also helped a bit along the way. I used these two threads a lot in figuring out how to get everything running. (Thread 1 | Thread 2) I studied those threads for hours and I still don't understand most of it.

Success
After several days of headbanging I eventually reached a Yosemite installer window and from there is was smooth sailing. I now have a quick - responsive desktop and it appears to be pretty stable (running for several hours no issues.)

Eye Candy
It looks great!
IMG_1040.jpg

And it is reporting everything correctly too, for the most part.
Screen Shot 2015-04-18 at 9.00.12 PM.jpg


So here's what works

  • HD5500 Graphics + Qe/Ci
  • HDMI Output
  • Trackpad
  • Bluetooth
  • Webcam
  • Power Status (04/19/2015 - DSDT Battery Patch for the Lenovo X220 did the trick along with the ACPIBatteryManager.kext from the battery status guide.)
  • Power Management (Modified SSDTPrgen + SMBIOS MBP 11,2 - Used SSDTPrgen & SMBIOS section of config.plist from here | For the SSDTPRGen program I had to add my processor into the Broadwell config file. | I tested this with MSRDumper, if multiple p states means that its working then its working :D)
  • Brightness Controls (Using ACPIBacklight.kext + the Haswell backlight patch the Brightness slider works. Keyboard edits require the DSDT patch in the laptop brightness guide. For my DSDT the device was KBD instead of \_SB.PCI0.LPCB.PS2K and my button ids were _Q15 for brightness down and _Q14 for brightness up.)
  • USB3 (Worked after removing GenericUSBXHCI.kext - Thanks Rehabman!)
  • Waking up (Had to disable the pre-desktop bios feature for the fingerprint scanner and waking from sleep started to work.)
  • Trackpoint + Buttons :headbang:(Using the public VoodooPS2Controller the trackpoint was jumping/skipping all over the place and all of the trackpoint buttons were handled like right clicks.) - I made a custom VoodeoPS2Controller.kext for the X1 Carbon that resolves those issues. (Will post it when I create the guide.)
  • Ethernet - Works great with IntelMausiEthernet.kext v2.0.0d2
  • Audio (ALC3232/ALC292) - Works via VoodooHDA with a simple node patch. (HDMI audio doesn't work.)

What doesn't work
  • Wifi - Intel card means that it will never work. Ordered a Nano-USB Wifi card.
  • Mini Display Port - Whenever I plug in my MiniDp cable the laptop freezes and I have to hard restart it.


Status:
I have a lot of work to do and a lot to learn. I am going to start knocking things off this list one by one but it will take awhile. I will update this thread as I make progress.

Questions:

  • None

Current State
I am currently using the following kexts:
FakeSMC.kext (from the stickied laptop guide)
VoodooPS2controller.kext (from the stickied laptop guide)
ACPIBatteryManager.kext (from the laptop battery status guide)
ACPIBacklight.kext (from the laptop backlight control guide)

I am attaching my current ioreg and config.plist for reference in case anyone who may want to help needs them or someone else wants to try Yosemite on the X1Carbon.
 

Attachments

  • X1Carbon04192015.ioreg
    3.5 MB · Views: 344
  • config.plist
    2.9 KB · Views: 479
  • VoodooPS2Controller_X1Carbon.kext.zip
    304.2 KB · Views: 432
...
[*]Sleeping - Really weird behavior that I haven't taken the time to really investigate.

Sleep will require proper power management (X86PlatformPlugin is not loading).... at least.

Probably some DSDT work as well.

And perhaps without the FakeCPUID...

[*]Audio (ALC3232)

Audio: Best result with patched AppleHDA. Google 'patch AppleHDA guide'. Search for suitable AppleHDA or patch it yourself. Apply appropriate DSDT patches.

DSDT patches for patched AppleHDA are covered in the DSDT/SSDT patching guide: http://www.tonymacx86.com/yosemite-laptop-support/152573-guide-patching-laptop-dsdt-ssdts.html

[*]Ethernet? (I have the ethernet adapter being shipped to me now.)

I assume no built-in Ethernet?

You'll need to get built-in WiFi working (eg. replace the hardware) for Mac App Store access. Or use NullEthernet.kext.

[*]Hibernation - It won't wake up.

Hibernate not the same as sleep. Hibernate should be disabled:
Code:
sudo pmset -a hibernatemode 0

[*]Mini DisplayPort (Tried it, Mac crashed, EFI partition was corrupted. Took 15 minutes to recover. HDMI works and thats all I need so I doubt I will ever work on this.)

May be due to partial implementation of HDMI/DP-audio... and lack of audio implementation completely...

[*]USB3 (Worked until I tried swapping from a external hd to an iPad, at that point it wouldn't recognize the new device, it hung when I tried restarting the laptop.)
...
GenericUSBXHCI.kext (from the stickied laptop guide)

GenericUSBXHCI.kext has issues on Yosemite. Best to not use it (and use AppleUSBXHCI).

Of course, I don't see it loaded in ioreg... As if you disabled USB3 from BIOS.
 
More progress, thanks for the input!

I disabled hibernation with that terminal command and by removing GenericUSBXHCI.Kext it seems like USB3 is now working.


I uploaded my latest ioreg that shows the X86PlatformPlugin on the CPU and the USB3 ports.

The laptop does have built in ethernet, but it requires a proprietary external lenovo adapter to connect to the micro ethernet port, I think it will work out of the box once I have the adapter.

More Issues/Questions
If I hit the Apple Menu and then Sleep my display turns off but the laptop never enters a sleep state. I can come back a few minutes later click a button and the display turns back on.

However, I set the computer to sleep in the energy saver menu, it will but then I cannot get it to wake up. The power button fades in and out like windows sleeps (which is good) but pressing it, FN, or any other key will not revive it. I am forced to hold down the power button for 7 seconds for a full power off and then restart. Any ideas?

And Trackpoint, its the most important part. I did a few quick forum searches, found a few people with my same problem or similar but never an answer. The mouse when moved by the trackpoint flies around the screen, it is so fast it doesn't even have a smooth animation and all 3 buttons appear to be mapped to a right click. How would you recommend repairing this? (I have absolutely no background in PS2 protocol)
 

Attachments

  • X1Carbon04192015.ioreg
    3.5 MB · Views: 316
...
More Issues/Questions
If I hit the Apple Menu and then Sleep my display turns off but the laptop never enters a sleep state. I can come back a few minutes later click a button and the display turns back on.

Sleep is delayed by 15-20 secs. You should stick around to see what happens at that point.

However, I set the computer to sleep in the energy saver menu, it will but then I cannot get it to wake up. The power button fades in and out like windows sleeps (which is good) but pressing it, FN, or any other key will not revive it. I am forced to hold down the power button for 7 seconds for a full power off and then restart. Any ideas?

Could be crashing entering sleep, or crashing upon wake. It is hard to tell the difference. Did you patch DSDT per guide?

And Trackpoint, its the most important part. I did a few quick forum searches, found a few people with my same problem or similar but never an answer. The mouse when moved by the trackpoint flies around the screen, it is so fast it doesn't even have a smooth animation and all 3 buttons appear to be mapped to a right click. How would you recommend repairing this? (I have absolutely no background in PS2 protocol)

Read up on PS2 protocol so you can debug the kext involved...
 
Sleep is delayed by 15-20 secs. You should stick around to see what happens at that point.

Could be crashing entering sleep, or crashing upon wake. It is hard to tell the difference. Did you patch DSDT per guide?

You're absolutely right and I'm terribly impatient. I've made a ton of DSDT patches, can you direct me to the one you are talking about specifically, I don't think I've made one specifically for sleeping.
 
I have followed that guide and applied all of the common patches mentioned but I am still seeing the same issue, I cannot wake from sleep.

I am still searching the forum but I am going to attach various things that you/others have asked for in similar situations.
 

Attachments

  • Screen Shot 2015-04-19 at 6.44.52 PM.png
    Screen Shot 2015-04-19 at 6.44.52 PM.png
    21.4 KB · Views: 350
  • X1Carbon04192015.ioreg
    3.7 MB · Views: 292
  • PatchmaticOutput.zip
    40.5 KB · Views: 195
I have followed that guide and applied all of the common patches mentioned but I am still seeing the same issue, I cannot wake from sleep.

I am still searching the forum but I am going to attach various things that you/others have asked for in similar situations.

Do you really have 14 SSDTs in ACPI/patched?
 
No, only one from the SSDTPRgen.sh script for my CPU.

*Goes off to check DropOem on config.plist*

Fixed zip attached.
 

Attachments

  • PatchmaticOutputFixed.zip
    31.3 KB · Views: 186
No, only one from the SSDTPRgen.sh script for my CPU.

*Goes off to check DropOem on config.plist*

Fixed zip attached.

Ok, but it still indicates there are 14 OEM tables. Meaning you have some homework to do regarding which ones should be included and which ones need patching...

You should patch DSDT/SSDT according to the guide: http://www.tonymacx86.com/yosemite-laptop-support/152573-guide-patching-laptop-dsdt-ssdts.html

Lately, I like to keep most of the SSDTs (even CPU PM related ones).
 
Status
Not open for further replies.
Back
Top