1 | /* SPDX-License-Identifier: GPL-2.0-only */ |
2 | /* |
3 | * Functions private to power supply class |
4 | * |
5 | * Copyright © 2007 Anton Vorontsov <cbou@mail.ru> |
6 | * Copyright © 2004 Szabolcs Gyurko |
7 | * Copyright © 2003 Ian Molton <spyro@f2s.com> |
8 | * |
9 | * Modified: 2004, Oct Szabolcs Gyurko |
10 | */ |
11 | |
12 | struct device; |
13 | struct device_type; |
14 | struct power_supply; |
15 | |
16 | #ifdef CONFIG_SYSFS |
17 | |
18 | extern void power_supply_init_attrs(void); |
19 | extern int power_supply_uevent(const struct device *dev, struct kobj_uevent_env *env); |
20 | extern const struct attribute_group *power_supply_attr_groups[]; |
21 | |
22 | #else |
23 | |
24 | static inline void power_supply_init_attrs(void) {} |
25 | #define power_supply_attr_groups NULL |
26 | #define power_supply_uevent NULL |
27 | |
28 | #endif /* CONFIG_SYSFS */ |
29 | |
30 | #ifdef CONFIG_LEDS_TRIGGERS |
31 | |
32 | extern void power_supply_update_leds(struct power_supply *psy); |
33 | extern int power_supply_create_triggers(struct power_supply *psy); |
34 | extern void power_supply_remove_triggers(struct power_supply *psy); |
35 | |
36 | #else |
37 | |
38 | static inline void power_supply_update_leds(struct power_supply *psy) {} |
39 | static inline int power_supply_create_triggers(struct power_supply *psy) |
40 | { return 0; } |
41 | static inline void power_supply_remove_triggers(struct power_supply *psy) {} |
42 | |
43 | #endif /* CONFIG_LEDS_TRIGGERS */ |
44 | |