xref: /linux/drivers/firmware/efi/libstub/zboot.lds (revision eadb9fa7f775e39c2bdd9a43a947f03e86f9e37b)
1/* SPDX-License-Identifier: GPL-2.0 */
2
3ENTRY(__efistub_efi_zboot_header);
4
5PROVIDE(zboot_code_size = ABSOLUTE(0));
6
7SECTIONS
8{
9	.head : ALIGN(4096) {
10		*(.head)
11	}
12
13	.text : {
14		*(.text* .init.text*)
15	}
16
17	.rodata : ALIGN(8) {
18		__efistub__gzdata_start = .;
19		*(.gzdata)
20		__efistub_payload_size = . - 4;
21		__efistub__gzdata_end = .;
22		*(.rodata* .init.rodata* .srodata*)
23
24		. = ALIGN(4);
25		__efistub_code_size = .;
26		LONG(zboot_code_size);
27
28		_etext = ALIGN(4096);
29		. = _etext;
30	}
31
32        .sbat : ALIGN(4096) {
33		_sbat = .;
34		*(.sbat)
35		_esbat = ALIGN(4096);
36		. = _esbat;
37	}
38
39	.data : ALIGN(4096) {
40		_data = .;
41		*(.data* .init.data*)
42		_edata = ALIGN(512);
43		. = _edata;
44	}
45
46	.bss : {
47		*(.bss* .init.bss*)
48		_end = ALIGN(512);
49		. = _end;
50	}
51
52	/DISCARD/ : {
53		*(.discard .discard.*)
54		*(.modinfo .init.modinfo)
55	}
56}
57
58PROVIDE(__efistub__gzdata_size =
59		ABSOLUTE(__efistub__gzdata_end - __efistub__gzdata_start));
60
61PROVIDE(__data_rawsize = ABSOLUTE(_edata - _data));
62PROVIDE(__data_size = ABSOLUTE(_end - _data));
63PROVIDE(__sbat_size = ABSOLUTE(_esbat - _sbat));
64