# Toshiba Laptop support missing?

## funnelweb

I'm attempting to get the fans working on my Toshiba L355D, and from what I've read on The Toshiba Linux Utilities website I need to set Toshiba Laptop Support in the kernel, but I don't see it in the menuconfig of 2.6.30-r4. I also checked in kernel 2.6.31. When I search for Toshiba, I get the following (among others)...

  │   Symbol: TOSHIBA [=n]                                                                           │

  │   Prompt: Toshiba Laptop support                                                                 │

  │   Defined at arch/x86/Kconfig:843                                                              │

  │   Depends on: X86_32                                                                           │

  │   Location:                                                                                    │

  │     -> Processor type and features   

.. but I don't see it under Processor type and features at all. Is this taken out deliberately? Is there a way I can set it manually? I'm not 100% sure it'll even solve my problem, but I'd like to give it a try.

Thanks!

Edit: I may have stumbled upon my own answer. It could be because I'm using 64 bit.. not x86_32. Can anyone suggest how I can get around this?  :Smile: 

----------

## audiodef

Isn't this something you can do using ACPI in the kernel?

----------

## cyrillic

Have you looked here ?

```
Device Drivers  --->

  [*] X86 Platform Specific Device Drivers  --->

    <M>   Toshiba Laptop Extras 
```

----------

## funnelweb

audiodef, I have the fan and everything else ACPI compiled into the kernel, yep. I've read that similar laptops (with the InsydeH20 bios) aren't working though.

cyrillic, I had that set to Y.. so I'll try it as an module and see what happens.. It's not exactly the same as the other one though. It even says in the help: "This driver differs from the non-ACPI Toshiba laptop driver (located under "Processor type and features") in several aspects."..

Thanks for the suggestions anyway!

Edit: Going to go 32bit gentoo. I checked out Mint's 32 bit live CD and in menuconfig it's there, right where it's suppose to be. Will report back after I've gone through the install handbook yet again!  :Laughing:   If this solves my problem, I might just keep this laptop after all. (It is a deal-breaker having the computer overheat all the time.)

----------

## tb5342

funnelweb,

I performed a 32 bit install on a Satellite L355-S7915 (Insyde bios) and had fan problems. After overriding DSDT, my fan starts as-needed (cpu stays in 109F-133F range).

The Toshiba kernel options didn't help or hurt any functionality on my laptop.

```
dmesg |grep -i toshiba

[    2.455282] toshiba: not a supported Toshiba laptop

[    4.041404] synaptics: Toshiba Satellite L355 detected, limiting rate to 40pps.
```

The fan on my laptop would not start at boot time or when any of the thermal trip points were crossed. The fan would come on when the cpu reached 175F. One workaround, discovered by accident, was: 1) start laptop, 2) wait until processor reached approximately 120F, 3) restart laptop. The fan comes on (low) and stays on. Cpu temp hovers around 100F.

I grew tired of 'restart workaround' and started adding debug statements to the DSDT to determine if the_STA(tus), _ON and _OFF methods for FAN were ever called.

```
    Scope (_TZ)

    {

        PowerResource (FN00, 0x00, 0x0000)

        {

            Method (_STA, 0, Serialized)

            {

                Store ("getFanStatus", Debug)                            <--

                Store (\_SB.PCI0.LPC.EC0.FNST, Debug)             <-- ????

                Return (One)

            }

            Method (_ON, 0, Serialized)

            {

                Store ("setFan_ON", Debug)                               <--

            }

            Method (_OFF, 0, Serialized)

            {

                Store ("setFan_OFF", Debug)                             <--

            }

        }

        Device (FAN)

        {

            Name (_HID, EisaId ("PNP0C0B"))

            Name (_UID, Zero)

            Name (_PR0, Package (0x01)

            {

                FN00

            })

        }

DSDT.dsl lines 2347-2379/9573 24%  
```

dmesg:

