xref: /aosp_15_r20/external/coreboot/src/soc/mediatek/mt8195/include/soc/mt6691.h (revision b9411a12aaaa7e1e6a6fb7c5e057f44ee179a49c)
1 /* SPDX-License-Identifier: GPL-2.0-only OR MIT */
2 
3 #ifndef __SOC_MEDIATEK_MT8195_MT6691_H__
4 #define __SOC_MEDIATEK_MT8195_MT6691_H__
5 
6 #include <stdint.h>
7 
8 void mt6691_probe(uint8_t i2c_num);
9 int mt6691_set_voltage(uint8_t i2c_num, unsigned int volt_uv);
10 int mt6691_get_voltage(uint8_t i2c_num);
11 
12 #define MT6691_CID_CODE		0x01
13 
14 #define MT6691_VDD2_ID		0x0000
15 #define MT6691_VDDQ_ID		0x0000
16 #define MT6691_PGOOD_SHIFT	7
17 #define MT6691_DN_SR_MASK	0x7
18 #define MT6691_DN_SR_SHIFT	5
19 
20 enum {
21 	/* Voltage setting */
22 	MT6691_VSEL0 =		0x00,
23 	MT6691_VSEL1 =		0x01,
24 	/* Control register */
25 	MT6691_CONTROL =	0x02,
26 	/* IC Type */
27 	MT6691_ID1 =		0x03,
28 	/* IC mask version */
29 	MT6691_ID2 =		0x04,
30 	/* Monitor register */
31 	MT6691_MONITOR =	0x05,
32 	MT6691_CTRL2 =		0x06,
33 	MT6691_CTRL3 =		0x07,
34 	MT6691_CTRL4 =		0x08,
35 };
36 
37 #endif
38