Contribute
Register

Lenovo Yoga 2 13 Mavericks Install

Status
Not open for further replies.
Joined
Mar 17, 2012
Messages
40
Motherboard
Gigabyte EP45-UD3LR
CPU
Intel Core 2 Quad Q9550 @3.40GHZ
Graphics
Nvidia Geforce GTX 560 Ti
Mac
  1. MacBook
Classic Mac
  1. 0
Mobile Phone
  1. Android
I've installed Mavericks 10.9.3 on my Lenovo Yoga 2 13 just fine using Clover and am able to boot into it just fine. There are a few issues that I need help with pertaining to post install.

Is it normal for the System Profiler to report my Intel HD Graphics as having only 7MB? I've heard that that happens but I have some small graphical issues when I open folders or use the scroll bars on the side of any windows. There's also a significant amount of screen tearing on certain animations. I'm using the IntelGFX string 0x80860416 and the 0D220003 ig-platform-id for injection in Clover's config.plist. I did rollback the IntelAzulFramebuffer.kext to the 10.9.1 version but the issues are still there.

Have a Realtek ALC233 audio codec (as reported by the HD Audio Manager in Windows 8.1) which also does not work. I have a patched DSDT with a bunch of the retarded errors in Lenovo's DSDT fixed up and the audio ID is set to 1 but none of the ALC233 kexts that I've found work.

Brightness controls do not work, keyboard and track pad work using the PS2 kexts by Rehabman but the trackpad is not sensitive enough even at max setting in the track pad system options. Multi-touch gestures work fine (Sensitivity is minor since I can't really complain haha, I'm not using an official MacBook after all)

SSDT seems to not be doing it's job. Laptop becomes very loud and hot when in OSX (probably cause the CPU and HD4400 are at full blast since CPU states and stepping do not work). Using the OEM SSDT, not dropping anything, didn't build my own.

Finally, how do I install Clover so that I can boot into Mavericks without using my USB installer? I've been using my USB installer this whole time since it actually works. I've tried to install clover to the EFI partition on my HDD but since it's shared with Windows it still boots Windows 8.1, completely ignoring the Clover bootloader. Also, when I did have it installed on the HDD I could no longer use my USB to boot into it. I had to manually mount the EFI partition in Windows using CMD and Diskpart to get in there and delete all of the Clover files then my USB worked again. Otherwise, I would hang at the Root UUID ------------ part.

