File tree Expand file tree Collapse file tree 2 files changed +17
-0
lines changed Expand file tree Collapse file tree 2 files changed +17
-0
lines changed Original file line number Diff line number Diff line change @@ -756,6 +756,21 @@ void battery_hook_register(struct acpi_battery_hook *hook)
756
756
}
757
757
EXPORT_SYMBOL_GPL (battery_hook_register );
758
758
759
+ static void devm_battery_hook_unregister (void * data )
760
+ {
761
+ struct acpi_battery_hook * hook = data ;
762
+
763
+ battery_hook_unregister (hook );
764
+ }
765
+
766
+ int devm_battery_hook_register (struct device * dev , struct acpi_battery_hook * hook )
767
+ {
768
+ battery_hook_register (hook );
769
+
770
+ return devm_add_action_or_reset (dev , devm_battery_hook_unregister , hook );
771
+ }
772
+ EXPORT_SYMBOL_GPL (devm_battery_hook_register );
773
+
759
774
/*
760
775
* This function gets called right after the battery sysfs
761
776
* attributes have been added, so that the drivers that
Original file line number Diff line number Diff line change 2
2
#ifndef __ACPI_BATTERY_H
3
3
#define __ACPI_BATTERY_H
4
4
5
+ #include <linux/device.h>
5
6
#include <linux/power_supply.h>
6
7
7
8
#define ACPI_BATTERY_CLASS "battery"
@@ -19,5 +20,6 @@ struct acpi_battery_hook {
19
20
20
21
void battery_hook_register (struct acpi_battery_hook * hook );
21
22
void battery_hook_unregister (struct acpi_battery_hook * hook );
23
+ int devm_battery_hook_register (struct device * dev , struct acpi_battery_hook * hook );
22
24
23
25
#endif
You can’t perform that action at this time.
0 commit comments