Support in other languages: 
Showing results for 
Search instead for 
Do you mean 
Reply
Serial Port
rosch
Posts: 15
Registered: ‎11-15-2011
Location: Berlin
Accepted Solution

Buggy DSDT for ThinkPad L420 (and probably others)

[ Edited ]

Hi everybody,

 

I recently bought a ThinkPad L420 and decided to run Ubuntu on it. Unfortunately, it only works (i.e. boots) when booting with disabled ACPI. Otherwise, the boot process would just not finish. Of course this means HyperThreading is disabled and other stuff is not working (no suspend, hibernation, need to press the power button after shutdown etc) which is pretty annoying. Updating to the latest BIOS version did not change a thing (BIOS ID: 1.14 (8GET37WW), ECP ID: 1.08 (8GHT26WW)).

So I decided to do some investigation and I came across the fact that the DSDT (Differentiated System Description Table) might be buggy. So I dumped the DSDT using acpidump and acpixtract to find the following AML-code:

OperationRegion (SPRT, SystemIO, 0xB2, One)

 ... snip ...

OperationRegion (SMI2, SystemIO, 0xB2, One)

To me as the unsavvy user it seemed like two memory areas were mapped to the same address which might not be a good idea, especially with the information that some debugging showed that access to the SMI2 region was the cause for the boot hang (see last code snippet).

So I changed the memory address from 0xB2 to 0xB3, recompiled the DSDT (using iasl) with many errors and warnings, compiled the new DSDT into my kernel and just like that, the system was booting past the critical point. Unfortunately, the boot process now hangs at another point (no idea where that might be). I do not have time to investigate this issue right now, but I suspect it is related to some other ACPI errors in the DSDT. Fyi, for the Linux users among you, this is the last output I get now when booting and nothing happens thereafter:

rtc_cmos rtc_cmos: setting system clock to 2011-11-15 10:13:44 UTC (1321352024)

Before "fixing" the memory address issue in the DSDT AML code the last line was this one:

[0.386486] bio: create slab <bio-0> at 0

(with debug enabled it was the following one)

ACPI: CE: Look up EC in DSDT

 

and the corresponding, blocking line in the DSDT was this one (a few lines below the previously wrong operation region declaration):

Store (0xB5, APMC)

Btw, Windows 7 (not the OEM version but the very original one) is the only OS that works properly on my system, so I guess they have some workarounds.

 

Now I am running Ubuntu 11.10 with Kernel 3.1 with disabled ACPI on my ThinkPad L420

- Intel Core i5-2540M Processor (2,6 GHz, 3 MB L3-Cache)

- Mobile Intel HM65 Express Chipset with integrated Intel HD Graphics

- 8 GB PC3-10600 DDR3-SDRAM 1.333 MHz SODIMM

- Bluetooth 3.0
- ThinkPad b/g/n

- 500GB HDD at 7200rpm

 

Has anyone experienced the same problems? Solutions? Hints? Any help appreciated!

Fixing the DSDT in one of the next BIOS updates would be the preferred solution of course ...

 

Cheers

 

EDIT: I also posted this question here.

Serial Port
rosch
Posts: 15
Registered: ‎11-15-2011
Location: Berlin
0

Re: Buggy DSDT for ThinkPad L420 (and probably others)

ps.: I also found these certification notes, but no Lenovo specific Ubuntu image is out there ...

 

http://www.ubuntu.com/certification/hardware/201102-7325

SCSI Port
rzrfreefr
Posts: 238
Registered: ‎10-11-2011
Location: france
0

Re: Buggy DSDT for ThinkPad L420 (and probably others)

Same question with Linux Meego ... at least can we look a the changelog ?

 

BTW, can you tell about linux support activities by lenovo ?

 

--
http://rzr.online.fr/q/lenovo# g470 s103t (Please Contact me if your s10-3T is booting win7 or support bluetooth, 3g)
Lenovo S10-3t | Model Name : 0651 | Mfg Date: 2010/06/08
Lenovo G470 | Model Name : 20078 | M fg Date: 11/03/23 | BIOS: 40CN23WW(V2.09) 06/20/2011 | CPU: i5-2410M | Linux version 3.3.4lenovog470+ (root@lap) (gcc version 4.6.3 (Debian 4.6.3-4) ) #8 SMP Tue May 1 10:23:48 CEST 2012
OS:GNU/Linux/Debian
Serial Port
rosch
Posts: 15
Registered: ‎11-15-2011
Location: Berlin
0

Re: Buggy DSDT for ThinkPad L420 (and probably others)

What do you mean by changelogs? i.e. which part of the system should we be looking at? Ubuntu worked just fine for me on my old Thinkpad T61, so I guess it's the hardware that has changed and is either not supported in the newer Linux kernels (which I doubt actually) or not well enough described in the new BIOS variants (= Intel's fault maybe?).

 

I also found the note somewhere saying that the thinkpad-acpi does not work with new Thinkpads, due to hardware changes, but right now I cannot find it ... Must have been somewhere on thinkwiki.org.

 

So far I have not found any useful Lenovo Linux support page ...

Serial Port
rosch
Posts: 15
Registered: ‎11-15-2011
Location: Berlin
0

Re: Buggy DSDT for ThinkPad L420 (and probably others)

New firmware available at http://support.lenovo.com/en_SE/downloads/detail.page?LegacyDocID=MIGR-77080

 

I don't have time to try it - has someone already tested it?

Paper Tape
Seppone
Posts: 1
Registered: ‎12-12-2011
Location: Mannheim - Germany
0

Re: Buggy DSDT for ThinkPad L420 (and probably others)


rosch schrieb:

New firmware available at http://support.lenovo.com/en_SE/downloads/detail.page?LegacyDocID=MIGR-77080

 

I don't have time to try it - has someone already tested it?


Hi,

 

I tried with updated BIOS, but same issues appeared on bootup. :smileysad:

 

Booting with nosmp option worked, BUT it didn't load driver for wireless card. that's really disappointing.

 

I know there's no official support for linux....but maybe this is a bug in BIOS, then lenovo should worry about.

Serial Port
rosch
Posts: 15
Registered: ‎11-15-2011
Location: Berlin
0

Re: Buggy DSDT for ThinkPad L420 (and probably others)

[ Edited ]

Hey everybody,

just wanted to say that with the newest BIOS (1.17) at least the 64-bit live version of 12.04 booted without any special boot options and showed all of my 8GB of RAM and 4 cores in the system monitor.

I switched to using 12.04 32-bit a while ago and probably won't switch to 64 unless I really have to, so that's why I only checked the live version of the 64-bit edition. But please feel free to share your experiences of the 64-bit edition on your L420/L520!

Cheers