提交 335f16be 编写于 作者: D David Shaohua Li 提交者: Len Brown

[ACPI] address boot-freeze with updated DMI blacklist for c-states

http://bugzilla.kernel.org/show_bug.cgi?id=4763Signed-off-by: NDavid Shaohua Li <shaohua.li@intel.com>
Signed-off-by: NLen Brown <len.brown@intel.com>
上级 0b6b2f08
......@@ -81,30 +81,33 @@ module_param(bm_history, uint, 0644);
*
* To skip this limit, boot/load with a large max_cstate limit.
*/
static int no_c2c3(struct dmi_system_id *id)
static int set_max_cstate(struct dmi_system_id *id)
{
if (max_cstate > ACPI_PROCESSOR_MAX_POWER)
return 0;
printk(KERN_NOTICE PREFIX "%s detected - C2,C3 disabled."
printk(KERN_NOTICE PREFIX "%s detected - %s disabled."
" Override with \"processor.max_cstate=%d\"\n", id->ident,
((int)id->driver_data == 1)? "C2,C3":"C3",
ACPI_PROCESSOR_MAX_POWER + 1);
max_cstate = 1;
max_cstate = (int)id->driver_data;
return 0;
}
static struct dmi_system_id __initdata processor_power_dmi_table[] = {
{ no_c2c3, "IBM ThinkPad R40e", {
{ set_max_cstate, "IBM ThinkPad R40e", {
DMI_MATCH(DMI_BIOS_VENDOR,"IBM"),
DMI_MATCH(DMI_BIOS_VERSION,"1SET60WW") }},
{ no_c2c3, "Medion 41700", {
DMI_MATCH(DMI_BIOS_VERSION,"1SET60WW") }, (void*)1},
{ set_max_cstate, "Medion 41700", {
DMI_MATCH(DMI_BIOS_VENDOR,"Phoenix Technologies LTD"),
DMI_MATCH(DMI_BIOS_VERSION,"R01-A1J") }, (void*)1},
{ set_max_cstate, "Clevo 5600D", {
DMI_MATCH(DMI_BIOS_VENDOR,"Phoenix Technologies LTD"),
DMI_MATCH(DMI_BIOS_VERSION,"R01-A1J") }},
DMI_MATCH(DMI_BIOS_VERSION,"SHE845M0.86C.0013.D.0302131307") },
(void*)2},
{},
};
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册