Noise and APM idle CPU call

Noise and APM idle CPU call

Post by sanghyun par » Mon, 28 Oct 2002 02:42:08



Hi,

My laptop (Dell Inspiron 4100) makes high pitched noise when Linux (RedHat 8)
is running.  It doesn't make that noise when Windows is running.  I did some
search on internet and found that it might be related to the APM idle CPU call.
Does anyone know how to disable APM idle CPU call?

Thanks.

SP

 
 
 

Noise and APM idle CPU call

Post by Stuart Le » Wed, 30 Oct 2002 09:48:04



>Hi,

>My laptop (Dell Inspiron 4100) makes high pitched noise when Linux (RedHat 8)
>is running.  It doesn't make that noise when Windows is running.  I did some
>search on internet and found that it might be related to the APM idle CPU call.
>Does anyone know how to disable APM idle CPU call?

>Thanks.

>SP

You should be able to *en*able it if you build your own kernel
from source.  This shouldn't be too hard; basically you'd

   install the kernel-source-2.4.18-NN.i386.rpm RPM
                (whatever version number NN is)
   cd /usr/src/linux-2.4.18
   cp configs/kernel-2.4.18-i686.config  ./.config

   make xconfig
     Under "General Setup", look for Advanced Power Management BIOS support,
        and click the "Make CPU Idle calls when idle" button.
        I haven't looked at Red Hat 8, but it's been disabled
        on earlier Red Hat kernels.
     On the main panel, Save the changed configuration.

   make dep
   make bzImage modules     (this will take quite a while)
   make modules_install
   make install
   mkinitrd /boot/initrd-2.4.18-NNcustom.img  2.4.18-NNcustom

   check GRUB documentation ("man grub") to add the new kernel
   to the list of kernels it knows how to boot.  (I use lilo,
   so don't know how, but "man grub" should help.)

BUT...  the above change may well not help you --
read the stuff below first.

Can you tell whether the whine comes from the laptop fans
or from somewhere else, e.g. the power supply or something?

On my Dell Latitude C600 (running RH 7.3 kernels, and also 2.4.20-pre11,
using APM) the fans go into high gear after I suspend (Fn-Esc) and resume.
The fans run fast even though the machine is obviously still cool.
Rebooting from power-down state, the fans behave well -- initially off,
then going on low speed if the CPU grinds for a while.

Windows presumably uses the ACPI facility.  I've tried building
2.4.20-pre11 plus the Linux ACPI code patch --
http://www.sourceforge.net/projects/acpi/ using the 20021022
patch against 2.4.20-pre11.  The fans may be controllable,
but suspend-to-ram (echo "1" > /proc/acpi/sleep) doesn't work at
all -- the system shuts down but won't resume -- so I haven't
kept using it.

You may get some joy from the Dell-specific "i8k" kernel module
plus user utilities at
   http://www.debian.org/~dz/i8k/
For me, forcing the fan state to "off" (i8kctl fan 0 0)
several times per second keeps them mostly quiet, with some
annoying pulsing as the BIOS tries to switch them back on.


    NCSA, University of Illinois Urbana-Champaign

 
 
 

Noise and APM idle CPU call

Post by sanghyun par » Thu, 31 Oct 2002 01:39:28




>>Hi,

>>My laptop (Dell Inspiron 4100) makes high pitched noise when Linux (RedHat 8)
>>is running.  It doesn't make that noise when Windows is running.  I did some
>>search on internet and found that it might be related to the APM idle CPU call.
>>Does anyone know how to disable APM idle CPU call?

>>Thanks.

>>SP
> Can you tell whether the whine comes from the laptop fans
> or from somewhere else, e.g. the power supply or something?

I can't tell exactly where it comes from, but I'm pretty sure it's not from
the fan.  Actually, when the computer is busy (for example, when I move mouse)
the noise goes away.  Then it comes back immediately after I stop moving mouse.
So, I guess it is related with CPU.  I have another problem with APM: when I
close the laptop it is suspended, but it does not wake up when I open it.  
But, getting rid of the noise is more important for me.

SP

 
 
 

1. PATCH: apm.c - detection of brokern APM Idle call implementation


Well, the following three-liners (+ comments) seems to do it. It checks
if clock was advanced after return from APM Idle - if not we assume BIOS
did not halt CPU and do it ourselves. The addidional condition &&
!current->need_resched is for the case when BIOS did halt CPU and
non-clock interrupt happened that waked up somebody else. But may be I
am just plain paranoid. The code has no impact for "BIOS slows CPU"
case.

It works here for broken BIOS. I appreciate if people with good BIOS
test it.

-andrej

  apm-idle-2.diff
< 1K Download

2. where to find glibc bugfixes

3. PATCH: apm.c - runtime parameter for APM Idle call

4. Error Running SCO/WP5.1 demo (X error)

5. kapm-idled shows 90+% cpu usage when idle

6. no prompt

7. kapm-idled no longer idling CPU?

8. Use dhclient with two hostnames

9. Relationship between load average and CPU busy or CPU idle

10. Difference between a LOADed CPU & a non IDLE CPU ???

11. CPU makes buzz noise

12. Matrox Mystique ands X.

13. How to detect whether CPU is idle?