Does anyone have any idea where I can find documentation for Intel's SpeedStep, where the CPU slows down to save power (portables). I've found the documentation for AMDs PowerNow, but can't find anything on Intel's. I've tried Google searches, Google Group searches, Intel web site search and lastly here with no success. Example code in C or assembler would be great! Even Linux OS source if anyone knows where.

Also, here is how to do AMD's PowerNow detection. Does this look reasonable as I'm still new to assembly language programming.

Thanks - Jack

.model small

AMDSupportsPowerNow PROC STDCALL USES ebx ecx edx long1:dword, long2:dword, long3:dword, long4:dword

mov eax, 80000000h ; extended function 0x80000000
cpuid ; largest extended function
cmp eax, 80000000h ; no function > 0x80000000 ?
jbe $no_extended_features ; yes, no extended feature flags (Jump if Below)

mov eax, 80000007h ; CPUID ext. function 0x80000001
cpuid ; EDX = extended feature flags
and edx, 1
mov eax, edx
jmp $Finish

mov EAX, 0

;Finish Up
ret 16
AMDSupportsPowerNow endp

Posted on 2002-03-05 23:20:49 by JackRazz
I think I saw your post on x86 newsgroup :) Anyway I found a site, that will explain a little bit of what you want. I'm not an expert on detection...I'm sure you can get some info from this one.
Posted on 2002-03-06 16:41:27 by stryker
Thanks for the link. I'm surprised that the Intel Chip doesn't have a mechanism via CPUID to identify Speedstep like the AMD chip does.

Oh well
Posted on 2002-03-06 20:08:11 by JackRazz