1/* SPDX-License-Identifier: GPL-2.0+ */
2/*
3 * ARM64 header for proper chain-loading with Little Kernel.
4 *
5 * Little Kernel shipped with Dragonboard410C boots standard Linux images for
6 * ARM64. This file adds header that is required to boot U-Boot properly.
7 *
8 * For details see:
9 * https://www.kernel.org/doc/Documentation/arm64/booting.txt
10 *
11 * (C) Copyright 2015 Mateusz Kulikowski <mateusz.kulikowski@gmail.com>
12 */
13
14#include <config.h>
15
16.global _arm64_header
17_arm64_header:
18	b _start
19	.word 0
20	/* Image load offset from start of RAM, little-endian */
21	.quad   CONFIG_SYS_TEXT_BASE-PHYS_SDRAM_1
22	/* Effective size of kernel image, little-endian */
23	.quad   0 /* 0x60000 - ignored */
24	/* Informative flags, little-endian */
25	.quad   0
26	.quad   0                               /* reserved */
27	.quad   0                               /* reserved */
28	.quad   0                               /* reserved */
29	.byte   0x41                            /* Magic number, "ARM\x64" */
30	.byte   0x52
31	.byte   0x4d
32	.byte   0x64
33	.word   0                               /* reserved */
34