Tom Rini | 10e4779 | 2018-05-06 17:58:06 -0400 | [diff] [blame] | 1 | /* SPDX-License-Identifier: GPL-2.0+ */ |
Rick Chen | e76b804 | 2017-12-26 13:55:48 +0800 | [diff] [blame] | 2 | /* |
3 | * Copyright (C) 2017 Andes Technology Corporation | ||||
4 | * Rick Chen, Andes Technology Corporation <rick@andestech.com> | ||||
Rick Chen | e76b804 | 2017-12-26 13:55:48 +0800 | [diff] [blame] | 5 | */ |
Bin Meng | c7feb19 | 2018-09-26 06:55:12 -0700 | [diff] [blame] | 6 | |
Rick Chen | e76b804 | 2017-12-26 13:55:48 +0800 | [diff] [blame] | 7 | OUTPUT_ARCH("riscv") |
8 | ENTRY(_start) | ||||
9 | |||||
10 | SECTIONS | ||||
11 | { | ||||
12 | . = ALIGN(4); | ||||
Bin Meng | c7feb19 | 2018-09-26 06:55:12 -0700 | [diff] [blame] | 13 | .text : { |
Bin Meng | bcb3843 | 2018-09-26 06:55:17 -0700 | [diff] [blame] | 14 | arch/riscv/cpu/start.o (.text) |
Rick Chen | e76b804 | 2017-12-26 13:55:48 +0800 | [diff] [blame] | 15 | } |
16 | |||||
Alexander Graf | 94a10f2 | 2018-06-12 07:48:37 +0200 | [diff] [blame] | 17 | /* This needs to come before *(.text*) */ |
18 | .efi_runtime : { | ||||
Bin Meng | c7feb19 | 2018-09-26 06:55:12 -0700 | [diff] [blame] | 19 | __efi_runtime_start = .; |
Alexander Graf | 94a10f2 | 2018-06-12 07:48:37 +0200 | [diff] [blame] | 20 | *(.text.efi_runtime*) |
21 | *(.rodata.efi_runtime*) | ||||
22 | *(.data.efi_runtime*) | ||||
Bin Meng | c7feb19 | 2018-09-26 06:55:12 -0700 | [diff] [blame] | 23 | __efi_runtime_stop = .; |
Alexander Graf | 94a10f2 | 2018-06-12 07:48:37 +0200 | [diff] [blame] | 24 | } |
25 | |||||
Bin Meng | c7feb19 | 2018-09-26 06:55:12 -0700 | [diff] [blame] | 26 | .text_rest : { |
Alexander Graf | 94a10f2 | 2018-06-12 07:48:37 +0200 | [diff] [blame] | 27 | *(.text*) |
28 | } | ||||
29 | |||||
Rick Chen | e76b804 | 2017-12-26 13:55:48 +0800 | [diff] [blame] | 30 | . = ALIGN(4); |
31 | .rodata : { *(SORT_BY_ALIGNMENT(SORT_BY_NAME(.rodata*))) } | ||||
32 | |||||
33 | . = ALIGN(4); | ||||
34 | .data : { | ||||
Rick Chen | e76b804 | 2017-12-26 13:55:48 +0800 | [diff] [blame] | 35 | *(.data*) |
36 | } | ||||
37 | . = ALIGN(4); | ||||
38 | |||||
39 | .got : { | ||||
Bin Meng | c7feb19 | 2018-09-26 06:55:12 -0700 | [diff] [blame] | 40 | __got_start = .; |
41 | *(.got.plt) *(.got) | ||||
42 | __got_end = .; | ||||
43 | } | ||||
Rick Chen | e76b804 | 2017-12-26 13:55:48 +0800 | [diff] [blame] | 44 | |
45 | . = ALIGN(4); | ||||
46 | |||||
Andrew Scull | 5a9095c | 2022-05-30 10:00:04 +0000 | [diff] [blame] | 47 | __u_boot_list : { |
48 | KEEP(*(SORT(__u_boot_list*))); | ||||
Rick Chen | e76b804 | 2017-12-26 13:55:48 +0800 | [diff] [blame] | 49 | } |
50 | |||||
Bin Meng | 50e7d71 | 2023-06-27 09:24:56 +0800 | [diff] [blame] | 51 | . = ALIGN(8); |
Rick Chen | e76b804 | 2017-12-26 13:55:48 +0800 | [diff] [blame] | 52 | |
Rick Chen | 9677a37 | 2018-05-28 19:06:37 +0800 | [diff] [blame] | 53 | .efi_runtime_rel : { |
Bin Meng | c7feb19 | 2018-09-26 06:55:12 -0700 | [diff] [blame] | 54 | __efi_runtime_rel_start = .; |
Alexander Graf | 94a10f2 | 2018-06-12 07:48:37 +0200 | [diff] [blame] | 55 | *(.rel*.efi_runtime) |
56 | *(.rel*.efi_runtime.*) | ||||
Bin Meng | c7feb19 | 2018-09-26 06:55:12 -0700 | [diff] [blame] | 57 | __efi_runtime_rel_stop = .; |
Rick Chen | 9677a37 | 2018-05-28 19:06:37 +0800 | [diff] [blame] | 58 | } |
59 | |||||
Bin Meng | c7feb19 | 2018-09-26 06:55:12 -0700 | [diff] [blame] | 60 | /DISCARD/ : { *(.rela.plt*) } |
61 | .rela.dyn : { | ||||
62 | __rel_dyn_start = .; | ||||
63 | *(.rela*) | ||||
64 | __rel_dyn_end = .; | ||||
65 | } | ||||
Rick Chen | e76b804 | 2017-12-26 13:55:48 +0800 | [diff] [blame] | 66 | |
Bin Meng | 4478727 | 2023-04-13 14:20:08 +0800 | [diff] [blame] | 67 | . = ALIGN(8); |
Rick Chen | e76b804 | 2017-12-26 13:55:48 +0800 | [diff] [blame] | 68 | |
Bin Meng | c7feb19 | 2018-09-26 06:55:12 -0700 | [diff] [blame] | 69 | .dynsym : { |
70 | __dyn_sym_start = .; | ||||
71 | *(.dynsym) | ||||
72 | __dyn_sym_end = .; | ||||
73 | } | ||||
Rick Chen | e76b804 | 2017-12-26 13:55:48 +0800 | [diff] [blame] | 74 | |
Bin Meng | 4478727 | 2023-04-13 14:20:08 +0800 | [diff] [blame] | 75 | . = ALIGN(8); |
Rick Chen | e76b804 | 2017-12-26 13:55:48 +0800 | [diff] [blame] | 76 | |
77 | _end = .; | ||||
78 | |||||
79 | .bss : { | ||||
Bin Meng | c7feb19 | 2018-09-26 06:55:12 -0700 | [diff] [blame] | 80 | __bss_start = .; |
81 | *(.bss*) | ||||
Rick Chen | 55bc1bd | 2019-11-14 13:52:27 +0800 | [diff] [blame] | 82 | . = ALIGN(8); |
Rick Chen | e76b804 | 2017-12-26 13:55:48 +0800 | [diff] [blame] | 83 | __bss_end = .; |
84 | } | ||||
Rick Chen | e76b804 | 2017-12-26 13:55:48 +0800 | [diff] [blame] | 85 | } |