1 # This file is part of the OpenADK project. OpenADK is copyrighted
2 # material, please see the LICENCE file in the top-level directory.
5 prompt "Filesystem / Image type" if !ADK_TARGET_CHOOSE_ARCH
6 depends on !ADK_APPLIANCE_TOOLCHAIN && !ADK_TARGET_OS_BAREMETAL
7 default ADK_TARGET_ROOTFS_INITRAMFSPIGGYBACK if ADK_TARGET_QEMU || ADK_TARGET_SIM
8 default ADK_TARGET_ROOTFS_ARCHIVE
10 config ADK_TARGET_ROOTFS_INITRAMFSPIGGYBACK
11 bool "initramfs filesystem included into kernel image"
12 select ADK_TARGET_ARCH_INITRAMFS_BUILTIN
16 ADK_TARGET_ARCH_AARCH64 || \
17 ADK_TARGET_ARCH_ALPHA || \
18 ADK_TARGET_ARCH_ARC || \
19 ADK_TARGET_ARCH_ARM || \
20 ADK_TARGET_ARCH_H8300 || \
21 ADK_TARGET_ARCH_HPPA || \
22 ADK_TARGET_ARCH_M68K || \
23 ADK_TARGET_ARCH_MICROBLAZE || \
24 ADK_TARGET_ARCH_MIPS || \
25 ADK_TARGET_ARCH_MIPS64 || \
26 ADK_TARGET_ARCH_PPC || \
27 ADK_TARGET_ARCH_RISCV32 || \
28 ADK_TARGET_ARCH_RISCV64 || \
29 ADK_TARGET_ARCH_SH || \
30 ADK_TARGET_ARCH_SPARC || \
31 ADK_TARGET_ARCH_X86 || \
32 ADK_TARGET_ARCH_X86_64
33 depends on !ADK_TARGET_SYSTEM_MIKROTIK_RB532
35 create an read-only initramfs system.
37 config ADK_TARGET_ROOTFS_INITRAMFS
38 bool "initramfs filesystem"
41 ADK_TARGET_ARCH_ALPHA || \
42 ADK_TARGET_ARCH_ARC || \
43 ADK_TARGET_ARCH_ARM || \
44 ADK_TARGET_ARCH_M68K || \
45 ADK_TARGET_ARCH_MICROBLAZE || \
46 ADK_TARGET_ARCH_MIPS || \
47 ADK_TARGET_ARCH_MIPS64 || \
48 ADK_TARGET_ARCH_PPC || \
49 ADK_TARGET_ARCH_SH || \
50 ADK_TARGET_ARCH_SPARC || \
51 ADK_TARGET_ARCH_X86 || \
52 ADK_TARGET_ARCH_X86_64
53 depends on !ADK_TARGET_SYSTEM_MIKROTIK_RB532
54 depends on !ADK_TARGET_SYSTEM_QEMU_M68K_MCF5208
55 depends on !ADK_TARGET_SYSTEM_QEMU_METAG
56 select ADK_LINUX_KERNEL_BLK_DEV_INITRD if ADK_TARGET_OS_LINUX
58 create an read-only initramfs system.
60 config ADK_TARGET_ROOTFS_SQUASHFS
61 bool "Compressed read-only root filesystem (squashfs)"
62 select ADK_KERNEL_SQUASHFS
63 select ADK_HOST_NEED_SQUASHFS
64 select ADK_HOST_NEED_QEMU if ADK_TARGET_QEMU
65 select ADK_TARGET_QEMU_WITH_BLOCK if ADK_TARGET_QEMU
66 depends on ADK_TARGET_WITH_MTD \
67 || ADK_TARGET_SYSTEM_QEMU_MICROBLAZE_S3ADSP1800 \
68 || ADK_TARGET_SYSTEM_QEMU_MICROBLAZE_ML605
70 highly compressed read-only filesystem for MTD flash systems.
72 config ADK_TARGET_ROOTFS_JFFS2
73 bool "Compressed read-write root filesystem (jffs2)"
74 select ADK_LINUX_KERNEL_JFFS2_FS if ADK_TARGET_OS_LINUX
75 select ADK_HOST_NEED_MTD_UTILS
76 select ADK_TARGET_QEMU_WITH_BLOCK if ADK_TARGET_QEMU
77 depends on ADK_TARGET_WITH_MTD \
78 || ADK_TARGET_SYSTEM_QEMU_MICROBLAZE_S3ADSP1800 \
79 || ADK_TARGET_SYSTEM_QEMU_MICROBLAZE_ML605
81 compressed read-write filesystem for MTD flash systems.
83 config ADK_TARGET_ROOTFS_UBIFS
84 bool "UBIFS root filesystem (NAND)"
85 select ADK_LINUX_KERNEL_UBIFS_FS if ADK_TARGET_OS_LINUX
86 select ADK_HOST_NEED_MTD_UTILS
87 select ADK_HOST_NEED_KERNEL2MINOR
88 depends on ADK_TARGET_WITH_NAND
90 Root filesystem on NAND flash with UBI.
92 config ADK_TARGET_ROOTFS_NFSROOT
94 select ADK_LINUX_KERNEL_NETWORK_FILESYSTEMS if ADK_TARGET_OS_LINUX
95 select ADK_LINUX_KERNEL_SUNRPC if ADK_TARGET_OS_LINUX
96 select ADK_LINUX_KERNEL_NFS_FS if ADK_TARGET_OS_LINUX
97 select ADK_LINUX_KERNEL_NFS_V3 if ADK_TARGET_OS_LINUX
98 select ADK_LINUX_KERNEL_ROOT_NFS if ADK_TARGET_OS_LINUX
99 select ADK_LINUX_KERNEL_NFS_COMMON if ADK_TARGET_OS_LINUX
100 select ADK_LINUX_KERNEL_IP_PNP if ADK_TARGET_OS_LINUX
101 select ADK_LINUX_KERNEL_IP_PNP_DHCP if ADK_TARGET_OS_LINUX
102 depends on !ADK_TARGET_QEMU && \
104 !ADK_TARGET_SYSTEM_ARANYM_M68K && \
105 !ADK_TARGET_SYSTEM_LINKSYS_NSLU2
106 depends on ADK_TARGET_WITH_NETDEVICE
108 Root filesystem mounted via NFS. (DHCP)
110 config ADK_TARGET_ROOTFS_USB
111 bool "Boot from USB stick"
112 select ADK_LINUX_KERNEL_EXT4_FS if ADK_TARGET_OS_LINUX
113 select ADK_LINUX_KERNEL_SCSI if ADK_TARGET_OS_LINUX
114 select ADK_LINUX_KERNEL_BLK_DEV_SD if ADK_TARGET_OS_LINUX
115 select ADK_LINUX_KERNEL_USB if ADK_TARGET_OS_LINUX
116 select ADK_LINUX_KERNEL_USB_EHCI_HCD if ADK_TARGET_OS_LINUX
117 select ADK_LINUX_KERNEL_USB_OHCI_HCD if ADK_TARGET_OS_LINUX
118 select ADK_LINUX_KERNEL_USB_UHCI_HCD if ADK_TARGET_OS_LINUX
119 select ADK_LINUX_KERNEL_USB_STORAGE if ADK_TARGET_OS_LINUX
120 select ADK_PACKAGE_FWINSTALL
121 depends on ADK_TARGET_WITH_USB_BOOT \
122 || ADK_TARGET_GENERIC
124 Boot system from USB stick.
126 config ADK_TARGET_ROOTFS_ISO
128 select ADK_LINUX_KERNEL_ISO9660_FS if ADK_TARGET_OS_LINUX
129 select ADK_LINUX_KERNEL_JOLIET if ADK_TARGET_OS_LINUX
130 select ADK_LINUX_KERNEL_SCSI if ADK_TARGET_OS_LINUX
131 select ADK_LINUX_KERNEL_BLK_DEV_SR if ADK_TARGET_OS_LINUX
132 select ADK_HOST_NEED_CDRTOOLS
133 select ADK_HOST_NEED_SYSLINUX
134 depends on ADK_TARGET_ARCH_X86
136 Use this option to create a bootable ISO image.
138 config ADK_TARGET_ROOTFS_INITRAMFSARCHIVE
139 bool "Archive usable for initramfs creation"
140 depends on !ADK_TARGET_SYSTEM_MIKROTIK_RB532 \
141 && !ADK_TARGET_SYSTEM_QEMU_M68K_MCF5208 \
142 && !ADK_TARGET_SYSTEM_QEMU_METAG \
144 select ADK_LINUX_KERNEL_BLK_DEV_INITRD if ADK_TARGET_OS_LINUX
146 Use this option if your planning to create a initramfs.
148 config ADK_TARGET_ROOTFS_ARCHIVE
149 bool "Archive usable for ext4 filesystems"
150 select ADK_HOST_NEED_GENEXT2FS if ADK_TARGET_QEMU
151 select ADK_LINUX_KERNEL_EXT4_FS if ADK_TARGET_OS_LINUX
152 select ADK_TARGET_QEMU_WITH_BLOCK if ADK_TARGET_QEMU
153 depends on !ADK_TARGET_SIM \
154 && !ADK_TARGET_ARCH_NDS32 \
155 && !ADK_TARGET_SYSTEM_QEMU_M68K_MCF5208 \
156 && !ADK_TARGET_SYSTEM_QEMU_METAG
158 Use this option if your root filesystem is ext4 and you use
159 for example install.sh to install firmware on a block device
160 connected to your development machine.
162 config ADK_TARGET_ROOTFS_GENIMAGE
163 bool "Create a disk image for the target"
164 select ADK_LINUX_KERNEL_EXT4_FS if ADK_TARGET_OS_LINUX
165 select ADK_LINUX_KERNEL_VFAT_FS if ADK_TARGET_OS_LINUX
166 select ADK_LINUX_KERNEL_EFI_PARTITION if ADK_TARGET_OS_LINUX
167 select ADK_TARGET_QEMU_WITH_BLOCK if ADK_TARGET_QEMU
168 select ADK_TARGET_QEMU_WITH_BOOTLOADER if ADK_TARGET_QEMU
169 select ADK_HOST_BUILD_GENIMAGE
171 Create a complete disk image for the target with genimage.
175 config ADK_TARGET_ROOTDEV
176 string "Root device name"
177 depends on ADK_TARGET_ROOTFS_GENIMAGE
178 default "mmcblk0" if ADK_TARGET_SYSTEM_ROCKPI4_PLUS
181 If you have a embedded device with multiple block devices and want to
182 set the root device name.
184 config ADK_TARGET_DUAL_BOOT
185 bool "Activate dual-boot partition layout"
186 depends on ADK_TARGET_ROOTFS_GENIMAGE
187 select ADK_PACKAGE_FWUPDATE
188 select ADK_PACKAGE_GRUB if ADK_TARGET_ARCH_X86_64 || ADK_TARGET_ARCH_X86
189 select ADK_PACKAGE_GRUB_TOOLS if ADK_TARGET_ARCH_X86_64 || ADK_TARGET_ARCH_X86
191 Activate dual-boot partition scheme for simple full updates into
192 a second unused partition. You can use fwupdate on the target to
193 update your system. A firmware update tar archive is created in
194 firmware output directory together with the full image.
196 config ADK_TARGET_GENIMAGE_FILENAME
198 default "genimage-efi-dual.cfg" if (ADK_PACKAGE_GRUB_EFI_X86_64 || ADK_PACKAGE_GRUB_EFI_X86) && ADK_TARGET_DUAL_BOOT
199 default "genimage-efi.cfg" if ADK_PACKAGE_GRUB_EFI_X86_64 || ADK_PACKAGE_GRUB_EFI_X86
200 default "genimage-dual.cfg" if ADK_TARGET_DUAL_BOOT
201 default "genimage.cfg"
203 config ADK_TARGET_EXTLINUX_FILENAME
205 default "extlinux.conf"