Commit 8976b6fd authored by Len Brown's avatar Len Brown

Merge branches 'release' and 'throttling-domains' into release

parents 52b097ff 3391a76f
...@@ -45,6 +45,12 @@ static void init_intel_pdc(struct acpi_processor *pr) ...@@ -45,6 +45,12 @@ static void init_intel_pdc(struct acpi_processor *pr)
buf[0] = ACPI_PDC_REVISION_ID; buf[0] = ACPI_PDC_REVISION_ID;
buf[1] = 1; buf[1] = 1;
buf[2] = ACPI_PDC_EST_CAPABILITY_SMP; buf[2] = ACPI_PDC_EST_CAPABILITY_SMP;
/*
* The default of PDC_SMP_T_SWCOORD bit is set for IA64 cpu so
* that OSPM is capable of native ACPI throttling software
* coordination using BIOS supplied _TSD info.
*/
buf[2] |= ACPI_PDC_SMP_T_SWCOORD;
obj->type = ACPI_TYPE_BUFFER; obj->type = ACPI_TYPE_BUFFER;
obj->buffer.length = 12; obj->buffer.length = 12;
......
...@@ -46,6 +46,12 @@ static void init_intel_pdc(struct acpi_processor *pr, struct cpuinfo_x86 *c) ...@@ -46,6 +46,12 @@ static void init_intel_pdc(struct acpi_processor *pr, struct cpuinfo_x86 *c)
buf[1] = 1; buf[1] = 1;
buf[2] = ACPI_PDC_C_CAPABILITY_SMP; buf[2] = ACPI_PDC_C_CAPABILITY_SMP;
/*
* The default of PDC_SMP_T_SWCOORD bit is set for intel x86 cpu so
* that OSPM is capable of native ACPI throttling software
* coordination using BIOS supplied _TSD info.
*/
buf[2] |= ACPI_PDC_SMP_T_SWCOORD;
if (cpu_has(c, X86_FEATURE_EST)) if (cpu_has(c, X86_FEATURE_EST))
buf[2] |= ACPI_PDC_EST_CAPABILITY_SWSMP; buf[2] |= ACPI_PDC_EST_CAPABILITY_SWSMP;
......
...@@ -1091,6 +1091,8 @@ static int __init acpi_processor_init(void) ...@@ -1091,6 +1091,8 @@ static int __init acpi_processor_init(void)
acpi_processor_ppc_init(); acpi_processor_ppc_init();
acpi_processor_throttling_init();
return 0; return 0;
out_cpuidle: out_cpuidle:
......
This diff is collapsed.
...@@ -177,6 +177,8 @@ struct acpi_processor_throttling { ...@@ -177,6 +177,8 @@ struct acpi_processor_throttling {
u32 address; u32 address;
u8 duty_offset; u8 duty_offset;
u8 duty_width; u8 duty_width;
u8 tsd_valid_flag;
unsigned int shared_type;
struct acpi_processor_tx states[ACPI_PROCESSOR_MAX_THROTTLING]; struct acpi_processor_tx states[ACPI_PROCESSOR_MAX_THROTTLING];
}; };
...@@ -317,7 +319,7 @@ static inline int acpi_processor_ppc_has_changed(struct acpi_processor *pr) ...@@ -317,7 +319,7 @@ static inline int acpi_processor_ppc_has_changed(struct acpi_processor *pr)
int acpi_processor_get_throttling_info(struct acpi_processor *pr); int acpi_processor_get_throttling_info(struct acpi_processor *pr);
extern int acpi_processor_set_throttling(struct acpi_processor *pr, int state); extern int acpi_processor_set_throttling(struct acpi_processor *pr, int state);
extern struct file_operations acpi_processor_throttling_fops; extern struct file_operations acpi_processor_throttling_fops;
extern void acpi_processor_throttling_init(void);
/* in processor_idle.c */ /* in processor_idle.c */
int acpi_processor_power_init(struct acpi_processor *pr, int acpi_processor_power_init(struct acpi_processor *pr,
struct acpi_device *device); struct acpi_device *device);
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment