Jump to content

Lenovo ThinkPad T420 with UEFI Only


Go to solution Solved by tluck,
5,229 posts in this topic

Recommended Posts

i use maciASL as well. but check your preferences to use ACPI 6.1

 

the source file dsdt.dsl is provided so you can see the code directly.  the iasl binary file to compile the dsdt is there too - which is the version i used to compile it.

 

Thanks that worked.

 

In regard to the other topic.

Is there any chance to get the tap working as mouse click on the T420 trackpad? Or it was in regard to external Apple pad?

On my side, tapping the ultranav trackpad is usually not working after booting in 10.12.

After some time, tapping does work however (for unknown reasons).

 

Trackpoint is unusable still, because of fastness and jumpiness. :(

Use the kext that i attached. You will loose touchpad gestures (only scrolling will remain). I tweaked this old kext to work great with trackpoint (as i use only trackpoint and can't understand people using touchpad :P).

ThinkpadUltraNaviBundle.kext.zip

you can change the characteristic of the TrackPoint speed and jumpiness by changing the parameters in VoodooPS2Trackpad.kext Info.plist.

 the defaults for me were the same - way to jumpy and speedy. so i put in a T420 set of values that work for my box. but changing mousemultiplier and the resolution will alter the trackPoint movement

what HW you guys on without tapping? do you have T420 PS2K identifier in your DSDT ?

 

Note: the system prefs/TrackPad GUI for sierra is broken - but there an el cap version that can be used for Sierra.

 

tapping works for me on El Cap and Sierra?

 

meaning 1 tap on trackpad is a click. 2 taps on a window selects it - and then i can move it.

 

another thing you can do to make the TrackPoint work well is disable the VoodooPS2TrackPad.kext (just remove and rebuild caches). Then the VoodooPS2Mouse.kext functions to drive the trackpad as a simple mouse as well as TrackPoint - super smooth then!

what HW you guys on without tapping? do you have T420 PS2K identifier in your DSDT ?

 

Note: the system prefs/TrackPad GUI for sierra is broken - but there an el cap version that can be used for Sierra.

 

tapping works for me on El Cap and Sierra?

 

meaning 1 tap on trackpad is a click. 2 taps on a window selects it - and then i can move it.

 

another thing you can do to make the TrackPoint work well is disable the VoodooPS2TrackPad.kext (just remove and rebuild caches). Then the VoodooPS2Mouse.kext functions to drive the trackpad as a simple mouse as well as TrackPoint - super smooth then!

But then you loose middle button scroll function. VoodooPS2controll by rehabman can't deliver good trackpoint functionality (rehabman told me that he don't have a hardwere to make it work perfect)

 

Hey gpspl, you made my day!

Many many thanks for fixing the track point for Sierra, thats a really valuable improvement for ThinkPad users.

 

Is it asking for too much that you would look into trackpad tapping as well?

Use el capitan prefpanel. Copy it to System/Library/PreferencePanes.  http://www.mediafire.com/download/8r6ew57721w5r82/macOS_Sierra_patched_Trackpad_prefPane.zip

@NSCXP2005 - you would follow a similar process. but no. The T400 has different components. For example, core2 duo proc and really really old gfx. so the DSDT and many of the custom kexts will not work. I googled "T400 hackintosh" and see that someone was success in installing Snow Leopard (10.6.x)

 

This guide seems to work on a variety of Lenovo machines from the 2011-2012 era - that have a Sandy Bridge architecture.  

 

 

@gpspl -  my trackPoint is working very smooth and not jumpy anymore with the T420 overrides values.  but if I use the defaults - not smooth.  but hey if you guys have a solution - great!

After a KP I downgraded my SSD to 10.11.6 and T420_UEFI-Clover-b3348_10.9_10.10_10.11_2016-02-11 for now were everything is running flawlessly.

I´ll give Sierra a go again with a spare USB HDD next week or so.

 

Big thanks for all that labour of love, keeping the T420 up to date with Apple´s ongoing "improvements"!

Just got my wifi card. Changed it and it started working automatically, no extra kexts needed :)

 

By the way, is there any news on the artifacts? I keep getting some black lines on the screen now and then (particularly now, to be honest) and it's a bit annoying.

Hi Tluck, please tell me what this fix actually does in your DSDT?

 

