blob: cc439fd89d8dda469c52795bcc59074245b1cec8 [file] [log] [blame]
Anton Vorontsov4a11b592007-05-04 00:27:45 +04001/*
2 * Functions private to power supply class
3 *
4 * Copyright © 2007 Anton Vorontsov <cbou@mail.ru>
5 * Copyright © 2004 Szabolcs Gyurko
6 * Copyright © 2003 Ian Molton <spyro@f2s.com>
7 *
8 * Modified: 2004, Oct Szabolcs Gyurko
9 *
10 * You may use this code as per GPL version 2
11 */
12
Paul Gortmaker51990e82012-01-22 11:23:42 -050013struct device;
14struct device_type;
15struct power_supply;
16
Anton Vorontsov4a11b592007-05-04 00:27:45 +040017#ifdef CONFIG_SYSFS
18
Anton Vorontsov5f487cd2010-05-18 21:49:51 +020019extern void power_supply_init_attrs(struct device_type *dev_type);
Kay Sievers7eff2e72007-08-14 15:15:12 +020020extern int power_supply_uevent(struct device *dev, struct kobj_uevent_env *env);
Anton Vorontsov4a11b592007-05-04 00:27:45 +040021
22#else
23
Anton Vorontsov5f487cd2010-05-18 21:49:51 +020024static inline void power_supply_init_attrs(struct device_type *dev_type) {}
Anton Vorontsov4a11b592007-05-04 00:27:45 +040025#define power_supply_uevent NULL
26
27#endif /* CONFIG_SYSFS */
28
29#ifdef CONFIG_LEDS_TRIGGERS
30
31extern void power_supply_update_leds(struct power_supply *psy);
32extern int power_supply_create_triggers(struct power_supply *psy);
33extern void power_supply_remove_triggers(struct power_supply *psy);
34
35#else
36
37static inline void power_supply_update_leds(struct power_supply *psy) {}
38static inline int power_supply_create_triggers(struct power_supply *psy)
39{ return 0; }
40static inline void power_supply_remove_triggers(struct power_supply *psy) {}
41
42#endif /* CONFIG_LEDS_TRIGGERS */