Contribute
Register

[Guide] Lenovo Y50 (UHD or 1080p) using Clover UEFI

Joined
Dec 14, 2018
Messages
3
Motherboard
LENOVO
CPU
i7–4720H
Graphics
960M
Mobile Phone
Android
Hey, can you share your efi folder for MacOS Catalina ? I'd like to try upgrading. Thanks!
Hey, can you send me your clover and EFI files to me,I want to install Mojave on my computer. I can not do it successfully, our laptop has the same configuration.Thank you very much.
 
Joined
Jul 12, 2016
Messages
22
Motherboard
Lenovo Y50-70
CPU
i7-4720HQ
Graphics
GTX 960M+HD4600, 3840x2160
Hey, can you send me your clover and EFI files to me,I want to install Mojave on my computer. I can not do it successfully, our laptop has the same configuration.Thank you very much.
 

Attachments

Joined
Dec 14, 2018
Messages
3
Motherboard
LENOVO
CPU
i7–4720H
Graphics
960M
Mobile Phone
Android
Thank you,but I can not boot up my laptop,there must be more files that are required.I don't know how you make the usb stick work properly.So can you teach me how to do it?
 
Joined
Dec 14, 2018
Messages
3
Motherboard
LENOVO
CPU
i7–4720H
Graphics
960M
Mobile Phone
Android
Hello, my problems has been solved, but I face up with the problem that you faced up before.When it boot up, the screen will display in an abnormal way, when I turn it to the sleep mode, it will become normally.I do really want to know how can you solve it?@karthaxx
 
Last edited:
Joined
Mar 27, 2020
Messages
1
Motherboard
Lenovo y50 70
CPU
i7-4720HQ
Graphics
GTX 960M
Mac
MacBook Pro, Mac Pro
Mobile Phone
Android
Hi
Lenovo y50 70 UHD
I7 4720hq
I've been trying for a week to get my Mojave working. Intel card was showing 31mb till I injected Intel graphics but after that I got black screen. Soo I tried with HDMI connected and found out 2 things: HDMI connected to turned on TV resulted in fully acelerated graphics on TV but then I turned off the tv and it caused signal to appear on internal display. After research I came on clue that EDID doesnt work properly with UHD screen. One solution to the problem is to get Dummy HDMI but it isn't satysfying for me. Any updates from you Guys?

Update: Downloaded Catalina installer. After restarting into clover I chose Catalina install. Dropped it during the process by shutting down Laptop. After that I chose my Mojave and it booted great and with acceleration. After reboot black screen is back.
 
Last edited:
Joined
Aug 19, 2011
Messages
119
Motherboard
H55CM
CPU
I3-530
Graphics
7750
Is there anyone experiencing reboot from sleep after upgrading to 10.15.4? My 10.15.3 was super stable. Not sure what happened.
 
Joined
Apr 14, 2020
Messages
1
Motherboard
Lenovo y50-70
CPU
i7-4700HQ/HM86
Graphics
Intel HD Graphic 4600 / nVidia 860M
Mac
MacBook Pro
Classic Mac
Lisa
Mobile Phone
iOS
Hey
I have a question.
I installed Sierra OS on my Y50-70 UHD but forgot to do this:
After copying the config.plist from the repo to EFI/Clover/config.plist, you should customize the SMBIOS so you have a unique serial. You can use Clover Configurator to do this (use google to find/download it). DO NOT use Clover Configurator to edit your actual config.plist. Instead edit a "dummy" config.plist to create the SMBIOS data and then use copy/paste with a plist editor (I use Xcode) to copy the SMBIOS section into my active config.plist. Clover Configurator is too buggy and cannot be trusted with edits to your real config.plist. This guide uses MacBookPro11,1. Do not use any other model identifier.

Repeat: DO NOT edit your config.plist with Clover Configurator. Clover Configurator will erase important settings from the config.plist, and as a result, it will not work.


