Merge branches 'release', 'acpi_pm_device_sleep_state' and 'battery' into release
This commit is contained in:
@@ -194,6 +194,9 @@ static int acpi_battery_get_property(struct power_supply *psy,
|
|||||||
case POWER_SUPPLY_PROP_MANUFACTURER:
|
case POWER_SUPPLY_PROP_MANUFACTURER:
|
||||||
val->strval = battery->oem_info;
|
val->strval = battery->oem_info;
|
||||||
break;
|
break;
|
||||||
|
case POWER_SUPPLY_PROP_SERIAL_NUMBER:
|
||||||
|
val->strval = battery->serial_number;
|
||||||
|
break;
|
||||||
default:
|
default:
|
||||||
return -EINVAL;
|
return -EINVAL;
|
||||||
}
|
}
|
||||||
@@ -212,6 +215,7 @@ static enum power_supply_property charge_battery_props[] = {
|
|||||||
POWER_SUPPLY_PROP_CHARGE_NOW,
|
POWER_SUPPLY_PROP_CHARGE_NOW,
|
||||||
POWER_SUPPLY_PROP_MODEL_NAME,
|
POWER_SUPPLY_PROP_MODEL_NAME,
|
||||||
POWER_SUPPLY_PROP_MANUFACTURER,
|
POWER_SUPPLY_PROP_MANUFACTURER,
|
||||||
|
POWER_SUPPLY_PROP_SERIAL_NUMBER,
|
||||||
};
|
};
|
||||||
|
|
||||||
static enum power_supply_property energy_battery_props[] = {
|
static enum power_supply_property energy_battery_props[] = {
|
||||||
@@ -226,6 +230,7 @@ static enum power_supply_property energy_battery_props[] = {
|
|||||||
POWER_SUPPLY_PROP_ENERGY_NOW,
|
POWER_SUPPLY_PROP_ENERGY_NOW,
|
||||||
POWER_SUPPLY_PROP_MODEL_NAME,
|
POWER_SUPPLY_PROP_MODEL_NAME,
|
||||||
POWER_SUPPLY_PROP_MANUFACTURER,
|
POWER_SUPPLY_PROP_MANUFACTURER,
|
||||||
|
POWER_SUPPLY_PROP_SERIAL_NUMBER,
|
||||||
};
|
};
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
@@ -472,11 +472,20 @@ int acpi_pm_device_sleep_state(struct device *dev, int wake, int *d_min_p)
|
|||||||
if (acpi_target_sleep_state == ACPI_STATE_S0 ||
|
if (acpi_target_sleep_state == ACPI_STATE_S0 ||
|
||||||
(wake && adev->wakeup.state.enabled &&
|
(wake && adev->wakeup.state.enabled &&
|
||||||
adev->wakeup.sleep_state <= acpi_target_sleep_state)) {
|
adev->wakeup.sleep_state <= acpi_target_sleep_state)) {
|
||||||
|
acpi_status status;
|
||||||
|
|
||||||
acpi_method[3] = 'W';
|
acpi_method[3] = 'W';
|
||||||
acpi_evaluate_integer(handle, acpi_method, NULL, &d_max);
|
status = acpi_evaluate_integer(handle, acpi_method, NULL,
|
||||||
/* Sanity check */
|
&d_max);
|
||||||
if (d_max < d_min)
|
if (ACPI_FAILURE(status)) {
|
||||||
|
d_max = d_min;
|
||||||
|
} else if (d_max < d_min) {
|
||||||
|
/* Warn the user of the broken DSDT */
|
||||||
|
printk(KERN_WARNING "ACPI: Wrong value from %s\n",
|
||||||
|
acpi_method);
|
||||||
|
/* Sanitize it */
|
||||||
d_min = d_max;
|
d_min = d_max;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if (d_min_p)
|
if (d_min_p)
|
||||||
|
@@ -116,6 +116,7 @@ static struct device_attribute power_supply_attrs[] = {
|
|||||||
/* Properties of type `const char *' */
|
/* Properties of type `const char *' */
|
||||||
POWER_SUPPLY_ATTR(model_name),
|
POWER_SUPPLY_ATTR(model_name),
|
||||||
POWER_SUPPLY_ATTR(manufacturer),
|
POWER_SUPPLY_ATTR(manufacturer),
|
||||||
|
POWER_SUPPLY_ATTR(serial_number),
|
||||||
};
|
};
|
||||||
|
|
||||||
static ssize_t power_supply_show_static_attrs(struct device *dev,
|
static ssize_t power_supply_show_static_attrs(struct device *dev,
|
||||||
|
@@ -94,6 +94,7 @@ enum power_supply_property {
|
|||||||
/* Properties of type `const char *' */
|
/* Properties of type `const char *' */
|
||||||
POWER_SUPPLY_PROP_MODEL_NAME,
|
POWER_SUPPLY_PROP_MODEL_NAME,
|
||||||
POWER_SUPPLY_PROP_MANUFACTURER,
|
POWER_SUPPLY_PROP_MANUFACTURER,
|
||||||
|
POWER_SUPPLY_PROP_SERIAL_NUMBER,
|
||||||
};
|
};
|
||||||
|
|
||||||
enum power_supply_type {
|
enum power_supply_type {
|
||||||
|
Reference in New Issue
Block a user