|
@@ -218,9 +218,13 @@ processor_get_max_state(struct thermal_cooling_device *cdev,
|
|
|
unsigned long *state)
|
|
|
{
|
|
|
struct acpi_device *device = cdev->devdata;
|
|
|
- struct acpi_processor *pr = acpi_driver_data(device);
|
|
|
+ struct acpi_processor *pr;
|
|
|
|
|
|
- if (!device || !pr)
|
|
|
+ if (!device)
|
|
|
+ return -EINVAL;
|
|
|
+
|
|
|
+ pr = acpi_driver_data(device);
|
|
|
+ if (!pr)
|
|
|
return -EINVAL;
|
|
|
|
|
|
*state = acpi_processor_max_state(pr);
|
|
@@ -232,9 +236,13 @@ processor_get_cur_state(struct thermal_cooling_device *cdev,
|
|
|
unsigned long *cur_state)
|
|
|
{
|
|
|
struct acpi_device *device = cdev->devdata;
|
|
|
- struct acpi_processor *pr = acpi_driver_data(device);
|
|
|
+ struct acpi_processor *pr;
|
|
|
|
|
|
- if (!device || !pr)
|
|
|
+ if (!device)
|
|
|
+ return -EINVAL;
|
|
|
+
|
|
|
+ pr = acpi_driver_data(device);
|
|
|
+ if (!pr)
|
|
|
return -EINVAL;
|
|
|
|
|
|
*cur_state = cpufreq_get_cur_state(pr->id);
|
|
@@ -248,11 +256,15 @@ processor_set_cur_state(struct thermal_cooling_device *cdev,
|
|
|
unsigned long state)
|
|
|
{
|
|
|
struct acpi_device *device = cdev->devdata;
|
|
|
- struct acpi_processor *pr = acpi_driver_data(device);
|
|
|
+ struct acpi_processor *pr;
|
|
|
int result = 0;
|
|
|
int max_pstate;
|
|
|
|
|
|
- if (!device || !pr)
|
|
|
+ if (!device)
|
|
|
+ return -EINVAL;
|
|
|
+
|
|
|
+ pr = acpi_driver_data(device);
|
|
|
+ if (!pr)
|
|
|
return -EINVAL;
|
|
|
|
|
|
max_pstate = cpufreq_get_max_state(pr->id);
|