```
[ 8036.666065] [ACPI Debug]  Integer 0x00000000

[ 8036.666192] [ACPI Debug]  String [0x0A] "setFan_OFF"

[ 8036.666285] [ACPI Debug]  String [0x0C] "getFanStatus"

[ 8036.680064] [ACPI Debug]  Integer 0x00000000

[ 8036.680168] ACPI: Device [FAN] failed to transition to D3

[ 8040.108506] [ACPI Debug]  String [0x0C] "getFanStatus"

[ 8040.122158] [ACPI Debug]  Integer 0x00000000

[ 8040.140683] [ACPI Debug]  String [0x0C] "getFanStatus"

[ 8040.154156] [ACPI Debug]  Integer 0x00000000

[ 8040.154504] [ACPI Debug]  String [0x0A] "setFan_OFF"

[ 8040.154757] [ACPI Debug]  String [0x0C] "getFanStatus"

[ 8040.168153] [ACPI Debug]  Integer 0x00000000

[ 8040.168440] ACPI: Device [FAN] failed to transition to D3

[ 8043.638937] [ACPI Debug]  String [0x0C] "getFanStatus"

[ 8043.653368] [ACPI Debug]  Integer 0x00000000

[ 8043.655916] [ACPI Debug]  String [0x0A] "setFan_OFF"

[ 8043.659265] [ACPI Debug]  String [0x0C] "getFanStatus"

[ 8043.673326] [ACPI Debug]  Integer 0x00000000

[ 8043.674186] ACPI: Device [FAN] failed to transition to D3

[ 8044.135204] [ACPI Debug]  String [0x0C] "getFanStatus"

[ 8044.149710] [ACPI Debug]  Integer 0x00000000

[ 8048.106141] [ACPI Debug]  String [0x0C] "getFanStatus"

[ 8048.120053] [ACPI Debug]  Integer 0x00000000

[ 8052.133435] [ACPI Debug]  String [0x0C] "getFanStatus"

[ 8052.147166] [ACPI Debug]  Integer 0x00000000

[ 8056.108395] [ACPI Debug]  String [0x0C] "getFanStatus"

[ 8056.122039] [ACPI Debug]  Integer 0x00000000

[ 8060.106403] [ACPI Debug]  String [0x0C] "getFanStatus"

[ 8060.120065] [ACPI Debug]  Integer 0x00000000

[ 8064.129804] [ACPI Debug]  String [0x0C] "getFanStatus"

[ 8064.144338] [ACPI Debug]  Integer 0x00000000

[ 8068.108712] [ACPI Debug]  String [0x0C] "getFanStatus"

[ 8068.122046] [ACPI Debug]  Integer 0x00000000

[ 8072.108324] [ACPI Debug]  String [0x0C] "getFanStatus"

[ 8072.123179] [ACPI Debug]  Integer 0x00000000

[ 8076.125421] [ACPI Debug]  String [0x0C] "getFanStatus"

[ 8076.156334] [ACPI Debug]  Integer 0x00000000

[ 8080.110114] [ACPI Debug]  String [0x0C] "getFanStatus"

[ 8080.126062] [ACPI Debug]  Integer 0x00000000

[ 8084.114285] [ACPI Debug]  String [0x0C] "getFanStatus"

[ 8084.141385] [ACPI Debug]  Integer 0x00000000

[ 8088.106250] [ACPI Debug]  String [0x0C] "getFanStatus"

[ 8088.122049] [ACPI Debug]  Integer 0x00000000

[ 8092.117173] [ACPI Debug]  String [0x0C] "getFanStatus"

[ 8092.157251] [ACPI Debug]  Integer 0x00000000

[ 8096.113101] [ACPI Debug]  String [0x0C] "getFanStatus"

[ 8096.127350] [ACPI Debug]  Integer 0x00000000

[ 8100.114137] [ACPI Debug]  String [0x0C] "getFanStatus"

[ 8100.128353] [ACPI Debug]  Integer 0x00000000

[ 8104.108761] [ACPI Debug]  String [0x0C] "getFanStatus"

[ 8104.122038] [ACPI Debug]  Integer 0x00000000

[ 8108.109706] [ACPI Debug]  String [0x0C] "getFanStatus"

[ 8108.124182] [ACPI Debug]  Integer 0x00000000
```

After adding the "Store (\_SB.PCI0.LPC.EC0.FNST, Debug)" statement, the fan began starting as-needed. No idea why this works   :Confused: 

----------

## funnelweb

I wish I could say that I solved my problem.. in the end, I re-installed Vista onto the Toshiba laptop and sold it. I purchased an Asus X59SR instead. I never thought I'd be so happy to hear fans.  :Smile: 

Thanks anyway!

----------

