blob: d34be61421a5fc5ac3b90751ad94f75f25515fd6 [file] [log] [blame]
yuezonghe824eb0c2024-06-27 02:32:26 -07001/*******************************************************************************
2 * Copyright (C) 2007, ZTE Corporation.
3 *
4 * File Name: drvs_io_led.h
5 * File Mark:
6 * Description:
7 * Others:
8 * Version: 1.0
9 * Author: yuxiang
10 * Date: 2014-07-03
11 * History 1:
12 * Date:
13 * Version:
14 * Author:
15 * Modification:
16 * History 2:
17 ********************************************************************************/
18
19#ifndef _DRVS_IO_CHG_H
20#define _DRVS_IO_CHG_H
21
22/****************************************************************************
23* Include files
24****************************************************************************/
25#include "drvs_io.h"
26/****************************************************************************
27* Macros
28****************************************************************************/
29#define ZDRV_DEV_CHG "charger"
30
31/****************************************************************************
32* Types
33****************************************************************************/
34typedef enum
35{
36 CHG_STATE_CALLBACK_AC_IN,
37 CHG_STATE_CALLBACK_AC_OUT,
38 CHG_STATE_CALLBACK_USB_IN,
39 CHG_STATE_CALLBACK_USB_OUT,
40 CHG_STATE_CALLBACK_START,
41 CHG_STATE_CALLBACK_STOP,
42 CHG_STATE_CALLBACK_FINISH,
43 CHG_STATE_CALLBACK_LOAD_IN,
44 CHG_STATE_CALLBACK_LOAD_OUT,
45 CHG_STATE_CALLBACK_ABNORMAL,
46 CHG_STATE_CALLBACK_LOW_VOL_DETECT,
47 CHG_STATE_CALLBACK_OVER_TEMP_PROTECT,
48
49 CHG_STATE_CALLBACK_MAX
50}T_ZDrvChg_CallbackState;
51
52/*the message that should send to dm*/
53 typedef enum
54 {
55 STATE_CHARGING, /*charge start msg*/
56 STATE_DISCHARGING, /*charge stop msg*/
57 STATE_FINISH, /*charge stop msg*/
58 STATE_TEMP_ABORT,
59 STATE_TEMP_ERROR,
60 STATE_ERROR,
61
62 STATE_MAX
63
64} T_ZDrvChg_Status;
65
66 typedef enum
67 {
68 DISCHG_STATUS_ON = 0,
69 DISCHG_STATUS_OFF,
70 DISCHG_STATUS_MAX
71 }T_ZDrvChg_DisChgStatus;
72
73 typedef enum
74 {
75 USB_STATUS_IN = 0,
76 USB_STATUS_OUT,
77 USB_STATUS_MAX
78 }T_ZDrvChg_UsbStatus;
79
80
81 typedef enum
82 {
83 CHG_TYPE_NOTHING,
84 CHG_TYPE_COMPUTER,
85 CHG_TYPE_CHARGER,
86
87 CHG_TYPE_MAX
88} T_ZDrvChg_ChgType;
89
90/*temperature detect*/
91typedef enum
92{
93 CHG_TEMP_DETECT_SUPER_LOW,
94 CHG_TEMP_DETECT_LOW,
95 CHG_TEMP_DETECT_NORMAL,
96 CHG_TEMP_DETECT_HIGH,
97 CHG_TEMP_DETECT_HIGH_55,
98 CHG_TEMP_DETECT_SUPER_HIGH,
99
100 CHG_TEMP_DETECT_MAX
101}T_ZDrvChg_TempDetect;
102
103typedef enum
104{
105 CHG_SWTICH_CHG_OFF,
106 CHG_SWTICH_CHG_ON,
107
108 CHG_SWTICH_CHG_MAX
109}T_ZDrvChg_ChgSwitch;
110
111typedef enum
112{
113 CHG_SWTICH_DISCHG_OFF,
114 CHG_SWTICH_DISCHG_ON,
115
116 CHG_SWTICH_DISCHG_MAX
117}T_ZDrvChg_DisChgSwitch;
118
119typedef enum
120{
121 CHG_OTG_STATE_OFF,
122 CHG_OTG_STATE_ON,
123
124 CHG_OTG_STATE_MAX
125}T_ZDrvChg_OTGState;
126
127typedef enum
128{
129 CHG_SHIPPINGMODE_OFF,
130 CHG_SHIPPINGMODE_ON,
131
132 CHG_SHIPPINGMODE_MAX
133}T_ZDrvChg_ShippingMode;
134
135
136typedef enum
137{
138 CHG_ERROR_DPM_STATE = 1<<11,
139 CHG_ERROR_POWER_BAD = 1<<10, /*the diff*/
140 CHG_ERROR_VSYS_MINI = 1<<8,
141 CHG_ERROR_TERM_STATE = 1<<9,
142 CHG_ERROR_WACHDOG_FAULT = 1<<7,
143 CHG_ERROR_OTG_FAULT = 1<<6,
144 CHG_ERROR_CHRG_OVP = 1<<5,
145 CHG_ERROR_CHRG_TIMEOUT = 1<<4,
146 CHG_ERROR_BAT_FAULT = 1<<3,
147 CHG_ERROR_NTC_COLD = 1<<1,
148 CHG_ERROR_NTC_HOT = 1<<0,
149 CHG_ERROR_STATE_CONFLIT = 1<<15,
150
151
152 CHG_ERROR_MAX = 1<<16,
153}T_ZDrvChg_ErrorCode;
154
155
156typedef enum
157{
158 CHG_QUICK_START_OFF,
159 CHG_QUICK_START_ON,
160
161 CHG_QUICK_START_MAX
162}T_ZDrvChg_QucikStartFlag;
163
164typedef enum
165{
166 CHG_NOT_STOP,
167 CHG_COMPLETE,
168 AC_NOT_EXIST,
169 CHG_TEMP_OVERFLOW,
170 CHG_OTHER_REASON
171}T_ZDrvChg_StopReason;
172/*charge stop reason*/
173
174
175typedef void(*T_ZDrvCHG_CALLBACK)(T_ZDrvChg_CallbackState); /*the send msg callback function */
176
177
178#endif/*_DRVS_IO_LED_H*/
179