mirror of
https://github.com/torvalds/linux.git
synced 2024-12-15 15:41:58 +00:00
5f487cd34f
This fixes a race between power supply device and initial attributes creation, plus makes it possible to implement writable properties. [Daniel Mack - removed superflous return statement and dropped .mode attribute from POWER_SUPPLY_ATTR] Suggested-by: Greg KH <gregkh@suse.de> Suggested-by: Kay Sievers <kay.sievers@vrfy.org> Signed-off-by: Anton Vorontsov <cbouatmailru@gmail.com> Tested-by: Daniel Mack <daniel@caiaq.de>
39 lines
1.1 KiB
C
39 lines
1.1 KiB
C
/*
|
|
* Functions private to power supply class
|
|
*
|
|
* Copyright © 2007 Anton Vorontsov <cbou@mail.ru>
|
|
* Copyright © 2004 Szabolcs Gyurko
|
|
* Copyright © 2003 Ian Molton <spyro@f2s.com>
|
|
*
|
|
* Modified: 2004, Oct Szabolcs Gyurko
|
|
*
|
|
* You may use this code as per GPL version 2
|
|
*/
|
|
|
|
#ifdef CONFIG_SYSFS
|
|
|
|
extern void power_supply_init_attrs(struct device_type *dev_type);
|
|
extern int power_supply_uevent(struct device *dev, struct kobj_uevent_env *env);
|
|
|
|
#else
|
|
|
|
static inline void power_supply_init_attrs(struct device_type *dev_type) {}
|
|
#define power_supply_uevent NULL
|
|
|
|
#endif /* CONFIG_SYSFS */
|
|
|
|
#ifdef CONFIG_LEDS_TRIGGERS
|
|
|
|
extern void power_supply_update_leds(struct power_supply *psy);
|
|
extern int power_supply_create_triggers(struct power_supply *psy);
|
|
extern void power_supply_remove_triggers(struct power_supply *psy);
|
|
|
|
#else
|
|
|
|
static inline void power_supply_update_leds(struct power_supply *psy) {}
|
|
static inline int power_supply_create_triggers(struct power_supply *psy)
|
|
{ return 0; }
|
|
static inline void power_supply_remove_triggers(struct power_supply *psy) {}
|
|
|
|
#endif /* CONFIG_LEDS_TRIGGERS */
|