1 /* SPDX-License-Identifier: GPL-2.0 */ 2 #ifndef __ACPI_BATTERY_H 3 #define __ACPI_BATTERY_H 4 5 #include <linux/device.h> 6 #include <linux/power_supply.h> 7 8 #define ACPI_BATTERY_CLASS "battery" 9 10 #define ACPI_BATTERY_NOTIFY_STATUS 0x80 11 #define ACPI_BATTERY_NOTIFY_INFO 0x81 12 #define ACPI_BATTERY_NOTIFY_THRESHOLD 0x82 13 14 struct acpi_battery_hook { 15 const char *name; 16 int (*add_battery)(struct power_supply *battery, struct acpi_battery_hook *hook); 17 int (*remove_battery)(struct power_supply *battery, struct acpi_battery_hook *hook); 18 struct list_head list; 19 }; 20 21 void battery_hook_register(struct acpi_battery_hook *hook); 22 void battery_hook_unregister(struct acpi_battery_hook *hook); 23 int devm_battery_hook_register(struct device *dev, struct acpi_battery_hook *hook); 24 25 #endif 26