path: root/Documentation
diff options
authorKevin Cernekee <>2014-12-25 09:49:11 -0800
committerRalf Baechle <>2015-04-01 17:21:38 +0200
commit9c24ce29b2b8c60d4bcca90c0a4da54b28f0b4e7 (patch)
tree312445a5c8d528986465b4f85d1e31bcec8f97d9 /Documentation
parent5432eeb6fa5a43ec223ea7b5e06212ce422c9462 (diff)
MIPS: BMIPS: Document the firmware->kernel DTB interface
Add a new section covering the Generic BMIPS machine type. Signed-off-by: Kevin Cernekee <> Cc: Cc: Cc: Cc: Cc: Cc: Cc: Cc: Cc: Cc: Cc: Patchwork: Signed-off-by: Ralf Baechle <>
Diffstat (limited to 'Documentation')
1 files changed, 28 insertions, 0 deletions
diff --git a/Documentation/devicetree/booting-without-of.txt b/Documentation/devicetree/booting-without-of.txt
index 77685185cf3b..e49e423268c0 100644
--- a/Documentation/devicetree/booting-without-of.txt
+++ b/Documentation/devicetree/booting-without-of.txt
@@ -15,6 +15,7 @@ Table of Contents
1) Entry point for arch/arm
2) Entry point for arch/powerpc
3) Entry point for arch/x86
+ 4) Entry point for arch/mips/bmips
II - The DT block format
1) Header
@@ -288,6 +289,33 @@ it with special cases.
or initrd address. It simply holds information which can not be retrieved
otherwise like interrupt routing or a list of devices behind an I2C bus.
+4) Entry point for arch/mips/bmips
+ 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
+ This convention is defined for 32-bit systems only, as there are not
+ currently any 64-bit BMIPS implementations.
II - The DT block format