Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 29 Jan 2011 08:41:25 +0000
From:      Alexander Best <arundel@freebsd.org>
To:        Jia-Shiun Li <jiashiun@gmail.com>
Cc:        freebsd-current@freebsd.org
Subject:   Re: cpufreq not working as module on i386/amd64
Message-ID:  <20110129084125.GA54969@freebsd.org>
In-Reply-To: <AANLkTi=Ln7f9tWt=OqZa9eZ-ZAVBfQSC-y_=8c-6zwAd@mail.gmail.com>
References:  <AANLkTi=Ln7f9tWt=OqZa9eZ-ZAVBfQSC-y_=8c-6zwAd@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Sat Jan 29 11, Jia-Shiun Li wrote:
> Hi all,
> 
> I found that cpufreq driver failed to attach when compiled as module
> and loaded, but it works fine when compiled into kernel. I am
> wondering if this is due to some kind of limitation, or can be fixed?

that's rather odd. for me neither the module nor the kernel code works, since
my cpu isn't supported by sys/x86/cpufreq/est.c. actually only pentium mobile
cpus seem to be supported.

maybe you can add some printf's to est.c:est_get_info() to identify at which
point error gets set. also you might want to make

"est: cpu_vendor %s, msr %0jx\n", cpu_vendor, msr);

non-conditional. maybe the output differy in kernel/module mode.

cheers.
alex

> 
> Tested on a Pentium E5200 desktop (i386) and a Pentium T4200 laptop
> (amd64). Both got the same result. dmesg of T4200 attached.
> 
> kldload module:
> ----->8----->8----->8-----
> est0: <Enhanced SpeedStep Frequency Control> on cpu0
> est: CPU supports Enhanced Speedstep, but is not recognized.
> est: cpu_vendor GenuineIntel, msr 6194c1a06004c1a
> device_attach: est0 attach returned 6
> est1: <Enhanced SpeedStep Frequency Control> on cpu1
> est: CPU supports Enhanced Speedstep, but is not recognized.
> est: cpu_vendor GenuineIntel, msr 6194c1a06004c1a
> -----8<-----8<-----8<-----
> (repeated 6 times, kldload retries?)
> 
> compiled into kernel:
> ----->8----->8----->8-----
> ...
> fdc0 failed to probe at port 0x3f0-0x3f5,0x3f7 irq 6 drq 2 on isa0
> uart1: <ns8250> failed to probe at port 0x2f8-0x2ff irq 3 on isa0
> isa_probe_children: probing PnP devices
> coretemp0: <CPU On-Die Thermal Sensors> on cpu0
> coretemp0: Setting TjMax=104
> p4tcc0: <CPU Frequency Thermal Control> on cpu0
> est0: <Enhanced SpeedStep Frequency Control> on cpu0
> coretemp1: <CPU On-Die Thermal Sensors> on cpu1
> coretemp1: Setting TjMax=104
> p4tcc1: <CPU Frequency Thermal Control> on cpu1
> est1: <Enhanced SpeedStep Frequency Control> on cpu1
> Device configuration finished.
> procfs registered
> ...
> -----8<-----8<-----8<-----
> 
> Jia-Shiun.


-- 
a13x



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20110129084125.GA54969>