// tjl-begin fixes - hard code values for Battery strings

                            Store (0x04, Local2)
                            Store ("12345", Index (Arg1, 0x0A))
                            Or (Arg0, 0x06, HIID) /* \_SB_.PCI0.LPC_.EC__.HIID */
                            Store ("Battery", Index (Arg1, 0x09))
                            Or (Arg0, 0x04, HIID) /* \_SB_.PCI0.LPC_.EC__.HIID */
                            Name (BTYP, Buffer (0x05)
                            {
                                 0x00, 0x00, 0x00, 0x00, 0x00                     /* ..... */
                            })
                            Store (B1B4 (SBC1, SBC2, SBC3, SBC4), BTYP) /* \_SB_.PCI0.LPC_.EC__.GBIF.BTYP */
                            Store (BTYP, Index (Arg1, 0x0B))
                            Or (Arg0, 0x05, HIID) /* \_SB_.PCI0.LPC_.EC__.HIID */
                            Store ("LENOVO", Index (Arg1, 0x0C))
// tjl-end

well i am on the latest sierra public beta and i have not seen glitches lately.

yes i do 

hi,,tluck....i run sierra on w520...but hW can't show system fan....so i watch this DSDT edit  gothic860 who run also w520 provide

 Device (SMCD)

                 {

                     Name (_HID, "MONITOR")

                     Method (FAN0, 0, NotSerialized)

                     {

                         Store (^ ^ EC.HFN1, Local0)

                         Return (Local0)

                     }

                     Method (TCPU, 0, NotSerialized)

                     {

                         Store (^ ^ EC.TMP0, Local0)

                         Return (Local0)

                     }

                 }

but i dont know how to modify acpisensors...the picture  gothic860 provide can't open....any ideas about it ?

By the way, am I the only one with screwed up Fn buttons? When I try to lower the screen brightness using the built-in Fn End key, it raises the brightness instead. Pressing Fn Home raises the brightness too.

 

No big deal, just a bit annoying.

@NSCXP2005 - either should work - T420 or T420i - forget the Nvidia - won't work 100%. Intel HD3000 is better. 

 

@jus12 - that code fills the text fields for the Battery ID. had trouble years ago converting the original encoding - and who cares to see real SSN of battery.

 

@xtddd - no sure i  understand your question? that code is very similar to the T420 device of SMCD - the FakeSMC/ACPISensor kexts should see those 2 variables in say the HWMonitor.app

 

the B1B2 stuff below is to convert to 8-bit values- the original HFAN variable was split into to 8-bit vars HFN1 and HFN2 - the macro puts them back together 

 

// tjl-begin - add monitor function for TMP and FAN
                Device (SMCD)
                {
                    Name (_HID, "MON0000")  // _HID: Hardware ID
                    Method (FAN0, 0, NotSerialized)
                    {
                        Store (B1B2 (^^EC.HFN1, ^^EC.HFN2), Local0)
                        Return (Local0)
                    }

                    Method (TCPU, 0, NotSerialized)
                    {
                        Store (^^EC.TMP0, Local0)
                        Return (Local0)
                    }
                }

// tjl-end 

 

@cyndonia - common issue with Sierra - so called NX keys are not working as expected. For now, i use Karibiner-elements which maps F1/F2 for screen and  F10/11/12 for audio.

yes. you have to enable this feature with the Systems Prefs Trackpad option - just like a real mac. in sierra this panel is blank. so you have to 

1) enable on El capitan and Upgrade

2) download the el capitan version to set

 

i was going to post a short video showing the smoothness of the TrackPoint for me (it behaves very close to windows) - and the 1 click via trackpad tap.

 

i will update the zip soon. clover update and minor tweak to TrackPad settings - this what i have VoodooPS2Trackpad.kext Info.plist and seems just a tad better than before

 

<key>TrackPad</key>
                                        <dict>
                                                <key>BogusDeltaThreshX</key>
                                                <integer>400</integer>
                                                <key>BogusDeltaThreshY</key>
                                                <integer>350</integer>
                                                <key>DivisorX</key>
                                                <integer>1</integer>
                                                <key>DivisorY</key>
                                                <integer>1</integer>
                                                <key>DragLockTempMask</key>
                                                <integer>262148</integer>
                                                <key>FakeMiddleButton</key>
                                                <false/>
                                                <key>FingerZ</key>
                                                <integer>47</integer>
                                                <key>MomentumScrollThreshY</key>
                                                <integer>16</integer>
                                                <key>MouseMultiplierX</key>
                                                <integer>8</integer>
                                                <key>MouseMultiplierY</key>
                                                <integer>8</integer>
                                                <key>MultiFingerHorizontalDivisor</key>
                                                <integer>4</integer>
                                                <key>MultiFingerVerticalDivisor</key>
                                                <integer>4</integer>
                                                <key>Resolution</key>
                                                <integer>3200</integer>
                                                <key>ScrollDeltaThreshX</key>
                                                <integer>20</integer>
                                                <key>ScrollDeltaThreshY</key>
                                                <integer>20</integer>
                                                <key>ScrollResolution</key>
                                                <integer>3200</integer>
                                                <key>SmoothInput</key>
                                                <false/>
                                                <key>UnitsPerMMX</key>
                                                <integer>200</integer>
                                                <key>UnitsPerMMY</key>
                                                <integer>200</integer>
                                                <key>UnsmoothInput</key>
                                                <false/>

                                        </dict> 

