0001 .. SPDX-License-Identifier: GPL-2.0
0002
0003 BMIPS DeviceTree Booting
0004 ------------------------
0005
0006 Some bootloaders only support a single entry point, at the start of the
0007 kernel image. Other bootloaders will jump to the ELF start address.
0008 Both schemes are supported; CONFIG_BOOT_RAW=y and CONFIG_NO_EXCEPT_FILL=y,
0009 so the first instruction immediately jumps to kernel_entry().
0010
0011 Similar to the arch/arm case (b), a DT-aware bootloader is expected to
0012 set up the following registers:
0013
0014 a0 : 0
0015
0016 a1 : 0xffffffff
0017
0018 a2 : Physical pointer to the device tree block (defined in chapter
0019 II) in RAM. The device tree can be located anywhere in the first
0020 512MB of the physical address space (0x00000000 - 0x1fffffff),
0021 aligned on a 64 bit boundary.
0022
0023 Legacy bootloaders do not use this convention, and they do not pass in a
0024 DT block. In this case, Linux will look for a builtin DTB, selected via
0025 CONFIG_DT_*.
0026
0027 This convention is defined for 32-bit systems only, as there are not
0028 currently any 64-bit BMIPS implementations.