Lenovo Yoga 2 13
i5-4200U 1.60GHz (2.3 Turbo, in Windows it's usually in between max and min)
Intel HD 4400
4GB RAM
500GB SSHD (Mavericks and Windows are both on this hard drive. OSX partition follows the Windows 8.1 partition in a GPT scheme. UEFI is enabled but SecureBoot is disabled. Microsoft released the update to remove the annoying watermark so it's fine)
13inch 1920 x 1080 Touchscreen, resolution is correct when in OSX
Intel 7260 Wireless N does not work, the Bluetooth part of the module connected by USB (M.2 combo card) sometimes works

I have a TP-Link TL727N USB wireless adapter (RT3070 chipset) and a generic Mediatek 7601 USB wireless adapter, I've gotten neither to work

Whew, props to whoever reads this wall o' text. Attached ioReg and DSDT I'm using.
 

Attachments

  • dsdt.aml
    54.8 KB · Views: 198
  • Hector’s MacBook Pro.ioreg
    2.2 MB · Views: 243
I've installed Mavericks 10.9.3 on my Lenovo Yoga 2 13 just fine using Clover and am able to boot into it just fine. There are a few issues that I need help with pertaining to post install.

Is it normal for the System Profiler to report my Intel HD Graphics as having only 7MB? I've heard that that happens but I have some small graphical issues when I open folders or use the scroll bars on the side of any windows. There's also a significant amount of screen tearing on certain animations. I'm using the IntelGFX string 0x80860416 and the 0D220003 ig-platform-id for injection in Clover's config.plist. I did rollback the IntelAzulFramebuffer.kext to the 10.9.1 version but the issues are still there.

The ioreg shows graphics not working. Restore stock kexts and try injecting ig-platformid=0xa260006.

Have a Realtek ALC233 audio codec (as reported by the HD Audio Manager in Windows 8.1) which also does not work. I have a patched DSDT with a bunch of the retarded errors in Lenovo's DSDT fixed up and the audio ID is set to 1 but none of the ALC233 kexts that I've found work.

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

DSDT patches you need for AppleHDA: https://github.com/RehabMan/Laptop-DSDT-Patch
Apply: "Audio Layout 12" (change layout-id from 12 to the layout-id used by the patched AppleHDA)
Apply: "IRQ Fix"

Determine layout-id from patched AppleHDA.kext:

First you need to know your codec id in decimal. Then look in the Info.plist for AppleHDAHardwareConfigDriver.kext (in PlugIns), find your codec id under HDAConfigDefault (there may be many entries in a sloppy patched AppleHDA or only one). The LayoutID that matches your codec id is the layout id you need.

Brightness controls do not work,

Brightness fix is dependent on working graphics (see above)...

Haswell Brightness Fix:

You will need to extract all DSDT/SSDT from Linux. Your GFX0 device is in one of the SSDTs not DSDT and to get a proper disassembly of your DSDT (and the SSDT that has GFX0) you will need all of them. They are available in /sys/firmware/acpi/tables and /sys/firmware/acpi/tables/dynamic.

Place all SSDT/DSDT in a single directory and use a recent build of iasl to disassemble:
http://www.tonymacx86.com/attachmen...ell-inspiron-17-7000-hackintosh-able-iasl.zip
Code:
cd "to directory where you placed all SSDT/DSDT"
iasl -da *.aml

Then search the resulting *.dsl so you know where GFX0 is defined.

Laptop repo: https://github.com/RehabMan/Laptop-DSDT-Patch
Apply: "Rename GFX0 to IGPU" (to both DSDT and the SSDT that has your GFX0 device)
Apply: "Brightness Fix (Haswell)" to SSDT with GFX0
install: https://github.com/RehabMan/OS-X-ACPI-Backlight

Place patched DSDT.aml in /Extra/dsdt.aml. Place patched SSDT in /Extra/ssdt-1.aml (assuming you have already generated SSDT.aml for CPU)

Result: Working brightness slider in SysPrefs->Displays (mapping of keyboard keys is a separate issue), possible LID sleep, and IGPU power management.

keyboard and track pad work using the PS2 kexts by Rehabman but the trackpad is not sensitive enough even at max setting in the track pad system options. Multi-touch gestures work fine (Sensitivity is minor since I can't really complain haha, I'm not using an official MacBook after all)

You can change settings in the trackpad Info.plist. Also new version is posted...

SSDT seems to not be doing it's job. Laptop becomes very loud and hot when in OSX (probably cause the CPU and HD4400 are at full blast since CPU states and stepping do not work). Using the OEM SSDT, not dropping anything, didn't build my own.

The ioreg shows power management not correct. See here for clues: http://www.tonymacx86.com/mavericks...-sandy-bridge-ivy-bridge-haswell-laptops.html

Finally, how do I install Clover so that I can boot into Mavericks without using my USB installer? I've been using my USB installer this whole time since it actually works. I've tried to install clover to the EFI partition on my HDD but since it's shared with Windows it still boots Windows 8.1, completely ignoring the Clover bootloader. Also, when I did have it installed on the HDD I could no longer use my USB to boot into it. I had to manually mount the EFI partition in Windows using CMD and Diskpart to get in there and delete all of the Clover files then my USB worked again. Otherwise, I would hang at the Root UUID ------------ part.

Install Clover to EFI partition on HDD. Rename /EFI/Microsoft/Boot/bootmgfw.efi to bootmgfw-orig.efi.
 
It's been almost a month and I never got back to actually fixing the issues due to exams and such. I've dumped all of the DSDT and SSDT files from Linux and disassembled them successfully. There was a significant amount of errors in the compiler logs originally and now using these DSDT files the compiler log shows nothing is wrong.

I've applied the IRQ fix, changed my audio ID to 3 in the DSDT since the ALC233 kext that I am using requires that ID. I've also updated to Yosemite 10.10 and v2999 of Clover.

I renamed GFX0 to IGPU and applied the Haswell brightness fix in both the DSDT and the SSDT4 files. Renamed them to dsdt.aml and ssdt-4.aml and placed them in /EFI/Clover/ACPI/patched. I'm guessing the files load correctly since my audio ID is 3 under the audio hardware section in the system profiler.

There are still things that leave me stumped. First things first, the HD4400 is still and issue even after using the ig-platform-id you suggested. I could not get the Yosemite installer to even boot without using the IntelGFX FakeID of 0x80860416. However, contrary to Mavericks, Yosemite seems to use a ****load of QE/CI in the Finder/drawing of the UI so the glitches are far worse now. I'm stuck on how to get the HD4400 to work. I have the 8086:0A16 HD4400 and I was going to try applying this fix:

http://www.tonymacx86.com/yosemite-...-fix-intel-hd4400-hd4600-mobile-yosemite.html

but knowing my bad luck, I can't get past the login screen anymore and the stupid beach ball spins infinitely. Nothing happens, even when I restart so I think I might have to reinstall Yosemite. This all happened after installing the ALC233 and ACPIBacklight kexts.

I don't know what causes it to freeze always upon logging in, as all I did was install a fresh Yosemite. I installed the VoodooPS2 kext, which did work after restart, no freezing or anything of that sort. After I got the track pad and keyboard working I installed the ACPIBacklight and ALC233 kexts using Kext Utility. Restarted my laptop, typed my password and bam the beach ball shows up spinning indefinitely and does not advance. I've waited up to 20 minutes with it doing that and nothing.

The audio is the last thing on my list since it's probably an easy fix. I just want know if anyone has gotten the HD4400 to actually work and if I can possibly get it to work myself. The screen tearing and slowdowns from lack of QE and CI is unbearable. My SMBIOS definition is set to the Late 2013 Retina Macbook Pro 11,1 which in turn should maybe help with stepping and such as I've read from your recommendation and the guide says Clover patches the kernel for Haswell power management on the fly if the config.plist has the settings on. I still need to generate the SSDT for the CPU using the ProBook installer.
 

Attachments

  • config.plist
    3.3 KB · Views: 320
  • dsdt.aml
    55.5 KB · Views: 189
  • ssdt-4.aml
    13.9 KB · Views: 194
... I just want know if anyone has gotten the HD4400 to actually work and if I can possibly get it to work myself.

HD4400 is supported natively. There is no need for FakeID.

My SMBIOS definition is set to the Late 2013 Retina Macbook Pro 11,1

A better choice would be MacBookAir6,2.
 
HD4400 is supported natively. There is no need for FakeID.



A better choice would be MacBookAir6,2.

So I've fixed up a few things and I'm almost there with having a stable Yosemite laptop install. Setting the definition as Air 6,2 mostly fixed the power issues, laptop doesn't get hot or loud anymore.

What works: Graphics (4400 works after removing the FakeID and leaving the ig-platform-id, but there still are a few glitches even after patching the framework for OpenGL using the script for HD4400), Keyboard and Trackpad, WiFi with USB Wireless N (MT7601 chipset using Ralink's V5 RT2800 kext and D-Link's preference pane,)

What doesn't work: ALC233 audio (VoodooHDA sucks so I don't want to use it, patching AppleHDA is difficult), battery isn't reported so I do not know what percentage I'm at until the battery light turns yellow, FaceTime and iMessage don't allow login (probably cause of the SMBIOS stuff since my device is reported as en0 so it can't be that), brightness controls (ACPIBacklight kext causes Yosemite to hang upon login even though I did rename GFX0 to IGPU in both the DSDT and the SSDT)

