summaryrefslogtreecommitdiffstats
path: root/drivers/power
diff options
context:
space:
mode:
authorLars-Peter Clausen <lars@metafoo.de>2011-01-08 19:12:26 +0100
committerLars-Peter Clausen <lars@metafoo.de>2011-02-22 06:47:52 +0100
commitf722e17fdb2c97bbec2563636dd88489cdb1428b (patch)
tree10cc26fa54a4c5f05335df45019b3ae2213b48ad /drivers/power
parent6501f728c56f831626d52b236023e556bca37f51 (diff)
downloadlinux-f722e17fdb2c97bbec2563636dd88489cdb1428b.tar.bz2
power_supply: Ignore -ENODATA errors when generating uevents
Sometimes a driver can not report a meaningful value for a certain property and returns -ENODATA. Currently when generating a uevent and a property return -ENODATA it is treated as an error an no uevent is generated at all. This is not an desirable behavior. This patch adds a special case for -ENODATA and ignores properties which return this error code when generating the uevent. Signed-off-by: Lars-Peter Clausen <lars@metafoo.de> Tested-by: Grazvydas Ignotas <notasas@gmail.com>
Diffstat (limited to 'drivers/power')
-rw-r--r--drivers/power/power_supply_sysfs.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/power/power_supply_sysfs.c b/drivers/power/power_supply_sysfs.c
index cd1f90754a3a..605514afc29f 100644
--- a/drivers/power/power_supply_sysfs.c
+++ b/drivers/power/power_supply_sysfs.c
@@ -270,7 +270,7 @@ int power_supply_uevent(struct device *dev, struct kobj_uevent_env *env)
attr = &power_supply_attrs[psy->properties[j]];
ret = power_supply_show_property(dev, attr, prop_buf);
- if (ret == -ENODEV) {
+ if (ret == -ENODEV || ret == -ENODATA) {
/* When a battery is absent, we expect -ENODEV. Don't abort;
send the uevent with at least the the PRESENT=0 property */
ret = 0;