I already have used this OS for a week and can't find the config.plist now even in the search window.
Do I understand right, to create SMBIOS data I have to:

1. Download latest built of Clover
2. Mount EFI partition on system disk
3. If you have the UHD/4k screen, use config_UHD.plist:
Code:
cd ~/Projects/y50.git
cp config_UHD.plist /Volumes/EFI/EFI/Clover/config.plist

4. Copy/paste config_UHD.plist
5. Use the new copy to configure SMBIOS?
 
Joined
Apr 2, 2017
Messages
179
Motherboard
LENOVO Y50-70
CPU
i7 4710HQ
Graphics
HD4600 + GT 860M (1920x1080)
@rehab
Overview

The purpose of this guide is to provide a step-by-step guide to installing Mojave, High Sierra, Sierra, El Capitan, or Yosemite on the Lenovo Y50-70 laptops. Please note I do not have this laptop, but this guide was created through my work helping others at the original guide thread. Since that thread is not well maintained and there are several problems with it, I decided to provide this guide.

Original guide thread here: http://www.tonymacx86.com/yosemite-laptop-guides/153390-guide-lenovo-y50-clover.html

Both laptops with 1080p and UHD displays are supported by this guide.

Note: This guide will probably also work with Mavericks.


What you need

- Lenovo Y50-70 (or Y70) with either 1080p or UHD/4K display
- macOS or OS X downloaded from the Mac App Store
- 8GB USB stick
- (optional) 32GB USB stick for Lenovo OEM backup
- Broadcom BCM94352Z for native WiFi (Lenovo FRU: 04X6020, Lenovo PN: 20-200480)


BIOS settings

To start, set BIOS to Windows 8 defaults.

Then insure:
- UEFI boot is enabled
- secure boot is disabled
- enable Legacy Boot (but UEFI first) and you may experience less boot time glitches

For the UHD model, the DVMT-prealloc BIOS setting must be changed to 128MB. One of two methods can be used:
- use a EFI shell to change the DVMT-prealloc from the shell.
- use a patched BIOS which unlocks the advanced menu

** Note: Those with the UHD model and who have used the UEFI shell method to set DVMT-prealloc, please reply to this thread with clear details (eg. setup_var variable offset and value). Since each laptop is likely the same, the information can be added to post #1 here after a few people confirm the same values on different Y50 laptops.

Note: It has been reported that BIOS version 1.14 or *older* must be used in order to set DVTM-prealloc via UEFI shell. Details here: http://www.tonymacx86.com/threads/g...using-clover-uefi.165188/page-19#post-1050617

BIOS link: http://www.tonymacx86.com/threads/g...lover-uefi-10-11.168612/page-104#post-1184979

BIOS images are specific to each laptop (Windows license keys), so a custom BIOS must be made by someone knowledgeable from a backup of your own BIOS. Sites such as bios-mods.com specialize in this.

But you can also use a UEFI shell to adjust the DVMT-prealloc and avoid using a patched BIOS. Lately this is commonly done on Broadwell machines. Check at the links from the FAQ: http://www.tonymacx86.com/el-capita...faq-read-first-laptop-frequent-questions.html. Look at question "Is Intel Broadwell graphics supported?". There are a number links there with a few different guides that explain how to extract BIOS, search for the variable, and set it with a special UEFI shell (based on grub). Since all Y50 laptops are likely to use the same variable offset, please post the details in this thread, so that this post can be updated.

Note: There are at least two posts in this thread stating the offset. One is this example:


The 0x18C and value 0x4 also corresponds with another report in this same thread.

If you own the laptop, please help with any additional required BIOS settings that may be required.

Note: The DSDT/SSDT patching script will automatically disable the discrete nVidia card if you have it enabled in BIOS. It is best, therefore to keep it enabled in BIOS so you can still use it on Windows, but have DSDT/SSDT patched properly for OS X.


Issue with booting UEFI-Shell USB for DVMT-prealloc

