linux/arch
Linus Walleij 3131d970f0 ARM: ux500: resume the second core properly
The pen hold/release scheme was copied over to Ux500 from the ARM
reference designs like most of these at the time. It is not needed
at all, and was mostly removed in commit c00def71ef
"ARM: ux500: simplify secondary CPU boot".

However on the suspend/resume path and hot plug/unplug of CPUs,
the .cpu_die() callback was still waiting for the pen to be
released which made it spin forever and the second core never come
back online after suspend/resume.

Fix this by simply replacing the strange custom .cpu_die() with
a oneline wfi() just like e.g. the qcom platform does. This fixes
the issue and makes the second core come up properly after
suspend/resume.

As a side effect, this rids us of the completely surplus local
setup.h and hotplug.c files, and we just compile this into platsmp.c
with everything else SMP.

Cc: stable@vger.kernel.org
Fixes: c00def71ef ("ARM: ux500: simplify secondary CPU boot")
Cc: Ulf Hansson <ulf.hansson@linaro.org>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2017-03-02 17:53:17 +01:00
..
alpha Final extable.h related changes. 2017-02-21 14:28:55 -08:00
arc ARC updates for 4.11 rc1 2017-02-22 10:33:53 -08:00
arm ARM: ux500: resume the second core properly 2017-03-02 17:53:17 +01:00
arm64 Merge branch 'next/late' with mainline 2017-03-02 17:52:44 +01:00
avr32 sched/cputime: Remove generic asm headers 2017-02-01 09:14:07 +01:00
blackfin sched/cputime: Remove generic asm headers 2017-02-01 09:14:07 +01:00
c6x sched/cputime: Remove generic asm headers 2017-02-01 09:14:07 +01:00
cris Final extable.h related changes. 2017-02-21 14:28:55 -08:00
frv Final extable.h related changes. 2017-02-21 14:28:55 -08:00
h8300 sched/cputime: Remove generic asm headers 2017-02-01 09:14:07 +01:00
hexagon Final extable.h related changes. 2017-02-21 14:28:55 -08:00
ia64 arch, mm: remove arch specific show_mem 2017-02-22 16:41:30 -08:00
m32r m32r: fix build warning 2017-02-22 16:41:27 -08:00
m68k powerpc updates for 4.11 part 1. 2017-02-22 10:30:38 -08:00
metag Final extable.h related changes. 2017-02-21 14:28:55 -08:00
microblaze Final extable.h related changes. 2017-02-21 14:28:55 -08:00
mips 4.11 is going to be a relatively large release for KVM, with a little over 2017-02-22 18:22:53 -08:00
mn10300 Final extable.h related changes. 2017-02-21 14:28:55 -08:00
nios2 Final extable.h related changes. 2017-02-21 14:28:55 -08:00
openrisc Final extable.h related changes. 2017-02-21 14:28:55 -08:00
parisc arch, mm: remove arch specific show_mem 2017-02-22 16:41:30 -08:00
powerpc Merge branch 'akpm' (patches from Andrew) 2017-02-22 19:29:24 -08:00
s390 Merge branch 'akpm' (patches from Andrew) 2017-02-22 19:29:24 -08:00
score score: remove asm/current.h 2017-02-22 16:41:27 -08:00
sh TTY/Serial driver patches for 4.11-rc1 2017-02-22 12:17:25 -08:00
sparc lib/show_mem.c: teach show_mem to work with the given nodemask 2017-02-22 16:41:30 -08:00
tile arch, mm: remove arch specific show_mem 2017-02-22 16:41:30 -08:00
um Merge branch 'locking-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2017-02-20 13:23:30 -08:00
unicore32 arch, mm: remove arch specific show_mem 2017-02-22 16:41:30 -08:00
x86 pci-v4.11-changes 2017-02-23 11:53:22 -08:00
xtensa Final extable.h related changes. 2017-02-21 14:28:55 -08:00
.gitignore
Kconfig Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next 2017-02-22 10:15:09 -08:00