From 19389a6a79b1dd9fe6559eaf4bcca2d30cb14578 Mon Sep 17 00:00:00 2001 From: Jeremy Fitzhardinge Date: Wed, 7 Dec 2011 09:15:45 -0800 Subject: [PATCH] --- yaml --- r: 283463 b: refs/heads/master c: 8351665195cec6d2b73cce8b66f02d6dde246a8e h: refs/heads/master i: 283461: 142161e45b72aba92398b01934b24e4002b2dc86 283459: a50e45e54ad6ce48b29de5bae280781016f5c43f 283455: 7825c094532fe425e8bc01e436aa0f931db2356b v: v3 --- [refs] | 2 +- trunk/drivers/power/power_supply_core.c | 7 +++++++ trunk/include/linux/power_supply.h | 1 + 3 files changed, 9 insertions(+), 1 deletion(-) diff --git a/[refs] b/[refs] index 956b824c541f..dfde6868823a 100644 --- a/[refs] +++ b/[refs] @@ -1,2 +1,2 @@ --- -refs/heads/master: 25a0bc2dfc2ea732f40af2dae52426ead66ae76e +refs/heads/master: 8351665195cec6d2b73cce8b66f02d6dde246a8e diff --git a/trunk/drivers/power/power_supply_core.c b/trunk/drivers/power/power_supply_core.c index 329b46b2327d..b10c121244e5 100644 --- a/trunk/drivers/power/power_supply_core.c +++ b/trunk/drivers/power/power_supply_core.c @@ -147,6 +147,12 @@ struct power_supply *power_supply_get_by_name(char *name) } EXPORT_SYMBOL_GPL(power_supply_get_by_name); +int power_supply_powers(struct power_supply *psy, struct device *dev) +{ + return sysfs_create_link_nowarn(&psy->dev->kobj, &dev->kobj, "powers"); +} +EXPORT_SYMBOL_GPL(power_supply_powers); + static void power_supply_dev_release(struct device *dev) { pr_debug("device: '%s': %s\n", dev_name(dev), __func__); @@ -202,6 +208,7 @@ EXPORT_SYMBOL_GPL(power_supply_register); void power_supply_unregister(struct power_supply *psy) { cancel_work_sync(&psy->changed_work); + sysfs_remove_link(&psy->dev->kobj, "powers"); power_supply_remove_triggers(psy); device_unregister(psy->dev); } diff --git a/trunk/include/linux/power_supply.h b/trunk/include/linux/power_supply.h index 040a7b08e7c7..2e3c8279b3b0 100644 --- a/trunk/include/linux/power_supply.h +++ b/trunk/include/linux/power_supply.h @@ -218,6 +218,7 @@ static inline int power_supply_is_system_supplied(void) { return -ENOSYS; } extern int power_supply_register(struct device *parent, struct power_supply *psy); extern void power_supply_unregister(struct power_supply *psy); +extern int power_supply_powers(struct power_supply *psy, struct device *dev); /* For APM emulation, think legacy userspace. */ extern struct class *power_supply_class;