So:
How can I get battery percentage to work?
What am I doing wrong with ACPIBacklight?
How do I patch AppleHDA for ALC233? (I've read the guides but they only mention ALC888, 887, etc.)
How do I fix the glitches with the HD4400?
 

Attachments

  • Screen Shot 2014-11-14 at 10.52.13 AM.jpg
    Screen Shot 2014-11-14 at 10.52.13 AM.jpg
    761.9 KB · Views: 417
  • Lenovo Air.ioreg.zip
    1.9 MB · Views: 140
So I've fixed up a few things and I'm almost there with having a stable Yosemite laptop install. Setting the definition as Air 6,2 mostly fixed the power issues, laptop doesn't get hot or loud anymore.

What works: Graphics (4400 works after removing the FakeID and leaving the ig-platform-id, but there still are a few glitches even after patching the framework for OpenGL using the script for HD4400), Keyboard and Trackpad, WiFi with USB Wireless N (MT7601 chipset using Ralink's V5 RT2800 kext and D-Link's preference pane,)

What doesn't work: ALC233 audio (VoodooHDA sucks so I don't want to use it, patching AppleHDA is difficult), battery isn't reported so I do not know what percentage I'm at until the battery light turns yellow, FaceTime and iMessage don't allow login (probably cause of the SMBIOS stuff since my device is reported as en0 so it can't be that), brightness controls (ACPIBacklight kext causes Yosemite to hang upon login even though I did rename GFX0 to IGPU in both the DSDT and the SSDT)

