Ubuntu Forums ubuntu.com - launchpad.net - ubuntu help  

Go Back   Ubuntu Forums > The Ubuntu Forum Community > Main Support Categories > Hardware & Laptops
Register Reset Password Forum Help Forum Council Search Today's Posts Mark Forums Read

Hardware & Laptops
Problems with hardware & laptops not being detected or supported during or after install.

 
Thread Tools Display Modes
Old April 27th, 2008   #1
daimaru
Skinny Soy Caramel Ubuntu
 
daimaru's Avatar
 
Join Date: May 2007
Location: Bremen
Beans: 679
Ubuntu 10.04 Lucid Lynx
Post HOWTO:Toshiba satellite p100 Nvidia GPU overheating FIX

EDIT: I did not need to apply any patches anymore with Phoenix Bios 4.80, ubuntu 9.10 Kernel 2.6.31-17-generic, Nvidia driver v.185 It worked right out of the box. But only after a clean install. Before that I did a distupgrade from 9.04 to 9.10 and it did not work. With clean install as I said it works out of the box for me ( 57° right now )


If the fix worked for you post your model name number. Thanks.
EDIT: Works with: 8.10, 8.04, 7.10, 7.04

Well I guess everyone with a toshiba p100-something laptop that runs a nvidia graphics card was hoping that in hardy heron (ubuntu 8.04) the gpu overheating problem would have been solved. Though luck it hasn't! So you still have to do some work to get it running at a nice 40° instead of 100°. Read on.

Here's a short guide for everyone with the overheating problem on toshiba p100 & Nvidia graphics card. I'm opening a new thread because the kernel patch that was needed in Gutsy is not needed in Hardy anymore. So here goes.

Links to the original info.
Old thread (Gutsy)
link1
link2

Step 1 install Intel ASL:
Code:
sudo apt-get install iasl

Step 2 backup decompile & edit the dsdt.dsl:
Code:
sudo cat /proc/acpi/dsdt > dsdt.dat
iasl -d dsdt.dat
cp dsdt.dsl dsdt.dsl.bak
gedit dsdt.dsl
  • Search for "_T_0" through "_T_7" replace them with "T_0" through "T_7" (withouth the quotes)
  • Search for "*PNP0C14" and replace it with "PNP0C14" (again without the quotes)
  • Search for "Method (BTST, 0, NotSerialized)" and add "Return(Package(0x02){0x00, 0x00})" just before the closing curly bracket (see below)
Code:
Method (BTST, 0, NotSerialized)
            {
                If (\_SB.ECOK)
                {
                    Acquire (\_SB.PCI0.LPCB.EC0.MUT1, 0xFFFF)
                    Store (\_SB.PCI0.LPCB.EC0.KSWH, Local0)
                    XOr (Local0, 0x01, Local0)
                    Store (\_SB.PCI0.LPCB.EC0.BTHE, Local7)
                    Release (\_SB.PCI0.LPCB.EC0.MUT1)
                    If (Local0)
                    {
                        ShiftLeft (Local7, 0x06, Local6)
                        ShiftLeft (Local7, 0x07, Local7)
                        Or (Local7, Local6, Local1)
                        Or (Local0, Local1, Local2)
                        Return (Local2)
                    }
                    Else
                    {
                        Return (Zero)
                    }
                }
                Return(Package(0x02){0x00, 0x00})
            }
  • Search for "Method (EVNT, 1, NotSerialized)" and add the extra "Return (Zero)" as shown below to Else part of the the "EVNT" method.

Code:
            Method (EVNT, 1, NotSerialized)
            {
                While (VZOK)
                {
                    If (LEqual (VZOK, 0x01))
                    {
                        Store (Arg0, VZOK)
                        Notify (\_SB.VALZ, 0x80)
                        Return (Zero)
                    }
                    Else
                    {
                        Sleep (0x05)
                        Return (Zero)
                    }
                }
            }
Step 3 Fix the Nvidia GPU FAN:
all of the above was neccessary so you don't get any compile errors when recompiling the dsdt.dsl file (you can check that by going step by step, saving your file and trying to compile it after each step if you want. --> use command "iasl -tc dsdt.dsl" )

  • Search for "Method (_REG, 2, NotSerialized)" and add the highlighted code just after where it says "Store (\_SB.PCI0.LPCB.EC0.ACDF, \PWRS)"
