xref: /linux/arch/arm64/kvm/hyp/nvhe/hyp.lds.S (revision b5bee6ced21ca98389000b7017dd41b0cc37fa50)
1/* SPDX-License-Identifier: GPL-2.0 */
2/*
3 * Copyright (C) 2020 Google LLC.
4 * Written by David Brazdil <dbrazdil@google.com>
5 *
6 * Linker script used for partial linking of nVHE EL2 object files.
7 */
8
9#include <asm/hyp_image.h>
10#include <asm-generic/vmlinux.lds.h>
11#include <asm/cache.h>
12#include <asm/memory.h>
13
14SECTIONS {
15	HYP_SECTION(.idmap.text)
16	HYP_SECTION(.text)
17	HYP_SECTION(.data..ro_after_init)
18	HYP_SECTION(.rodata)
19
20	/*
21	 * .hyp..data..percpu needs to be page aligned to maintain the same
22	 * alignment for when linking into vmlinux.
23	 */
24	. = ALIGN(PAGE_SIZE);
25	BEGIN_HYP_SECTION(.data..percpu)
26		PERCPU_INPUT(L1_CACHE_BYTES)
27	END_HYP_SECTION
28	HYP_SECTION(.bss)
29}
30