1/*
2 * Copyright 2004-2010, Haiku Inc. All Rights Reserved.
3 * Distributed under the terms of the MIT License.
4 */
5#ifndef _USB_HID_PAGE_BATTERY_SYSTEM_H
6#define _USB_HID_PAGE_BATTERY_SYSTEM_H
7
8
9/* Reference:
10 *		HID Usage Page 0x85: BATTERY SYSTEM
11 *		Universal Serial Bus Usage Tables for HID Power Devices Ver. 1.0
12 *		http://www.usb.org/developers/devclass_docs/pdcv10.pdf
13 */
14
15// Usage IDs
16enum {
17	B_HID_UID_BAT_SMB_BATTERY_MODE = 0x01,
18	B_HID_UID_BAT_SMB_BATTERY_STATUS,
19	B_HID_UID_BAT_SMB_ALARM_WARNING,
20	B_HID_UID_BAT_SMB_CHARGER_MODE,
21	B_HID_UID_BAT_SMB_CHARGER_STATUS,
22	B_HID_UID_BAT_SMB_CHARGER_SPEC_INFO,
23	B_HID_UID_BAT_SMB_SELECTOR_STATE,
24	B_HID_UID_BAT_SMB_SELECTOR_PRESETS,
25	B_HID_UID_BAT_SMB_SELECTOR_INFO,
26
27	B_HID_UID_BAT_OPTIONAL_MFG_FUNCTION1 = 0x10,
28	B_HID_UID_BAT_OPTIONAL_MFG_FUNCTION2,
29	B_HID_UID_BAT_OPTIONAL_MFG_FUNCTION3,
30	B_HID_UID_BAT_OPTIONAL_MFG_FUNCTION4,
31	B_HID_UID_BAT_OPTIONAL_MFG_FUNCTION5,
32	B_HID_UID_BAT_CONNECTION_TO_SM_BUS,
33	B_HID_UID_BAT_OUTPUT_CONNECTION,
34	B_HID_UID_BAT_CHARGER_CONNECTION,
35	B_HID_UID_BAT_BATTERY_INSERTION,
36	B_HID_UID_BAT_USE_NEXT,
37	B_HID_UID_BAT_OK_TO_USE,
38	B_HID_UID_BAT_BATTERY_SUPPORTED,
39	B_HID_UID_BAT_SELECTOR_REVISION,
40	B_HID_UID_BAT_CHARGING_INDICATOR,
41
42	B_HID_UID_BAT_MANUFACTURER_ACCESS = 0x28,
43	B_HID_UID_BAT_REMAINING_CAPACITY_LIMIT,
44	B_HID_UID_BAT_REMAINING_TIME_LIMIT,
45	B_HID_UID_BAT_AT_RATE,
46	B_HID_UID_BAT_CAPACITY_MODE,
47	B_HID_UID_BAT_BROADCAST_TO_CHARGER,
48	B_HID_UID_BAT_PRIMARY_BATTERY,
49	B_HID_UID_BAT_CHARGE_CONTROLLER,
50
51	B_HID_UID_BAT_TERMINATE_CHARGE = 0x40,
52	B_HID_UID_BAT_TERMINATE_DISCHARGE,
53	B_HID_UID_BAT_BELOW_REMAINING_CAPACITY_LIMIT,
54	B_HID_UID_BAT_REMAINING_TIME_LIMIT_EXPIRED,
55	B_HID_UID_BAT_CHARGING,
56	B_HID_UID_BAT_DISCHARGING,
57	B_HID_UID_BAT_FULLY_CHARGED,
58	B_HID_UID_BAT_FULLY_DISCHARGED,
59	B_HID_UID_BAT_CONDITIONAL_FLAG,
60	B_HID_UID_BAT_AT_RATE_OK,
61	B_HID_UID_BAT_SMB_ERROR_CODE,
62	B_HID_UID_BAT_NEED_REPLACEMENT,
63
64	B_HID_UID_BAT_AT_RATE_TIME_TO_FULL = 0x60,
65	B_HID_UID_BAT_AT_RATE_TIME_TO_EMPTY,
66	B_HID_UID_BAT_AVERAGE_CURRENT,
67	B_HID_UID_BAT_MAX_ERROR,
68	B_HID_UID_BAT_RELATIVE_STATE_OF_CHARGE,
69	B_HID_UID_BAT_ABSOLUTE_STATE_OF_CHARGE,
70	B_HID_UID_BAT_REMAINING_CAPACITY,
71	B_HID_UID_BAT_FULL_CHARGE_CAPACITY,
72	B_HID_UID_BAT_RUN_TIME_TO_EMPTY,
73	B_HID_UID_BAT_AVERAGE_TIME_TO_EMPTY,
74	B_HID_UID_BAT_AVERAGE_TIME_TO_FULL,
75	B_HID_UID_BAT_CYCLE_COUNT,
76
77	B_HID_UID_BAT_BATT_PACK_MODEL_LEVEL = 0x80,
78	B_HID_UID_BAT_INTERNAL_CHARGE_CONTROLLER,
79	B_HID_UID_BAT_PRIMARY_BATTERY_SUPPORT,
80	B_HID_UID_BAT_DESIGN_CAPACITY,
81	B_HID_UID_BAT_SPECIFICATION_INFO,
82	B_HID_UID_BAT_MANUFACTURER_DATE,
83	B_HID_UID_BAT_SERIAL_NUMBER,
84	B_HID_UID_BAT_IMANUFACTURER_NAME,
85	B_HID_UID_BAT_IDEVICE_NAME,
86	B_HID_UID_BAT_IDEVICE_CHEMISTRY,
87	B_HID_UID_BAT_MANUFACTURER_DATA,
88	B_HID_UID_BAT_RECHARGABLE,
89	B_HID_UID_BAT_WARNING_CAPACITY_LIMIT,
90	B_HID_UID_BAT_CAPACITY_GRANULARITY_1,
91	B_HID_UID_BAT_CAPACITY_GRANULARITY_2,
92	B_HID_UID_BAT_IOEM_INFORMATION,
93
94	B_HID_UID_BAT_INHIBIT_CHARGE = 0xc0,
95	B_HID_UID_BAT_ENABLE_POLLING,
96	B_HID_UID_BAT_RESET_TO_ZERO,
97
98	B_HID_UID_BAT_AC_PRESENT = 0xd0,
99	B_HID_UID_BAT_BATTERY_PRESENT,
100	B_HID_UID_BAT_POWER_FAIL,
101	B_HID_UID_BAT_ALARM_INHIBITED,
102	B_HID_UID_BAT_THERMISTOR_UNDER_RANGE,
103	B_HID_UID_BAT_THERMISTOR_HOT,
104	B_HID_UID_BAT_THERMISTOR_COLD,
105	B_HID_UID_BAT_THERMISTOR_OVER_RANGE,
106	B_HID_UID_BAT_VOLTAGE_OUT_OF_RANGE,
107	B_HID_UID_BAT_CURRENT_OUT_OF_RANGE,
108	B_HID_UID_BAT_CURRENT_NOT_REGULATED,
109	B_HID_UID_BAT_VOLTAGE_NOT_REGULATED,
110	B_HID_UID_BAT_MASTER_MODE,
111
112	B_HID_UID_BAT_CHARGER_SELECTOR_SUPPORT = 0xf0,
113	B_HID_UID_BAT_CHARGER_SPEC,
114	B_HID_UID_BAT_LEVEL_2,
115	B_HID_UID_BAT_LEVEL_3
116};
117
118
119#endif // _USB_HID_PAGE_BATTERY_SYSTEM_H
120