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