ralink: add mt7620n support
[openwrt/svn-archive/archive.git] / Config.in
index 5da7c0ad19ed0fa92e0e8954bbd886db18931a69..4f7667aa1fd116560ae14db67d483f8ec4b689f8 100644 (file)
--- a/Config.in
+++ b/Config.in
@@ -6,6 +6,10 @@
 
 mainmenu "OpenWrt Configuration"
 
+config MODULES
+       bool
+       default y
+
 config HAVE_DOT_CONFIG
        bool
        default y
@@ -25,7 +29,7 @@ menu "Target Images"
                        default TARGET_INITRAMFS_COMPRESSION_LZMA if TARGET_ar71xx
                        default TARGET_INITRAMFS_COMPRESSION_LZMA if TARGET_ramips
                        default TARGET_INITRAMFS_COMPRESSION_NONE
-                       depends TARGET_ROOTFS_INITRAMFS
+                       depends on TARGET_ROOTFS_INITRAMFS
                        help
                          Select ramdisk compression.
 
@@ -44,6 +48,9 @@ menu "Target Images"
                        config TARGET_INITRAMFS_COMPRESSION_LZO
                                bool "lzo"
 
+                       config TARGET_INITRAMFS_COMPRESSION_LZ4
+                               bool "lz4"
+
                        config TARGET_INITRAMFS_COMPRESSION_XZ
                                bool "xz"
                endchoice
@@ -74,7 +81,6 @@ menu "Target Images"
        config TARGET_ROOTFS_EXT4FS
                bool "ext4"
                default y if USES_EXT4
-               depends !TARGET_ROOTFS_INITRAMFS
                help
                  Ext4 file system with some free space for uml images
 
@@ -82,55 +88,127 @@ menu "Target Images"
                bool "iso"
                default n
                depends on TARGET_x86_generic
-               depends !TARGET_ROOTFS_INITRAMFS
                help
                  Create some bootable ISO image
 
        config TARGET_ROOTFS_JFFS2
                bool "jffs2"
                default y if USES_JFFS2
-               depends !TARGET_ROOTFS_INITRAMFS
                help
                  Build a jffs2 root filesystem
 
+       config TARGET_ROOTFS_JFFS2_NAND
+               bool "jffs2 for NAND"
+               default y if USES_JFFS2_NAND
+               depends on USES_JFFS2_NAND
+               help
+                 Build a jffs2 root filesystem for NAND flash
+
        config TARGET_ROOTFS_SQUASHFS
                bool "squashfs"
                default y if USES_SQUASHFS
-               depends !TARGET_ROOTFS_INITRAMFS
                help
                  Build a squashfs-lzma root filesystem
 
-       config TARGET_ROOTFS_UBIFS
+       menuconfig TARGET_ROOTFS_UBIFS
                bool "ubifs"
                default y if USES_UBIFS
-               depends !TARGET_ROOTFS_INITRAMFS && USES_UBIFS
+               depends on USES_UBIFS
                help
                  Build a ubifs root filesystem
 
+               choice
+                       prompt "compression"
+                       default TARGET_UBIFS_COMPRESSION_NONE
+                       depends on TARGET_ROOTFS_UBIFS
+                       help
+                         Select compression type
+
+                       config TARGET_UBIFS_COMPRESSION_NONE
+                               bool "none"
+
+                       config TARGET_UBIFS_COMPRESSION_LZO
+                               bool "lzo"
+
+                       config TARGET_UBIFS_COMPRESSION_ZLIB
+                               bool "zlib"
+               endchoice
+
+               config TARGET_UBIFS_FREE_SPACE_FIXUP
+                       bool "free space fixup" if TARGET_ROOTFS_UBIFS
+                       default y
+                       help
+                         The file-system free space has to be fixed up on first mount
+
+               config TARGET_UBIFS_JOURNAL_SIZE
+                       string
+                       prompt "journal size" if TARGET_ROOTFS_UBIFS
+                       default ""
+
        comment "Image Options"
 
        source "target/linux/*/image/Config.in"
 
        config TARGET_ROOTFS_PARTSIZE
                int "Root filesystem partition size (in MB)"
