xref: /rk3399_rockchip-uboot/include/power/charge_animation.h (revision d07906f03434806e9064bc96302fa58df1ee7107)
1ac1dc0c3SJoseph Chen /*
2ac1dc0c3SJoseph Chen  * (C) Copyright 2017 Rockchip Electronics Co., Ltd
3ac1dc0c3SJoseph Chen  *
4ac1dc0c3SJoseph Chen  * SPDX-License-Identifier:     GPL-2.0+
5ac1dc0c3SJoseph Chen  */
6ac1dc0c3SJoseph Chen 
7ac1dc0c3SJoseph Chen #ifndef _CHARGE_ANIMATION_H_
8ac1dc0c3SJoseph Chen #define _CHARGE_ANIMATION_H_
9ac1dc0c3SJoseph Chen 
10*d07906f0SJoseph Chen struct regulator_mem {
11*d07906f0SJoseph Chen 	struct udevice *dev;
12*d07906f0SJoseph Chen 	bool enable;
13*d07906f0SJoseph Chen };
14*d07906f0SJoseph Chen 
15ac1dc0c3SJoseph Chen struct charge_animation_pdata {
16ebe3d004SJoseph Chen 	int android_charge;	/* android charge, 1: enable, 0: disable */
17ebe3d004SJoseph Chen 	int uboot_charge;	/* u-boot charge, 1: enable, 0: disable */
18ac1dc0c3SJoseph Chen 
19038c1ecaSShunqing Chen 	int auto_exit_charge;	/* energy enough auto exit uboot charging*/
20ebe3d004SJoseph Chen 	int exit_charge_voltage;/* lowest voltage allowed to exit charging */
21ebe3d004SJoseph Chen 	int exit_charge_level;  /* lowest soc level allowed to exit charging */
22ebe3d004SJoseph Chen 	int low_power_voltage;	/* below this voltage, force system into charge mode anyway */
23ebe3d004SJoseph Chen 	int screen_on_voltage;	/* lowest voltage allowed to turn on screen */
24ac1dc0c3SJoseph Chen 
25ebe3d004SJoseph Chen 	int system_suspend;	/* enter ATF system suspend, 1: enable, 0: disable */
26ebe3d004SJoseph Chen 	int auto_wakeup_interval;/* timeout seconds to auto wakeup system */
27ebe3d004SJoseph Chen 	int auto_wakeup_screen_invert;/* auto wakeup system, 1: enable, 0: disable */
28ebe3d004SJoseph Chen 	int auto_off_screen_interval;/* timeout seconds to auto turn off screen */
29*d07906f0SJoseph Chen 
30*d07906f0SJoseph Chen 	struct regulator_mem *regulators_mem; /* assigned regulator suspend state */
31ac1dc0c3SJoseph Chen };
32ac1dc0c3SJoseph Chen 
33ac1dc0c3SJoseph Chen #endif
34