Jump to content

[GUIDE] Lenovo T460/T470 macOS with Clover and OpenCore


tluck
 Share

1,289 posts in this topic

Recommended Posts

Hey, just updated from HS to Mojave using verleihnix his EFI, worked out good.

 

But the problem is that my ethernet connection always disconnects ("unplugs") itself as soon as I download something or open a web page. Do you guys have any clue why that happens, and how to fix it?

I have a T460, 8 GB, i5-6300u, HD520

Edited by d3rve
Link to comment
Share on other sites

I have updated the X1 to 10.14.4. Had to fiddle a bit to get the partitions to start in the right sequence to get the update process to run proper (also had to return to the NoSKL config for a bit). After successful upgrade, the wifi did not work anymore (I use a DW1560).

Upgrading to RehabMan's BrcmFirmwareStore and BrcmPatchRAM2, and refreshing the kextcache, did the trick. I do not know yet whether this breaks the things tliuck patched to get bluetooth etc. to work properly upon sleep and wake, but I was wondering, @tluck, is it possible to reintegrate these patches into the current (2.2.10) version of the Brcm stuff?

 

Update: I realised it may have been the cache rebuild, not the 2.2.10 version thing. So I reverted to the tluck 2.2.7 ones, rebuilt cache, and lo and behold, wifi works in that configuration as well, so for now, I'll stick with that.

Edited by DrDude
Link to comment
Share on other sites

I just updated the repo and package release - merged in Verleihnix config.plist

I believe the big difference was that my old config.plist was still injecting Intel gfx. that may be why some where not getting backlight correct when using WEG for backlight. 

 

BRCM - I believe the later versions included similar delay features needed to support startup and wake from sleep etc. IIRC, RehabMan put in configurable delays at various points in the code...  where as I just hard-coded the value. 

2019-April-03

Updated to Clover r4918

Updated Lilu kexts - ALC, WEG

Merged Verleihnix' config.plist - especially to NOT inject GFX

Updated BacklightInjector as option to WEG.

 

 

  • Like 1
Link to comment
Share on other sites

I could not get BRCM working well with just the delays that RehabMan put in. I tried many combinations. 

 

I added one additional delay after comparing your code and RehabMan's. It is in my forked repo: https://github.com/ESProcessing/OS-X-BrcmPatchRAM

 

I am having success with the following boot args:

 

 <key>Arguments</key>
         <string>kext-dev-mode=1 bpr_upgradedelay=200 bpr_postresetdelay=400</string>

  • Like 1
Link to comment
Share on other sites

On 4/5/2019 at 4:16 PM, kolodzieski said:

I could not get BRCM working well with just the delays that RehabMan put in. I tried many combinations. 

 

I added one additional delay after comparing your code and RehabMan's. It is in my forked repo: https://github.com/ESProcessing/OS-X-BrcmPatchRAM

 

I am having success with the following boot args:

 

 <key>Arguments</key>
         <string>kext-dev-mode=1 bpr_upgradedelay=200 bpr_postresetdelay=400</string>

 

Could you upload the binary kext with your modifications?

Link to comment
Share on other sites

On 4/5/2019 at 4:16 PM, kolodzieski said:

I could not get BRCM working well with just the delays that RehabMan put in. I tried many combinations. 

 

I added one additional delay after comparing your code and RehabMan's. It is in my forked repo: https://github.com/ESProcessing/OS-X-BrcmPatchRAM

 

I am having success with the following boot args:

 

 <key>Arguments</key>
         <string>kext-dev-mode=1 bpr_upgradedelay=200 bpr_postresetdelay=400</string>

 

Could you upload the binary kext with your modifications?

Link to comment
Share on other sites

X260 owner here, this thread is a tresure trove for the T460's smaller sibling.

 

Quick question: using both SSDT-PNFL and SSDT-RMCF patches, I have the backlight working fine (full range) and patching DSDT enabled the hotkeys as well.

 

The only thing I've noticed, is that in some parts of the brightness range, PWM flicker is quite evident, especially on gray backgrounds. The same thing does not happen in Windows. I have a FHD LG panel in my X260.

 

Does this happen with the FHD T460 panel as well? Is this something one lives with? I've tried various things to correct this to no avail. (LMAX in RMFC is set to 1388, as per RehabMan's guide).

