blob: bb9348b7d7363faf9b381de92709cbf8932d679f [file] [log] [blame]
Martin Roth21c06502016-02-04 19:52:27 -07001menu "Payload"
2
Nico Huber9121a362017-05-20 21:04:15 +02003config NO_DEFAULT_PAYLOAD
4 bool
5
Martin Roth21c06502016-02-04 19:52:27 -07006choice
7 prompt "Add a payload"
Nico Huber9121a362017-05-20 21:04:15 +02008 default PAYLOAD_NONE if NO_DEFAULT_PAYLOAD || !ARCH_X86
Martin Roth21c06502016-02-04 19:52:27 -07009 default PAYLOAD_SEABIOS if ARCH_X86
10
11config PAYLOAD_NONE
12 bool "None"
13 help
14 Select this option if you want to create an "empty" coreboot
15 ROM image for a certain mainboard, i.e. a coreboot ROM image
16 which does not yet contain a payload.
17
18 For such an image to be useful, you have to use 'cbfstool'
19 to add a payload to the ROM image later.
20
21config PAYLOAD_ELF
22 bool "An ELF executable payload"
23 help
24 Select this option if you have a payload image (an ELF file)
25 which coreboot should run as soon as the basic hardware
26 initialization is completed.
27
28 You will be able to specify the location and file name of the
29 payload image later.
30
Antonello Dettori3d609322016-07-25 14:23:46 +020031config PAYLOAD_BAYOU
32 bool "Bayou"
33 help
34 Select this option if you want to set bayou as your primary
35 payload.
36
Martin Roth21c06502016-02-04 19:52:27 -070037source "payloads/external/*/Kconfig.name"
38
39endchoice
40
41source "payloads/external/*/Kconfig"
42
Antonello Dettori3d609322016-07-25 14:23:46 +020043source "payloads/bayou/Kconfig"
44
Martin Roth21c06502016-02-04 19:52:27 -070045config PAYLOAD_FILE
46 string "Payload path and filename"
47 depends on PAYLOAD_ELF
48 default "payload.elf"
49 help
50 The path and filename of the ELF executable file to use as payload.
51
52# TODO: Defined if no payload? Breaks build?
53config COMPRESSED_PAYLOAD_LZMA
54 bool "Use LZMA compression for payloads"
55 default y
56 depends on !PAYLOAD_NONE && !PAYLOAD_LINUX
57 help
58 In order to reduce the size payloads take up in the ROM chip
59 coreboot can compress them using the LZMA algorithm.
60
Martin Rothdbae4d02015-12-11 12:24:33 -070061config PAYLOAD_OPTIONS
62 string
63 default ""
64 help
65 Additional cbfstool options for the payload
66
67config PAYLOAD_IS_FLAT_BINARY
68 def_bool n
69 help
70 Add the payload to cbfs as a flat binary type instead of as an
71 elf payload
72
Martin Roth5ad9aca2016-03-07 19:21:45 -070073menu "Secondary Payloads"
74
Martin Roth4351ace2016-02-16 19:40:47 -070075config COREINFO_SECONDARY_PAYLOAD
76 bool "Load coreinfo as a secondary payload"
77 default n
78 depends on ARCH_X86
79 help
80 coreinfo can be loaded as a secondary payload under SeaBIOS, GRUB,
81 or any other payload that can load additional payloads.
Martin Roth21c06502016-02-04 19:52:27 -070082
Martin Rothbe63a242016-02-28 15:56:27 -080083config MEMTEST_SECONDARY_PAYLOAD
84 bool "Load Memtest86+ as a secondary payload"
85 default n
Martin Roth5ad9aca2016-03-07 19:21:45 -070086 depends on ARCH_X86
Martin Rothbe63a242016-02-28 15:56:27 -080087 help
88 Memtest86+ can be loaded as a secondary payload under SeaBIOS, GRUB,
89 or any other payload that can load additional payloads.
90
Martin Roth4005d9b2016-04-26 09:51:41 -060091choice
92 prompt "Memtest86+ version"
93 default MEMTEST_STABLE
94 depends on MEMTEST_SECONDARY_PAYLOAD
95
96config MEMTEST_STABLE
97 bool "Stable"
98 help
99 Stable Memtest86+ version.
100
101 For reproducible builds, this option must be selected.
102config MEMTEST_MASTER
103 bool "Master"
104 help
105 Newest Memtest86+ version.
106
107 This option will fetch the newest version of the Memtest86+ code,
108 updating as new changes are committed. This makes the build
109 non-reproducible, as it can fetch different code each time.
110endchoice
111
Iru Cai736aa742016-04-15 15:48:14 +0800112config NVRAMCUI_SECONDARY_PAYLOAD
113 bool "Load nvramcui as a secondary payload"
114 default n
115 depends on ARCH_X86
116 help
117 nvramcui can be loaded as a secondary payload under SeaBIOS, GRUB,
118 or any other payload that can load additional payloads.
119
Antonello Dettori4f7d3292016-05-27 23:44:47 +0200120config TINT_SECONDARY_PAYLOAD
121 bool "Load tint as a secondary payload"
122 default n
123 depends on ARCH_X86
124 help
125 tint can be loaded as a secondary payload under SeaBIOS, GRUB,
126 or any other payload that can load additional payloads.
127
Martin Roth5ad9aca2016-03-07 19:21:45 -0700128endmenu # "Secondary Payloads"
Martin Roth4351ace2016-02-16 19:40:47 -0700129endmenu