ec62a746b6
and fix all in-tree references. Architecture-specific documentation is being moved into Documentation/arch/ as a way of cleaning up the top-level documentation directory and making the docs hierarchy more closely match the source hierarchy. Signed-off-by: Costa Shulyupin <costa.shul@redhat.com> Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org> Signed-off-by: Jonathan Corbet <corbet@lwn.net> Link: https://lore.kernel.org/r/20230725043835.2249678-1-costa.shul@redhat.com
29 lines
1.0 KiB
ReStructuredText
29 lines
1.0 KiB
ReStructuredText
.. SPDX-License-Identifier: GPL-2.0
|
|
|
|
BMIPS DeviceTree Booting
|
|
------------------------
|
|
|
|
Some bootloaders only support a single entry point, at the start of the
|
|
kernel image. Other bootloaders will jump to the ELF start address.
|
|
Both schemes are supported; CONFIG_BOOT_RAW=y and CONFIG_NO_EXCEPT_FILL=y,
|
|
so the first instruction immediately jumps to kernel_entry().
|
|
|
|
Similar to the arch/arm case (b), a DT-aware bootloader is expected to
|
|
set up the following registers:
|
|
|
|
a0 : 0
|
|
|
|
a1 : 0xffffffff
|
|
|
|
a2 : Physical pointer to the device tree block (defined in chapter
|
|
II) in RAM. The device tree can be located anywhere in the first
|
|
512MB of the physical address space (0x00000000 - 0x1fffffff),
|
|
aligned on a 64 bit boundary.
|
|
|
|
Legacy bootloaders do not use this convention, and they do not pass in a
|
|
DT block. In this case, Linux will look for a builtin DTB, selected via
|
|
CONFIG_DT_*.
|
|
|
|
This convention is defined for 32-bit systems only, as there are not
|
|
currently any 64-bit BMIPS implementations.
|