Commit Graph

37 Commits

Author SHA1 Message Date
Shunqing Chen 038c1ecaa2 power: charge animation: energy enough auto exit uboot charge
Change-Id: Ifa94783869c7cb35f819f3700c82bac7d00a7b05
Signed-off-by: Shunqing Chen <csq@rock-chips.com>
2020-11-26 15:23:46 +08:00
Shunqing Chen 23858492ef power: charge animation: fix the issue that did not auto turn off screen
1.set auto_wakeup_screen_invert to 1 and set auto_off_screen_interval to 0.
2.set auto_screen_off_timeout to 1.
2.press power key to turn on screen.
3.screen will not be turned off at this time.

Change-Id: Ifc92f23a38d8ba0da4f6e37625b4114edb42f6a8
Signed-off-by: Shunqing Chen <csq@rock-chips.com>
2020-05-11 16:33:49 +08:00
Joseph Chen 5eac14db17 power: charge animation: call irq suspend/resume before simple wfi
Some interrupt only need active when suspend(e.g. plugout, pwrkey).

Change-Id: Ieebaa5fbf9f69f424eefe5a52c1517be63acf873
Signed-off-by: Joseph Chen <chenjh@rock-chips.com>
2019-08-09 18:11:40 +08:00
Joseph Chen 4f9cab2711 dm: fuel gauge: rename fuel_gauge_get_soc() to fuel_gauge_update_get_soc()
New name is more accurate about internal implementation..

Change-Id: I16891f5f614fbb17f1e65e04ef4d8a713c8624f3
Signed-off-by: Joseph Chen <chenjh@rock-chips.com>
2019-08-09 18:11:23 +08:00
Joseph Chen 5fc2a70c78 power: charge animation: allow ctrl+c to exit extrem low charging
Change-Id: I736c2617a4d51085bc91377f1013d7f4b198c9fc
Signed-off-by: Joseph Chen <chenjh@rock-chips.com>
2019-06-26 14:09:28 +08:00
Joseph Chen 4d083e3f19 power: charge animation: add charger device support
If a fuel gauge device doesn't have both charger and fuel gauge
capabilities, try to find devices group to support that.

Change-Id: I78d929e80e79bea304bb2b29f423c90ca12be16f
Signed-off-by: Joseph Chen <chenjh@rock-chips.com>
2019-05-23 10:20:32 +08:00
Joseph Chen 3415d4ebcd power: charge animation: select CONFIG_ARM_CPU_SUSPEND
Change-Id: I0c901e17b9da18d87f8dd7da776254a20c47ee11
Signed-off-by: Joseph Chen <chenjh@rock-chips.com>
2019-05-17 12:00:44 +08:00
Joseph Chen 2e68f6b5f9 power: charge animation: support long key event without release
Change-Id: I9d7cd439376f2f4ff89ea6bfe3baedbeaa4deeb9
Signed-off-by: Joseph Chen <chenjh@rock-chips.com>
2019-03-18 11:34:06 +08:00
Joseph Chen ebe3d004b5 power: charge animation: clean up code
Change-Id: I0d76d7ad28ef3683bbc78f36d4a0f00d5517e2fa
Signed-off-by: Joseph Chen <chenjh@rock-chips.com>
2019-02-25 14:29:33 +08:00
Joseph Chen 1b3009debe power: charge animation: add leds support
It supports charging and charging-full leds which
depends on soc value.

Change-Id: I6b37919c5bedf9b81d388853996cf83c6f75a73a
Signed-off-by: Joseph Chen <chenjh@rock-chips.com>
2019-02-25 14:29:33 +08:00
Elaine Zhang 8b436ce576 power: charge animation: add rtc alarm check
Under the charging interface,if the rtc alarm is
triggered, boot on the system.

Change-Id: I6a921bd5c6971c45b02b2be84d9d6d79e9b17a36
Signed-off-by: Elaine Zhang <zhangqing@rock-chips.com>
2019-02-25 10:08:47 +08:00
Joseph Chen 61a7a6d6a1 power: charge animation: add battery existence check
Change-Id: I8451d3069c11faa91d6b0087a764685cdf4f1bbf
Signed-off-by: Joseph Chen <chenjh@rock-chips.com>
2018-12-11 11:31:50 +08:00
Joseph Chen 7ae458341f power: charge animation: print reason of exit charge
This is helpful to know charge state.

