CC: ar71xx: EPG5000 requires ATH79_NVRAM
[15.05/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_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 38400 if TARGET_x86_generic
210                 default 38400 if TARGET_x86_geode
211                 default 115200
212
213         config GRUB_BOOTOPTS
214                 string "Extra kernel boot options"
215                 depends on GRUB_IMAGES
216                 default "xencons=hvc" if TARGET_x86_xen_domu
217                 help
218                   If you don't know, just leave it blank.
219
220         config GRUB_TIMEOUT
221                 string "Seconds to wait before booting the default entry"
222                 depends on GRUB_IMAGES
223                 default "5"
224                 help
225                   If you don't know, 5 seconds is a reasonable default.
226
227         config VDI_IMAGES
228                 bool "Build VirtualBox image files (VDI)"
229                 depends on TARGET_x86 || TARGET_x86_64
230                 select GRUB_IMAGES
231                 select TARGET_IMAGES_PAD
232                 select PACKAGE_kmod-e1000
233
234         config VMDK_IMAGES
235                 bool "Build VMware image files (VMDK)"
236                 depends on TARGET_x86 || TARGET_x86_64
237                 select GRUB_IMAGES
238                 select TARGET_IMAGES_PAD
239                 select PACKAGE_kmod-e1000
240
241         config TARGET_IMAGES_PAD
242                 bool "Pad images to filesystem size (for JFFS2)"
243                 depends on GRUB_IMAGES
244
245         config TARGET_IMAGES_GZIP
246                 bool "GZip images"
247                 depends on TARGET_IMAGES_PAD || TARGET_ROOTFS_EXT4FS
248                 default y
249
250         comment "Image Options"
251
252         source "target/linux/*/image/Config.in"
253
254         config TARGET_KERNEL_PARTSIZE
255                 int "Kernel partition size (in MB)"
256                 depends on GRUB_IMAGES
257                 default 4
258
259         config TARGET_ROOTFS_PARTSIZE
260                 int "Root filesystem partition size (in MB)"
261                 depends on GRUB_IMAGES || TARGET_ROOTFS_EXT4FS || TARGET_rb532
262                 default 48
263                 help
264                   Select the root filesystem partition size.
265
266         config TARGET_ROOTFS_PARTNAME
267                 string "Root partition on target device"
268                 depends on GRUB_IMAGES
269                 help
270                   Override the root partition on the final device. If left empty,
271                   it will be mounted by PARTUUID which makes the kernel find the
272                   appropriate disk automatically.
273
274
275         menuconfig TARGET_ROOTFS_INCLUDE_KERNEL
276                 bool "Include kernel in root filesystem"
277                 depends on TARGET_ROOTFS_UBIFS || TARGET_ROOTFS_EXT4FS
278                 default n
279                 help
280                   Include the kernel image in the rootfs. Typically, the image is placed
281                   below /boot.
282
283                 config TARGET_ROOTFS_INCLUDE_UIMAGE
284                         bool "include uImage" if TARGET_ROOTFS_INCLUDE_KERNEL
285                         default y
286                         help
287                           This option might not apply to all targets. Make sure
288                           to check target/linux/<your_target>/image/Makefile to
289                           see if this option will have any effect.
290
291                 config TARGET_ROOTFS_INCLUDE_ZIMAGE
292                         bool "include zImage" if TARGET_ROOTFS_INCLUDE_KERNEL
293                         default y
294                         help
295                           This option might not apply to all targets. Make sure
296                           to check target/linux/<your_target>/image/Makefile to
297                           see if this option will have any effect.
298
299                 config TARGET_ROOTFS_INCLUDE_FIT
300                         bool "include FIT" if TARGET_ROOTFS_INCLUDE_KERNEL
301                         default y
302                         help
303                           This option might not apply to all targets. Make sure
304                           to check target/linux/<your_target>/image/Makefile to
305                           see if this option will have any effect.
306
307         config TARGET_ROOTFS_INCLUDE_DTB
308                 bool "Include DTB in root filesystem"
309                 depends on USES_DEVICETREE && (TARGET_ROOTFS_UBIFS || TARGET_ROOTFS_EXT4FS)
310                 default n
311                 help
312                   Include the device tree blob file(s) in the rootfs. Typically the DTBs
313                   are placed below /boot.
314
315 endmenu