~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

TOMOYO Linux Cross Reference
Linux/Documentation/arch/loongarch/booting.rst

Version: ~ [ linux-6.12-rc7 ] ~ [ linux-6.11.7 ] ~ [ linux-6.10.14 ] ~ [ linux-6.9.12 ] ~ [ linux-6.8.12 ] ~ [ linux-6.7.12 ] ~ [ linux-6.6.60 ] ~ [ linux-6.5.13 ] ~ [ linux-6.4.16 ] ~ [ linux-6.3.13 ] ~ [ linux-6.2.16 ] ~ [ linux-6.1.116 ] ~ [ linux-6.0.19 ] ~ [ linux-5.19.17 ] ~ [ linux-5.18.19 ] ~ [ linux-5.17.15 ] ~ [ linux-5.16.20 ] ~ [ linux-5.15.171 ] ~ [ linux-5.14.21 ] ~ [ linux-5.13.19 ] ~ [ linux-5.12.19 ] ~ [ linux-5.11.22 ] ~ [ linux-5.10.229 ] ~ [ linux-5.9.16 ] ~ [ linux-5.8.18 ] ~ [ linux-5.7.19 ] ~ [ linux-5.6.19 ] ~ [ linux-5.5.19 ] ~ [ linux-5.4.285 ] ~ [ linux-5.3.18 ] ~ [ linux-5.2.21 ] ~ [ linux-5.1.21 ] ~ [ linux-5.0.21 ] ~ [ linux-4.20.17 ] ~ [ linux-4.19.323 ] ~ [ linux-4.18.20 ] ~ [ linux-4.17.19 ] ~ [ linux-4.16.18 ] ~ [ linux-4.15.18 ] ~ [ linux-4.14.336 ] ~ [ linux-4.13.16 ] ~ [ linux-4.12.14 ] ~ [ linux-4.11.12 ] ~ [ linux-4.10.17 ] ~ [ linux-4.9.337 ] ~ [ linux-4.4.302 ] ~ [ linux-3.10.108 ] ~ [ linux-2.6.32.71 ] ~ [ linux-2.6.0 ] ~ [ linux-2.4.37.11 ] ~ [ unix-v6-master ] ~ [ ccs-tools-1.8.12 ] ~ [ policy-sample ] ~
Architecture: ~ [ i386 ] ~ [ alpha ] ~ [ m68k ] ~ [ mips ] ~ [ ppc ] ~ [ sparc ] ~ [ sparc64 ] ~

Diff markup

Differences between /Documentation/arch/loongarch/booting.rst (Architecture i386) and /Documentation/arch/mips/booting.rst (Architecture mips)


  1 .. SPDX-License-Identifier: GPL-2.0                 1 .. SPDX-License-Identifier: GPL-2.0
  2                                                     2 
  3 =======================                        !!   3 BMIPS DeviceTree Booting
  4 Booting Linux/LoongArch                        !!   4 ------------------------
  5 =======================                        !!   5 
  6                                                !!   6   Some bootloaders only support a single entry point, at the start of the
  7 :Author: Yanteng Si <siyanteng@loongson.cn>     !!   7   kernel image.  Other bootloaders will jump to the ELF start address.
  8 :Date:   18 Nov 2022                           !!   8   Both schemes are supported; CONFIG_BOOT_RAW=y and CONFIG_NO_EXCEPT_FILL=y,
  9                                                !!   9   so the first instruction immediately jumps to kernel_entry().
 10 Information passed from BootLoader to kernel   !!  10 
 11 ============================================   !!  11   Similar to the arch/arm case (b), a DT-aware bootloader is expected to
 12                                                !!  12   set up the following registers:
 13 LoongArch supports ACPI and FDT. The informati !!  13 
 14 to the kernel includes the memmap, the initrd, !!  14          a0 : 0
 15 the ACPI/FDT tables, and so on.                !!  15 
 16                                                !!  16          a1 : 0xffffffff
 17 The kernel is passed the following arguments o !!  17 
 18                                                !!  18          a2 : Physical pointer to the device tree block (defined in chapter
 19       - a0 = efi_boot: `efi_boot` is a flag in !!  19          II) in RAM.  The device tree can be located anywhere in the first
 20         this boot environment is fully UEFI-co !!  20          512MB of the physical address space (0x00000000 - 0x1fffffff),
 21                                                !!  21          aligned on a 64 bit boundary.
 22       - a1 = cmdline: `cmdline` is a pointer t !!  22 
 23                                                !!  23   Legacy bootloaders do not use this convention, and they do not pass in a
 24       - a2 = systemtable: `systemtable` points !!  24   DT block.  In this case, Linux will look for a builtin DTB, selected via
 25         All pointers involved at this stage ar !!  25   CONFIG_DT_*.
 26                                                !!  26 
 27 Header of Linux/LoongArch kernel images        !!  27   This convention is defined for 32-bit systems only, as there are not
 28 =======================================        !!  28   currently any 64-bit BMIPS implementations.
 29                                                << 
 30 Linux/LoongArch kernel images are EFI images.  << 
 31 a 64-byte header structured like::             << 
 32                                                << 
 33         u32     MZ_MAGIC                /* "MZ << 
 34         u32     res0 = 0                /* Res << 
 35         u64     kernel_entry            /* Ker << 
 36         u64     _end - _text            /* Ker << 
 37         u64     load_offset             /* Ker << 
 38         u64     res1 = 0                /* Res << 
 39         u64     res2 = 0                /* Res << 
 40         u64     res3 = 0                /* Res << 
 41         u32     LINUX_PE_MAGIC          /* Mag << 
 42         u32     pe_header - _head       /* Off << 
                                                      

~ [ source navigation ] ~ [ diff markup ] ~ [ identifier search ] ~

kernel.org | git.kernel.org | LWN.net | Project Home | SVN repository | Mail admin

Linux® is a registered trademark of Linus Torvalds in the United States and other countries.
TOMOYO® is a registered trademark of NTT DATA CORPORATION.

sflogo.php