diff options
author | Bartlomiej Zolnierkiewicz <[email protected]> | 2015-03-27 02:32:56 +0900 |
---|---|---|
committer | Kukjin Kim <[email protected]> | 2015-03-27 02:32:56 +0900 |
commit | 497ab3b30c7687f52e6711e2ac72d1b696ec7685 (patch) | |
tree | 54220f51a7de1ee57e7787c3fa2d03fca9e99cff /lib/memory-notifier-error-inject.c | |
parent | 4e330ae4ab2915444f1e6dca1358a910aa259362 (diff) |
ARM: EXYNOS: fix CPU1 hotplug on Exynos3250
CPU1 hotplug may hang when AFTR is used. Fix it by:
- setting AUTOWAKEUP_EN bit in ARM_COREx_CONFIGURATION register in
exynos_cpu_power_up()
- not clearing reserved bits of ARM_COREx_CONFIGURATION register in
exynos_cpu_power_down()
- waiting while an undocumented register 0x0908 becomes non-zero in
exynos_core_restart()
- using dsb_sev() instead of IPI in exynos_boot_secondary() on
Exynos3250
This patch also fixes hotplug issues during resume from S2R:
$ echo mem > /sys/power/state
[ 156.517266] Disabling non-boot CPUs ...
[ 156.517781] IRQ18 no longer affine to CPU1
[ 156.518043] CPU1: shutdown
[ 156.544718] Enabling non-boot CPUs ...
[ 156.554925] CPU1: Software reset
[ 158.552631] CPU1: failed to come online
[ 158.552753] Error taking CPU1 up: -5
Cc: Daniel Lezcano <[email protected]>
Signed-off-by: Chanwoo Choi <[email protected]>
Signed-off-by: Krzysztof Kozlowski <[email protected]>
Signed-off-by: Bartlomiej Zolnierkiewicz <[email protected]>
Reviewed-by: Krzysztof Kozlowski <[email protected]>
Tested-by: Krzysztof Kozlowski <[email protected]>
Acked-by: Kyungmin Park <[email protected]>
Tested-by: Chanwoo Choi <[email protected]>
Signed-off-by: Kukjin Kim <[email protected]>
Diffstat (limited to 'lib/memory-notifier-error-inject.c')
0 files changed, 0 insertions, 0 deletions