So:
How can I get battery percentage to work?
What am I doing wrong with ACPIBacklight?
How do I patch AppleHDA for ALC233? (I've read the guides but they only mention ALC888, 887, etc.)
How do I fix the glitches with the HD4400?

You can likely find an already patched AppleHDA...

DSDT patches you need for AppleHDA: https://github.com/RehabMan/Laptop-DSDT-Patch
Apply: "Audio Layout 12" (change layout-id from 12 to the layout-id used by the patched AppleHDA)
Apply: "IRQ Fix"

Determine layout-id from patched AppleHDA.kext:

First you need to know your codec id in decimal. Then look in the Info.plist for AppleHDAHardwareConfigDriver.kext (in PlugIns), find your codec id under HDAConfigDefault (there may be many entries in a sloppy patched AppleHDA or only one). The LayoutID that matches your codec id is the layout id you need.

--

HD4600/HD4400/HD4200/HD5000/etc glitches:
- set bootloader resolution to native resolution
- try different ig-platform-id values (0xa260006, 0xa260005, 0xa260000, 0xa160000, 0xa2e0008, 0xa2e000a)
- implement backlight control with DSDT patches + ACPIBacklight.kext
- set slide=0 kernel flag
- set a color profile
- inject EDID
- login/logout/login
- rollback Azul/HD5000 kexts to 10.9.1 (Note: not valid for Yosemite)
- patch framebuffer... (requires much research)

--

Battery status: http://www.tonymacx86.com/yosemite-...de-how-patch-dsdt-working-battery-status.html

--

Your ioreg is corrupt.

--

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
 
Output from kextstat
Code:
Hectors-MacBook-Pro:RehabMan hectorpardo$ kextstat|grep -y acpiplat
   13    2 0xffffff7f8219b000 0x65000    0x65000    com.apple.driver.AppleACPIPlatform (3.1) <12 11 7 6 5 4 3 1>
Hectors-MacBook-Pro:RehabMan hectorpardo$ kextstat|grep -y appleintelcpu
Hectors-MacBook-Pro:RehabMan hectorpardo$

I've attached my ioreg which I've opened in the program so I guess it isn't corrupted. I also attached the Rehabman folder files containing my DSDT and SSDTs.
 

Attachments

  • RehabMan.zip
    32.7 KB · Views: 95
  • Hector’s MacBook Pro.zip
    330.4 KB · Views: 128
Output from kextstat
Code:
Hectors-MacBook-Pro:RehabMan hectorpardo$ kextstat|grep -y acpiplat
   13    2 0xffffff7f8219b000 0x65000    0x65000    com.apple.driver.AppleACPIPlatform (3.1) <12 11 7 6 5 4 3 1>
Hectors-MacBook-Pro:RehabMan hectorpardo$ kextstat|grep -y appleintelcpu
Hectors-MacBook-Pro:RehabMan hectorpardo$

I've attached my ioreg which I've opened in the program so I guess it isn't corrupted. I also attached the Rehabman folder files containing my DSDT and SSDTs.

Your ACPI problem is that you didn't drop the OEM SSDTs. You cannot provide patched SSDTs without dropping the OEM ones (config.plist/ACPI/SSDT/DropOem=true).
 
After dropping the OEM SSDT's the ACPIBacklight.kext works just fine it's just that it is always at max brightness every boot up (it's minor but still is something I have to do every time I boot up just like logging in and out. Again, I'm not complaining but simply asking if I could edit the kext info.plist or anything to make it at 50% brightness every time?)

(The glitches in the HD4400 graphics go completely away by login/logout/login. After that, the graphics and everything work perfectly fine. Maybe I can make a script to run at start up to do that automatically?)

I requested "Mirone" from InsanelyMac to patch my AppleHDA for ALC235 as it turns out the Yoga 2 13 has a mislabeled codec. Windows and even the codec dump list the codec as "Realtek ALC 233" and yet when you look at the codec ID it ends with 0235 so it is actually an ALC235. This is why all of the ALC233 kexts that I've tired do not work I'm guessing. There are no ALC235 patched AppleHDA kexts floating around which is a bummer.

I read the battery status guide and it seems that battery status isn't fixed as easily as before. (Before using a simple ACPI battery kext worked just fine without anything else specific). It also seems more device specific as you have to edit the DSDT specifically to your battery reporting style or did I understand that wrong?

Tempted to use StarLord's Yoga 13 battery patch from your Laptop-DSDT-Patch patches but it looks like it is for the original Yoga 13 or maybe the Thinkpad Yoga 13, which could have adverse effects on the Yoga 2 13.
 
After dropping the OEM SSDT's the ACPIBacklight.kext works just fine it's just that it is always at max brightness every boot up (it's minor but still is something I have to do every time I boot up just like logging in and out. Again, I'm not complaining but simply asking if I could edit the kext info.plist or anything to make it at 50% brightness every time?)

You need working NVRAM and then it will be saved/restored across reboots.

I read the battery status guide and it seems that battery status isn't fixed as easily as before. (Before using a simple ACPI battery kext worked just fine without anything else specific). It also seems more device specific as you have to edit the DSDT specifically to your battery reporting style or did I understand that wrong?

There is probably an existing patch in the repo already...

Tempted to use StarLord's Yoga 13 battery patch from your Laptop-DSDT-Patch patches but it looks like it is for the original Yoga 13 or maybe the Thinkpad Yoga 13, which could have adverse effects on the Yoga 2 13.

From StarLord's profile: Lenovo Ideapad Yoga 13
 
Status
Not open for further replies.
Back
Top