We have software that disables Turbo mode from Windows via our driver. While our code works on most platforms supporting Turbo mode, is does not seem to work on the mobile Core i5 and mobile Core i7. Basically our code specific to these CPU models is something like:
if (bGenuineIntel && ((iFamily == 0x06 && iModel == 0x25) || (iFamily == 0x06 && iModel == 0x2C)) && CPUID.06H:EAX[1:1])
...snipped... get MSR 0X1A0 (IA32_MISC_ENABLE)from the CPU via driver [to ull_0x1A0]
bool bTurboDisabled = BitExtractULL(ullMSRResult, 38, 38) != 0;
ull_0x1A0_new = (ULONGLONG) 0x0000004000000000ULL | ull_0x1A0;//Set Turbo flag to 1 - disable
...snipped... write the new value of MSR 0X1a0 to the CPU via driver
Any help specific to disabling Turbo mode on mobile CPU's would be appreciated.