1 Interface between kernel and boot loaders on Exynos boards 2 ========================================================== 3 4Author: Krzysztof Kozlowski 5Date : 6 June 2015 6 7The document tries to describe currently used interface between Linux kernel 8and boot loaders on Samsung Exynos based boards. This is not a definition 9of interface but rather a description of existing state, a reference 10for information purpose only. 11 12In the document "boot loader" means any of following: U-boot, proprietary 13SBOOT or any other firmware for ARMv7 and ARMv8 initializing the board before 14executing kernel. 15 16 171. Non-Secure mode 18 19Address: sysram_ns_base_addr 20Offset Value Purpose 21============================================================================= 220x08 exynos_cpu_resume_ns, mcpm_entry_point System suspend 230x0c 0x00000bad (Magic cookie) System suspend 240x1c exynos4_secondary_startup Secondary CPU boot 250x1c + 4*cpu exynos4_secondary_startup (Exynos4412) Secondary CPU boot 260x20 0xfcba0d10 (Magic cookie) AFTR 270x24 exynos_cpu_resume_ns AFTR 280x28 + 4*cpu 0x8 (Magic cookie, Exynos3250) AFTR 29 30 312. Secure mode 32 33Address: sysram_base_addr 34Offset Value Purpose 35============================================================================= 360x00 exynos4_secondary_startup Secondary CPU boot 370x04 exynos4_secondary_startup (Exynos542x) Secondary CPU boot 384*cpu exynos4_secondary_startup (Exynos4412) Secondary CPU boot 390x20 exynos_cpu_resume (Exynos4210 r1.0) AFTR 400x24 0xfcba0d10 (Magic cookie, Exynos4210 r1.0) AFTR 41 42Address: pmu_base_addr 43Offset Value Purpose 44============================================================================= 450x0800 exynos_cpu_resume AFTR, suspend 460x0800 mcpm_entry_point (Exynos542x with MCPM) AFTR, suspend 470x0804 0xfcba0d10 (Magic cookie) AFTR 480x0804 0x00000bad (Magic cookie) System suspend 490x0814 exynos4_secondary_startup (Exynos4210 r1.1) Secondary CPU boot 500x0818 0xfcba0d10 (Magic cookie, Exynos4210 r1.1) AFTR 510x081C exynos_cpu_resume (Exynos4210 r1.1) AFTR 52 53 543. Other (regardless of secure/non-secure mode) 55 56Address: pmu_base_addr 57Offset Value Purpose 58============================================================================= 590x0908 Non-zero Secondary CPU boot up indicator 60 on Exynos3250 and Exynos542x 61 62 634. Glossary 64 65AFTR - ARM Off Top Running, a low power mode, Cortex cores and many other 66modules are power gated, except the TOP modules 67MCPM - Multi-Cluster Power Management 68