Change-Id: I96401b67220a0ebb782c5da1f8001b3bf4682c06
Signed-off-by: Joseph Chen <chenjh@rock-chips.com>
2018-12-04 15:01:43 +08:00
Joseph Chen 992f4e7722 power: charge animation: enable regulator-mem-state
Change-Id: I31a687ca5a53c57d5b49fb23ec5951b34b1e25f1
Signed-off-by: Joseph Chen <chenjh@rock-chips.com>
2018-10-07 11:37:08 +08:00
Joseph Chen 175257e48b power: charge animation: support without CONFIG_IRQ enabled
If CONFIG_IRQ is not enabled, cpu can't suspend to ATF or wfi,
so that the wakeup period timer is useless.

Give a message warning when CONFIG_IRQ is not enabled.

Change-Id: I9af7e7114ab5d3b3d1026a3ba19ce6cbe56399eb
Signed-off-by: Joseph Chen <chenjh@rock-chips.com>
2018-09-04 18:02:22 +08:00
Joseph Chen 31ab5b3ba0 power: charge animation: lower the print info
Change-Id: If6f597f3cf1d6da67f14f8a598f5a50e14fb798f
Signed-off-by: Joseph Chen <chenjh@rock-chips.com>
2018-08-14 20:55:34 +08:00
Joseph Chen fd62311e53 power: charge animation: fix i2c failed issue
i2c maybe interrpted by power key interrupt, so we need to
disable local irq when i2c transfer.

Change-Id: Ifd4c1f15ebab25c7fa54e4386c72e5731bc821b4
Signed-off-by: Joseph Chen <chenjh@rock-chips.com>
2018-07-21 12:20:48 +08:00
Joseph Chen 93aee2d903 power: charge animation: fix auto off and optimise images show
- fix auto off screen issue;
- don't call charge_show_bmp() unless image changed;

Change-Id: I6474c8ef55617883da2ba4abb4da240a770e0d93
Signed-off-by: Joseph Chen <chenjh@rock-chips.com>
2018-07-21 12:20:48 +08:00
Joseph Chen 5e80474146 power: charge animation: add poll time to update fuel gauge
Usually, fuel gauge is a i2c device and we had better set a
poll seconds to update it, which can reduce i2c read/write.

Change-Id: I192e8229d3b6b7f8887a38296314e69b9dc30753
Signed-off-by: Joseph Chen <chenjh@rock-chips.com>
2018-07-21 12:20:48 +08:00
Joseph Chen 787a62ebeb power: charge animation: use read_key() to read power key
Change-Id: Id8218f0aa8d192baaa347d6e76ee2d0f002d9c6b
Signed-off-by: Joseph Chen <chenjh@rock-chips.com>
2018-07-21 12:20:48 +08:00
Joseph Chen cf49f6adf1 power: charge animation: add debug message
Change-Id: Ib96ab67e9e2657385f19c9e2ab2ed518da0ad2f8
Signed-off-by: Joseph Chen <chenjh@rock-chips.com>
2018-07-03 10:52:29 +08:00
Joseph Chen 79244e4cb1 power: charge animation: imporve extrem low power charge
Change-Id: I46203712e2aa02e04d645b660ea51811e7430821
Signed-off-by: Joseph Chen <chenjh@rock-chips.com>
2018-03-26 10:04:52 +08:00
Joseph Chen e7f9facb5d power: charge animation: support auto wakeup and auto off screen
Change-Id: I93f97c46e5f08c3ebe4b577355f5e23a9e3659ed
Signed-off-by: Joseph Chen <chenjh@rock-chips.com>
2018-03-19 09:25:49 +08:00
shengfei Xu 616056c90c power: charge_animation: skip charge if charger offline
Change-Id: I66bd36fc4d3cd4a2f79cd5eb425f857fc8a577cb
Signed-off-by: shengfei Xu <xsf@rock-chips.com>
2018-03-19 09:25:49 +08:00
Joseph Chen 8fc5ae065c power: charge_animation: move out delay
Change-Id: Ic46f9ba23fc8e9e3b41e8fc8118a29ecdc00de8f
Signed-off-by: Joseph Chen <chenjh@rock-chips.com>
2018-03-01 16:29:12 +08:00
Joseph Chen 88949342ad power: add rockchip_pm.c for devices low power control
during system suspend in charge animation, we may need add
power manage control for some devices low power. Since U-Boot
don't provide standard suspend/resume callback for device. We
have to add rockchip_pm.c to write hard code to achieve this
for different platforms or boards.

