1 From f722e17fdb2c97bbec2563636dd88489cdb1428b Mon Sep 17 00:00:00 2001
2 From: Lars-Peter Clausen <lars@metafoo.de>
3 Date: Sat, 8 Jan 2011 19:12:26 +0100
4 Subject: [PATCH] power_supply: Ignore -ENODATA errors when generating uevents
6 Sometimes a driver can not report a meaningful value for a certain property
9 Currently when generating a uevent and a property return -ENODATA it is
10 treated as an error an no uevent is generated at all. This is not an
13 This patch adds a special case for -ENODATA and ignores properties which
14 return this error code when generating the uevent.
16 Signed-off-by: Lars-Peter Clausen <lars@metafoo.de>
17 Tested-by: Grazvydas Ignotas <notasas@gmail.com>
19 drivers/power/power_supply_sysfs.c | 2 +-
20 1 files changed, 1 insertions(+), 1 deletions(-)
22 diff --git a/drivers/power/power_supply_sysfs.c b/drivers/power/power_supply_sysfs.c
23 index cd1f907..605514a 100644
24 --- a/drivers/power/power_supply_sysfs.c
25 +++ b/drivers/power/power_supply_sysfs.c
26 @@ -270,7 +270,7 @@ int power_supply_uevent(struct device *dev, struct kobj_uevent_env *env)
27 attr = &power_supply_attrs[psy->properties[j]];
29 ret = power_supply_show_property(dev, attr, prop_buf);
30 - if (ret == -ENODEV) {
31 + if (ret == -ENODEV || ret == -ENODATA) {
32 /* When a battery is absent, we expect -ENODEV. Don't abort;
33 send the uevent with at least the the PRESENT=0 property */