Subject: port-i386/33080: EST regression with Pentium M 738
To: None <,,>
From: None <>
List: netbsd-bugs
Date: 03/15/2006 00:20:00
>Number:         33080
>Category:       port-i386
>Synopsis:       EST regression with Pentium M 738
>Confidential:   no
>Severity:       serious
>Priority:       high
>Responsible:    port-i386-maintainer
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Wed Mar 15 00:20:00 +0000 2006
>Originator:     Jukka Salmi
>Release:        NetBSD 3.99.17
System: NetBSD 3.99.17 NetBSD 3.99.17 (ANOLE.APM) #3: Wed Mar 15 00:23:56 CET 2006 i386
Architecture: i386
Machine: i386
CPU: Intel Pentium M (Dothan) 738
EST is not correctly detected anymore with my M738 cpu; this regression
took place somewhere between revisions 1.15 and 1.22 of

Boot a recent GENERIC kernel on a M738 system:

cpu0 at mainbus0: (uniprocessor)     
cpu0: Intel Pentium M (Dothan) (686-class), 1395.54 MHz, id 0x6d6
cpu0: features afe9fbbf<FPU,VME,DE,PSE,TSC,MSR,MCE,CX8,APIC,SEP,MTRR>
cpu0: features afe9fbbf<PGE,MCA,CMOV,PAT,CFLUSH,DS,ACPI,MMX>
cpu0: features afe9fbbf<FXSR,SSE,SSE2,SS,TM,SBF>
cpu0: features2 180<EST,TM2>
cpu0: "Intel(R) Pentium(R) M processor 1.40GHz"
cpu0: I-cache 32 KB 64B/line 8-way, D-cache 32 KB 64B/line 8-way
cpu0: L2 cache 2 MB 64B/line 8-way
cpu0: using thermal monitor 2        
cpu0: Enhanced SpeedStep (1116 mV) operating point not in table
cpu0: 64 page colors

This used to print:
cpu0: Enhanced SpeedStep running at 1400 MHz (1116 mV)
cpu0: Enhanced SpeedStep frequencies available (MHz): 1400 1300 1200 1100 1000 900 800 600 

The correct CPUID for the M738 seems to be 0x06d6 (instead of 0x06d8
as in est.c!). With the current code, the M738 gets detected as a M710
since they have the same `brand_tag', and the M710 has the M738's
`cpu_id'. I don't know the correct CPUID for the M710.