|
【Linux】
rk3328 suspend: How to define wakeup sources?
Posted at 6/13/2019 19:38:47
View:7725
|
Replies:1
Print
Only Author
[Copy Link]
1#
Last edited by pablo In 6/13/2019 19:40 Editor
Hi all,
Can anyone describe how to configure the roc-rk3328-cc for suspend and wakeup? I need information on:
- how to configure the rk3328 for low power consumption in suspend
- how to configure wakeup sources: USB OTG, UART, GPIO...
In the Firefly (roc-rk3328-cc) and Rockchip (develop-4.4) Linux kernel repos the process is just barely described in Documentation/devicetree/bindings/soc/rockchip/rockchip-pm-config.txt, with the rk3328 configuration example being only how to disable:
- rockchip_suspend: rockchip-suspend {
- compatible = "rockchip,pm-rk3328";
- status = "disabled";
- rockchip,virtual-poweroff = <0>;
- };
Copy the code
The actual rk3328.dtsi files in the Firefly (roc-rk3328-cc) and Rockchip (develop-4.4) Linux kernel repos look slightly different, why? And why are not rockchip,wakeup-config and rockchip,pwm-regulator-config configured?
- rockchip_suspend: rockchip-suspend {
- compatible = "rockchip,pm-rk3328";
- status = "disabled";
- rockchip,sleep-mode-config = <0>;
- rockchip,virtual-poweroff = <0>;
- };
Copy the code
Also the corresponding suspend header file for rk3328, include/dt-bindings/suspend/rockchip-rk3328.h, does not list any relevant bits to use for sleep and wakeup configuration, like the rk3399 header file does, why?
- /* SPDX-License-Identifier: (GPL-2.0+ OR MIT) */
- /*
- * Header providing constants for Rockchip suspend bindings.
- *
- * Copyright (C) 2018, Fuzhou Rockchip Electronics Co., Ltd
- * Author: XiaoDong.Huang
- */
- #ifndef __DT_BINDINGS_ROCKCHIP_PM_H__
- #define __DT_BINDINGS_ROCKCHIP_PM_H__
- /******************************bits ops************************************/
- #ifndef BIT
- #define BIT(nr) (1 << (nr))
- #endif
- #define RKPM_SLP_CTR_VOL_PWM0 BIT(10)
- #define RKPM_SLP_CTR_VOL_PWM1 BIT(11)
- #endif
Copy the code
In the Rockchip (develop-4.4) Linux kernel repo the rk3328-evb-* and rk3328-rock64-* boards seem to enable the suspend, but what is the consequence for suspend and resume? How do I configure the wakeup sources?
- &rockchip_suspend {
- status = "okay";
- rockchip,virtual-poweroff = <1>;
- };
Copy the code
|
|