summaryrefslogtreecommitdiff
path: root/hw/usb/hid-logitech-dj.h
diff options
context:
space:
mode:
Diffstat (limited to 'hw/usb/hid-logitech-dj.h')
-rw-r--r--hw/usb/hid-logitech-dj.h22
1 files changed, 17 insertions, 5 deletions
diff --git a/hw/usb/hid-logitech-dj.h b/hw/usb/hid-logitech-dj.h
index 6a29b6639e..785f0d5b56 100644
--- a/hw/usb/hid-logitech-dj.h
+++ b/hw/usb/hid-logitech-dj.h
@@ -220,11 +220,23 @@ typedef struct {
/* TODO: status (device seen or not, encrypted link) */
struct {
- uint8_t level;
- enum {
- BAT_STS_CHARGING,
- /* TODO: charging, discharging, etc. */
- } status;
+ uint8_t nlevels;
+ uint8_t level; /* in range (1, nlevels) */
+#define BAT_FLAG_DISABLE_OSD (1 << 0)
+#define BAT_FLAG_ENABLE_MILEAGE (1 << 1)
+#define BAT_FLAG_RECHARGEABLE (1 << 2)
+ uint8_t flags;
+ uint8_t critical_perc;
+
+#define BAT_STS_DISCHARGING 0
+#define BAT_STS_RECHARGING 1
+#define BAT_STS_CHARGE_FINAL 2
+#define BAT_STS_CHARGE_COMPLETE 3
+#define BAT_STS_RECHARGING_SLOW 4
+#define BAT_STS_INVALID_BATTERY 5
+#define BAT_STS_THERMAL_ERROR 6
+#define BAT_STS_CHARGING_ERROR 7
+ uint8_t status;
} battery;
uint8_t activity_counter;
} LHidDevice;