Change-Id: I01f67c7c57cbcaae48d3def65eea8cab499af93b
Signed-off-by: Joseph Chen <chenjh@rock-chips.com>
2018-02-26 09:16:57 +08:00
Joseph Chen ac1dc0c37a charge animation: export struct charge_animation_pdata
This is the most flexsible way for all fuel gauge driver to get
fdt config info from charge animation platdata.

Change-Id: I33aa52c34f2c62c10b58003a10e5a8d1d6e5d7d3
Signed-off-by: Joseph Chen <chenjh@rock-chips.com>
2018-02-09 14:28:54 +08:00
Joseph Chen f23c35a88c power: charge animation: optimise code
1. compatible fdt node used on legacy U-Boot;
2. clean up code.

Change-Id: If9ad1df379b14d096e3310568bc39d2c5820753b
Signed-off-by: Joseph Chen <chenjh@rock-chips.com>
2018-02-09 14:28:16 +08:00
Joseph Chen d4e1125bbc power: charge animation: use platform_read_key()
Change-Id: Idbcec18cfacb74305880c8e207e51b1ff204a948
Signed-off-by: Joseph Chen <chenjh@rock-chips.com>
2018-01-31 18:13:53 +08:00
Joseph Chen d6653c12a9 power: charge animation: compatible legacy device node
compatible with kernel 4.4 device node "uboot-charge".

Change-Id: I754091d02f73b265f852855d203775862f33f05c
Signed-off-by: Joseph Chen <chenjh@rock-chips.com>
2018-01-30 17:25:14 +08:00
Joseph Chen 221b522060 power: charge animation: skip charge while special boot mode
only BOOT_MODE_CHARGING and BOOT_MODE_UNDEFINE enter charging.

Change-Id: I21a7b93ff50aab47f3a32094fc36083b42b7b9b0
Signed-off-by: Joseph Chen <chenjh@rock-chips.com>
2017-12-28 15:23:35 +08:00
Kever Yang d3ff9cf90a rockchip: charge_animation: update for rkimg api
Change-Id: If3157382c05717d363c42f045abcc12489ffec64
Signed-off-by: Kever Yang <kever.yang@rock-chips.com>
2017-12-08 18:13:25 +08:00
Joseph Chen b177a917da power: charge animation: add system suspend support
cpu0 will trap into ATF for system suspend, ATF can
lead system to a extrem low power state.

Change-Id: I1fad3671a11ed41d22533d21fb0df656b4a84e82
Signed-off-by: Joseph Chen <chenjh@rock-chips.com>
2017-12-05 09:34:48 +08:00
Joseph Chen 1367bfe31c power: charge animation: implement dm charge display callbacks
Change-Id: I3c38f16dbeafd4defdf4533b7d516060fdca9cf2
Signed-off-by: Joseph Chen <chenjh@rock-chips.com>
2017-12-05 09:34:48 +08:00
Joseph Chen 8f9ff70555 power: charge animation: exit charge if not boot normal mode
exactly for exit charge when detect boot recovery mode now.

Change-Id: I72cdc6cab58d1a825f6a9f036abc0cf13dbcc443
Signed-off-by: Joseph Chen <chenjh@rock-chips.com>
2017-11-13 09:52:47 +08:00
Joseph Chen a8b9d02646 power: charge animation: exit charge if detect preboot command.
charge animation will call fuel gauge to set charge current according
to adapter before exit, it promises lower power battery has enough power
supply during some long time preboot command execution.

Change-Id: I7fe5b19a0a48422528956310d5ee272ef556b840
Signed-off-by: Joseph Chen <chenjh@rock-chips.com>
2017-11-10 17:16:31 +08:00
Joseph Chen f1c8eccefa power: add charge animation support
Change-Id: I3a8c3f90e4e743b06c7cd0613ac6b5863238c6a4
Signed-off-by: Joseph Chen <chenjh@rock-chips.com>
2017-11-03 11:57:11 +08:00