mirror of
https://github.com/AsahiLinux/u-boot
synced 2024-11-12 16:07:30 +00:00
ac0d98cd55
This patch adds code to shutdown secondary cores. When U-boot comes up, all secondary cores appear powered on, which is undesirable and causes side effects while initializing these cores in kernel. Secondary core power down happens in following steps: Step-1: After Exynos power-on, primary core starts executing first. Step-2: In iROM code every core has to check 2 flags i.e. addresses 0x02020028 & 0x02020004. Step-3: Initially 0x02020028 is 0 for all cores and 0x02020004 has a jump address for primary core and 0 for all secondary cores. Step-4: Therefore, primary core follows normal iROM execution and jumps to BL1 eventually, whereas all secondary cores enter WFE. Step-5: When primary core comes into function secondary_cores_configure, it puts pointer to function power_down_core into 0x02020004 and provides DSB and SEV for all cores so that they may come out of WFE and jump to power_down_core function. Step-6: And ultimately because of power_down_core all secondary cores shut-down. Signed-off-by: Kimoon Kim <kimoon.kim@samsung.com> Signed-off-by: Akshay Saraswat <akshay.s@samsung.com> Signed-off-by: Minkyu Kang <mk7.kang@samsung.com> |
||
---|---|---|
.. | ||
am33xx | ||
armada-xp | ||
bcm281xx | ||
bcm2835 | ||
bcmcygnus | ||
bcmnsp | ||
exynos | ||
iproc-common | ||
kona-common | ||
ls102xa | ||
mx5 | ||
mx6 | ||
omap-common | ||
omap3 | ||
omap4 | ||
omap5 | ||
rmobile | ||
s5p-common | ||
s5pc1xx | ||
socfpga | ||
stv0991 | ||
sunxi | ||
u8500 | ||
uniphier | ||
vf610 | ||
zynq | ||
arch_timer.c | ||
cache_v7.c | ||
config.mk | ||
cpu.c | ||
Kconfig | ||
lowlevel_init.S | ||
Makefile | ||
nonsec_virt.S | ||
psci.S | ||
start.S | ||
syslib.c | ||
virt-dt.c | ||
virt-v7.c |