@@ -81,30 +81,33 @@ module_param(bm_history, uint, 0644);
81
81
*
82
82
* To skip this limit, boot/load with a large max_cstate limit.
83
83
*/
84
- static int no_c2c3 (struct dmi_system_id * id )
84
+ static int set_max_cstate (struct dmi_system_id * id )
85
85
{
86
86
if (max_cstate > ACPI_PROCESSOR_MAX_POWER )
87
87
return 0 ;
88
88
89
- printk (KERN_NOTICE PREFIX "%s detected - C2,C3 disabled."
89
+ printk (KERN_NOTICE PREFIX "%s detected - %s disabled."
90
90
" Override with \"processor.max_cstate=%d\"\n" , id -> ident ,
91
+ ((int )id -> driver_data == 1 )? "C2,C3" :"C3" ,
91
92
ACPI_PROCESSOR_MAX_POWER + 1 );
92
93
93
- max_cstate = 1 ;
94
+ max_cstate = ( int ) id -> driver_data ;
94
95
95
96
return 0 ;
96
97
}
97
98
98
99
99
-
100
-
101
100
static struct dmi_system_id __initdata processor_power_dmi_table [] = {
102
- { no_c2c3 , "IBM ThinkPad R40e" , {
101
+ { set_max_cstate , "IBM ThinkPad R40e" , {
103
102
DMI_MATCH (DMI_BIOS_VENDOR ,"IBM" ),
104
- DMI_MATCH (DMI_BIOS_VERSION ,"1SET60WW" ) }},
105
- { no_c2c3 , "Medion 41700" , {
103
+ DMI_MATCH (DMI_BIOS_VERSION ,"1SET60WW" ) }, (void * )1 },
104
+ { set_max_cstate , "Medion 41700" , {
105
+ DMI_MATCH (DMI_BIOS_VENDOR ,"Phoenix Technologies LTD" ),
106
+ DMI_MATCH (DMI_BIOS_VERSION ,"R01-A1J" ) }, (void * )1 },
107
+ { set_max_cstate , "Clevo 5600D" , {
106
108
DMI_MATCH (DMI_BIOS_VENDOR ,"Phoenix Technologies LTD" ),
107
- DMI_MATCH (DMI_BIOS_VERSION ,"R01-A1J" ) }},
109
+ DMI_MATCH (DMI_BIOS_VERSION ,"SHE845M0.86C.0013.D.0302131307" ) },
110
+ (void * )2 },
108
111
{},
109
112
};
110
113
0 commit comments