Link to comment
Share on other sites

I'm experiencing serious battery drainage here on my x1 carbon 4th gen. Haven't used this machine for over 2 mos and i just turned it on, it was at 97%, and battery drainage decreases every 30 seconds or so. It just now dropped from 46% to 6%.  Anything else i should be aware of? How do i fix this?

Link to comment
Share on other sites

I discovered something strange with regards to BRCM bluetooth, and it must be timing related. 

 

I previously mentioned that I patched RehabMan's latest code with some configurable delays present in @tluck's older codebase. This was working great for me when sleeping from shutting my lid, then reopening. If sleep was initiated, from the menu, however it was not working as good. 

 

I went back and diff the two code set's again, and had a small bug in my correction. I also found one other IOSleep that I skipped. Fixed all of this up, and the latest patched RehabMan's BRCM seems to be working great.

 

I am using in my config.plist:

<string>
   kext-dev-mode=1 bpr_initialdelay=400 bpr_upgradedelay=200 bpr_postresetdelay=400</string>
</string>

I discovered something strange with regards to BRCM bluetooth, and it must be timing related. 

 

I previously mentioned that I patched RehabMan's latest code with some configurable delays present in @tluck's older codebase. This was working great for me when sleeping from shutting my lid, then reopening. If sleep was initiated, from the menu, however it was not working as good. 

 

I went back and diff the two code set's again, and had a small bug in my patch. I also found one other IOSleep that I skipped. Fixed all of this up, and the latest patched RehabMan's BRCM seems to be working great. Both sleep/wake initiated from lid closure, or sleep from menu work fine, with bluetooth restored correctly after wake. 

 

I am using in my config.plist:

<string>
   kext-dev-mode=1 bpr_initialdelay=400 bpr_upgradedelay=200 bpr_postresetdelay=400
</string>

Attached are the rebuild kexts. 

brcm.tar.gz

Edited by kolodzieski
  • Like 1
Link to comment
Share on other sites

On 4/18/2019 at 10:38 PM, tluck said:

if your BRCM is working i can add it to the distro. 

instead of boot args why dont you make these the default values in the Info.plist?

It is working great for me. 

 

My particular bluetooth card is showing as firmware: [0489:e07a] 

 

Adding the delays into the appropriate firmware section of Info.plist works, one can remove the args. 

The code actually looks for a property, and then an arg. So even with the properties in place one can then override with an arg. 

 

<key>0489_e07a</key>
	<dict>
		<key>CFBundleIdentifier</key>
		<string>com.no-one.$(PRODUCT_NAME:rfc1034identifier)</string>
		<key>DisplayName</key>
		<string>Broadcom Bluetooth 4.0 USB</string>
		<key>FirmwareKey</key>
		<string>BCM20702A1_001.002.014.1483.1651_v5747</string>
		<key>IOClass</key>
		<string>BrcmPatchRAM2</string>
		<key>IOMatchCategory</key>
		<string>BrcmPatchRAM2</string>
		<key>IOProviderClass</key>
		<string>IOUSBHostDevice</string>
		<key>idProduct</key>
		<integer>57466</integer>
		<key>idVendor</key>
		<integer>1161</integer>
		<key>UpgradeDelay</key>
		<integer>200</integer>
		<key>InitialDelay</key>
		<integer>400</integer>
		<key>PostResetDelay</key>
		<integer>400</integer>
	</dict>

I add a debug to the log file:

sjk$ sudo dmesg | fgrep -i brcm  | fgrep Delay
BrcmPatchRAM2: [brcm (prop)-- UpgradeDelay]: 200
BrcmPatchRAM2: [brcm (prop)-- InitialDelay]: 400
BrcmPatchRAM2: [brcm (prop)-- PostResetDelay]: 400

I will upload a new binary soon. 

  • Like 2
Link to comment
Share on other sites

  • 2 weeks later...

Got Mojave 10.14.4 running on my T460 yesterday, everything is working fine except for the trackpad which I don't use anyways.

I do have a minor issue that the left-click physical button doesn't register after waking from sleep and I have to restart my laptop.

Does anyone else have this issue and/or know how to fix it?

Link to comment
Share on other sites

19 hours ago, Massenko said:

Got Mojave 10.14.4 running on my T460 yesterday, everything is working fine except for the trackpad which I don't use anyways.

I do have a minor issue that the left-click physical button doesn't register after waking from sleep and I have to restart my laptop.

Does anyone else have this issue and/or know how to fix it?

odd. do you have SSDT-PS2K to define the device and profile...

and voodooPS2 kexts?

Link to comment
Share on other sites

On 5/3/2019 at 7:11 PM, tluck said:

odd. do you have SSDT-PS2K to define the device and profile...

and voodooPS2 kexts?

Thanks for your reply but I actually haven't had the issue since! 

I did create a custom DSDT for my device and used voodooPS2, the issue only happened within the first couple sleeps.

Link to comment
Share on other sites

Would somebody be so kind to recapitulate for me?

I do not yet own a T460 but I´m considering.

Would a L460 do too? 

(Don´t like soldered RAM that much, but I only had one failing RAM brick over decades.)

 

What will work with Mojave?

I´m interested in WLAN, Trackpoint, Touchpad and keyboard mouse buttons in the first place.

The SD card reader would be nice to have too, but not a must.

 

Link to comment
Share on other sites

13 hours ago, goodguess said:

What will work with Mojave?

Would a L460 do too? 

I don't know about an L460, but I just installed Mojave on a T460s and it works pretty good.

 

If you want to have the easiest time just get a stock T460.  Maybe the touchpad would work better than the T460s.


I've built lots of hackintoshes and this was one of the easiest.

 

The T420 is super easy, too.  It's all pretty much thanks to @Tluck and @Rehabman and the community here and TonyMac.

 

This guide is nice and concise, it's what I used for most of it: 

 

https://octoperf.com/blog/2018/10/22/thinkpad-t460-how-to-install-macos/

 

Then this github repo:

 

https://github.com/tluck/Lenovo-T460-Clover

 

Then go back over the first page of this thread -- make sure you build your own SSDT.  Basically just follow the commands, you just have to click on them and it'll instal ssdtprgen, iasl, patchmatic, etc. scan your ACPI for mods, patch your dsl and compile an asl for you, even install it.

 

Oh and the backlight kext generator

 

And get kext helper to install your kexts to the kextcache and delete them from clover (or move them into another folder) so you don't have competing kexts trying to load outside of protected memory.

 

If anyone thinks I missed anything feel free to jump in.  

Edited by Averyfreeman
typeo
  • Like 1
Link to comment
Share on other sites

I just have a quick question - 

 

I'm trying to fix the jerky scroll on my Thinkpad T460s running 10.14.4. 

 

I patched the DSDT using the automated tools in @tluck's T460 pack, but I notice there are settings for the touchpad ("Clickpad") in both SSDT-PS2K-T460.dsl and VoodooPS2Trackpad.kext/Contents/Info.plist

 

I've been editing both of them, but do I need to?  Does one override the other?

 

Thanks

Link to comment
Share on other sites

Hey, I just wanted to let people know, 

 

if you're having issues with jerky / sticky scroll on your touchpad, there's two great programs to try.

 

One called Mos has fewer features but works very well and is easy to configure

 

The other called Smooze is a lot more complicated but can do allllllll sorts of cool stuff with your touchpad scroll.  

 

They both accomplish one thing - making your scroll experience better

 

Both can be installed from casks using homebrew: https://brew.sh/

 

e.g.: 

$ brew cask install mos 

And then it shows up in your applications folder.

 

Both are free, but Smooze is a limited trial that costs $5 to license (seems like it's well worth the price).

 

Link to comment
Share on other sites

I have been contemplating to enable SIP on my hackintosh. I load all custom extensions from /Library/Extensions followed by a kextcache rebuild. 

 

With my search in other threads, it has been said it is ok to enable SIP on hackintoshes after you are done with building the kextcaches.

 

How does it change with 10.14.5? Would it still be possible to build the kextcache by using a newer CsrActiveConfig of 0x3e7 as suggested at some places and once the kext cache is built, would we able to enable SIP and boot fine?

Or with 10.14.5 we must keep SIP disabled at all times?

 

Thanks.

Edited by nijhawank
Link to comment
Share on other sites

 Share

×
×
  • Create New...