-               depends X86_GRUB_IMAGES || TARGET_ROOTFS_EXT4FS || TARGET_rb532
+               depends on X86_GRUB_IMAGES || TARGET_ROOTFS_EXT4FS || TARGET_rb532
                default 48
                help
-                   Allows you to change the root filesystem partition size
+                 Allows you to change the root filesystem partition size
 
        config TARGET_ROOTFS_MAXINODE
                int "Maximum number of inodes in root filesystem"
-               depends TARGET_ROOTFS_EXT4FS
+               depends on TARGET_ROOTFS_EXT4FS
                default 6000
                help
-                   Allows you to change the maximum number of inodes in the root filesystem
+                 Allows you to change the maximum number of inodes in the root filesystem
 
        config TARGET_ROOTFS_RESERVED_PCT
                int "Percentage of reserved blocks in root filesystem"
-               depends TARGET_ROOTFS_EXT4FS
+               depends on TARGET_ROOTFS_EXT4FS
                default 0
                help
-                   Allows you to change the percentage of reserved blocks in the root filesystem
+                 Allows you to change the percentage of reserved blocks in the root filesystem
+
+       menuconfig TARGET_ROOTFS_INCLUDE_KERNEL
+               bool "Include kernel in root filesystem"
+               depends on TARGET_ROOTFS_UBIFS || TARGET_ROOTFS_EXT4FS
+               default n if USES_UBIFS
+               help
+                 Include the kernel image in the rootfs. Typically the image is placed
+                 below /boot.
+
+               config TARGET_ROOTFS_INCLUDE_UIMAGE
+                       bool "include uImage" if TARGET_ROOTFS_INCLUDE_KERNEL
+                       default y
+                       help
+                         This option might not apply to all targets. Make sure
+                         to check target/linux/<your_target>/image/Makefile to
+                         see if this option will have any effect.
+
+               config TARGET_ROOTFS_INCLUDE_ZIMAGE
+                       bool "include zImage" if TARGET_ROOTFS_INCLUDE_KERNEL
+                       default y
+                       help
+                         This option might not apply to all targets. Make sure
+                         to check target/linux/<your_target>/image/Makefile to
+                         see if this option will have any effect.
+
+               config TARGET_ROOTFS_INCLUDE_FIT
+                       bool "include FIT" if TARGET_ROOTFS_INCLUDE_KERNEL
+                       default y
+                       help
+                         This option might not apply to all targets. Make sure
+                         to check target/linux/<your_target>/image/Makefile to
+                         see if this option will have any effect.
+
+       config TARGET_ROOTFS_INCLUDE_DTB
+               bool "Include DTB in root filesystem"
+               depends on TARGET_ROOTFS_UBIFS || TARGET_ROOTFS_EXT4FS
+               default n if USES_UBIFS
+               help
+                 Include the device tree blob file(s) in the rootfs. Typically the DTBs
+                 are placed below /boot.
 
 endmenu
 
@@ -180,7 +258,7 @@ menu "Global build settings"
                prompt "Remove ipkg/opkg status data files in final images"
                default n
                help
-                       This removes all ipkg/opkg status data files from the target directory before building the root fs
+                 This removes all ipkg/opkg status data files from the target directory before building the root fs
 
        config COLLECT_KERNEL_DEBUG
                bool
@@ -188,257 +266,12 @@ menu "Global build settings"
                select KERNEL_DEBUG_INFO
                default n
                help
-                       This collects debugging symbols from the kernel and all compiled modules.
-                       Useful for release builds, so that kernel issues can be debugged offline later.
+                 This collects debugging symbols from the kernel and all compiled modules.
+                 Useful for release builds, so that kernel issues can be debugged offline later.
 
        comment "Kernel build options"
 
