1 Interface between kernel and boot loaders on Exynos boards
2 ==========================================================
4 Author: Krzysztof Kozlowski
7 The document tries to describe currently used interface between Linux kernel
8 and boot loaders on Samsung Exynos based boards. This is not a definition
9 of interface but rather a description of existing state, a reference
10 for information purpose only.
12 In the document "boot loader" means any of following: U-boot, proprietary
13 SBOOT or any other firmware for ARMv7 and ARMv8 initializing the board before
18 Address: sysram_ns_base_addr
20 =============================================================================
21 0x08 exynos_cpu_resume_ns System suspend
22 0x0c 0x00000bad (Magic cookie) System suspend
23 0x1c exynos4_secondary_startup Secondary CPU boot
24 0x1c + 4*cpu exynos4_secondary_startup (Exynos4412) Secondary CPU boot
25 0x20 0xfcba0d10 (Magic cookie) AFTR
26 0x24 exynos_cpu_resume_ns AFTR
27 0x28 + 4*cpu 0x8 (Magic cookie, Exynos3250) AFTR
31 Address: sysram_base_addr
33 =============================================================================
34 0x00 exynos4_secondary_startup Secondary CPU boot
35 0x04 exynos4_secondary_startup (Exynos542x) Secondary CPU boot
36 4*cpu exynos4_secondary_startup (Exynos4412) Secondary CPU boot
37 0x20 exynos_cpu_resume (Exynos4210 r1.0) AFTR
38 0x24 0xfcba0d10 (Magic cookie, Exynos4210 r1.0) AFTR
40 Address: pmu_base_addr
42 =============================================================================
43 0x0800 exynos_cpu_resume AFTR
44 0x0814 exynos4_secondary_startup (Exynos4210 r1.1) Secondary CPU boot
45 0x0818 0xfcba0d10 (Magic cookie, Exynos4210 r1.1) AFTR
46 0x081C exynos_cpu_resume (Exynos4210 r1.1) AFTR
49 3. Other (regardless of secure/non-secure mode)
50 Address: pmu_base_addr
52 =============================================================================
53 0x0908 Non-zero (only Exynos3250) Secondary CPU boot up indicator