From owner-svn-src-projects@FreeBSD.ORG Thu Oct 15 01:54:32 2009 Return-Path: Delivered-To: svn-src-projects@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id 67044106566C; Thu, 15 Oct 2009 01:54:32 +0000 (UTC) (envelope-from nwhitehorn@FreeBSD.org) Received: from svn.freebsd.org (svn.freebsd.org [IPv6:2001:4f8:fff6::2c]) by mx1.freebsd.org (Postfix) with ESMTP id 563748FC1F; Thu, 15 Oct 2009 01:54:32 +0000 (UTC) Received: from svn.freebsd.org (localhost [127.0.0.1]) by svn.freebsd.org (8.14.3/8.14.3) with ESMTP id n9F1sWL2055285; Thu, 15 Oct 2009 01:54:32 GMT (envelope-from nwhitehorn@svn.freebsd.org) Received: (from nwhitehorn@localhost) by svn.freebsd.org (8.14.3/8.14.3/Submit) id n9F1sWOT055283; Thu, 15 Oct 2009 01:54:32 GMT (envelope-from nwhitehorn@svn.freebsd.org) Message-Id: <200910150154.n9F1sWOT055283@svn.freebsd.org> From: Nathan Whitehorn Date: Thu, 15 Oct 2009 01:54:32 +0000 (UTC) To: src-committers@freebsd.org, svn-src-projects@freebsd.org X-SVN-Group: projects MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Cc: Subject: svn commit: r198109 - projects/ppc64/sys/powerpc/powerpc X-BeenThere: svn-src-projects@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "SVN commit messages for the src " projects" tree" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 15 Oct 2009 01:54:32 -0000 Author: nwhitehorn Date: Thu Oct 15 01:54:32 2009 New Revision: 198109 URL: http://svn.freebsd.org/changeset/base/198109 Log: Fix CPU speed detection on PPC 970 for 64-bit machines. HID0 is a 64-bit register, and truncating it to int unsets high bits like the external timebase enable setting. This only ever worked on 32-bit by accident, because GCC thought it was always 32-bit and didn't feel like explicitly truncating it, so a fix should be propagated back there eventually as well. Modified: projects/ppc64/sys/powerpc/powerpc/cpu.c Modified: projects/ppc64/sys/powerpc/powerpc/cpu.c ============================================================================== --- projects/ppc64/sys/powerpc/powerpc/cpu.c Thu Oct 15 01:50:50 2009 (r198108) +++ projects/ppc64/sys/powerpc/powerpc/cpu.c Thu Oct 15 01:54:32 2009 (r198109) @@ -122,8 +122,9 @@ static void cpu_print_cacheinfo(u_int, u void cpu_setup(u_int cpuid) { - u_int pvr, maj, min, hid0; + u_int pvr, maj, min; uint16_t vers, rev, revfmt; + register_t hid0; const struct cputab *cp; const char *name; char *bitmask; @@ -289,7 +290,7 @@ cpu_setup(u_int cpuid) break; } - printf("cpu%d: HID0 %b\n", cpuid, hid0, bitmask); + printf("cpu%d: HID0 %b\n", cpuid, (int)hid0, bitmask); } void