From take-i@ceres.dti.ne.jp Fri Sep 10 09:14:02 1999
Return-Path: <take-i@ceres.dti.ne.jp>
Received: from shrike.dti.ad.jp (shrike.dti.ad.jp [202.216.224.144])
	by hub.freebsd.org (Postfix) with ESMTP id D235C151C7
	for <FreeBSD-gnats-submit@freebsd.org>; Fri, 10 Sep 1999 09:14:00 -0700 (PDT)
	(envelope-from take-i@ceres.dti.ne.jp)
Received: from klein2 (PPP139.tama-ap5.dti.ne.jp [210.170.192.193]) by shrike.dti.ad.jp (8.9.3/3.7W) with ESMTP id BAA07495 for <FreeBSD-gnats-submit@freebsd.org>; Sat, 11 Sep 1999 01:13:51 +0900 (JST)
Received: by klein2 (8.9.3/3.7W98101921) id BAA40242; Sat, 11 Sep 1999 01:13:53 +0900 (JST)
Message-Id: <14297.11837.223378.78879Z@cerse.dti.ne.jp>
Date: Sat, 11 Sep 1999 01:13:49 +0900
From: IMAI Takeshi <take-i@ceres.dti.ne.jp>
To: FreeBSD-gnats-submit@freebsd.org
Subject: WinChip C6's TSC is broken.

>Number:         13683
>Category:       i386
>Synopsis:       WinChip C6's TSC is broken.
>Confidential:   no
>Severity:       serious
>Priority:       medium
>Responsible:    freebsd-bugs
>State:          closed
>Quarter:        
>Keywords:       
>Date-Required:  
>Class:          sw-bug
>Submitter-Id:   current-users
>Arrival-Date:   Fri Sep 10 09:20:01 PDT 1999
>Closed-Date:    Fri Sep 10 13:47:31 PDT 1999
>Last-Modified:  Fri Sep 10 13:47:52 PDT 1999
>Originator:     IMAI Takeshi
>Release:        FreeBSD 4.0-CURRENT i386
>Organization:
>Environment:

FreeBSD tsugumi 4.0-CURRENT FreeBSD 4.0-CURRENT #0: Sat Sep 4 15:56:09
JST 1999 root@tsugumi:/usr/src/sys/compile/TSUGUMI i386

>Description:

System clock don't update, because C6's TSC stop count up when run
HALT instruction. 

See more infomation C6 Processor data book <http://www.winchip.com/pdf/C6DS110.pdf>.

>How-To-Repeat:

	

>Fix:
	
Index: identcpu.c
===================================================================
RCS file: /ext/ncvs/current/src/sys/i386/i386/identcpu.c,v
retrieving revision 1.73
diff -u -p -r1.73 identcpu.c
--- identcpu.c	1999/08/28 00:43:44	1.73
+++ identcpu.c	1999/09/10 15:38:01
@@ -476,6 +476,7 @@ printcpuinfo(void)
 		switch (cpu_id & 0xff0) {
 		case 0x540:
 			strcat(cpu_model, "WinChip C6");
+			tsc_is_broken = 1;
 			break;
 		case 0x580:
 			strcat(cpu_model, "WinChip 2");


>Release-Note:
>Audit-Trail:
State-Changed-From-To: open->closed 
State-Changed-By: phk 
State-Changed-When: Fri Sep 10 13:47:31 PDT 1999 
State-Changed-Why:  
committed, thanks!  (And will make it in 3.3 :-) 
>Unformatted:
