summaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-rockchip/platsmp.c
Commit message (Collapse)AuthorAgeFilesLines
* ARM: rockchip: add basic smp support for rk3288Kever Yang2014-11-051-24/+96
| | | | | | | | | | | | | | | | | | | | | This patch add basic rk3288 smp support. Only cortex-A9 need invalid L1, A7/A12/A15/A17 should not invalid L1, since for A7/A12/A15, the invalidation would be taken as clean and invalidate. If you use the software manual invalidation instead of hardware invalidation (assert l1/l2rstdisable during reset) after reset, there is tiny change that some cachelines would be in dirty and valid state after reset(since the ram content would be random value after reset), then the unexpected clean might lead to system crash. It is a known issue for the A12/A17 MPCore multiprocessor that the active processors might be stalled when the individual processor is powered down, we can avoid this prolbem by softreset the processor before power it down. Signed-off-by: Kever Yang <kever.yang@rock-chips.com> Tested-by: Kevin Hilman <khilman@linaro.org> Signed-off-by: Heiko Stuebner <heiko@sntech.de>
* ARM: rockchip: add option to access the pmu via a phandle in smp_operationsHeiko Stuebner2014-11-051-0/+13
| | | | | | | | | | | Makes it possible to define a rockchip,pmu phandle in the cpus node directly referencing the pmu syscon instead of searching for specific compatible. The old way of finding the pmu stays of course available. Signed-off-by: Kever Yang <kever.yang@rock-chips.com> Tested-by: Kevin Hilman <khilman@linaro.org> Signed-off-by: Heiko Stuebner <heiko@sntech.de>
* ARM: rockchip: convert to regmap and use pmu syscon if availableHeiko Stuebner2014-11-051-26/+78
| | | | | | | | | | | | | | | | | | | The pmu register space is - like the GRF - shared by quite some peripherals. On the rk3188 and rk3288 even parts of the pinctrl are living there. Therefore we normally shouldn't map it a second time when the syscon does this already. Therefore convert the cpu power-domain handling to access the pmu via a regmap and at first try to get it via the syscon interface. Getting this syscon will only fail if the pmu node does not have the "syscon" compatible and thus does not get shared with other drivers. In this case we map it like before and create the necessary regmap on top of it. Signed-off-by: Kever Yang <kever.yang@rock-chips.com> Tested-by: Kevin Hilman <khilman@linaro.org> Signed-off-by: Heiko Stuebner <heiko@sntech.de>
* ARM: rockchip: Add cpu hotplug support for RK3XXX SoCsRomain Perier2014-07-231-0/+20
| | | | | | | | | Adds ability to shutdown all CPUs except the first one (since it might be special for a lot of platforms). It is now possible to use kexec which requires such a feature. Signed-off-by: Romain Perier <romain.perier@gmail.com> Signed-off-by: Heiko Stuebner <heiko@sntech.de>
* ARM: rockchip: convert smp bringup to CPU_METHOD_OF_DECLAREHeiko Stübner2014-05-261-1/+2
| | | | | | | | | With the newly introduced CPU_METHOD_OF_DECLARE is not necessary anymore to reference the relevant smp_ops in the board file, but instead it can simply be set by the enable-method property of the cpu nodes. Signed-off-by: Heiko Stuebner <heiko@sntech.de> Signed-off-by: Olof Johansson <olof@lixom.net>
* ARM: rockchip: fix copy'n'paste error in smp error messagesHeiko Stuebner2014-04-151-1/+1
| | | | | | | The error emitted when mapping the pmu failed, wrongly mentions the sram. Reported-by: Kent Borg <kentborg@borg.org> Signed-off-by: Heiko Stuebner <heiko@sntech.de>
* ARM: rockchip: add smp bringup codeHeiko Stuebner2014-03-011-0/+184
This adds the necessary smp-operations and startup code to use additional cores on Rockchip SoCs. We currently hog the power management unit in the smp code, as it is necessary to control the power to the cpu core and nothing else is currently using it, so a generic implementation can be done later. Signed-off-by: Heiko Stuebner <heiko@sntech.de> Tested-by: Ulrich Prinz <ulrich.prinz@googlemail.com>