Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 18 May 2008 11:30:51 +0800
From:      Ariff Abdullah <ariff@FreeBSD.org>
To:        Peter Jeremy <peterjeremy@optushome.com.au>
Cc:        freebsd-acpi@FreeBSD.org
Subject:   Re: BIOS Regression on HP/Compaq [d]v6000 series notebooks
Message-ID:  <20080518113051.34027506.ariff@FreeBSD.org>
In-Reply-To: <20080518030528.GA1099@server.vk2pj.dyndns.org>
References:  <20080428112623.GA99757@server.vk2pj.dyndns.org> <20080516202242.3992b284.ariff@FreeBSD.org> <20080517073716.GF80125@server.vk2pj.dyndns.org> <20080517194326.420ceb81.ariff@FreeBSD.org> <20080518030528.GA1099@server.vk2pj.dyndns.org>

next in thread | previous in thread | raw e-mail | index | archive | help
--Signature=_Sun__18_May_2008_11_30_51_+0800_f/EWDOZF1ORaZRni
Content-Type: text/plain; charset=US-ASCII
Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable

On Sun, 18 May 2008 13:05:28 +1000
Peter Jeremy <peterjeremy@optushome.com.au> wrote:
> On 2008-May-17 19:43:26 +0800, Ariff Abdullah <ariff@FreeBSD.org>
> wrote:
> >Install sysutils/devcpu from ports, load cpu.ko, and grab / compile
> >http://people.freebsd.org/~ariff/misc/k8c1e/ . Try playing with it
> >(enable, disable, status)
>=20
> It reported C1E disabled normally and enabled when I removed power.
> Explicitly disabling it when running on battery caused everything to
> behave.  Curiously, enabling C1E when running on AC power did not
> make things stop - which confused me.
>=20
> I extended k8c1e.c to report the actual IPMR contents.  This gave
> me the following.
>=20
> Running on AC (ie after plugging AC back in):
> cpu0: MSR=3D0x0000000004c10000 C1E disabled
> cpu1: MSR=3D0x0000000004c10000 C1E disabled
>=20
> Disconnecting AC:
> cpu0: MSR=3D0x0000000014c11015 C1E enabled
> cpu1: MSR=3D0x000000001cc11015 C1E enabled
>=20
> I notice that it doesn't set SmiOnCmpHalt on CPU0.  Interestingly,
> "BIOS and Kernel Developer's Guide for AMD NPT Family 0Fh
> Processors" (#32559) revision 3.08, states that each of
> C1eOnCmpHalt, SmiOnCmpHalt and IntPndMsg are mutually exclusive
> (only one can be set to 1) and that all cores should be programmed
> the same - it looks like the BIOS is not doing this.
>=20
> I don't know why your patch is not working.  It looks suspiciously
> like it's not getting the relevant ACPI notify message (or maybe the
> ACPI BIOS is sending the ACPI notify early and juggling C1E after
> the notify).  I checked and I _am_ running a kernel with the patch
> in it.
>

The patch does not try to get to other cpus, too much complications
just for a tiny quirk. Since acpi AC notifaction delivered only to a
single cpu, the quirk applied only to and just that cpu. If the BIOS
set C1E before sending ac notification, you're lucky: otherwise not
(which _probably_ in your case).

Disregarding my patch, try executing that "k8c1e disable" through devd
notifaction by adding followings to /etc/devd.conf:

# K8 C1E
notify 100 {
	match "system"		"ACPI";
	match "subsystem"	"ACAD";
	action "/whatever/k8c1e disable > /dev/null 2>&1";
};

Perhaps even:

	action "sleep X ; /whatever/k8c1e..."

--
Ariff Abdullah
FreeBSD

... Recording in stereo is obviously too advanced
    and confusing for us idiot ***** users :P ........

--Signature=_Sun__18_May_2008_11_30_51_+0800_f/EWDOZF1ORaZRni
Content-Type: application/pgp-signature

-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.9 (FreeBSD)

iEYEARECAAYFAkgvousACgkQlr+deMUwTNqvxgCfef3hmbcfZTCVC3j7Q6mjZOrS
XqkAnA6UYO84hJHgkreMR6cyp5HWoS6d
=1orn
-----END PGP SIGNATURE-----

--Signature=_Sun__18_May_2008_11_30_51_+0800_f/EWDOZF1ORaZRni--



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