Code:
Method (_REG, 2, NotSerialized)
                    {
                        If (LEqual (Arg0, 0x03))
                        {
                            Store (Arg1, Local0)
                            If (Local0)
                            {
                                Store (0x01, ECOK)
                                Acquire (\_SB.PCI0.LPCB.EC0.MUT1, 0xFFFF)
                                Store (\TMOD, \_SB.PCI0.LPCB.EC0.TMOD)
                                Release (\_SB.PCI0.LPCB.EC0.MUT1)
                            }
                            Else
                            {
                                Store (0x00, ECOK)
                            }
                        }

                        If (\_SB.ECOK)
                        {
                            Acquire (\_SB.PCI0.LPCB.EC0.MUT1, 0xFFFF)
                            If (LEqual (OSYS, 0x07D6))
                            {
                                Store (One, \_SB.PCI0.LPCB.EC0.OSTP)
                                \_SB.PHSR (0x0D, 0x00)
                            }
                            Else
                            {
                                Store (Zero, \_SB.PCI0.LPCB.EC0.OSTP)
                            }

                            Store (0x03, \_SB.PCI0.LPCB.EC0.RG59)
                            Store (\_SB.CIRE, \_SB.PCI0.LPCB.EC0.CIRE)
                            Store (\_SB.PHSR (0x05, 0x00), DOFF)
                            Store (\_SB.PCI0.LPCB.EC0.ACDF, \PWRS)
                            If (LEqual (OSYS, 0x07D6))
                            {
                                Store (0x3C, \_SB.PCI0.LPCB.EC0.VTMP)
                            }            

                            Release (\_SB.PCI0.LPCB.EC0.MUT1)
                        }
                    }
Step 4 recompile & install:
Code:
iasl -tc dsdt.dsl
There should be 0 errors and 0 warnings
Now you should have a dsdt.aml file in your working directory. Copy it to /etc/initramfs-tools/ and make sure that you use capital letters "DSDT.aml"
Code:
sudo cp dsdt.aml /etc/initramfs-tools/DSDT.aml
sudo dpkg-reconfigure linux-image-$(uname -r)
Step 5 restart and check if its working:
You can check your Nvidia cards GPU temperature by installing "nvidia-settings" (under thermal monitor).
Code:
sudo apt-get install nvidia-settings
My card runs at a nice 38-42 degrees.

Step 6 keep a backup of your dsdt.dsl file:
If you don't want to do this again the next time you reinstall ubuntu make a backup copy of the dsdt.dsl file, then you will only have to do Step 4 and 5 next time.
__________________
Intel Core i5 CPU 750 oc@3.75GHz - Asus P7P55D - Nvidia GTX 260 - Sennheiser USB Headset

Last edited by daimaru; January 25th, 2010 at 09:26 AM..
daimaru is offline   Reply With Quote
Old April 30th, 2008   #2
Aramil
Just Give Me the Beans!
 
Join Date: Dec 2005
Beans: 58
Ubuntu 8.04 Hardy Heron
Re: Toshiba p100 Nvidia GPU overheating FIX (hardy heron)

I m getting the following error.


dsdt.dsl 8740: [*** iASL: Read error on source code temp file ***]
Error 4094 -^ syntax error, unexpected $end


I know nothing of assembly...any help?
Aramil is offline   Reply With Quote
Old April 30th, 2008   #3
Aramil
Just Give Me the Beans!
 
Join Date: Dec 2005
Beans: 58
Ubuntu 8.04 Hardy Heron
Re: Toshiba p100 Nvidia GPU overheating FIX (hardy heron)

Ok there was a } missing!Everything's ok now!


Btw not fixing this bug in 8.04 is a bit frustrating.They tried to be more vista- like (with all the "security" stuff which I personally dislike) and they forgot to fix some major hardware issues like this one.

I understand that this is open source software (and i I didnt I wouldnt participate) but I think hardcore devs should take a look at their priorities one more time
Aramil is offline   Reply With Quote
Old April 30th, 2008   #4
daimaru
Skinny Soy Caramel Ubuntu
 
daimaru's Avatar
 
Join Date: May 2007
Location: Bremen
Beans: 679
Ubuntu 10.04 Lucid Lynx
Thumbs down Re: Toshiba p100 Nvidia GPU overheating FIX (hardy heron)