-       config KERNEL_DEBUG_FS
-               bool "Compile the kernel with Debug FileSystem enabled"
-               default y
-               help
-                 debugfs is a virtual file system that kernel developers use to put
-                 debugging files into. Enable this option to be able to read and
-                 write to these files.
-
-       config KERNEL_PERF_EVENTS
-               bool
-               default n
-
-       config KERNEL_PROFILING
-               bool "Compile the kernel with profiling enabled"
-               default n
-               select KERNEL_PERF_EVENTS
-               help
-                 Enable the extended profiling support mechanisms used by profilers such
-                 as OProfile.
-
-       config KERNEL_KALLSYMS
-               bool "Compile the kernel with symbol table information"
-               default y
-               help
-                 This will give you more information in stack traces from kernel oopses
-
-       config KERNEL_FTRACE
-               bool "Compile the kernel with tracing support"
-               default n
-
-       config KERNEL_ENABLE_DEFAULT_TRACERS
-               bool "Trace process context switches and events"
-               depends on KERNEL_FTRACE
-               default n
-
-       config KERNEL_DEBUG_KERNEL
-               bool
-               default n
-
-       config KERNEL_DEBUG_INFO
-               bool "Compile the kernel with debug information"
-               default y
-               select KERNEL_DEBUG_KERNEL
-               help
-                 This will compile your kernel and modules with debug information.
-
-       config KERNEL_DEBUG_LL_UART_NONE
-               bool
-               default n
-               depends on arm
-
-       config KERNEL_DEBUG_LL
-               bool
-               default n
-               depends on arm
-               select KERNEL_DEBUG_LL_UART_NONE
-               help
-                 ARM low level debugging
-
-       config KERNEL_EARLY_PRINTK
-               bool "Compile the kernel with early printk"
-               default n
-               depends on arm
-               select KERNEL_DEBUG_KERNEL
-               select KERNEL_DEBUG_LL if arm
-               help
-                 Compile the kernel with early printk support.
-                 This is only useful for debugging purposes to send messages
-                 over the serial console in early boot.
-                 Enable this to debug early boot problems.
-
-       config KERNEL_AIO
-               bool "Compile the kernel with asynchronous IO support"
-               default n
-
-       config KERNEL_DIRECT_IO
-               bool "Compile the kernel with direct IO support"
-               default n
-
-       config KERNEL_MAGIC_SYSRQ
-               bool "Compile the kernel with SysRq support"
-               default y
-
-       config KERNEL_COREDUMP
-               bool
-
-       config KERNEL_ELF_CORE
-               bool "Enable process core dump support"
-               select KERNEL_COREDUMP
-               default y
-
-       config KERNEL_PROVE_LOCKING
-               bool "Enable kernel lock checking"
-               select KERNEL_DEBUG_KERNEL
-               default n
-
-       config KERNEL_PRINTK_TIME
-               bool "Enable printk timestamps"
-               default y
-
-       #
-       # CGROUP support symbols
-       #
-
-       config KERNEL_FREEZER
-               bool
-               default y if KERNEL_CGROUP_FREEZER
-               depends KERNEL_CGROUPS
-
-       config KERNEL_CGROUP_FREEZER
-               bool
-               depends KERNEL_CGROUPS
-
-       config KERNEL_CGROUP_DEVICE
-               bool
-               depends KERNEL_CGROUPS
-
-       config KERNEL_CPUSETS
-               bool
-               default y if KERNEL_CGROUP_CPUACCT
-               depends KERNEL_CGROUPS
-
-       config KERNEL_PROC_PID_CPUSET
-               bool
-               default y if KERNEL_CGROUP_CPUACCT
-               depends KERNEL_CGROUPS
-
-       config KERNEL_CGROUP_CPUACCT
-               bool
-               depends KERNEL_CGROUPS
-
-       config KERNEL_RESOURCE_COUNTERS
-               bool
-               default y if KERNEL_CGROUP_MEM_RES_CTLR
-               depends KERNEL_CGROUPS
-
-       config KERNEL_CGROUP_MEM_RES_CTLR
-               bool
-               depends KERNEL_CGROUPS
-
-       config KERNEL_CGROUP_MEM_RES_CTLR_SWAP
-               bool
-               depends KERNEL_CGROUPS
-
-       config KERNEL_CGROUP_MEM_RES_CTLR_SWAP_ENABLED
-               bool
-               depends KERNEL_CGROUPS
-
-       config KERNEL_CGROUP_MEM_RES_CTLR_KMEM
-               bool
-               depends KERNEL_CGROUPS
-
-       config KERNEL_CGROUP_PERF
-               bool
-               depends KERNEL_CGROUPS
-
-       config KERNEL_CFS_BANDWIDTH
-               bool
-               default y if KERNEL_FAIR_GROUP_SCHED
-               depends KERNEL_CGROUP_SCHED
-
-       config KERNEL_FAIR_GROUP_SCHED
-               bool
-               default y if KERNEL_CGROUP_SCHED
-               depends KERNEL_CGROUP_SCHED
-
-       config KERNEL_RT_GROUP_SCHED
-               bool
-               default y if KERNEL_CGROUP_SCHED
-               depends KERNEL_CGROUP_SCHED
-
-       config KERNEL_CGROUP_SCHED
-               bool
-               depends KERNEL_CGROUPS
-
-       config KERNEL_NET_CLS_CGROUP
-               bool
-               depends KERNEL_CGROUPS
-
-       config KERNEL_NETPRIO_CGROUP
-               bool
-               depends KERNEL_CGROUPS
-
-       config KERNEL_BLK_CGROUP
-               bool
-               depends KERNEL_CGROUPS
-
-       config KERNEL_DEBUG_BLK_CGROUP
-               bool
-               default n if KERNEL_CGROUPS
-               depends KERNEL_CGROUPS
-
-       config KERNEL_CGROUPS
-               bool "Enable kernel cgroups"
-               default n
-               select KERNEL_CGROUP_FREEZER
-               select KERNEL_CGROUP_DEVICE
-               select KERNEL_CGROUP_CPUACCT
-               select KERNEL_CGROUP_MEM_RES_CTLR
-               select KERNEL_CGROUP_MEM_RES_CTLR_SWAP
-               select KERNEL_CGROUP_MEM_RES_CTLR_SWAP_ENABLED
-               select KERNEL_CGROUP_MEM_RES_CTLR_KMEM
-               select KERNEL_CGROUP_PERF
-               select KERNEL_CGROUP_SCHED
-               select KERNEL_NET_CLS_CGROUP
-               select KERNEL_NETPRIO_CGROUP
-               select KERNEL_BLK_CGROUP
-
-       #
-       # Namespace support symbols
-       #
-
-       config KERNEL_UTS_NS
-               bool
-               depends KERNEL_NAMESPACES
-
-       config KERNEL_IPC_NS
-               bool
-               depends KERNEL_NAMESPACES
-
-       config KERNEL_USER_NS
-               bool
-               depends KERNEL_NAMESPACES
-
-       config KERNEL_PID_NS
-               bool
-               depends KERNEL_NAMESPACES
-
-       config KERNEL_NET_NS
-               bool
-               depends KERNEL_NAMESPACES
-
-       config KERNEL_DEVPTS_MULTIPLE_INSTANCES
-               bool
-               depends KERNEL_NAMESPACES
-
-       config KERNEL_NAMESPACES
-               bool "Enable kernel namespaces"
-               default n
-               select KERNEL_UTS_NS
-               select KERNEL_IPC_NS
-               select KERNEL_USER_NS
-               select KERNEL_PID_NS
-               select KERNEL_NET_NS
-               select KERNEL_DEVPTS_MULTIPLE_INSTANCES
-
+       source "Config-kernel.in"
 
        comment "Package build options"
 
