blob: c2ae62231ec3df322d55b4baca09ab170d852233 [file] [log] [blame]
Tom Rini10e47792018-05-06 17:58:06 -04001/* SPDX-License-Identifier: GPL-2.0+ */
Piotr Wilczekca7e5742013-09-24 16:31:22 +02002/*
3 * Copyright (C) 2013 Samsung Electronics
4 * Piotr Wilczek <p.wilczek@samsung.com>
Piotr Wilczekca7e5742013-09-24 16:31:22 +02005 */
6
7#ifndef __MAX77693_FG_H_
8#define __MAX77693_FG_H_
9
10/* MAX 77693 registers */
11enum {
12 MAX77693_STATUS = 0x00,
13 MAX77693_SOCREP = 0x06,
14 MAX77693_VCELL = 0x09,
15 MAX77693_CURRENT = 0x0A,
16 MAX77693_AVG_CURRENT = 0x0B,
17 MAX77693_SOCMIX = 0x0D,
18 MAX77693_SOCAV = 0x0E,
19 MAX77693_DESIGN_CAP = 0x18,
20 MAX77693_AVG_VCELL = 0x19,
21 MAX77693_CONFIG = 0x1D,
22 MAX77693_VERSION = 0x21,
23 MAX77693_LEARNCFG = 0x28,
24 MAX77693_FILTERCFG = 0x29,
25 MAX77693_RELAXCFG = 0x2A,
26 MAX77693_MISCCFG = 0x2B,
27 MAX77693_CGAIN = 0x2E,
28 MAX77693_COFF = 0x2F,
29 MAX77693_RCOMP0 = 0x38,
30 MAX77693_TEMPCO = 0x39,
31 MAX77693_FSTAT = 0x3D,
32 MAX77693_VFOCV = 0xEE,
33 MAX77693_VFSOC = 0xFF,
34
35 FG_NUM_OF_REGS = 0x100,
36};
37
38#define MAX77693_POR (1 << 1)
39
40#define MODEL_UNLOCK1 0x0059
41#define MODEL_UNLOCK2 0x00c4
42#define MODEL_LOCK1 0x0000
43#define MODEL_LOCK2 0x0000
44
45#define MAX77693_FUEL_I2C_ADDR (0x6C >> 1)
46
47int power_fg_init(unsigned char bus);
48#endif /* __MAX77693_FG_H_ */