aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Documentation/arm64/booting.txt7
-rw-r--r--arch/arm64/kernel/image.h5
2 files changed, 10 insertions, 2 deletions
diff --git a/Documentation/arm64/booting.txt b/Documentation/arm64/booting.txt
index 7d9d3c2286b2..aaf6d77e4148 100644
--- a/Documentation/arm64/booting.txt
+++ b/Documentation/arm64/booting.txt
@@ -104,7 +104,12 @@ Header notes:
104- The flags field (introduced in v3.17) is a little-endian 64-bit field 104- The flags field (introduced in v3.17) is a little-endian 64-bit field
105 composed as follows: 105 composed as follows:
106 Bit 0: Kernel endianness. 1 if BE, 0 if LE. 106 Bit 0: Kernel endianness. 1 if BE, 0 if LE.
107 Bits 1-63: Reserved. 107 Bit 1-2: Kernel Page size.
108 0 - Unspecified.
109 1 - 4K
110 2 - 16K
111 3 - 64K
112 Bits 3-63: Reserved.
108 113
109- When image_size is zero, a bootloader should attempt to keep as much 114- When image_size is zero, a bootloader should attempt to keep as much
110 memory as possible free for use by the kernel immediately after the 115 memory as possible free for use by the kernel immediately after the
diff --git a/arch/arm64/kernel/image.h b/arch/arm64/kernel/image.h
index 6eb8fee93321..bc2abb8b1599 100644
--- a/arch/arm64/kernel/image.h
+++ b/arch/arm64/kernel/image.h
@@ -47,7 +47,10 @@
47#define __HEAD_FLAG_BE 0 47#define __HEAD_FLAG_BE 0
48#endif 48#endif
49 49
50#define __HEAD_FLAGS (__HEAD_FLAG_BE << 0) 50#define __HEAD_FLAG_PAGE_SIZE ((PAGE_SHIFT - 10) / 2)
51
52#define __HEAD_FLAGS ((__HEAD_FLAG_BE << 0) | \
53 (__HEAD_FLAG_PAGE_SIZE << 1))
51 54
52/* 55/*
53 * These will output as part of the Image header, which should be little-endian 56 * These will output as part of the Image header, which should be little-endian