Date: Fri, 19 Jun 2009 12:35:41 +0400 From: Eygene Ryabinkin <rea-fbsd@codelabs.ru> To: pluknet <pluknet@gmail.com> Cc: freebsd-current@freebsd.org Subject: Re: estX still not attaching properly Message-ID: <kIxYITyg7R0FuWn368XIi4VmfVk@hJhSod24P8TdBWT2Rda0vGnf2ew> In-Reply-To: <a31046fc0906180717g3f714b9ek3e89f023e57c12b5@mail.gmail.com> References: <permail-20090617182925f0889e8400003062-a_best01@message-id.uni-muenster.de> <200906180909.33511.jhb@freebsd.org> <a31046fc0906180717g3f714b9ek3e89f023e57c12b5@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
Good day.
Thu, Jun 18, 2009 at 06:17:19PM +0400, pluknet wrote:
> 2009/6/18 John Baldwin <jhb@freebsd.org>:
> > On Wednesday 17 June 2009 2:29:25 pm Alexander Best wrote:
> >> hi there,
> >>
> >> although i'm running a very recent current which has "ACPICA 20090521", estX
> >> still isn't attaching properly on my machine:
> >>
> >> est0: <Enhanced SpeedStep Frequency Control> on cpu0
> >> est: CPU supports Enhanced Speedstep, but is not recognized.
> >> est: cpu_vendor GenuineIntel, msr 925092506000925
> >> 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 925092506000925
> >> device_attach: est1 attach returned 6
> >
> > That just means ACPI isn't providing info about the speed steppings your CPU
> > provides.
True. Probably update to the latest BIOS will help, but may be it
won't: some vendors aren't putting the stuff to the ACPI tables.
> > It is odd that cpu0 has freq_levels but cpu1 does not.
>
> While here let me also please share my own acpi/est data.
> I hope it would not bother you too much.
> est attaches to all cpu:s, but again freq_levels is only on cpu0.
It is the proper behaviour of the ACPI's cpufreq driver: frequency
levels for all CPUs are meant to be the same. See sys/kern/kern_cpu.c
(cpufreq_attach(), line 172 or something like this),
-----
/*
* Only initialize one set of sysctls for all CPUs. In the future,
* if multiple CPUs can have different settings, we can move these
* sysctls to be under every CPU instead of just the first one.
*/
numdevs = devclass_get_count(cpufreq_dc);
if (numdevs > 1)
return (0);
CF_DEBUG("initializing one-time data for %s\n",
device_get_nameunit(dev));
SYSCTL_ADD_PROC(&sc->sysctl_ctx,
SYSCTL_CHILDREN(device_get_sysctl_tree(parent)),
OID_AUTO, "freq", CTLTYPE_INT | CTLFLAG_RW, sc, 0,
cpufreq_curr_sysctl, "I", "Current CPU frequency");
SYSCTL_ADD_PROC(&sc->sysctl_ctx,
SYSCTL_CHILDREN(device_get_sysctl_tree(parent)),
OID_AUTO, "freq_levels", CTLTYPE_STRING | CTLFLAG_RD, sc, 0,
cpufreq_levels_sysctl, "A", "CPU frequency levels");
-----
--
Eygene
_ ___ _.--. #
\`.|\..----...-'` `-._.-'_.-'` # Remember that it is hard
/ ' ` , __.--' # to read the on-line manual
)/' _/ \ `-_, / # while single-stepping the kernel.
`-'" `"\_ ,_.-;_.-\_ ', fsc/as #
_.-'_./ {_.' ; / # -- FreeBSD Developers handbook
{_.-``-' {_/ #
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?kIxYITyg7R0FuWn368XIi4VmfVk>
