Wrong dev.cpu.0.freq_levels values

Daniel Duerr dd at gizmocreative.com
Thu Apr 2 08:54:45 PDT 2009


For what it's worth, I recently reported a similar bug with est where  
the top-most frequency of my CPU is less than it should be.  In my  
case, cpufreq *is not* compiled into the kernel and is instead loaded  
as a driver at boot.  I'm using a 1.8GHz dual core Pentium from a  
couple years ago.

On Apr 2, 2009, at 7:51 AM, Pierre-Luc Drouin wrote:

> John Baldwin wrote:
>> On Wednesday 01 April 2009 11:35:43 pm Kevin Oberman wrote:
>>
>>>> Date: Wed, 01 Apr 2009 23:16:13 -0400
>>>> From: Pierre-Luc Drouin <pldrouin at pldrouin.net>
>>>> Sender: owner-freebsd-acpi at freebsd.org
>>>>
>>>> I tried disabling both p4tcc and acpi_throttle by putting the  
>>>> following in /boot/device.hints:
>>>> hint.p4tcc.0.disabled="1"
>>>> hint.acpi_throttle.0.disabled="1"
>>>>
>>>> It reduced the number of levels, but I still don't have a level  
>>>> 2000 as I used to get:
>>>> dev.cpu.0.freq: 1500
>>>> dev.cpu.0.freq_levels: 1500/-1 1200/-1 1000/-1 800/-1 600/-1
>>>> dev.est.0.%desc: Enhanced SpeedStep Frequency Control
>>>> dev.est.0.freq_settings: 1500/-1 1200/-1 1000/-1 800/-1 600/-1
>>>>
>>>> Pierre-Luc Drouin
>>>>
>>>> Nate Lawson wrote:
>>>>
>>>>> Pierre-Luc Drouin wrote:
>>>>>
>>>>>> Hello,
>>>>>>
>>>>>> I have noticed that FreeBSD gets the wrong CPU frequency levels  
>>>>>> for my
>>>>>> Pentium M 2GHz. It used to work correctly with older versions of
>>>>>> FreeBSD, but I noticed that this was not working properly when I
>>>>>> installed 7.1 and this is still not working with -stable:
>>>>>>
>>>>>>
>>>>>
>>>>>> dev.cpu.0.freq: 1500
>>>>>> dev.cpu.0.freq_levels: 1500/-1 1312/-1 1200/-1 1050/-1 1000/-1  
>>>>>> 875/-1
>>>>>> 800/-1 700/-1 600/-1 525/-1 450/-1 375/-1 300/-1 225/-1 150/-1  
>>>>>> 75/-1
>>>>>> dev.est.0.%desc: Enhanced SpeedStep Frequency Control
>>>>>> dev.est.0.freq_settings: 1500/-1 1200/-1 1000/-1 800/-1 600/-1
>>>>>>
>>>>>> Is there a way to fix this?
>>>>>>
>>>>> There's nothing wrong. You just got more levels using p4tcc  
>>>>> (another
>>>>> cpufreq device). So use it as-is, or disable the p4tcc driver and
>>>>> acpi_throttle drivers.
>>>>>
>>>>>
>>> There is a problem, of course. I had the same issue with my 2GHz  
>>> Pentium
>>> M. It was easy to fix, but totally counter-intuitive.
>>>
>>> Build your kernel without "device cpufreq" and it will all work
>>> fine. Here is what I see without CPUFREQ:
>>> dev.cpu.0.freq_levels: 2000/27000 1750/23625 1600/22600 1400/19775
>> 1333/19666 1166/17207 1066/16733 932/14641 800/13800 700/12075  
>> 600/10350 500/8625 400/6900 300/5175 200/3450 100/1725
>>
>> Hmm, that means one of the cpufreq drivers is busted I think.  Can  
>> you try disabling all of them to see which one is the problem (est  
>> perhaps?)  Also, can you show the 'devinfo' output for your cpu0  
>> device (and its child devices) in the cpufreq and non-cpufreq cases?
>>
>>
> est0 seems to be the problem. When I have the cpufreq driver in my  
> kernel, that I disable est0 and that I leave p4tcc0 and  
> acpi_throttle0 enabled, the output from sysctl is right. If I  
> disable p4tcc0 and acpi_throttle0 and that I leave est0 enabled, the  
> highest level is 1500 rather than 2000. Here is the output from  
> devinfo that concerns cpu0:
>
> cpu0 pnpinfo _HID=none _UID=0 at handle=\_PR_.CPU0
>       ACPI I/O ports:
>           0x1014
>           0x1015
>           0x1016
>     est0
>     p4tcc0
>     acpi_perf0
>     acpi_throttle0
>     cpufreq0
>
> Pierre-Luc Drouin
> _______________________________________________
> freebsd-acpi at freebsd.org mailing list
> http://lists.freebsd.org/mailman/listinfo/freebsd-acpi
> To unsubscribe, send any mail to "freebsd-acpi- 
> unsubscribe at freebsd.org"



--
daniel duerr   |   president   |   gizmo creative
dd at gizmocreative.com  |  +1 (831) 621-1710 x103





More information about the freebsd-acpi mailing list