]> git.proxmox.com Git - mirror_ubuntu-artful-kernel.git/blame - Documentation/arm/Samsung/Bootloader-interface.txt
Merge branches 'for-4.4/upstream-fixes', 'for-4.5/async-suspend', 'for-4.5/container...
[mirror_ubuntu-artful-kernel.git] / Documentation / arm / Samsung / Bootloader-interface.txt
CommitLineData
a28ab162
KK
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
9ba6e988 18
a28ab162
KK
19Address: sysram_ns_base_addr
20Offset Value Purpose
21=============================================================================
97d5c7a7 220x08 exynos_cpu_resume_ns, mcpm_entry_point System suspend
a28ab162
KK
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
9ba6e988 32
a28ab162
KK
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=============================================================================
9ba6e988
KK
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
a28ab162
KK
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)
9ba6e988 55
a28ab162
KK
56Address: pmu_base_addr
57Offset Value Purpose
58=============================================================================
97d5c7a7
KK
590x0908 Non-zero Secondary CPU boot up indicator
60 on Exynos3250 and Exynos542x
9ba6e988
KK
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