Lines Matching +full:mode +full:- +full:loader
9 The following documentation is relevant to 2.4.18-rmk6 and beyond.
11 In order to boot ARM Linux, you require a boot loader, which is a small
12 program that runs before the main kernel. The boot loader is expected
16 Essentially, the boot loader should provide (as a minimum) the
28 ---------------------------
35 The boot loader is expected to find and initialise all RAM that the
39 the RAM in the machine, or any other method the boot loader designer
44 -----------------------------
51 The boot loader should initialise and enable one serial port on the
56 As an alternative, the boot loader can pass the relevant 'console='
60 Documentation/admin-guide/kernel-parameters.rst.
64 --------------------------
69 MANDATORY except for DT-only platforms
71 The boot loader should detect the machine type its running on by some
74 The boot loader must ultimately be able to provide a MACH_TYPE_xxx
75 value to the kernel. (see linux/arch/arm/tools/mach-types). This
78 For DT-only platforms, the machine type will be determined by device
83 ------------------
90 The boot loader must provide either a tagged list or a dtb image for
95 --------------------------------
97 The boot loader must create and initialise the kernel tagged list.
108 The boot loader must pass at a minimum the size and location of
112 +-----------+
113 base -> | ATAG_CORE | |
114 +-----------+ |
116 +-----------+ |
118 +-----------+ v
127 -------------------------
129 The boot loader must load a device tree image (dtb) into system ram
136 The boot loader must pass at a minimum the size and location of the
140 by the kernel's low-memory mapping.
145 ------------------
155 low-memory mapping.
162 ---------------------------
171 then it is legal for the boot loader to call the zImage in flash
180 When booting a raw (non-zImage) kernel the constraints are tighter.
182 to TEXT_OFFSET - PAGE_OFFSET.
186 - Quiesce all DMA capable devices so that memory does not get
190 - CPU register settings
192 - r0 = 0,
193 - r1 = machine type number discovered in (3) above.
194 - r2 = physical address of tagged list in system RAM, or
197 - CPU mode
202 CPU must be in SVC mode. (A special exception exists for Angel)
205 entered in HYP mode in order to enable the kernel to make full use of
207 unless the virtualisations are already in use by a pre-installed
210 If the kernel is not entered in HYP mode for any reason, it must be
211 entered in SVC mode.
213 - Caches, MMUs
221 If the kernel is entered in HYP mode, the above requirements apply to
222 the HYP mode configuration in addition to the ordinary PL1 (privileged
226 possible. Except for entering in HYP mode, the system configuration
230 - The boot loader is expected to call the kernel image by jumping
234 made in ARM state, even for a Thumb-2 kernel.
237 Cortex-M class CPUs, the entry must be made in Thumb state.