6e43793ef5301147836f98a8c517f73acbd673cf
[openwrt/staging/jow.git] / config / Config-images.in
1 # SPDX-License-Identifier: GPL-2.0-only
2 #
3 # Copyright (C) 2006-2013 OpenWrt.org
4
5 menu "Target Images"
6
7 menuconfig TARGET_ROOTFS_INITRAMFS
8 bool "ramdisk"
9 default y if USES_INITRAMFS
10 help
11 Embed the root filesystem into the kernel (initramfs).
12
13 choice
14 prompt "Compression"
15 default TARGET_INITRAMFS_COMPRESSION_LZMA if TARGET_apm821xx
16 default TARGET_INITRAMFS_COMPRESSION_LZMA if TARGET_ath79_mikrotik
17 default TARGET_INITRAMFS_COMPRESSION_LZMA if TARGET_lantiq
18 default TARGET_INITRAMFS_COMPRESSION_LZMA if TARGET_mpc85xx
19 default TARGET_INITRAMFS_COMPRESSION_LZMA if TARGET_ramips
20 default TARGET_INITRAMFS_COMPRESSION_ZSTD if TARGET_ipq807x
21 default TARGET_INITRAMFS_COMPRESSION_XZ if USES_SEPARATE_INITRAMFS
22 default TARGET_INITRAMFS_COMPRESSION_NONE
23 depends on TARGET_ROOTFS_INITRAMFS
24 help
25 Select ramdisk compression.
26
27 config TARGET_INITRAMFS_COMPRESSION_NONE
28 bool "none"
29
30 config TARGET_INITRAMFS_COMPRESSION_GZIP
31 bool "gzip"
32
33 config TARGET_INITRAMFS_COMPRESSION_BZIP2
34 bool "bzip2"
35
36 config TARGET_INITRAMFS_COMPRESSION_LZMA
37 bool "lzma"
38
39 config TARGET_INITRAMFS_COMPRESSION_LZO
40 bool "lzo"
41
42 config TARGET_INITRAMFS_COMPRESSION_LZ4
43 bool "lz4"
44
45 config TARGET_INITRAMFS_COMPRESSION_XZ
46 bool "xz"
47
48 config TARGET_INITRAMFS_COMPRESSION_ZSTD
49 bool "zstd"
50 endchoice
51
52 config EXTERNAL_CPIO
53 string
54 prompt "Use external cpio" if TARGET_ROOTFS_INITRAMFS
55 default ""
56 help
57 Kernel uses specified external cpio as INITRAMFS_SOURCE.
58
59 config TARGET_INITRAMFS_FORCE
60 bool "Force"
61 depends on TARGET_ROOTFS_INITRAMFS
62 default n
63 help
64 Ignore the initramfs passed by the bootloader.
65
66 config TARGET_ROOTFS_INITRAMFS_SEPARATE
67 bool "separate ramdisk"
68 depends on USES_SEPARATE_INITRAMFS && TARGET_ROOTFS_INITRAMFS && !TARGET_INITRAMFS_FORCE
69 default y if USES_SEPARATE_INITRAMFS
70 help
71 Generate separate initrd.cpio instead of embedding it.
72 This is useful for generating images with a dedicated
73 ramdisk e.g. in U-Boot's uImage and uImage.FIT formats.
74
75 comment "Root filesystem archives"
76
77 config TARGET_ROOTFS_CPIOGZ
78 bool "cpio.gz"
79 default y if USES_CPIOGZ
80 help
81 Build a compressed cpio archive of the root filesystem.
82
83 config TARGET_ROOTFS_TARGZ
84 bool "tar.gz"
85 default y if USES_TARGZ
86 help
87 Build a compressed tar archive of the root filesystem.
88
89 comment "Root filesystem images"
90
91 menuconfig TARGET_ROOTFS_EXT4FS
92 bool "ext4"
93 default y if USES_EXT4
94 help
95 Build an ext4 root filesystem.
96
97 config TARGET_EXT4_RESERVED_PCT
98 int "Percentage of reserved blocks in root filesystem"
99 depends on TARGET_ROOTFS_EXT4FS
100 default 0
101 help
102 Select the percentage of reserved blocks in the root filesystem.
103
104 choice
105 prompt "Root filesystem block size"
106 default TARGET_EXT4_BLOCKSIZE_4K
107 depends on TARGET_ROOTFS_EXT4FS
108 help
109 Select the block size of the root filesystem.
110
111 config TARGET_EXT4_BLOCKSIZE_4K
112 bool "4k"
113
114 config TARGET_EXT4_BLOCKSIZE_2K
115 bool "2k"
116
117 config TARGET_EXT4_BLOCKSIZE_1K
118 bool "1k"
119 endchoice
120
121 config TARGET_EXT4_BLOCKSIZE
122 int
123 default 4096 if TARGET_EXT4_BLOCKSIZE_4K
124 default 2048 if TARGET_EXT4_BLOCKSIZE_2K
125 default 1024 if TARGET_EXT4_BLOCKSIZE_1K
126 depends on TARGET_ROOTFS_EXT4FS
127
128 config TARGET_EXT4_JOURNAL
129 bool "Create a journaling filesystem"
130 depends on TARGET_ROOTFS_EXT4FS
131 default n
132 help
133 Create an ext4 filesystem with a journal.
134
135 config TARGET_ROOTFS_JFFS2
136 bool "jffs2"
137 depends on USES_JFFS2
138 help
139 Build a JFFS2 root filesystem.
140
141 config TARGET_ROOTFS_JFFS2_NAND
142 bool "jffs2 for NAND"
143 default y if USES_JFFS2_NAND
144 depends on USES_JFFS2_NAND
145 help
146 Build a JFFS2 root filesystem for NAND flash.
147
148 menuconfig TARGET_ROOTFS_SQUASHFS
149 bool "squashfs"
150 default y if USES_SQUASHFS
151 help
152 Build a squashfs root filesystem.
153
154 config TARGET_SQUASHFS_BLOCK_SIZE
155 int "Block size (in KiB)"
156 depends on TARGET_ROOTFS_SQUASHFS
157 default 64 if LOW_MEMORY_FOOTPRINT
158 default 1024 if (SMALL_FLASH && !LOW_MEMORY_FOOTPRINT)
159 default 256
160 help
161 Select squashfs block size, must be one of:
162 4, 8, 16, 32, 64, 128, 256, 512, 1024
163
164 menuconfig TARGET_ROOTFS_UBIFS
165 bool "ubifs"
166 default y if USES_UBIFS
167 depends on USES_UBIFS
168 help
169 Build a UBIFS root filesystem.
170
171 choice
172 prompt "compression"
173 default TARGET_UBIFS_COMPRESSION_ZLIB
174 depends on TARGET_ROOTFS_UBIFS
175 help
176 Select compression type
177
178 config TARGET_UBIFS_COMPRESSION_NONE
179 bool "none"
180
181 config TARGET_UBIFS_COMPRESSION_LZO
182 bool "lzo"
183
184 config TARGET_UBIFS_COMPRESSION_ZLIB
185 bool "zlib"
186 endchoice
187
188 config TARGET_UBIFS_FREE_SPACE_FIXUP
189 bool "free space fixup" if TARGET_ROOTFS_UBIFS
190 default y
191 help
192 The filesystem free space has to be fixed up on first mount.
193
194 config TARGET_UBIFS_JOURNAL_SIZE
195 string
196 prompt "journal size" if TARGET_ROOTFS_UBIFS
197 default ""
198
199 config GRUB_IMAGES
200 bool "Build GRUB images (Linux x86 or x86_64 host only)"
201 depends on TARGET_x86
202 depends on TARGET_ROOTFS_EXT4FS || TARGET_ROOTFS_JFFS2 || TARGET_ROOTFS_SQUASHFS
203 select PACKAGE_grub2
204 select PACKAGE_grub2-bios-setup
205 default y
206
207 config GRUB_EFI_IMAGES
208 bool "Build GRUB EFI images (Linux x86 or x86_64 host only)"
209 depends on TARGET_x86
210 depends on TARGET_ROOTFS_EXT4FS || TARGET_ROOTFS_JFFS2 || TARGET_ROOTFS_SQUASHFS
211 select PACKAGE_grub2
212 select PACKAGE_grub2-efi
213 select PACKAGE_grub2-bios-setup
214 select PACKAGE_kmod-fs-vfat
215 default y
216
217 config GRUB_CONSOLE
218 bool "Use Console Terminal (in addition to Serial)"
219 depends on GRUB_IMAGES || GRUB_EFI_IMAGES
220 default y
221
222 config GRUB_SERIAL
223 string "Serial port device"
224 depends on GRUB_IMAGES || GRUB_EFI_IMAGES
225 default "ttyS0"
226
227 config GRUB_BAUDRATE
228 int "Serial port baud rate"
229 depends on GRUB_IMAGES || GRUB_EFI_IMAGES
230 default 38400 if TARGET_x86_generic
231 default 115200
232
233 config GRUB_FLOWCONTROL
234 bool "Use RTE/CTS on serial console"
235 depends on GRUB_SERIAL != ""
236 default n
237
238 config GRUB_BOOTOPTS
239 string "Extra kernel boot options"
240 depends on GRUB_IMAGES || GRUB_EFI_IMAGES
241 help
242 If you don't know, just leave it blank.
243
244 config GRUB_TIMEOUT
245 string "Seconds to wait before booting the default entry"
246 depends on GRUB_IMAGES || GRUB_EFI_IMAGES
247 default "5"
248 help
249 If you don't know, 5 seconds is a reasonable default.
250
251 config GRUB_TITLE
252 string "Title for the menu entry in GRUB"
253 depends on GRUB_IMAGES || GRUB_EFI_IMAGES
254 default "OpenWrt"
255 help
256 This is the title of the GRUB menu entry.
257 If unspecified, it defaults to OpenWrt.
258
259 config ISO_IMAGES
260 bool "Build LiveCD image (ISO)"
261 depends on TARGET_x86
262 depends on GRUB_IMAGES || GRUB_EFI_IMAGES
263
264 config VDI_IMAGES
265 bool "Build VirtualBox image files (VDI)"
266 depends on TARGET_x86
267 depends on GRUB_IMAGES || GRUB_EFI_IMAGES
268 select PACKAGE_kmod-e1000
269
270 config VMDK_IMAGES
271 bool "Build VMware image files (VMDK)"
272 depends on TARGET_x86
273 depends on GRUB_IMAGES || GRUB_EFI_IMAGES
274 select PACKAGE_kmod-e1000
275
276 config VHDX_IMAGES
277 bool "Build Hyper-V image files (VHDX)"
278 depends on TARGET_x86
279 depends on GRUB_IMAGES || GRUB_EFI_IMAGES
280 select PACKAGE_kmod-e1000
281
282 config TARGET_IMAGES_GZIP
283 bool "GZip images"
284 depends on TARGET_ROOTFS_EXT4FS || TARGET_x86 || TARGET_armvirt || TARGET_malta
285 default y
286
287 comment "Image Options"
288
289 source "target/linux/*/image/Config.in"
290
291 config TARGET_KERNEL_PARTSIZE
292 int "Kernel partition size (in MiB)"
293 depends on USES_BOOT_PART
294 default 8 if TARGET_apm821xx_sata
295 default 64 if TARGET_bcm27xx
296 default 16
297
298 config TARGET_ROOTFS_PARTSIZE
299 int "Root filesystem partition size (in MiB)"
300 depends on USES_ROOTFS_PART || TARGET_ROOTFS_EXT4FS
301 default 104
302 help
303 Select the root filesystem partition size.
304
305 config TARGET_ROOTFS_PARTNAME
306 string "Root partition on target device"
307 depends on GRUB_IMAGES || GRUB_EFI_IMAGES
308 help
309 Override the root partition on the final device. If left empty,
310 it will be mounted by PARTUUID which makes the kernel find the
311 appropriate disk automatically.
312
313 config TARGET_ROOTFS_PERSIST_VAR
314 bool "Make /var persistent"
315 default n
316 help
317 Do not symlink /var to /tmp, so that its content will persist
318 across reboots. When enabled, /var/run will still be linked
319 to /tmp/run.
320
321 endmenu