annotate src/cs/drivers/drv_app/pwr/pwr_api.h @ 333:8a90038c0173

FCHG: store discharge state as threshold index rather than percentage
author Mychaela Falconia <falcon@freecalypso.org>
date Thu, 14 Dec 2017 18:35:16 +0000
parents c93a236e0d50
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
145
246f4a7dd92b src/cs/drivers/drv_app/pwr: import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
1 /*******************************************************************************
246f4a7dd92b src/cs/drivers/drv_app/pwr: import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
2 *
246f4a7dd92b src/cs/drivers/drv_app/pwr: import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
3 * pwr_api.h
246f4a7dd92b src/cs/drivers/drv_app/pwr: import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
4 *
246f4a7dd92b src/cs/drivers/drv_app/pwr: import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
5 * Purpose: This file contains definitions that can be used by any SWE
246f4a7dd92b src/cs/drivers/drv_app/pwr: import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
6 * for power management services.
246f4a7dd92b src/cs/drivers/drv_app/pwr: import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
7 *
246f4a7dd92b src/cs/drivers/drv_app/pwr: import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
8 * Author Candice Bazanegue (c-brille@ti.com)
246f4a7dd92b src/cs/drivers/drv_app/pwr: import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
9 *
246f4a7dd92b src/cs/drivers/drv_app/pwr: import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
10 * (C) Texas Instruments 2001
246f4a7dd92b src/cs/drivers/drv_app/pwr: import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
11 *
246f4a7dd92b src/cs/drivers/drv_app/pwr: import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
12 ******************************************************************************/
246f4a7dd92b src/cs/drivers/drv_app/pwr: import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
13
246f4a7dd92b src/cs/drivers/drv_app/pwr: import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
14 #ifndef __PWR_API_H__
246f4a7dd92b src/cs/drivers/drv_app/pwr: import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
15 #define __PWR_API_H__
246f4a7dd92b src/cs/drivers/drv_app/pwr: import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
16
151
c93a236e0d50 PWR SWE compiles
Mychaela Falconia <falcon@freecalypso.org>
parents: 146
diff changeset
17 #include "rv/rv_general.h"
145
246f4a7dd92b src/cs/drivers/drv_app/pwr: import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
18
246f4a7dd92b src/cs/drivers/drv_app/pwr: import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
19 typedef T_RV_RET T_POWER_RET;
246f4a7dd92b src/cs/drivers/drv_app/pwr: import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
20
246f4a7dd92b src/cs/drivers/drv_app/pwr: import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
21 typedef enum
246f4a7dd92b src/cs/drivers/drv_app/pwr: import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
22 {
246f4a7dd92b src/cs/drivers/drv_app/pwr: import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
23 POWER_OK = 0, /* OK */
246f4a7dd92b src/cs/drivers/drv_app/pwr: import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
24 POWER_ERROR = -1 /* ERROR */
246f4a7dd92b src/cs/drivers/drv_app/pwr: import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
25 };
246f4a7dd92b src/cs/drivers/drv_app/pwr: import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
26
246f4a7dd92b src/cs/drivers/drv_app/pwr: import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
27
246f4a7dd92b src/cs/drivers/drv_app/pwr: import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
28 /* Define the different charging process states */
246f4a7dd92b src/cs/drivers/drv_app/pwr: import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
29 typedef enum
246f4a7dd92b src/cs/drivers/drv_app/pwr: import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
30 {
246f4a7dd92b src/cs/drivers/drv_app/pwr: import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
31 CHARGE_STOPPED,
246f4a7dd92b src/cs/drivers/drv_app/pwr: import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
32 TESTING_BATTERY,
246f4a7dd92b src/cs/drivers/drv_app/pwr: import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
33 CI_CHARGE_STARTED, /* constant current charge */
246f4a7dd92b src/cs/drivers/drv_app/pwr: import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
34 CV_CHARGE_STARTED /* constant voltage charge */
246f4a7dd92b src/cs/drivers/drv_app/pwr: import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
35 }T_PWR_CHARGING_STATE;
246f4a7dd92b src/cs/drivers/drv_app/pwr: import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
36
246f4a7dd92b src/cs/drivers/drv_app/pwr: import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
37
246f4a7dd92b src/cs/drivers/drv_app/pwr: import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
38 /* Define the different states for TIMER0 use */
246f4a7dd92b src/cs/drivers/drv_app/pwr: import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
39 typedef enum
246f4a7dd92b src/cs/drivers/drv_app/pwr: import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
40 {
246f4a7dd92b src/cs/drivers/drv_app/pwr: import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
41 BATTERY_TYPE_TEST,
246f4a7dd92b src/cs/drivers/drv_app/pwr: import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
42 BATTERY_SHORT_TEST,
246f4a7dd92b src/cs/drivers/drv_app/pwr: import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
43 BATTERY_OPEN_TEST,
246f4a7dd92b src/cs/drivers/drv_app/pwr: import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
44 BATTERY_50UA_TEMP_TEST,
246f4a7dd92b src/cs/drivers/drv_app/pwr: import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
45 BATTERY_10UA_TEMP_TEST,
246f4a7dd92b src/cs/drivers/drv_app/pwr: import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
46 BATTERY_CALIBRATION
246f4a7dd92b src/cs/drivers/drv_app/pwr: import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
47 }T_PWR_TIMER0_STATE;
246f4a7dd92b src/cs/drivers/drv_app/pwr: import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
48
246f4a7dd92b src/cs/drivers/drv_app/pwr: import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
49
246f4a7dd92b src/cs/drivers/drv_app/pwr: import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
50 typedef struct
246f4a7dd92b src/cs/drivers/drv_app/pwr: import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
51 {
246f4a7dd92b src/cs/drivers/drv_app/pwr: import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
52 BOOLEAN info_enable;
246f4a7dd92b src/cs/drivers/drv_app/pwr: import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
53 T_RV_RETURN return_path;
246f4a7dd92b src/cs/drivers/drv_app/pwr: import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
54 }T_POWER_INFO;
246f4a7dd92b src/cs/drivers/drv_app/pwr: import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
55
246f4a7dd92b src/cs/drivers/drv_app/pwr: import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
56 typedef UINT8 T_PWR_PERCENT;
246f4a7dd92b src/cs/drivers/drv_app/pwr: import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
57
246f4a7dd92b src/cs/drivers/drv_app/pwr: import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
58 typedef struct
246f4a7dd92b src/cs/drivers/drv_app/pwr: import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
59 {
246f4a7dd92b src/cs/drivers/drv_app/pwr: import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
60 T_PWR_PERCENT remain_capa_threshold;
246f4a7dd92b src/cs/drivers/drv_app/pwr: import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
61 T_RV_RETURN return_path;
246f4a7dd92b src/cs/drivers/drv_app/pwr: import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
62 }T_POWER_ALERT;
246f4a7dd92b src/cs/drivers/drv_app/pwr: import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
63
246f4a7dd92b src/cs/drivers/drv_app/pwr: import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
64 typedef enum
246f4a7dd92b src/cs/drivers/drv_app/pwr: import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
65 {
246f4a7dd92b src/cs/drivers/drv_app/pwr: import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
66 BAT_TEMP_OUTSIDE_LIMITS,
246f4a7dd92b src/cs/drivers/drv_app/pwr: import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
67 BAT_OPEN_TEST_FAILED,
246f4a7dd92b src/cs/drivers/drv_app/pwr: import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
68 BAT_SHORT_TEST_FAILED,
246f4a7dd92b src/cs/drivers/drv_app/pwr: import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
69 BAT_TYPE_UNKNOWN
246f4a7dd92b src/cs/drivers/drv_app/pwr: import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
70 } T_BAT_PROBLEM;
246f4a7dd92b src/cs/drivers/drv_app/pwr: import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
71
246f4a7dd92b src/cs/drivers/drv_app/pwr: import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
72
246f4a7dd92b src/cs/drivers/drv_app/pwr: import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
73
246f4a7dd92b src/cs/drivers/drv_app/pwr: import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
74
246f4a7dd92b src/cs/drivers/drv_app/pwr: import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
75 /* Prototypes */
246f4a7dd92b src/cs/drivers/drv_app/pwr: import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
76
246f4a7dd92b src/cs/drivers/drv_app/pwr: import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
77 T_POWER_RET power_info_register(BOOLEAN info_enable, T_RV_RETURN return_path);
246f4a7dd92b src/cs/drivers/drv_app/pwr: import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
78 T_POWER_RET power_alert_register(T_PWR_PERCENT remain_capa_threshold, T_RV_RETURN return_path);
246f4a7dd92b src/cs/drivers/drv_app/pwr: import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
79 T_POWER_RET power_emergency_register(T_RV_RETURN return_path);
246f4a7dd92b src/cs/drivers/drv_app/pwr: import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
80 T_POWER_RET power_battery_information(void);
246f4a7dd92b src/cs/drivers/drv_app/pwr: import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
81 void pwr_get_bat_info(void);
246f4a7dd92b src/cs/drivers/drv_app/pwr: import from MV100 source
Mychaela Falconia <falcon@freecalypso.org>
parents:
diff changeset
82
146
fb95e3f83dc5 imported PWR source: s/ANALOG/ANLG_FAM/ for TCS211 environment
Mychaela Falconia <falcon@freecalypso.org>
parents: 145
diff changeset
83 #endif /* __PWR_API_H__ */