CPUID -> Deschutes vs. Celeron

Terence Murphy (tsmurphy@ichips.intel.com)
Thu, 19 Nov 1998 12:56:06 -0800 (PST)


Hi All:

I have a quad deschutes machine, and Linux comes up and identifies it as
celeron (covington). This is not really a problem of course, but it
makes linux look bad in the eyes of management. ;-)

I have narrowed the problem to this snippet of code (in
arch/i386/kernel/setup.c):

if ((cpu_models[i].vendor == X86_VENDOR_INTEL)
&& (cpu_models[i].x86 == 6)
&& (c->x86_model == 5)
&& (c->x86_cache_size == 0)) {

p = "Celeron (Covington)";
}

With this commented out it correctly identifies the CPU as a Deschutes.
So, I was wondering what exactly this code is for. i.e. why can't the
covington be identified with the normal procedure?

The key here is c->x86_cache_size. For the deschutes, CPUID 2
returns EDX of 0x40, which Linux thinks means 0 L2 cache. Where does this
come from? In the blue book, 0x41 -> 0x44 have values but not 0x40.

Regards,

Terry Murphy (speaking for only myself)

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.rutgers.edu
Please read the FAQ at http://www.tux.org/lkml/