@aramil
Yeah this bug has been a pain, but it seems to be a toshiba satellite p100 series problem. Quite frankly I'm pissed at the toshiba support cause they really don't give a damn. The p100 series (at least the one i got) is a outsourced version that is produced in taiwan or china, can't remember which, but it seems to use the phoenix bios (some cheap *** version of a bios that sucks donky balls and is not used in the other toshibas laptops). I was pretty pissed when I heard this after I had bought my laptop. I can guarantee that I will never ever buy a toshiba laptop again. Damn tech support sucks ballz.

but nice to hear that the fix worked out for u mate.

EDIT: i'm just saying this about the bios, because toshiba has an extra linux site that deals with problems, drivers etc, but it does not include any support for the PHOENIX bios ... thx alot guys. you should have put that on the sales description!!
__________________
Intel Core i5 CPU 750 oc@3.75GHz - Asus P7P55D - Nvidia GTX 260 - Sennheiser USB Headset

Last edited by daimaru; May 1st, 2008 at 12:04 AM..
daimaru is offline   Reply With Quote
Old May 5th, 2008   #5
linescanner
First Cup of Ubuntu
 
Join Date: Dec 2006
Beans: 3
Re: Toshiba p100 Nvidia GPU overheating FIX (hardy heron)

@daimaru,

you are a star. This has been bugging me for ages. My P100 now runs without cooking my legs

big thanks
linescanner is offline   Reply With Quote
Old May 6th, 2008   #6
Aramil
Just Give Me the Beans!
 
Join Date: Dec 2005
Beans: 58
Ubuntu 8.04 Hardy Heron
Re: Toshiba p100 Nvidia GPU overheating FIX (hardy heron)

@daimaru

Well I ve got one thing to say.My P100 could not boot from 3 different brands of USB sticks.All over the internet you can find toshiba owners complaining about that...
Aramil is offline   Reply With Quote
Old June 7th, 2008   #7
ocularb0b
First Cup of Ubuntu
 
Join Date: Apr 2008
Location: istanbul, turkey
Beans: 10
Re: Toshiba p100 Nvidia GPU overheating FIX (hardy heron)

are these instuctions suited only to toshiba p100's or will this help with other nvidia laptops that run crazy hot?
ocularb0b is offline   Reply With Quote
Old June 7th, 2008   #8
thideras
Just Give Me the Beans!
 
thideras's Avatar
 
Join Date: Aug 2007
Location: South Dakota
Beans: 58
Ubuntu 7.10 Gutsy Gibbon
Send a message via AIM to thideras Send a message via MSN to thideras
Re: Toshiba p100 Nvidia GPU overheating FIX (hardy heron)

Thanks Daimaru, I will have to try this on my P100!
__________________
Asus P5K Premium | e3110 | 8gb G.Skill | 9800GTX | 5.35 TB
CM 830 Evo Stacker | HX620W | 2x BenQ G2400W

"I do not know what overkill means"
thideras is offline   Reply With Quote
Old June 26th, 2008   #9
daimaru
Skinny Soy Caramel Ubuntu
 
daimaru's Avatar
 
Join Date: May 2007
Location: Bremen
Beans: 679
Ubuntu 10.04 Lucid Lynx
Re: Toshiba p100 Nvidia GPU overheating FIX (hardy heron)

Quote:
Originally Posted by ocularb0b View Post
are these instuctions suited only to toshiba p100's or will this help with other nvidia laptops that run crazy hot?
will only work on p100
__________________
Intel Core i5 CPU 750 oc@3.75GHz - Asus P7P55D - Nvidia GTX 260 - Sennheiser USB Headset
daimaru is offline   Reply With Quote
Old August 20th, 2008   #10
jmit038
First Cup of Ubuntu
 
Join Date: Jul 2008
Beans: 1
Re: Toshiba p100 Nvidia GPU overheating FIX (hardy heron)

Thank you ! I am watching my laptop cool down while it's running !!!! wont be able to use it to make this nemore tho lol
jmit038 is offline   Reply With Quote

Bookmarks

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -4. The time now is 02:21 PM.


vBulletin ©2000 - 2010, Jelsoft Enterprises Ltd. Ubuntu Logo, Ubuntu and Canonical © Canonical Ltd. Tango Icons © Tango Desktop Project. lingonberry