When booting from the USB, an error may be thrown by the BIOS stating the following: EFI USB Device <USB name> has been blocked by the current security policy. This issue is due to Secure Boot being enabled and it must be disabled to continue booting from the USB stick.

In order to disable Secure Boot:
From a powered off state press the NOVO button (to the left of the power button on the Y50-70) and select 'BIOS SETUP'. Navigate to the 'Security Tab' and at the bottom of that window select 'Reset to Setup Mode' to fully disable the Secure Boot. Once done, Navigate to the 'Exit' tab and select 'Exit Saving Changes'. You should now be able to boot from the USB stick.

There is an issue with BIOS v1.09 (may impact other versions as well) where no matter how you set Secure Boot it will not disable and you cannot get passed the 'EFI USB Device <USB name> has been blocked by the current security policy.' message... meaning you cannot boot from UEFI Shell. If you have this issue for any BIOS version under v1.14, upgrade to v1.14 but NOT ABOVE.. it has been reported that a BIOS version above 1.14 has the area encrypted that needs to be modified modify the DVMT. After upgrading the BIOS to v1.14 follow the above steps to disable Secure Boot.


Preparing USB and initial Installation

Prior to installing OS X, it is a good idea to create an OEM recovery USB from Windows. If anything goes wrong and you want/need to get back to Windows, you can restore it via the USB. Use the utility provided by Lenovo to accomplish this.

You can also leave Windows intact, but it can get tricky. Read here for more information: http://www.tonymacx86.com/multi-booting/133940-mavericks-windows-8-same-drive-without-erasing.html

This guide for creating USB and installing using Clover UEFI works well for this laptop: http://www.tonymacx86.com/el-capita...de-booting-os-x-installer-laptops-clover.html

Special notes:

- Use the latest RehabMan build of Clover

- Definitely copy RealtekRTL8111.kext to Clover/kexts/Other as having network support during post-install is helpful. The rest of this guide depends on it. An alternate is to AirportBrcmFixup.kext. This will enable WiFi, provided you have the BCM94352 WiFi card already installed.

- GenericUSBXHCI.kext is not necessary with this laptop. Do not use it.

- Use the 'createinstallmedia' approach. It works well, and there is little chance for pilot error. This method also gives you an OS X recovery partition.

- If your laptop has the UHD/4K screen, set config.plist/Graphics/ig-platform-id=0x12345678 for installation.

- Also copy USBXHCI_y50.kext to EFI/Clover/kexts/Other. You can get USBXHCI_y50.kext from the repo ZIP: https://github.com/RehabMan/Lenovo-Y50-DSDT-Patch/archive/master.zip


Post Installation