@@ -515,7 +348,7 @@ menu "Global build settings"
        choice
                prompt "Binary stripping method"
                default USE_STRIP   if EXTERNAL_TOOLCHAIN
-               default USE_STRIP   if USE_GLIBC || USE_EGLIBC
+               default USE_STRIP   if USE_GLIBC || USE_EGLIBC || USE_MUSL
                default USE_SSTRIP
                help
                  Select the binary stripping method you wish to use.
@@ -533,10 +366,9 @@ menu "Global build settings"
 
                config USE_SSTRIP
                        bool "sstrip"
-                       depends !DEBUG
-                       depends !USE_GLIBC
-                       depends !USE_EGLIBC
-                       depends !USE_MUSL
+                       depends on !DEBUG
+                       depends on !USE_GLIBC
+                       depends on !USE_EGLIBC
                        help
                          This will install binaries stripped using sstrip
        endchoice
@@ -544,7 +376,7 @@ menu "Global build settings"
        config STRIP_ARGS
                string
                prompt "Strip arguments"
-               depends USE_STRIP
+               depends on USE_STRIP
                default "--strip-unneeded --remove-section=.comment --remove-section=.note" if DEBUG
                default "--strip-all"
                help
@@ -552,7 +384,6 @@ menu "Global build settings"
 
        config STRIP_KERNEL_EXPORTS
                bool "Strip unnecessary exports from the kernel image"
