From owner-freebsd-amd64@FreeBSD.ORG Tue Feb 12 18:25:35 2008 Return-Path: Delivered-To: freebsd-amd64@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 6CC8B16A41B; Tue, 12 Feb 2008 18:25:35 +0000 (UTC) (envelope-from tom.hurst@clara.net) Received: from spork.qfe3.net (spork.qfe3.net [212.13.207.101]) by mx1.freebsd.org (Postfix) with ESMTP id 2E91C13C4CE; Tue, 12 Feb 2008 18:25:35 +0000 (UTC) (envelope-from tom.hurst@clara.net) Received: from [81.104.123.28] (helo=voi.aagh.net) by spork.qfe3.net with esmtp (Exim 4.66 (FreeBSD)) (envelope-from ) id 1JOzoy-00002k-RD; Tue, 12 Feb 2008 18:25:32 +0000 Received: from freaky by voi.aagh.net with local (Exim 4.69 (FreeBSD)) (envelope-from ) id 1JOzoy-0006cA-G4; Tue, 12 Feb 2008 18:25:32 +0000 Date: Tue, 12 Feb 2008 18:25:32 +0000 From: Thomas Hurst To: Frank Mayhar Message-ID: <20080212182532.GA18779@voi.aagh.net> Mail-Followup-To: Frank Mayhar , Rui Paulo , freebsd-amd64@freebsd.org References: <20080210183600.GJ64299@server.vk2pj.dyndns.org> <141AC5FD-D8A0-4E6B-BC69-5D9F752EF5F2@freebsd.org> <20080212062818.GL64299@server.vk2pj.dyndns.org> <1202826167.10603.3.camel@jill.exit.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1202826167.10603.3.camel@jill.exit.com> Organization: Not much. User-Agent: Mutt/1.5.17 (2007-11-01) Sender: Thomas Hurst Cc: freebsd-amd64@freebsd.org Subject: Re: CFT: k8temp driver X-BeenThere: freebsd-amd64@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: Porting FreeBSD to the AMD64 platform List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 12 Feb 2008 18:25:35 -0000 * Frank Mayhar (frank@exit.com) wrote: > k8temp0: on hostb3 > k8temp0: can't clear config registerdevice_attach: k8temp0 attach returned 6 > k8temp1: on hostb7 > k8temp1: can't clear config registerdevice_attach: k8temp1 attach returned 6 > > Thermtrip=0x0b000424 (CurTmp=0x00 (-49c) TjOffset=0x0b DiodeOffset=0x04 (7c)) > Thermtrip=0x0b510420 (CurTmp=0x51 (32c) TjOffset=0x0b DiodeOffset=0x04 (7c)) > CPU 0 Core 1 Sensor 0: 32c > Thermtrip=0x005a0f20 (CurTmp=0x5a (41c) TjOffset=0x00 DiodeOffset=0x0f (-4c)) > CPU 1 Core 1 Sensor 0: 41c Well, the bits clearly are clearable; the 0's on the end of Thermtrip show the selection is working (it wouldn't show anything if not; your second CPU seems to not want to set the core selection bit at all, and neither care for the sensor selection bit). Interestingly the data sheet suggests on single core systems the core selection bit should be *set*: Thermal Sensor Core Select (ThermSenseCoreSel) -- Bit 2. This bit selects the CPU whose temperature is reported in the CurTemp field. This bit only applies to dual core processors. For single core processors CPU0 Thermal Sensor is always selected 0b = CPU1 Thermal Sensor. 1b = CPU0 Thermal Sensor. Maybe it's revision dependent. The data sheet is here: http://www.amd.com/us-en/assets/content_type/white_papers_and_tech_docs/32559.pdf See the end of page 179 for a description of the register. -- Thomas 'Freaky' Hurst http://hur.st/