battery.h 768 B

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