-               depends BROKEN
                help
                  Reduces kernel size by stripping unused kernel exports from the kernel image
                  Note that this might make the kernel incompatible with any kernel modules that
@@ -566,21 +397,19 @@ menu "Global build settings"
                  Note that this will make the system libraries incompatible with most of the packages
                  that are not selected during the build process
 
-       if INSTALL_LIBSTDCPP
-               choice
-                       prompt "Preferred standard C++ library"
-                       default USE_LIBSTDCXX if USE_EGLIBC
-                       default USE_UCLIBCXX
-                       help
-                         Select the preferred standard C++ library for all packages that support this.
+       choice
+               prompt "Preferred standard C++ library"
+               default USE_LIBSTDCXX if USE_EGLIBC
+               default USE_UCLIBCXX
+               help
+                 Select the preferred standard C++ library for all packages that support this.
 
-                       config USE_UCLIBCXX
-                               bool "uClibc++"
+               config USE_UCLIBCXX
+                       bool "uClibc++"
 
-                       config USE_LIBSTDCXX
-                               bool "libstdc++"
-               endchoice
-       endif
+               config USE_LIBSTDCXX
+                       bool "libstdc++"
+       endchoice
 
 endmenu
 
@@ -659,6 +488,12 @@ menuconfig DEVEL
                  in the package directory, pointing to the .git tree that you want
                  to pull the source code from
 
+       config EXTRA_OPTIMIZATION
+               string "Additional compiler options" if DEVEL
+               default "-fno-caller-saves"
+               help
+                 Extra Target-independent optimizations to use when building for the target.
+
 menuconfig TARGET_OPTIONS
        bool "Target Options"  if DEVEL
 
@@ -671,7 +506,7 @@ menuconfig TARGET_OPTIONS
        config SOFT_FLOAT
                bool "Use software floating point by default" if TARGET_OPTIONS
                default y
-               depends on (arm || armeb || powerpc || mipsel || mips) && !HAS_FPU
+               depends on (arm || armeb || powerpc || mipsel || mips || mips64el || mips64) && !HAS_FPU
                help
                  If your target CPU does not have a Floating Point Unit (FPU) or a
                  kernel FPU emulator, but you still wish to support floating point
@@ -680,6 +515,19 @@ menuconfig TARGET_OPTIONS
 
                  Most people will answer N.
 
+       config USE_MIPS16
+               bool "Build packages with MIPS16 instructions" if TARGET_OPTIONS
+               depends on HAS_MIPS16
+               depends on !GCC_VERSION_4_6
+               default y
+               help
+                 If your target CPU does support the MIPS16 instruction set
+                 and you want to use it for packages, enable this option.
+                 MIPS16 produces smaller binaries thus reducing pressure on
+                 caches and TLB.
+
+                 Most people will answer N.
+
 source "toolchain/Config.in"
 
 source "target/imagebuilder/Config.in"