main_ubi_sdk v 0.1.3
This is UBI4 documentation
bq2588x_reg.h
Go to the documentation of this file.
1/*
2 ******************************************************************************
3 * @file bq2588x_reg.h
4 * @author A.Alborov
5 ******************************************************************************
6*/
7
8
9#ifndef __BQ2588X_HEADER__
10#define __BQ2588X_HEADER__
11
12#define BQ2588X_REG_CHARGE_VOLT 0x00
13#define BQ2588X_VREG_MASK 0xFF
14#define BQ2588X_VREG_SHIFT 0
15#define BQ2588X_VREG_BASE 6800
16#define BQ2588X_VREG_LSB 10
17
18#define BQ2588X_REG_CHARGE_CURRENT 0x01
19#define BQ2588X_EN_HIZ_MASK 0x80
20#define BQ2588X_EN_HIZ_SHIFT 7
21#define BQ2588X_HIZ_DISABLE 0
22#define BQ2588X_HIZ_ENABLE 1
23#define BQ2588X_EN_ILIM_MASK 0x40
24#define BQ2588X_EN_ILIM_SHIFT 6
25#define BQ2588X_ILIM_PIN_DISABLE 0
26#define BQ2588X_ILIM_PIN_ENABLE 1
27#define BQ2588X_ICHG_MASK 0x3F
28#define BQ2588X_ICHG_SHIFT 0
29#define BQ2588X_ICHG_BASE 0
30#define BQ2588X_ICHG_LSB 50
31
32#define BQ2588X_REG_VINDPM 0x02
33#define BQ2588X_VINDPM_RESET_EN_MASK 0x80
34#define BQ2588X_VINDPM_RESET_EN_SHIFT 7
35#define BQ2588X_VINDPM_RESET_DISABLE 0
36#define BQ2588X_VINDPM_RESET_ENABLE 1
37#define BQ2588X_BAT_DISCHG_LOAD_MASK 0x40
38#define BQ2588X_BAT_DISCHG_LOAD_SHIFT 6
39#define BQ2588X_BAT_DISCHG_LOAD_DISABLE 0
40#define BQ2588X_BAT_DISCHG_LOAD_ENABLE 1
41#define BQ2588X_VINDPM_TH_MASK 0x1F
42#define BQ2588X_VINDPM_TH_SHIFT 0
43#define BQ2588X_VINDPM_TH_BASE 3900
44#define BQ2588X_VINDPM_TH_LSB 100
45
46#define BQ2588X_REG_IINDPM 0x03
47#define BQ2588X_FORCE_ICO_MASK 0x80
48#define BQ2588X_FORCE_ICO_SHIFT 7
49#define BQ2588X_DO_NOT_FORCE 0
50#define BQ2588X_DO_FORCE 1
51#define BQ2588X_DPDM_DETECT_MASK 0x40
52#define BQ2588X_DPDM_DETECT_SHIFT 6
53#define BQ2588X_DPDM_DETECT_DISABLE 0
54#define BQ2588X_DPDM_DETECT_ENABLE 1
55#define BQ2588X_EN_ICO_MASK 0x20
56#define BQ2588X_EN_ICO_SHIFT 5
57#define BQ2588X_ICO_DISABLE 0
58#define BQ2588X_ICO_ENABLE 1
59#define BQ2588X_IINDPM_TH_MASK 0x1F
60#define BQ2588X_IINDPM_TH_SHIFT 0
61#define BQ2588X_IINDPM_TH_BASE 500
62#define BQ2588X_IINDPM_TH_LSB 100
63
64#define BQ2588X_REG_PRECHG_TERM 0x04
65#define BQ2588X_IPRECHG_MASK 0xF0
66#define BQ2588X_IPRECHG_SHIFT 4
67#define BQ2588X_IPRECHG_BASE 50
68#define BQ2588X_IPRECHG_LSB 50
69#define BQ2588X_ITERM_MASK 0x0F
70#define BQ2588X_ITERM_SHIFT 0
71#define BQ2588X_ITERM_BASE 50
72#define BQ2588X_ITERM_LSB 50
73
74#define BQ2588X_REG_CHG_CTRL1 0x05
75#define BQ2588X_TERM_EN_MASK 0x80
76#define BQ2588X_TERM_EN_SHIFT 7
77#define BQ2588X_TERM_DISABLE 0
78#define BQ2588X_TERM_ENABLE 1
79#define BQ2588X_WDT_TIMER_MASK 0x30
80#define BQ2588X_WDT_TIMER_SHIFT 4
81#define BQ2588X_WDT_TIMER_DISABLE 0
82#define BQ2588X_WDT_TIMER_40S 1
83#define BQ2588X_WDT_TIMER_80S 2
84#define BQ2588X_WDT_TIMER_160S 3
85#define BQ2588X_SAFETY_TIMER_EN_MASK 0x08
86#define BQ2588X_SAFETY_TIMER_EN_SHIFT 3
87#define BQ2588X_SAFETY_TIMER_DISABLE 0
88#define BQ2588X_SAFETY_TIMER_ENABLE 1
89#define BQ2588X_SAFETY_TIMER_MASK 0x06
90#define BQ2588X_SAFETY_TIMER_SHIFT 1
91#define BQ2588X_SAFETY_TIMER_5H 0
92#define BQ2588X_SAFETY_TIMER_8H 1
93#define BQ2588X_SAFETY_TIMER_12H 2
94#define BQ2588X_SAFETY_TIMER_20H 3
95
96#define BQ2588X_REG_CHG_CTRL2 0x06
97#define BQ2588X_OTG_EN_MASK 0x80
98#define BQ2588X_OTG_EN_SHIFT 7
99#define BQ2588X_OTG_DISABLE 0
100#define BQ2588X_OTG_ENABLE 1
101#define BQ2588X_AUTO_DPDM_MASK 0x40
102#define BQ2588X_AUTO_DPDM_SHIFT 6
103#define BQ2588X_AUTO_DPDM_DISABLE 0
104#define BQ2588X_AUTO_DPDM_ENABLE 1
105#define BQ2588X_CHARGE_EN_MASK 0x08
106#define BQ2588X_CHARGE_EN_SHIFT 3
107#define BQ2588X_CHARGE_DISABLE 0
108#define BQ2588X_CHARGE_ENABLE 1
109#define BQ2588X_BATLOW_VOLT_MASK 0x04
110#define BQ2588X_BATLOW_VOLT_SHIFT 2
111#define BQ2588X_BATLOW_VOLT_5P6V 0
112#define BQ2588X_BATLOW_VOLT_6V 1
113#define BQ2588X_RECHG_VOLT_MASK 0x03
114#define BQ2588X_RECHG_VOLT_SHIFT 0
115#define BQ2588X_RECHG_VOLT_BASE 100
116#define BQ2588X_RECHG_VOLT_LSB 100
117
118#define BQ2588X_REG_CHG_CTRL3 0x07
119#define BQ2588X_WDT_RESET_MASK 0x40
120#define BQ2588X_WDT_RESET_SHIFT 6
121#define BQ2588X_WDT_RESET_DISABLE 0
122#define BQ2588X_WDT_RESET 1
123#define BQ2588X_TOPOFF_TIMER_MASK 0x30
124#define BQ2588X_TOPOFF_TIMER_SHIFT 4
125#define BQ2588X_TOPOFF_TIMER_DISABLE 0
126#define BQ2588X_TOPOFF_TIMER_15M 1
127#define BQ2588X_TOPOFF_TIMER_30M 2
128#define BQ2588X_TOPOFF_TIMER_45M 3
129#define BQ2588X_SYS_MIN_VOLT_MASK 0x0F
130#define BQ2588X_SYS_MIN_VOLT_SHIFT 0
131#define BQ2588X_SYS_MIN_VOLT_BASE 6000
132#define BQ2588X_SYS_MIN_VOLT_LSB 100
133
134#define BQ2588X_REG_OTG_CTRL 0x09
135#define BQ2588X_OTG_ILIM_MASK 0xF0
136#define BQ2588X_OTG_ILIM_SHIFT 4
137#define BQ2588X_OTG_ILIM_BASE 500
138#define BQ2588X_OTG_ILIM_LSB 100
139#define BQ2588X_OTG_VLIM_MASK 0x0F
140#define BQ2588X_OTG_VLIM_SHIFT 0
141#define BQ2588X_OTG_VLIM_BASE 4500
142#define BQ2588X_OTG_VLIM_LSB 100
143
144#define BQ2588X_REG_ICO_LIMIT 0x0A
145#define BQ2588X_ICO_ILIM_MASK 0x1F
146#define BQ2588X_ICO_ILIM_SHIFT 0
147#define BQ2588X_ICO_ILIM_BASE 500
148#define BQ2588X_ICO_ILIM_LSB 100
149
150#define BQ2588X_REG_CHG_STATUS1 0x0B
151#define BQ2588X_ADC_DONE_STAT_MASK 0x80
152#define BQ2588X_IINDPM_STAT_MASK 0x40
153#define BQ2588X_IINDPM_STAT_SHIFT 6
154#define BQ2588X_IINDPM_STAT_INACTIVE 0
155#define BQ2588X_IINDPM_STAT_ACTIVE 1
156#define BQ2588X_VINDPM_STAT_MASK 0x20
157#define BQ2588X_VINDPM_STAT_SHIFT 5
158#define BQ2588X_VINDPM_STAT_INACTIVE 0
159#define BQ2588X_VINDPM_STAT_ACTIVE 1
160#define BQ2588X_TREG_STAT_MASK 0x10
161#define BQ2588X_TREG_STAT_SHIFT 4
162#define BQ2588X_TREG_STAT_INACTIVE 0
163#define BQ2588X_TREG_STAT_ACTIVE 1
164#define BQ2588X_WDT_STAT_MASK 0x08
165#define BQ2588X_WDT_STAT_SHIFT 3
166#define BQ2588X_WDT_STAT_INACTIVE 0
167#define BQ2588X_WDT_STAT_EXPIRED 1
168#define BQ2588X_CHRG_STAT_MASK 0x07
169#define BQ2588X_CHRG_STAT_SHIFT 0
170#define BQ2588X_CHRG_STAT_IDLE 0
171#define BQ2588X_CHRG_STAT_TRICKLE 1
172#define BQ2588X_CHRG_STAT_PRECHG 2
173#define BQ2588X_CHRG_STAT_FAST 3
174#define BQ2588X_CHRG_STAT_TAPER 4
175#define BQ2588X_CHRG_STAT_TOPOFF 5
176#define BQ2588X_CHRG_STAT_DONE 6
177#define BQ2588X_CHRG_STAT_RSVED 7
178
179#define BQ2588X_REG_CHG_STATUS2 0x0c
180#define BQ2588X_PG_STAT_MASK 0x80
181#define BQ2588X_PG_STAT_SHIFT 7
182#define BQ2588X_PG_STAT_POOR 0
183#define BQ2588X_PG_STAT_GOOD 1
184#define BQ2588X_VBUS_STAT_MASK 0x70
185#define BQ2588X_VBUS_STAT_SHIFT 4
186#define BQ2588X_VBUS_NO_INPUT 0
187#define BQ2588X_VBUS_USB_SDP 1
188#define BQ2588X_VBUS_USB_CDP 2
189#define BQ2588X_VBUS_USB_DCP 3
190#define BQ2588X_VBUS_POOR_SRC 4
191#define BQ2588X_VBUS_USB_UNKNOWN 5
192#define BQ2588X_VBUS_USB_NON_STANDARD 6
193#define BQ2588X_VBUS_OTG_MODE 7
194#define BQ2588X_ICO_STAT_MASK 0x06
195#define BQ2588X_ICO_STAT_SHIFT 1
196#define BQ2588X_ICO_DISABLED 0
197#define BQ2588X_ICO_IN_PROGRESS 1
198#define BQ2588X_ICO_DONE 2
199#define BQ2588X_RESERVED 3
200
201#define BQ2588X_REG_NTC_STATUS 0x0D
202#define BQ2588X_TS_STAT_MASK 0x07
203#define BQ2588X_TS_STAT_SHIFT 0
204#define BQ2588X_TS_NORMAL 0
205#define BQ2588X_TS_WARM 1
206#define BQ2588X_TS_COOL 2
207#define BQ2588X_TS_COLD 3
208#define BQ2588X_TS_HOT 4
209#define BQ2588X_TS_RSVED0 5
210#define BQ2588X_TS_RSVED1 6
211#define BQ2588X_TS_RSVED2 7
212
213#define BQ2588X_REG_FAULT_STATUS 0x0E
214#define BQ2588X_VBUS_OVP_STAT_MASK 0x80
215#define BQ2588X_VBUS_OVP_STAT_SHIFT 7
216#define BQ2588X_VBUS_OVP_STAT_INACTIVE 0
217#define BQ2588X_VBUS_OVP_STAT_ACTIVE 1
218#define BQ2588X_TSHUT_STAT_MASK 0x40
219#define BQ2588X_TSHUT_STAT_SHIFT 6
220#define BQ2588X_TSHUT_STAT_INACTIVE 0
221#define BQ2588X_TSHUT_STAT_ACTIVE 1
222#define BQ2588X_BAT_OVP_STAT_MASK 0x20
223#define BQ2588X_BAT_OVP_STAT_SHIFT 5
224#define BQ2588X_BAT_OVP_STAT_INACTIVE 0
225#define BQ2588X_BAT_OVP_STAT_ACTIVE 1
226#define BQ2588X_SAFETY_TIMER_STAT_MASK 0x10
227#define BQ2588X_SAFETY_TIMER_STAT_SHIFT 4
228#define BQ2588X_SAFETY_TIMER_STAT_NORMAL 0
229#define BQ2588X_SAFETY_TIMER_STAT_EXPIRED 1
230#define BQ2588X_SYS_SHORT_STAT_MASK 0x08
231#define BQ2588X_SYS_SHORT_STAT_SHIFT 3
232#define BQ2588X_SYS_SHORT_STAT_INACTIVE 0
233#define BQ2588X_SYS_SHORT_STAT_ACTIVE 1
234#define BQ2588X_OTG_STAT_MASK 0x01
235#define BQ2588X_OTG_STAT_SHIFT 0
236#define BQ2588X_OTG_STAT_NORMAL 0
237#define BQ2588X_OTG_STAT_BUS_OVERLOAD 1
238
239#define BQ2588X_REG_CHG_FLAG1 0x0F
240#define BQ2588X_IINDPM_FLAG_MASK 0x40
241#define BQ2588X_IINDPM_FLAG_SHIFT 6
242#define BQ2588X_IINDPM_FLAG_INACTIVE 0
243#define BQ2588X_IINDPM_FLAG_ACTIVE 1
244#define BQ2588X_VINDPM_FLAG_MASK 0x20
245#define BQ2588X_VINDPM_FLAG_SHIFT 5
246#define BQ2588X_VINDPM_FLAG_INACTIVE 0
247#define BQ2588X_VINDPM_FLAG_ACTIVE 1
248#define BQ2588X_TREG_FLAG_MASK 0x10
249#define BQ2588X_TREG_FLAG_SHIFT 4
250#define BQ2588X_TREG_FLAG_INACTIVE 0
251#define BQ2588X_TREG_FLAG_ACTIVE 1
252#define BQ2588X_WDT_FLAG_MASK 0x08
253#define BQ2588X_WDT_FLAG_SHIFT 3
254#define BQ2588X_WDT_FLAG_NORMAL 0
255#define BQ2588X_WDT_FLAG_EXPIRED 1
256#define BQ2588X_CHRG_FLAG_MASK 0x01
257#define BQ2588X_CHRG_FLAG_SHIFT 0
258#define BQ2588X_CHRG_FLAG_NORMAL 0
259#define BQ2588X_CHRG_FLAG_CHANGED 1
260
261#define BQ2588X_REG_CHG_FLAG2 0x10
262#define BQ2588X_PG_FLAG_MASK 0x80
263#define BQ2588X_PG_FLAG_SHIFT 7
264#define BQ2588X_PG_FLAG_POOR 0
265#define BQ2588X_PG_FLAG_GOOD 1
266#define BQ2588X_VBUS_FLAG_MASK 0x10
267#define BQ2588X_VBUS_FLAG_SHIFT 4
268#define BQ2588X_VBUS_FLAG_NORMAL 0
269#define BQ2588X_VBUS_FLAG_CHANGED 1
270#define BQ2588X_TS_FLAG_MASK 0x04
271#define BQ2588X_TS_FLAG_SHIFT 2
272#define BQ2588X_TS_FLAG_NORMAL 0
273#define BQ2588X_TS_FLAG_CHANGED 1
274#define BQ2588X_ICO_FLAG_MASK 0x02
275#define BQ2588X_ICO_FLAG_SHIFT 1
276#define BQ2588X_ICO_FLAG_NORMAL 0
277#define BQ2588X_ICO_FLAG_CHANGED 1
278#define BQ2588X_VSYS_FLAG_MASK 0x01
279#define BQ2588X_VSYS_FLAG_SHIFT 0
280#define BQ2588X_VSYS_FLAG_NORMAL 0
281#define BQ2588X_VSYS_FLAG_CHANGED 1
282
283#define BQ2588X_REG_FAULT_FLAG 0x11
284#define BQ2588X_VBUS_OVP_FLAG_MASK 0x80
285#define BQ2588X_VBUS_OVP_FLAG_SHIFT 7
286#define BQ2588X_VBUS_OVP_FLAG_INACTIVE 0
287#define BQ2588X_VBUS_OVP_FLAG_ACTIVE 1
288#define BQ2588X_TSHUT_FLAG_MASK 0x40
289#define BQ2588X_TSHUT_FLAG_SHIFT 6
290#define BQ2588X_TSHUT_FLAG_INACTIVE 0
291#define BQ2588X_TSHUT_FLAG_ACTIVE 1
292#define BQ2588X_BAT_OVP_FLAG_MASK 0x20
293#define BQ2588X_BAT_OVP_FLAG_SHIFT 5
294#define BQ2588X_BAT_OVP_FLAG_INACTIVE 0
295#define BQ2588X_BAT_OVP_FLAG_ACTIVE 1
296#define BQ2588X_SAFETY_TIMER_FLAG_MASK 0x10
297#define BQ2588X_SAFETY_TIMER_FLAG_SHIFT 4
298#define BQ2588X_SAFETY_TIMER_FLAG_NORMAL 0
299#define BQ2588X_SAFETY_TIMER_FLAG_EXPIRED 1
300#define BQ2588X_SYS_SHORT_FLAG_MASK 0x08
301#define BQ2588X_SYS_SHORT_FLAG_SHIFT 3
302#define BQ2588X_SYS_SHORT_FLAG_INACTIVE 0
303#define BQ2588X_SYS_SHORT_FLAG_ACTIVE 1
304#define BQ2588X_OTG_FLAG_MASK 0x01
305#define BQ2588X_OTG_FLAG_SHIFT 0
306#define BQ2588X_OTG_FLAG_NORMAL 0
307#define BQ2588X_OTG_FLAG_BUS_OVERLOAD 1
308
309#define BQ2588X_REG_CHG_INT_MASK1 0x12
310#define BQ2588X_ADC_DONE_INT_MASK_MASK 0x80
311#define BQ2588X_ADC_DONE_INT_MASK_SHIFT 7
312#define BQ2588X_IINDPM_INT_MASK_MASK 0x40
313#define BQ2588X_IINDPM_INT_MASK_SHIFT 6
314#define BQ2588X_IINDPM_INT_MASK_DISABLE 0
315#define BQ2588X_IINDPM_INT_MASK_ENABLE 1
316#define BQ2588X_VINDPM_INT_MASK_MASK 0x20
317#define BQ2588X_VINDPM_INT_MASK_SHIFT 5
318#define BQ2588X_VINDPM_INT_MASK_DISABLE 0
319#define BQ2588X_VINDPM_INT_MASK_ENABLE 1
320#define BQ2588X_TREG_INT_MASK_MASK 0x10
321#define BQ2588X_TREG_INT_MASK_SHIFT 4
322#define BQ2588X_TREG_INT_MASK_DISABLE 0
323#define BQ2588X_TREG_INT_MASK_ENABLE 1
324#define BQ2588X_WDT_INT_MASK_MASK 0x08
325#define BQ2588X_WDT_INT_MASK_SHIFT 3
326#define BQ2588X_WDT_INT_MASK_DISABLE 0
327#define BQ2588X_WDT_INT_MASK_ENABLE 1
328#define BQ2588X_CHRG_INT_MASK_MASK 0x01
329#define BQ2588X_CHRG_INT_MASK_SHIFT 0
330#define BQ2588X_CHRG_INT_MASK_DISABLE 0
331#define BQ2588X_CHRG_INT_MASK_ENABLE 1
332
333#define BQ2588X_REG_CHG_INT_MASK2 0x13
334#define BQ2588X_PG_INT_MASK_MASK 0x80
335#define BQ2588X_PG_INT_MASK_SHIFT 7
336#define BQ2588X_PG_INT_MASK_DISABLE 0
337#define BQ2588X_PG_INT_MASK_ENABLE 1
338#define BQ2588X_VBUS_INT_MASK_MASK 0x10
339#define BQ2588X_VBUS_INT_MASK_SHIFT 4
340#define BQ2588X_VBUS_INT_MASK_DISABLE 0
341#define BQ2588X_VBUS_INT_MASK_ENABLE 1
342#define BQ2588X_TS_INT_MASK_MASK 0x04
343#define BQ2588X_TS_INT_MASK_SHIFT 2
344#define BQ2588X_TS_INT_MASK_DISABLE 0
345#define BQ2588X_TS_INT_MASK_ENABLE 1
346#define BQ2588X_ICO_INT_MASK_MASK 0x02
347#define BQ2588X_ICO_INT_MASK_SHIFT 1
348#define BQ2588X_ICO_INT_MASK_DISABLE 0
349#define BQ2588X_ICO_INT_MASK_ENABLE 1
350#define BQ2588X_VSYS_INT_MASK_MASK 0x01
351#define BQ2588X_VSYS_INT_MASK_SHIFT 0
352#define BQ2588X_VSYS_INT_MASK_DISABLE 0
353#define BQ2588X_VSYS_INT_MASK_ENABLE 1
354
355#define BQ2588X_REG_FAULT_INT_MASK 0x14
356#define BQ2588X_VBUS_OVP_INT_MASK_MASK 0x80
357#define BQ2588X_VBUS_OVP_INT_MASK_SHIFT 7
358#define BQ2588X_VBUS_OVP_INT_MASK_DISABLE 0
359#define BQ2588X_VBUS_OVP_INT_MASK_ENABLE 1
360#define BQ2588X_TSHUT_INT_MASK_MASK 0x40
361#define BQ2588X_TSHUT_INT_MASK_SHIFT 6
362#define BQ2588X_TSHUT_INT_MASK_DISABLE 0
363#define BQ2588X_TSHUT_INT_MASK_ENABLE 1
364#define BQ2588X_BAT_OVP_INT_MASK_MASK 0x20
365#define BQ2588X_BAT_OVP_INT_MASK_SHIFT 5
366#define BQ2588X_BAT_OVP_INT_MASK_DISABLE 0
367#define BQ2588X_BAT_OVP_INT_MASK_ENABLE 1
368#define BQ2588X_SAFETY_TIMER_INT_MASK_MASK 0x10
369#define BQ2588X_SAFETY_TIMER_INT_MASK_SHIFT 4
370#define BQ2588X_SAFETY_TIMER_INT_MASK_DISABLE 0
371#define BQ2588X_SAFETY_TIMER_INT_MASK_ENABLE 1
372#define BQ2588X_SYS_SHORT_INT_MASK_MASK 0x08
373#define BQ2588X_SYS_SHORT_INT_MASK_SHIFT 3
374#define BQ2588X_SYS_SHORT_INT_MASK_DISABLE 0
375#define BQ2588X_SYS_SHORT_INT_MASK_ENABLE 1
376#define BQ2588X_OTG_INT_MASK_MASK 0x01
377#define BQ2588X_OTG_INT_MASK_SHIFT 0
378#define BQ2588X_OTG_INT_MASK_DISABLE 0
379#define BQ2588X_OTG_INT_MASK_ENABLE 1
380
381#define BQ2588X_REG_ADC_CTRL 0x15
382#define BQ2588X_ADC_SCAN_EN_MASK 0x80
383#define BQ2588X_ADC_SCAN_EN_SHIFT 7
384#define BQ2588X_ADC_SCAN_DISABLE 0
385#define BQ2588X_ADC_SCAN_ENABLE 1
386#define BQ2588X_ADC_SCAN_RATE_MASK 0x40
387#define BQ2588X_ADC_SCAN_RATE_SHIFT 6
388#define BQ2588X_ADC_SCAN_CONTINUOUS 0
389#define BQ2588X_ADC_SCAN_ONESHOT 1
390#define BQ2588X_ADC_SCAN_BITS_MASK 0x30
391#define BQ2588X_ADC_SCAN_BITS_SHIFT 4
392#define BQ2588X_ADC_SCAN_15BITS 0
393#define BQ2588X_ADC_SCAN_14BITS 1
394#define BQ2588X_ADC_SCAN_13BITS 2
395#define BQ2588X_ADC_SCAN_12BITS 3
396
397#define BQ2588X_REG_ADC_FUNC_DIS 0x16
398#define BQ2588X_IBUS_ADC_DIS_MASK 0x80
399#define BQ2588X_IBUS_ADC_DIS_SHIFT 7
400#define BQ2588X_IBUS_ADC_ENABLE 0
401#define BQ2588X_IBUS_ADC_DISABLE 1
402#define BQ2588X_ICHG_ADC_DIS_MASK 0x40
403#define BQ2588X_ICHG_ADC_DIS_SHIFT 6
404#define BQ2588X_ICHG_ADC_ENABLE 0
405#define BQ2588X_ICHG_ADC_DISABLE 1
406#define BQ2588X_VBUS_ADC_DIS_MASK 0x20
407#define BQ2588X_VBUS_ADC_DIS_SHIFT 5
408#define BQ2588X_VBUS_ADC_ENABLE 0
409#define BQ2588X_VBUS_ADC_DISABLE 1
410#define BQ2588X_VBAT_ADC_DIS_MASK 0x10
411#define BQ2588X_VBAT_ADC_DIS_SHIFT 4
412#define BQ2588X_VBAT_ADC_ENABLE 0
413#define BQ2588X_VBAT_ADC_DISABLE 1
414#define BQ2588X_VSYS_ADC_DIS_MASK 0x08
415#define BQ2588X_VSYS_ADC_DIS_SHIFT 3
416#define BQ2588X_VSYS_ADC_ENABLE 0
417#define BQ2588X_VSYS_ADC_DISABLE 1
418#define BQ2588X_TS_ADC_DIS_MASK 0x04
419#define BQ2588X_TS_ADC_DIS_SHIFT 2
420#define BQ2588X_TS_ADC_ENABLE 0
421#define BQ2588X_TS_ADC_DISABLE 1
422#define BQ2588X_TDIE_ADC_DIS_MASK 0x01
423#define BQ2588X_TDIE_ADC_DIS_SHIFT 0
424#define BQ2588X_TDIE_ADC_ENABLE 0
425#define BQ2588X_TDIE_ADC_DISABLE 1
426
427#define BQ2588X_REG_IBUS_ADC_1 0x17
428#define BQ2588X_IBUS_ADC_HB_MASK 0xFF
429#define BQ2588X_IBUS_ADC_HB_SHIFT 0
430#define BQ2588X_IBUS_ADC_HB_BASE 0
431#define BQ2588X_IBUS_ADC_HB_LSB 256
432
433#define BQ2588X_REG_IBUS_ADC_0 0x18
434#define BQ2588X_IBUS_ADC_LB_MASK 0xFF
435#define BQ2588X_IBUS_ADC_LB_SHIFT 0
436#define BQ2588X_IBUS_ADC_LB_BASE 0
437#define BQ2588X_IBUS_ADC_LB_LSB 1
438
439#define BQ2588X_REG_ICHG_ADC_1 0x19
440#define BQ2588X_ICHG_ADC_HB_MASK 0xFF
441#define BQ2588X_ICHG_ADC_HB_SHIFT 0
442#define BQ2588X_ICHG_ADC_HB_BASE 0
443#define BQ2588X_ICHG_ADC_HB_LSB 256
444
445#define BQ2588X_REG_ICHG_ADC_0 0x1A
446#define BQ2588X_ICHG_ADC_LB_MASK 0xFF
447#define BQ2588X_ICHG_ADC_LB_SHIFT 0
448#define BQ2588X_ICHG_ADC_LB_BASE 0
449#define BQ2588X_ICHG_ADC_LB_LSB 1
450
451#define BQ2588X_REG_VBUS_ADC_1 0x1B
452#define BQ2588X_VBUS_ADC_HB_MASK 0xFF
453#define BQ2588X_VBUS_ADC_HB_SHIFT 0
454#define BQ2588X_VBUS_ADC_HB_BASE 0
455#define BQ2588X_VBUS_ADC_HB_LSB 256
456
457#define BQ2588X_REG_VBUS_ADC_0 0x1C
458#define BQ2588X_VBUS_ADC_LB_MASK 0xFF
459#define BQ2588X_VBUS_ADC_LB_SHIFT 0
460#define BQ2588X_VBUS_ADC_LB_BASE 0
461#define BQ2588X_VBUS_ADC_LB_LSB 1
462
463#define BQ2588X_REG_VBAT_ADC_1 0x1D
464#define BQ2588X_VBAT_ADC_HB_MASK 0xFF
465#define BQ2588X_VBAT_ADC_HB_SHIFT 0
466#define BQ2588X_VBAT_ADC_HB_BASE 0
467#define BQ2588X_VBAT_ADC_HB_LSB 256
468
469#define BQ2588X_REG_VBAT_ADC_0 0x1E
470#define BQ2588X_VBAT_ADC_LB_MASK 0xFF
471#define BQ2588X_VBAT_ADC_LB_SHIFT 0
472#define BQ2588X_VBAT_ADC_LB_BASE 0
473#define BQ2588X_VBAT_ADC_LB_LSB 1
474
475#define BQ2588X_REG_VSYS_ADC_1 0x1F
476#define BQ2588X_VSYS_ADC_HB_MASK 0xFF
477#define BQ2588X_VSYS_ADC_HB_SHIFT 0
478#define BQ2588X_VSYS_ADC_HB_BASE 0
479#define BQ2588X_VSYS_ADC_HB_LSB 256
480
481#define BQ2588X_REG_VSYS_ADC_0 0x20
482#define BQ2588X_VSYS_ADC_LB_MASK 0xFF
483#define BQ2588X_VSYS_ADC_LB_SHIFT 0
484#define BQ2588X_VSYS_ADC_LB_BASE 0
485#define BQ2588X_VSYS_ADC_LB_LSB 1
486
487#define BQ2588X_REG_TS_ADC_1 0x21
488#define BQ2588X_TS_ADC_HB_MASK 0xFF
489#define BQ2588X_TS_ADC_HB_SHIFT 0
490#define BQ2588X_TS_ADC_HB_BASE 0
491#define BQ2588X_TS_ADC_HB_LSB 25
492
493#define BQ2588X_REG_TS_ADC_0 0x22
494#define BQ2588X_TS_ADC_LB_MASK 0xFF
495#define BQ2588X_TS_ADC_LB_SHIFT 0
496#define BQ2588X_TS_ADC_LB_BASE 0
497#define BQ2588X_TS_ADC_LB_LSB (25/256)
498
499#define BQ2588X_REG_TDIE_ADC_1 0x23
500#define BQ2588X_TDIE_ADC_HB_MASK 0xFF
501#define BQ2588X_TDIE_ADC_HB_SHIFT 0
502#define BQ2588X_TDIE_ADC_HB_BASE 0
503#define BQ2588X_TDIE_ADC_HB_LSB 128
504
505#define BQ2588X_REG_TDIE_ADC_0 0x24
506#define BQ2588X_TDIE_ADC_LB_MASK 0xFF
507#define BQ2588X_TDIE_ADC_LB_SHIFT 0
508#define BQ2588X_TDIE_ADC_LB_BASE 0
509#define BQ2588X_TDIE_ADC_LB_LSB (1/2)
510
511#define BQ2588X_REG_PART_NUM 0x25
512#define BQ2588X_REG_RESET_MASK 0x80
513#define BQ2588X_REG_RESET_SHIFT 7
514#define BQ2588X_REG_RESET_IDLE 0
515#define BQ2588X_REG_RESET_KICK 1
516#define BQ2588X_PART_NO_MASK 0x38
517#define BQ2588X_PART_NO_SHIFT 3
518#define BQ2588X_PART_NO_BQ25880 1
519#define BQ2588X_PART_NO_BQ25882 2
520#define BQ2588X_PART_NO_BQ25881_3 3
521#define BQ2588X_REVISION_MASK 0x07
522#define BQ2588X_REVISION_SHIFT 0
523#define BQ2588X_REV_1P0 0
524#define BQ2588X_REV_1P1 1
525
526#endif