ar71xx: generalize cybertan partition parser
[openwrt/openwrt.git] / config / Config-images.in
1 # Copyright (C) 2006-2013 OpenWrt.org
2 #
3 # This is free software, licensed under the GNU General Public License v2.
4 # See /LICENSE for more information.
5 #
6
7 menu "Target Images"
8
9 menuconfig TARGET_ROOTFS_INITRAMFS
10 bool "ramdisk"
11 default y if USES_INITRAMFS
12 help
13 Embed the root filesystem into the kernel (initramfs).
14
15 choice
16 prompt "Compression"
17 default TARGET_INITRAMFS_COMPRESSION_LZMA if TARGET_ar71xx
18 default TARGET_INITRAMFS_COMPRESSION_LZMA if TARGET_ramips
19 default TARGET_INITRAMFS_COMPRESSION_NONE
20 depends on TARGET_ROOTFS_INITRAMFS
21 help
22 Select ramdisk compression.
23
24 config TARGET_INITRAMFS_COMPRESSION_NONE
25 bool "none"
26
27 config TARGET_INITRAMFS_COMPRESSION_GZIP
28 bool "gzip"
29
30 config TARGET_INITRAMFS_COMPRESSION_BZIP2
31 bool "bzip2"
32
33 config TARGET_INITRAMFS_COMPRESSION_LZMA
34 bool "lzma"
35
36 config TARGET_INITRAMFS_COMPRESSION_LZO
37 bool "lzo"
38
39 config TARGET_INITRAMFS_COMPRESSION_LZ4
40 bool "lz4"
41
42 config TARGET_INITRAMFS_COMPRESSION_XZ
43 bool "xz"
44 endchoice
45
46 config EXTERNAL_CPIO
47 string
48 prompt "Use external cpio" if TARGET_ROOTFS_INITRAMFS
49 default ""
50 help
51 Kernel uses specified external cpio as INITRAMFS_SOURCE.
52
53 comment "Root filesystem archives"
54
55 config TARGET_ROOTFS_CPIOGZ
56 bool "cpio.gz"
57 default y if USES_CPIOGZ
58 help
59 Build a compressed cpio archive of the root filesystem.
60
61 config TARGET_ROOTFS_TARGZ
62 bool "tar.gz"
63 default y if USES_TARGZ
64 help
65 Build a compressed tar archive of the root filesystem.
66
67 comment "Root filesystem images"
68
69 menuconfig TARGET_ROOTFS_EXT4FS
70 bool "ext4"
71 default y if USES_EXT4
72 help
73 Build an ext4 root filesystem.
74
75 config TARGET_EXT4_MAXINODE
76 int "Maximum number of inodes in root filesystem"
77 depends on TARGET_ROOTFS_EXT4FS
78 default 6000
79 help
80 Select the maximum number of inodes in the root filesystem.
81
82 config TARGET_EXT4_RESERVED_PCT
83 int "Percentage of reserved blocks in root filesystem"
84 depends on TARGET_ROOTFS_EXT4FS
85 default 0
86 help
87 Select the percentage of reserved blocks in the root filesystem.
88
89 choice
90 prompt "Root filesystem block size"
91 default TARGET_EXT4_BLOCKSIZE_4K
92 depends on TARGET_ROOTFS_EXT4FS
93 help
94 Select the block size of the root filesystem.
95
96 config TARGET_EXT4_BLOCKSIZE_4K
97 bool "4k"
98
99 config TARGET_EXT4_BLOCKSIZE_2K
100 bool "2k"
101
102 config TARGET_EXT4_BLOCKSIZE_1K
103 bool "1k"
104 endchoice
105
106 config TARGET_EXT4_BLOCKSIZE
107 int
108 default 4096 if TARGET_EXT4_BLOCKSIZE_4K
109 default 2048 if TARGET_EXT4_BLOCKSIZE_2K
110 default 1024 if TARGET_EXT4_BLOCKSIZE_1K
111 depends on TARGET_ROOTFS_EXT4FS
112
113 config TARGET_EXT4_JOURNAL
114 bool "Create a journaling filesystem"
115 depends on TARGET_ROOTFS_EXT4FS
116 default n
117 help
118 Create an ext4 filesystem with a journal.
119
120 config TARGET_ROOTFS_ISO
121 bool "iso"
122 default n
123 depends on TARGET_x86_generic
124 help
125 Create a bootable ISO image.
126
127 config TARGET_ROOTFS_JFFS2
128 bool "jffs2"
129 default y if USES_JFFS2
130 help
131 Build a JFFS2 root filesystem.
132
133 config TARGET_ROOTFS_JFFS2_NAND
134 bool "jffs2 for NAND"
135 default y if USES_JFFS2_NAND
136 depends on USES_JFFS2_NAND
137 help
138 Build a JFFS2 root filesystem for NAND flash.
139
140 menuconfig TARGET_ROOTFS_SQUASHFS
141 bool "squashfs"
142 default y if USES_SQUASHFS
143 help
144 Build a squashfs-lzma root filesystem.
145
146 config TARGET_SQUASHFS_BLOCK_SIZE
147 int "Block size (in KiB)"
148 depends on TARGET_ROOTFS_SQUASHFS
149 default 64 if LOW_MEMORY_FOOTPRINT
150 default 256
151
152 menuconfig TARGET_ROOTFS_UBIFS
153 bool "ubifs"
154 default y if USES_UBIFS
155 depends on USES_UBIFS
156 help
157 Build a UBIFS root filesystem.
158
159 choice
160 prompt "compression"
161 default TARGET_UBIFS_COMPRESSION_ZLIB
162 depends on TARGET_ROOTFS_UBIFS
163 help
164 Select compression type
165
166 config TARGET_UBIFS_COMPRESSION_NONE
167 bool "none"
168
169 config TARGET_UBIFS_COMPRESSION_LZO
170 bool "lzo"
171
172 config TARGET_UBIFS_COMPRESSION_ZLIB
173 bool "zlib"
174 endchoice
175
176 config TARGET_UBIFS_FREE_SPACE_FIXUP
177 bool "free space fixup" if TARGET_ROOTFS_UBIFS
178 default y
179 help
180 The filesystem free space has to be fixed up on first mount.
181
182 config TARGET_UBIFS_JOURNAL_SIZE
183 string
184 prompt "journal size" if TARGET_ROOTFS_UBIFS
185 default ""
186
187 config GRUB_IMAGES
188 bool "Build GRUB images (Linux x86 or x86_64 host only)"
189 depends on TARGET_x86_64 || (TARGET_x86 && !(TARGET_x86_olpc || TARGET_x86_rdc))
190 depends on TARGET_ROOTFS_EXT4FS || TARGET_ROOTFS_ISO || TARGET_ROOTFS_JFFS2 || TARGET_ROOTFS_SQUASHFS
191 select PACKAGE_grub2
192 default y
193
194 config GRUB_CONSOLE
195 bool "Use Console Terminal (in addition to Serial)"
196 depends on GRUB_IMAGES
197 default n if (TARGET_x86_generic_Soekris45xx || TARGET_x86_generic_Soekris48xx || TARGET_x86_net5501 || TARGET_x86_geos || TARGET_x86_alix2)
198 default y
199
200 config GRUB_SERIAL
201 string "Serial port device"
202 depends on GRUB_IMAGES
203 default "hvc0" if TARGET_x86_xen_domu
204 default "ttyS0" if ! TARGET_x86_xen_domu
205
206 config GRUB_BAUDRATE
207 int "Serial port baud rate"
208 depends on GRUB_IMAGES
209 default 19200 if TARGET_x86_generic_Soekris45xx || TARGET_x86_generic_Soekris48xx || TARGET_x86_net5501
210 default 38400 if TARGET_x86_alix2
211 default 115200 if TARGET_x86_geos || TARGET_x86_kvm_guest
212 default 38400
213
214 config GRUB_BOOTOPTS
215 string "Extra kernel boot options"
216 depends on GRUB_IMAGES
217 default "xencons=hvc" if TARGET_x86_xen_domu
218 help
219 If you don't know, just leave it blank.
220
221 config GRUB_TIMEOUT
222 string "Seconds to wait before booting the default entry"
223 depends on GRUB_IMAGES
224 default "5"
225 help
226 If you don't know, 5 seconds is a reasonable default.
227
228 config VDI_IMAGES
229 bool "Build VirtualBox image files (VDI)"
230 depends on TARGET_x86 || TARGET_x86_64
231 select GRUB_IMAGES
232 select TARGET_IMAGES_PAD
233 select PACKAGE_kmod-e1000
234
235 config VMDK_IMAGES
236 bool "Build VMware image files (VMDK)"
237 depends on TARGET_x86 || TARGET_x86_64
238 select GRUB_IMAGES
239 select TARGET_IMAGES_PAD
240 select PACKAGE_kmod-e1000
241
242 config TARGET_IMAGES_PAD
243 bool "Pad images to filesystem size (for JFFS2)"
244 depends on OLPC_BOOTSCRIPT_IMAGES || GRUB_IMAGES
245
246 config TARGET_IMAGES_GZIP
247 bool "GZip images"
248 depends on TARGET_IMAGES_PAD || TARGET_ROOTFS_EXT4FS
249 default y
250
251 comment "Image Options"
252
253 source "target/linux/*/image/Config.in"
254
255 config TARGET_KERNEL_PARTSIZE
256 int "Kernel partition size (in MB)"
257 depends on OLPC_BOOTSCRIPT_IMAGES || GRUB_IMAGES
258 default 4
259
260 config TARGET_ROOTFS_PARTSIZE
261 int "Root filesystem partition size (in MB)"
262 depends on GRUB_IMAGES || TARGET_ROOTFS_EXT4FS || TARGET_rb532
263 default 48
264 help
265 Select the root filesystem partition size.
266
267 config TARGET_ROOTFS_PARTNAME
268 string "Root partition on target device"
269 depends on OLPC_BOOTSCRIPT_IMAGES || GRUB_IMAGES
270 default "/dev/xvda2" if TARGET_x86_xen_domu
271 default "/dev/sda2" if TARGET_x86 && ! TARGET_x86_xen_domu
272 help
273 Override the root partition on the final device. If left empty,
274 it will be mounted by PARTUUID which makes the kernel find the
275 appropriate disk automatically.
276
277
278 menuconfig TARGET_ROOTFS_INCLUDE_KERNEL
279 bool "Include kernel in root filesystem"
280 depends on TARGET_ROOTFS_UBIFS || TARGET_ROOTFS_EXT4FS
281 default n
282 help
283 Include the kernel image in the rootfs. Typically, the image is placed
284 below /boot.
285
286 config TARGET_ROOTFS_INCLUDE_UIMAGE
287 bool "include uImage" if TARGET_ROOTFS_INCLUDE_KERNEL
288 default y
289 help
290 This option might not apply to all targets. Make sure
291 to check target/linux/<your_target>/image/Makefile to
292 see if this option will have any effect.
293
294 config TARGET_ROOTFS_INCLUDE_ZIMAGE
295 bool "include zImage" if TARGET_ROOTFS_INCLUDE_KERNEL
296 default y
297 help
298 This option might not apply to all targets. Make sure
299 to check target/linux/<your_target>/image/Makefile to
300 see if this option will have any effect.
301
302 config TARGET_ROOTFS_INCLUDE_FIT
303 bool "include FIT" if TARGET_ROOTFS_INCLUDE_KERNEL
304 default y
305 help
306 This option might not apply to all targets. Make sure
307 to check target/linux/<your_target>/image/Makefile to
308 see if this option will have any effect.
309
310 config TARGET_ROOTFS_INCLUDE_DTB
311 bool "Include DTB in root filesystem"
312 depends on USES_DEVICETREE && (TARGET_ROOTFS_UBIFS || TARGET_ROOTFS_EXT4FS)
313 default n
314 help
315 Include the device tree blob file(s) in the rootfs. Typically the DTBs
316 are placed below /boot.
317
318 endmenu