yes. you have to enable this feature with the Systems Prefs Trackpad option - just like a real mac. in sierra this panel is blank. so you have to 

1) enable on El capitan and Upgrade

2) download the el capitan version to set

 

i was going to post a short video showing the smoothness of the TrackPoint for me (it behaves very close to windows) - and the 1 click via trackpad tap.

 

i will update the zip soon. clover update and minor tweak to TrackPad settings - this what i have VoodooPS2Trackpad.kext Info.plist and seems just a tad better than before

 

<key>TrackPad</key>

                                        <dict>

                                                <key>BogusDeltaThreshX</key>

                                                <integer>400</integer>

                                                <key>BogusDeltaThreshY</key>

                                                <integer>350</integer>

                                                <key>DivisorX</key>

                                                <integer>1</integer>

                                                <key>DivisorY</key>

                                                <integer>1</integer>

                                                <key>DragLockTempMask</key>

                                                <integer>262148</integer>

                                                <key>FakeMiddleButton</key>

                                                <false/>

                                                <key>FingerZ</key>

                                                <integer>47</integer>

                                                <key>MomentumScrollThreshY</key>

                                                <integer>16</integer>

                                                <key>MouseMultiplierX</key>

                                                <integer>8</integer>

                                                <key>MouseMultiplierY</key>

                                                <integer>8</integer>

                                                <key>MultiFingerHorizontalDivisor</key>

                                                <integer>4</integer>

                                                <key>MultiFingerVerticalDivisor</key>

                                                <integer>4</integer>

                                                <key>Resolution</key>

                                                <integer>3200</integer>

                                                <key>ScrollDeltaThreshX</key>

                                                <integer>20</integer>

                                                <key>ScrollDeltaThreshY</key>

                                                <integer>20</integer>

                                                <key>ScrollResolution</key>

                                                <integer>3200</integer>

                                                <key>SmoothInput</key>

                                                <false/>

                                                <key>UnitsPerMMX</key>

                                                <integer>200</integer>

                                                <key>UnitsPerMMY</key>

                                                <integer>200</integer>

                                                <key>UnsmoothInput</key>

                                                <false/>

                                        </dict> 

Hm, can I enable the single tap on another system and copy those settings over to Sierra?

Tluck I'm trying to get Clover working in full resolution (1920x1080) on my W520 and Nvidia.

I did exactly same things in config.plist as you did in the 1600x version. I injected EDID I exported under windows for my W520 display and I changed the resolution but it does nothing.

Would I need to patch VBios in addition to that, you didn't do that?

Thank you! @tluck, my T420 is running Sierra perfectly, including F keys (karabiner-elements).

I do not feel any issue for now.

 

Power usage on idle is around 4.2W, fan at 1930 rpm and CPU at 42C.

 

System is i5-2520m, 8GB ram, msata SSD, 1600x900., 9 cell battery (40% wear). No other hdd.

@xtddd - you have to add B1B2 it an extra functions - there are couple of other ones like that int there. they combine 8-bit vars into a single value. there may be some patchmatic scripts now. This DSDT work was done like 3+ years ago to convert relevant 16bit, 32bit variables into a bunch of 8 bit vars per the newer specs for ACPI. 

 

@Frenelius - glad it worked as expected! 

 

@jus12 

so for  my 1600x900 LCD I inject a proper 1600x900 EDID to fix the broken which was common in many of AUO made screens. The LG mfg ones  (like my replacement) seem to be OK.

 

... to get the LCD to display 1920x1080 (non-native) I add that size option to the DisplayOverride files.

i have examples in my zip. they match the vendor/product IDs of the LCD which is defined in the EDID. i presume you have working EDID? I don't know what your native LCD resolution.

 

this screen shows the way to get tap clicks: see Clicking/Dragging/Drag Lock - these seem to be off by default in OSX.

 

post-954945-0-97526800-1476558471_thumb.png

 

NOTE: it would nice/smart of y'all to put your machine specs in your profiles... that way don't have to assume so much when you ask questions.

×
×
  • Create New...