Commit Graph

5 Commits

Author SHA1 Message Date
Andreas Färber
6c2eb3e76f ARM: owl: smp: Drop owl_secondary_boot()
Commit 18cfd9429d simplified the S500 SMP
code by removing a loop for pen_release in owl_secondary_boot().

Since then it is only calling owl_v7_invalidate_l1() before branching to
secondary_startup().

The owl_v7_invalidate_l1() assembler function is superfluous, too.
Therefore drop owl_secondary_boot() and use secondary_boot() directly.

Fixes: 18cfd9429d ("ARM: owl: smp: Drop bogus holding pen")
Cc: David Liu <liuwei@actions-semi.com>
Signed-off-by: Andreas Färber <afaerber@suse.de>
2017-09-20 16:49:27 +02:00
Andreas Färber
bad29933fe ARM: owl: smp: Use __pa_symbol()
Replace an occurrence of virt_to_phys() with __pa_symbol() macro.

See 64fc2a947a ("ARM: 8641/1: treewide:
Replace uses of virt_to_phys with __pa_symbol").

Fixes: 172067e0bc ("ARM: owl: Implement CPU enable-method for S500")
Reported-by: Florian Fainelli <f.fainelli@gmail.com>
Signed-off-by: Andreas Färber <afaerber@suse.de>
2017-09-20 16:48:14 +02:00
Andreas Färber
18cfd9429d ARM: owl: smp: Drop bogus holding pen
The S500 SoC can start secondary CPUs without busy-looping for pen_release,
so simplify the SMP code compared to the LeMaker kernel tree.

Fixes: 172067e0bc ("ARM: owl: Implement CPU enable-method for S500")
Suggested-by: Arnd Bergmann <arnd@arndb.de>
Cc: David Liu <liuwei@actions-semi.com>
Signed-off-by: Andreas Färber <afaerber@suse.de>
Signed-off-by: Arnd Bergmann <arnd@arndb.de>
2017-07-03 14:31:47 +02:00
Andreas Färber
b6a0e18ca6 ARM: owl: smp: Implement SPS power-gating for CPU2 and CPU3
Bring up the two remaining CPUs by calling into PM domain code.

Signed-off-by: Andreas Färber <afaerber@suse.de>
2017-06-23 18:01:35 +02:00
Andreas Färber
172067e0bc ARM: owl: Implement CPU enable-method for S500
Allow to bring up CPU1.

Based on LeMaker linux-actions tree.

Signed-off-by: Andreas Färber <afaerber@suse.de>
2017-06-21 18:17:39 +02:00