Install Clover UEFI as described in the guide linked by the previous section (post #2). After installing Clover, and configuring it correctly (config.plist, kexts, etc) you should be able to boot from the HDD/SSD.

But there are still many issues and devices that won't work correctly. For that, we need to patch ACPI, provide a proper config.plist, and install the kexts that are required.

Note: If you have the UHD screen you'll still need config.plist/Graphics/ig-platform-id=0x12345678 until all post-install tasks are complete.

Since you have RealtekRTL8111.kext already injected by Clover, you should have internet access simply by using an Ethernet cable to your router. Plug it in and make sure you have internet access before continuing. Or if you're using AirportBrcmFixup.kext, you can connect to your WiFi router before continuing.

Installation of the tools and patching is easy provided the scripts and tools at the repository: https://github.com/RehabMan/Lenovo-Y50-DSDT-Patch

To start, the developer tools must be installed. Run Terminal, and type:

Code:
xcode-select --install
You will be prompted to install the developer tools. Since you have internet working, you can choose to have it download and install them automatically. Do that before continuing.

After the developer tools are installed, we need to get a couple of projects from my github.

In Terminal:
Code:
mkdir ~/Projects
cd ~/Projects
git clone https://github.com/RehabMan/Lenovo-Y50-DSDT-Patch y50.git
Now it is time to install some more tools and all the kexts that are required...

In Terminal:
Code:
cd ~/Projects/y50.git
./download.sh
./install_downloads.sh
The download.sh script will automatically gather the latest version of all tools (patchmatic, iasl, MaciASL) and all the kexts (FakeSMC.kext, ACPIBatteryManager.kext, etc) from bitbucket. The install_downloads.sh will automatically install them to the proper locations.

Note: This guide is written assuming a Synaptics trackpad is installed. According to some of the feedback in this thread, some of these laptops come with an ELAN trackpad instead. I'm not going to link the ELAN trackpad, due to the author's disregard for the open source license, but you can find it on the internet. You will lose some of the keyboard functionality (eg. function keys) present in the Synaptics setup, although the brightness keys should be working (special patch in patches/keyboard.txt)

If you wish, you can reboot to verify a few more items are working (many only partially).

To finish the setup, we need a correctly patched DSDT/SSDT.

With the current project, no patched DSDT/SSDTs are used. Instead, Clover hotpatches and a small SSDT called SSDT-HACK are used instead.

In Terminal:
Code:
cd ~/Projects/y50.git
make
make install
The 'make' causes the SSDT-HACK.aml files to be compiled (with iasl), the results placed in ./build.

Finally, 'make install', mounts the EFI partition, and copies the built files where they can be loaded by Clover (to EFI/Clover/ACPI/patched).


Power Management

Everything required for CPU/IGPU power management is already installed with the steps above.
There is no longer any need to use the ssdtPRgen.sh script.

Also, be aware that hibernation (suspend to disk or S4 sleep) is not supported on hackintosh.

You should disable it:
Code:
sudo pmset -a hibernatemode 0
sudo rm /var/vm/sleepimage
sudo mkdir /var/vm/sleepimage
Always check your hibernatemode after updates and disable it. System updates tend to re-enable it, although the trick above (making sleepimage a directory) tends to help.


Patching the IOKit (or CoreDisplay) framework

If you have the UHD/4K display, you must defeat the IOKit/CoreDisplay framework pixel clock checks.

In the latest release of this guide, download.sh and install_downloads.sh installs WhateverGreen.kext (-cdfon, as provided in config_UHD.plist, enables the CoreDisplay patch) in order to accomplish this patch. As a result, no need to do this manually as was required in previous versions of this guide.


Final config.plist

Up to now, you've been using the same config.plist we were using for installation. After all the APCI files are in place, you're ready to use the final config.plist from the repo.

First, mount the EFI partition:
Code:
cd ~/Projects/y50.git
./mount_efi.sh
If you have the 1080p screen, use config.plist:
Code:
cd ~/Projects/y50.git
cp config.plist /Volumes/EFI/EFI/Clover/config.plist
If you have the UHD/4k screen, use config_UHD.plist:
Code:
cd ~/Projects/y50.git
cp config_UHD.plist /Volumes/EFI/EFI/Clover/config.plist
You could also copy the file using Finder.

After copying the config.plist from the repo to EFI/Clover/config.plist, you should customize the SMBIOS so you have a unique serial. You can use Clover Configurator to do this (use google to find/download it). DO NOT use Clover Configurator to edit your actual config.plist. Instead edit a "dummy" config.plist to create the SMBIOS data and then use copy/paste with a plist editor (I use Xcode) to copy the SMBIOS section into my active config.plist. Clover Configurator is too buggy and cannot be trusted with edits to your real config.plist. This guide uses MacBookPro11,1. Do not use any other model identifier.

Repeat: DO NOT edit your config.plist with Clover Configurator. Clover Configurator will erase important settings from the config.plist, and as a result, it will not work.

Do not stop reading

Although most of the post-install tasks are done, continue to read this guide. It it has important information you should know about.

In the case of a problem, don't bother asking about with without all files requested in "Problem Reporting".


Updates to the patch repositories

From time to time, updates may become available to the project repository. In the event of such updates, you may want to update your copies, and re-patch DSDT/SSDT with the updates.

Since you're using git, it is easy...

In Terminal:
Code:
cd ~/Projects/y50.git
git pull
./download.sh
./install_downloads.sh
make
make install

What works

Expect to work:
- UEFI booting via Clover
- built-in keyboard (with brightness keys)
- built-in trackpad (basic gestures)
- HDMI video/audio with hotplug (please verify, the patches came from the u430 repo and may need tweaking)
- AirPlay mirroring to AppleTV
- native WiFi via BCM94352Z
- Bluetooth (with handoff) using BCM94352Z
- native USB3 with AppleUSBXHCI (USB2 works also)
- native audio with AppleHDA (using injector for easy updates), including headphone
- built-in mic
- built-in camera
- native power management
- battery status
- backlight controls with smooth transitions, save/restore across restart
- accelerated graphics for HD4600 including OpenCL
- wired Ethernet
- Mac App Store working
- retina scaling (in the case of UHD screen)

Not tested/not working

The following features have issues, or have not been tested:
- Messages/FaceTime (not tested, see guide: http://www.tonymacx86.com/general-help/110471-how-fix-imessage.html)
- some special Fkeys not working (??)
- card reader is not working


Known Problems

Find My Mac/Locking: Find My Mac does not work properly. Don't lock your mac because it's difficult (or impossible) to unlock again.

Slow WiFi after sleep/wake cycle: Disable "Wake for network access" in SysPrefs->Energy Saver.

Audio: External mic via combo headphone/mic jack is not working.

Black screen after wake (UHD only): Some owners of the UHD model report that on wake from sleep, the screen comes on for a second, only to turn black. Most users seem to not have this problem. No known solution. If you find a solution, please reply here.

Screen flicker (FHD only): Some owners of the FHD model report that the there is flickering on the screen when legacy boot is enabled (still booting UEFI). This can be avoided by disabling legacy boot in BIOS, but the flicker returns after wake from sleep. No known solution. If you find a solution, please reply here.


System Updates

Before doing an update, it is important to have all components up-to-date as there may be changes required to kexts, ACPI, config.plist, Clover, etc to handle the new update.

First step should be to update to the latest repository.

To do so:
Code:
cd ~/Projects/y50.git
git stash
git pull
./download.sh
./install_downloads.sh
make
make install
Also update Clover to the latest using the Clover installer. Be sure to fix EFI/Clover/kexts, so that only EFI/Clover/kexts/Other is existing. All version specific directories under EFI/Clover/kexts should be removed.

Also update config.plist at EFI/Clover/config.plist to the latest content from the repo. Be sure to retain your own SMBIOS data at config.plist/SMBIOS.

Now you can update via the App Store. Just boot the installer/updater upon restart.

After updating, run ./install_downloads.sh again:
Code:
cd ~/Projects/y50.git
./install_downloads.sh

Other post-install tasks

Trackpad: Be sure to visit the options in SysPrefs->Trackpad and change them to your liking.

Trackpad three finger support: You can configure three finger swipes in SysPrefs->Keyboard->Shortcuts. Instead of pressing keys for a given function, do the three finger swipe (up/down/left/right).

Disable trackpad when using an external mouse: It allows you to disable the built-in trackpad when a USB mouse is plugged in. Just check the box in SysPrefs->Accessibility->"Mouse & Trackpad".

Bluetooth: If you get the Bluetooth Setup Assistant popup, go to SysPrefs->Bluetooth->Advanced, uncheck the boxes.


Keyboard Mapping

The mapping for Control, Option, and Command are according to the physical layout of the keys on an actual MacBook keyboard, not the labels on the keys. Control=Control, Windows=Option, and Alt=Command. If you want a more PC friendly keyboard layout, use Karabiner (formerly KeyRemap4MacBook).

Brightness up/down are implemented with DSDT patches and my VoodooPS2Controller. Mirror Toggle is not currently implemented.

The function of Fn+F1..F12 and F1..F12 can be changed in SysPrefs->Keyboard (actually, not currently implemented, but is possible).


Major updates

First step should be to update to the latest repository.

To do so:
Code:
cd ~/Projects/y50.git
git stash
git pull
make
make install
./download.sh
./install_downloads.sh
Also update Clover to the latest using the Clover installer. Be sure to fix EFI/Clover/kexts, so that only EFI/Clover/kexts/Other is existing. All version specific directories under EFI/Clover/kexts should be removed.

Also update config.plist at EFI/Clover/config.plist to the latest content from the repo. Be sure to retain your own SMBIOS data at config.plist/SMBIOS.

Now you can update via the App Store. Just boot the installer/updater upon restart.

After updating, run ./install_downloads.sh again:
Code:
cd ~/Projects/y50.git
./install_downloads.sh

Updating to High Sierra

As you probably already know, High Sierra has a new file system called APFS. Boot drives on SSDs will automatically be converted to APFS if you start the High Sierra installer in the default way (eg. running /Applications/Install macOS High Sierra.app).

If you intend to use APFS, don't forget to add apfs.efi to EFI/CLOVER/drivers64UEFI. Without apfs.efi in drivers64UEFI, Clover will not recognize APFS boot volumes. You can find apfs.efi at /usr/standalone/i386/apfs.efi inside of "/Applications/Install macOS High Sierra.app/Contents/SharedSupport/BaseBinaries.dmg".

But you can avoid converting to APFS if you want to stick with HFS+. To so so, don't use the Install macOS High Sierra.app to start the installer. Use 'startosinstall' instead:
Code:
/Applications/"Install macOS High Sierra.app"/Contents/Resources/startosinstall --converttoapfs NO

Problem reporting

Problem reports should be accompanied by various files that allow your progress to be accounted for...

Read FAQ, "Problem Reporting". Carefully. Attach all requested files/output.
https://www.tonymacx86.com/threads/faq-read-first-laptop-frequent-questions.164990/
Use the gen_debug.sh tool mentioned in the FAQ, that way it is less likely you'll omit something.
I have a problem. I have installed El capitan on my lenovo 3 years ago about. Everything ok, but i didn't followed the efibootmgr steps with Linux, so, after each win update, i rename efibootmgr. Now, after so many time, i choose to do Linux steps, so i did it, but i understand that i should do only the first step, without -o argument step. Now my laptop is stucked. When i star clover, i have only 5 sec. to choose a drive, otherwise it freeze. Sometime it freeze before yet. I can't run Linux from USB, because if i boot from usb, it stuck after 5 sec that i power on the laptop. In config.plist there isn't a Default Volume Voice, so i add:
<key>DefaultVolume</key>
<string>El Capitan HDD</string> (my drive's name). But i have the same problem yet. So what can i do? I can't boot Linux, and i have this problems for boot Win and OSX.
I tried also with UUID of OSX, founded with spacebar in clover, but no successo. Linux doesn't start. If i click some thing in clover, it freeze, only sometimes it boot osx. Also with - 1 timeout, it freeze on each option that i select or if i click some thing.
 
Last edited:
Joined
May 15, 2020
Messages
1
Motherboard
Lenovo y50/70
CPU
I7
Graphics
Gtx 860 m
Hi, a stupid question:
If install Mac os on a new HD i have a secure foolproof rollback by swapping HD ?
Thanks
 
Joined
May 23, 2016
Messages
176
Motherboard
Lenovo Y50-70
CPU
i7-4720HQ
Graphics
HD4600 / GTX 960M 1920x1080
Mac
MacBook Pro
Mobile Phone
iOS
Is there anyone who can help me with my Lenovo (Mojave boot) ?
 

Attachments

Top