Page 2 of 6 FirstFirst 1234 ... LastLast
Results 11 to 20 of 53

Thread: CPU Fan does not work on an HP ProBook 4320s

  1. #11
    Join Date
    Oct 2007
    Beans
    92

    Re: CPU Fan does not work on an HP ProBook 4320s

    Coolio.

    I'm glad there's someone who's capable of helping me with this. To be honest, I don't really understand much about how exactly acpi works.
    Strange that this issue was never resolved, but it seems to only effect old (2-3 years) hp laptops. From what I've read anyways.
    So maybe Ubuntu developers don't really care. lol

  2. #12
    Join Date
    Jun 2011
    Beans
    22

    Re: CPU Fan does not work on an HP ProBook 4320s

    Hmm...

    I think I've misunderstood the second result. It doesn't seem to be the model ID per se, but only the revision of the model.
    To find out the exact name of the chip I'll need your help.

    There are two ways of doing this:

    The Easy Way

    If you still have Windows installed, grab this great little piece of software:
    http://www.hwinfo.com/
    Install it, and run it.

    Check "Sensors Only" when it prompts you:


    And then look in the table it gives you for something like this:


    It may or may not have a Fan attribute, as it only detects it if it's running, but it should start with SMSC if we're lucky.

    If not, tell me all the items that have the same icon and we'll see.

    The Void-My-Warranty Way
    This is a tad harder... and will VOID YOUR WARRANTY, if you have one.

    The basic idea is to look on all the motherboard chips for any that say SMSC on them. Don't get me wrong, that chip is TINY. Here's what mine looks like:


    As you can see, my fan controller is an SMSC 2113-1.

    You will have to pop open the keyboard (You'll have to look online how to do that) and carefully, not to pry off any cables.

    If anyone else has any idea how to get the model number, please share!
    Otherwise,
    Good luck!

  3. #13
    Join Date
    Oct 2007
    Beans
    92

    Re: CPU Fan does not work on an HP ProBook 4320s

    Still have Windows.
    I have disassembled the laptop before however, but I chose the easy way for now.

    SMSC EMC1402

    No fan attribute. Hopefully this will help you figure it out! : )
    Last edited by idodos; April 18th, 2014 at 06:59 PM.

  4. #14
    Join Date
    Jun 2011
    Beans
    22

    Re: CPU Fan does not work on an HP ProBook 4320s

    No good.
    That device is only a temperature sensor.

    D'oh!
    Check out what the datasheet says.
    FDh Product ID Stores the unique Product ID
    FEh Manufacturer ID
    FFh Revision Number

    We've only looked up FE and FF... fire up the root command prompt again
    Code:
    sudo su
    Code:
    echo "\_SB.PCI0.LPCB.SMAB 0x99 0xFD" > /proc/acpi/call && echo $(cat /proc/acpi/call)
    And see what chip we're talking to.

    If the output is 0x20 then we are talking to the temperature sensor and not the fan controller.
    That means one of two things:
    1. There must be another chip at another address, i'll have to check the DSDT again and more thoroughly
    2. Your fan in controlled by the Embedded Controller directly, in which case I can't help you any more than I already have.

    I'll start browsing the DSDT now, tell me what you have.

  5. #15
    Join Date
    Oct 2007
    Beans
    92

    Re: CPU Fan does not work on an HP ProBook 4320s

    Yep, the output is 0x20alled

    If it'll help, I could open the laptop to check for another controller. Think there's a chance?

    Edit:
    Went for it. I can't find any "smsc" chip. Where should it be?
    Last edited by idodos; April 18th, 2014 at 07:15 PM.

  6. #16
    Join Date
    Jun 2011
    Beans
    22

    Re: CPU Fan does not work on an HP ProBook 4320s

    Ok, this is weird.
    The DSDT is identical to mine in the fan control aspects, which leads me to believe the SMSC EMC1402 is wrongly identified.
    If you're ok with this, we'll go in blind and try to figure things out as if this is the fan control chip.

    I've been busy refreshing my bash to write you a script.
    Code:
    #!/bin/bash
    
    
    acpi_call () {
        echo "$*" > /proc/acpi/call
        echo "$(cat /proc/acpi/call)"
    }
    
    
    read_byte () {
        CMD="\_SB.PCI0.LPCB.SMAB 0x99 0x$1 0x00"
        echo "$(acpi_call $CMD)"
    }
    
    
    decToHex () {
        echo "$(printf "%.2x" $1)"
    }
    
    
    STR=""
    for i in {0..256}
    do
        echo -en "\rReading Byte $i"
        STR+="$(read_byte $(decToHex $i)) "
        if ((i%16 == 15)); then
            STR+="\n"
        fi
        # sleep 1
    done
    echo -en "\rDone               \n"
    echo -en $STR
    Copy the above code in a file, name it something like fancheck
    then go to the directory where you saved it and execute
    Code:
    sudo ./fancheck
    Paste the output here.

    We might still have a chance!

  7. #17
    Join Date
    Oct 2007
    Beans
    92

    Re: CPU Fan does not work on an HP ProBook 4320s

    Reassembling laptop.
    All I found was a RT8152C which appears to be a PWM controller for the CPU.
    All the rest were unidentifiable. At least for me.

  8. #18
    Join Date
    Oct 2007
    Beans
    92

    Re: CPU Fan does not work on an HP ProBook 4320s

    Here:

    Code:
    ido@HP-ProBook:~$ sudo ./fancheck
    Done               
    0x25alled 0x25alled 0x0called 0x0called 0x4called 0x7falled 0x0called 0x7falled 0x0called 0x0called 0x4called 0x7falled 0x0called 0x7falled 0x0called 0x0called 
    0x40alled 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x7falled 0x0called 0x0called 0x0called 0x0called 0x0called 0x3called 
    0x7falled 0xacalled 0x70alled 0x0called 0x0called 0xfcalled 0x0called 0x12alled 0x0called 0x60alled 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 
    0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 
    0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 
    0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 
    0x6called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 
    0x6called 0x7called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 
    0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 
    0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 
    0x0called 0x0called 0x0called 0x0called 0x65alled 0x40alled 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x2balled 0x12alled 0x6called 0x50alled 
    0x20alled 0x20alled 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 
    0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 
    0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 
    0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 
    0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x0called 0x20alled 0x5dalled 0x3called

  9. #19
    Join Date
    Jun 2011
    Beans
    22

    Re: CPU Fan does not work on an HP ProBook 4320s

    Bummer.

    It IS just a temperature sensor.
    This leaves just the Embedded Controller, and only two more functions, which I don't completely understand.
    Code:
    Method (SFSD, 1, Serialized)
    {
        Multiply (Arg0, 0x40, Local1)
        Divide (Local1, 0x64, Local2, Local0)
        Subtract (0x40, Local0, Local0)
        And (PWM0, 0x80, Local1)
        If (LEqual (Local0, 0x40))
        {
            Or (Local1, 0x01, Local1)
        }
        Else
        {
            ShiftLeft (Local0, 0x01, Local0)
            Or (Local0, Local1, Local1)
        }
    
    
        Store (Local1, PWM0)
    }
    SFSD. Set Fan Speed Direct/Decimal?. Takes one paramter, does some magic to it and stores it into a PWM variable...



    Code:
    Method (GFSD, 0, Serialized)
    {
        And (PWM0, 0x7F, Local0)
        If (And (Local0, 0x01))
        {
            Store (0x00, Local1)
        }
        Else
        {
            ShiftRight (Local0, 0x01, Local0)
            Subtract (0x40, Local0, Local0)
            Multiply (Local0, 0x64, Local0)
            Divide (Add (Local0, 0x20), 0x40, Local2, Local1)
            Increment (Local1)
        }
    
    
        Return (Local1)
    }
    GFSD. Get Fan Speed Direct/Decimal?. Returns the PWM variable after some magic.

    You may try
    Code:
    echo "\_SB.PCI0.LPCB.EC0.SFSD 0xXY" > /proc/acpi/call && echo $(cat /proc/acpi/call)
    as root (sudo su)
    with 0xXY one of: 0x1, 0x80, 0x81, or others you may think of. See what happens to the fan.

    I haven't had any luck with these, though.
    The fan would spin only to reach the target speed, but when it would need to keep stable it would turn off.
    It spun as if only while ramping up speed.

    If your fan manages to keep the speed stable after ramping up, we might finally have an answer.

    Otherwise, I'm sorry. This is the last think I can think of.

    Good luck!
    Last edited by chris-c; April 19th, 2014 at 03:21 PM.

  10. #20
    Join Date
    Oct 2007
    Beans
    92

    Re: CPU Fan does not work on an HP ProBook 4320s

    Code:
    echo "\_SB.PCI0.LPCB.EC0.SFSD 0xXY" > /proc/acpi/call && echo $(cat /proc/acpi/call)
    Works. Fan keeps stable.
    It was difficult at first, but with 0x100 I can clearly feel and hear the fan working.
    "KRFS" returns 0x0 when the fan is working with "SFSD".
    So what exactly does 0xXY mean in terms of actual fan percentage?

    Edit:
    Seems like GFSD returns the actual fan speed in hex. So a value of 0x80 in SFSD is 28% and 0x100 is 56%.
    Last edited by idodos; April 18th, 2014 at 08:41 PM.

Page 2 of 6 FirstFirst 1234 ... 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
  •