From owner-freebsd-hackers@FreeBSD.ORG Thu Mar 11 10:05:48 2004 Return-Path: Delivered-To: freebsd-hackers@freebsd.org Received: from mx1.FreeBSD.org (mx1.freebsd.org [216.136.204.125]) by hub.freebsd.org (Postfix) with ESMTP id 64B1716A4CF for ; Thu, 11 Mar 2004 10:05:48 -0800 (PST) Received: from mail2.speakeasy.net (mail2.speakeasy.net [216.254.0.202]) by mx1.FreeBSD.org (Postfix) with ESMTP id 3520543D41 for ; Thu, 11 Mar 2004 10:05:48 -0800 (PST) (envelope-from jhb@FreeBSD.org) Received: (qmail 27618 invoked from network); 11 Mar 2004 18:05:47 -0000 Received: from dsl027-160-063.atl1.dsl.speakeasy.net (HELO server.baldwin.cx) ([216.27.160.63]) (envelope-sender ) encrypted SMTP for ; 11 Mar 2004 18:05:47 -0000 Received: from 10.50.40.205 (gw1.twc.weather.com [216.133.140.1]) by server.baldwin.cx (8.12.10/8.12.10) with ESMTP id i2BI5h28036973; Thu, 11 Mar 2004 13:05:43 -0500 (EST) (envelope-from jhb@FreeBSD.org) From: John Baldwin To: freebsd-hackers@FreeBSD.org, alasir@supereva.it Date: Thu, 11 Mar 2004 10:33:58 -0500 User-Agent: KMail/1.6 References: <20040311035117.4280.qmail@mail.supereva.it> In-Reply-To: <20040311035117.4280.qmail@mail.supereva.it> MIME-Version: 1.0 Content-Disposition: inline Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Message-Id: <200403111033.58716.jhb@FreeBSD.org> X-Spam-Checker-Version: SpamAssassin 2.63 (2004-01-11) on server.baldwin.cx cc: hackers@freebsd.org Subject: Re: i386/identcpu.c question X-BeenThere: freebsd-hackers@freebsd.org X-Mailman-Version: 2.1.1 Precedence: list List-Id: Technical Discussions relating to FreeBSD List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 11 Mar 2004 18:05:48 -0000 On Wednesday 10 March 2004 10:51 pm, RMH wrote: > Hello hackers, > > there are several lines in i386/identcpu.c: > > case 0x600: > /* Check the particular flavor of 686 */ > switch (cpu_id & 0xf0) { > case 0x00: > strcat(cpu_model, "Pentium Pro A-step"); > break; > case 0x10: > strcat(cpu_model, "Pentium Pro"); > break; > case 0x30: > case 0x50: > case 0x60: > strcat(cpu_model, > "Pentium II/Pentium II Xeon/Celeron"); > cpu = CPU_PII; > break; > case 0x70: > case 0x80: > case 0xa0: > case 0xb0: > strcat(cpu_model, > "Pentium III/Pentium III Xeon/Celeron"); > cpu = CPU_PIII; > break; > > 0x30 stands for 0.35-micron Klamath core (Pentium II), there > were no Celeron or Xeon CPUs produced using it. There was > PIIOD, but check for the OverDrive is done separately. > > By the way, 0x60 stands for Celeron (Mendocino) and mobile > Pentium II (Dixon) only; 0x70 -- for Pentium III (Katmai) > and Pentium III Xeon (Tanner) only; 0x80 -- for Celeron > (Coppermine-128) and Pentium III (Coppermine) only; 0xa0 -- > for Pentium III Xeon (Cascades) only; 0xb0 -- for Celeron > (Tualatin) and Pentium III (Tualatin) only. > > case 0x30: > strcat(cpu_model, "Pentium II"); > cpu = CPU_PII; > break; > case 0x50: > strcat(cpu_model, > "Pentium II/Pentium II Xeon/Celeron"); > cpu = CPU_PII; > break; > case 0x60: > strcat(cpu_model, > "Mobile Pentium II/Celeron"); > cpu = CPU_PII; > break; > case 0x70: > strcat(cpu_model, > "Pentium III/Pentium III Xeon"); > cpu = CPU_PIII; > break; > case 0x80: > strcat(cpu_model, "Pentium III/Celeron"); > cpu = CPU_PIII; > break; > case 0xa0: > strcat(cpu_model, "Pentium III Xeon"); > cpu = CPU_PIII; > break; > case 0xb0: > strcat(cpu_model, "Pentium III/Celeron"); > cpu = CPU_PIII; > break; > > I suppose it doesn't take a lot of code to fix, but it looks > much better when a CPU is recognised properly (or close to). It used to be like this but was considered too much work to maintain and was consolidated. Note that on modern CPUs we use the name provided by extended cpuid. -- John Baldwin <>< http://www.FreeBSD.org/~jhb/ "Power Users Use the Power to Serve" = http://www.FreeBSD.org