ARM: exynos: MCPM: Restore big.LITTLE cpuidle support
authorMarek Szyprowski <m.szyprowski@samsung.com>
Mon, 29 Jun 2020 10:02:18 +0000 (12:02 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 19 Aug 2020 06:23:27 +0000 (08:23 +0200)
commitfe8de1c5e8309ca4f8eb9a92e495acf546f0ed7e
tree80587a06213d04a7b19f469e365d68b556dab7da
parent603a81f020bb0c746ba4afbd1de078a5ac3e182e
ARM: exynos: MCPM: Restore big.LITTLE cpuidle support

[ Upstream commit ea9dd8f61c8a890843f68e8dc0062ce78365aab8 ]

Call exynos_cpu_power_up(cpunr) unconditionally. This is needed by the
big.LITTLE cpuidle driver and has no side-effects on other code paths.

The additional soft-reset call during little core power up has been added
to properly boot all cores on the Exynos5422-based boards with secure
firmware (like Odroid XU3/XU4 family). This however broke big.LITTLE
CPUidle driver, which worked only on boards without secure firmware (like
Peach-Pit/Pi Chromebooks). Apply the workaround only when board is
running under secure firmware.

Fixes: 833b5794e330 ("ARM: EXYNOS: reset Little cores when cpu is up")
Signed-off-by: Marek Szyprowski <m.szyprowski@samsung.com>
Reviewed-by: Lukasz Luba <lukasz.luba@arm.com>
Signed-off-by: Krzysztof Kozlowski <krzk@kernel.org>
Signed-off-by: Sasha Levin <sashal@kernel.org>
arch/arm/mach-exynos/mcpm-exynos.c