soc: rockchip: power-domain: Add power domain driver
authorCaesar Wang <wxt@rock-chips.com>
Tue, 8 Sep 2015 06:18:22 +0000 (14:18 +0800)
committerHeiko Stuebner <heiko@sntech.de>
Tue, 6 Oct 2015 07:53:28 +0000 (09:53 +0200)
commit7c696693a4f54d12714738b45aee3e4302884ade
treeb642fa5b9a6d3929927cda71a5c1d09adffb74a5
parentd64180fd5921be9db9cf63cc12c11086c444c0d0
soc: rockchip: power-domain: Add power domain driver

This driver is found on RK3288 SoCs.

In order to meet high performance and low power requirements, a power
management unit is designed or saving power when RK3288 in low power
mode.
The RK3288 PMU is dedicated for managing the power of the whole chip.

PMU can work in the Low Power Mode by setting bit[0] of PMU_PWRMODE_CON
register. After setting the register, PMU would enter the Low Power mode.
In the low power mode, pmu will auto power on/off the specified power
domain, send idle req to specified power domain, shut down/up pll and
so on. All of above are configurable by setting corresponding registers.

Signed-off-by: Caesar Wang <wxt@rock-chips.com>
Reviewed-by: Kevin Hilman <khilman@linaro.org>
[replace dsb() with dsb(sy) for arm64 buildability; sy is the default,
so no functional change; adapt to per-user clocks in genpd]
Signed-off-by: Heiko Stuebner <heiko@sntech.de>
drivers/soc/Kconfig
drivers/soc/Makefile
drivers/soc/rockchip/Kconfig [new file with mode: 0644]
drivers/soc/rockchip/Makefile [new file with mode: 0644]
drivers/soc/rockchip/pm_domains.c [new file with mode: 0644]