xref: /rk3399_rockchip-uboot/include/power/fp9931.h (revision 470c0165f9ad8326bdf885c6dde59a54b8886ce2)
1 // SPDX-License-Identifier: GPL-2.0
2 /*
3  * Copyright (c) 2024 Rockchip Electronics Co., Ltd.
4  */
5 
6 #ifndef FP9931_H
7 #define FP9931_H
8 
9 #include <asm/gpio.h>
10 #include <linux/bitops.h>
11 
12 #define FP9931_TMST_VALUE		0x00
13 #define FP9931_VCOM_SETTING		0x01
14 #define FP9931_VPOS_VNEG_SETTING	0x02
15 #define FP9931_PWRON_DELAY		0x03
16 #define FP9931_CONTROL_REG1		0x0B
17 #define FP9931_CONTROL_REG2		0x0C
18 
19 #define fp9931_REG_MAX			0x0C
20 
21 #define VPOS_VNEG_SETTING		GENMASK(5, 0)
22 #define PWRON_DELAY_tDLY1		GENMASK(1, 0)
23 #define PWRON_DELAY_tDLY2		GENMASK(3, 2)
24 #define PWRON_DELAY_tDLY3		GENMASK(5, 4)
25 #define PWRON_DELAY_tDLY4		GENMASK(7, 6)
26 #define CONTROL_REG1_V3P3_EN		BIT(1)
27 #define CONTROL_REG1_SS_TIME		GENMASK(7, 6)
28 #define CONTROL_REG2_VN_CL		GENMASK(1, 0)
29 #define CONTROL_REG2_VP_CL		GENMASK(3, 2)
30 #define CONTROL_REG2_FIX_RD_PTR		BIT(7)
31 
32 #define FP9931_VCOM_DRIVER_NAME 	"fp9931-vcom"
33 #define FP9931_VPOS_VNEG_DRIVER_NAME	"fp9931-vpos-vneg"
34 #define FP9931_THERMAL_COMTATIBLE_NAME	"fp9931-thermal"
35 
36 struct fp9931_plat_data {
37 	struct gpio_desc power_gpio[4];
38 	int num_power_gpio;
39 	struct gpio_desc enable_gpio;
40 };
41 
42 #endif /* FP9931_H */
43