Page 1 of 7 123 ... LastLast
Results 1 to 10 of 62

Thread: Toshiba p100 Nvidia GPU overheating FIX (hardy heron)

  1. #1
    Join Date
    May 2007
    Location
    unity free space
    Beans
    691
    Distro
    Xubuntu 12.04 Precise Pangolin

    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.
    Last edited by daimaru; January 25th, 2010 at 03:26 PM.
    Intel Core i5 CPU 750 oc@3.75GHz - Asus P7P55D - Nvidia GTX 260

  2. #2
    Join Date
    Dec 2005
    Beans
    60
    Distro
    Ubuntu 10.04 Lucid Lynx

    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?

  3. #3
    Join Date
    Dec 2005
    Beans
    60
    Distro
    Ubuntu 10.04 Lucid Lynx

    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

  4. #4
    Join Date
    May 2007
    Location
    unity free space
    Beans
    691
    Distro
    Xubuntu 12.04 Precise Pangolin

    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!!
    Last edited by daimaru; May 1st, 2008 at 05:04 AM.
    Intel Core i5 CPU 750 oc@3.75GHz - Asus P7P55D - Nvidia GTX 260

  5. #5
    Join Date
    Dec 2006
    Beans
    4

    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

  6. #6
    Join Date
    Dec 2005
    Beans
    60
    Distro
    Ubuntu 10.04 Lucid Lynx

    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...

  7. #7
    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?

  8. #8
    Join Date
    Aug 2007
    Location
    South Dakota
    Beans
    58
    Distro
    Ubuntu 7.10 Gutsy Gibbon

    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"

  9. #9
    Join Date
    May 2007
    Location
    unity free space
    Beans
    691
    Distro
    Xubuntu 12.04 Precise Pangolin

    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

  10. #10
    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

Page 1 of 7 123 ... LastLast

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •