summaryrefslogtreecommitdiff
path: root/target
diff options
context:
space:
mode:
authorWaldemar Brodkorb <wbx@openadk.org>2015-12-23 22:02:03 +0100
committerWaldemar Brodkorb <wbx@openadk.org>2015-12-23 22:04:03 +0100
commit71da71d92d57421fb3546986f68e854ae472cf1a (patch)
tree2d7bdbed1aa515928232a5947abd2b7e863b9412 /target
parent3863dc6122a090399e236326f29a1094e6a856e8 (diff)
optimize for really small systems
Default to busybox hush for noMMU systems. Add busybox profiles to choose a minimal busybox config for noMMU systems. Add gdb git from ysato for h8/300 simulator. Change some kernel defaults to off to have a really small kernel. For bfin simulator the kernel+initramfs is smaller then 2MB in size.
Diffstat (limited to 'target')
-rw-r--r--target/config/Config.in.gdb6
-rw-r--r--target/config/Config.in.runtime33
-rw-r--r--target/config/Config.in.target5
-rw-r--r--target/linux/config/Config.in.fs3
-rw-r--r--target/linux/config/Config.in.kernel4
-rw-r--r--target/linux/kernel.config3
-rw-r--r--target/linux/patches/4.3/regmap-default-on.patch17
7 files changed, 31 insertions, 40 deletions
diff --git a/target/config/Config.in.gdb b/target/config/Config.in.gdb
index e151f1aa0..79d20dd67 100644
--- a/target/config/Config.in.gdb
+++ b/target/config/Config.in.gdb
@@ -4,12 +4,18 @@
choice
prompt "GNU debugger version"
default ADK_TOOLCHAIN_GDB_7_9_1 if ADK_TARGET_ARCH_BFIN
+default ADK_TOOLCHAIN_GDB_H8300_GIT if ADK_TARGET_ARCH_H8300
default ADK_TOOLCHAIN_GDB_7_10_1
config ADK_TOOLCHAIN_GDB_GIT
bool "git"
depends on !ADK_TARGET_ARCH_AVR32
depends on !ADK_TARGET_ARCH_BFIN
+ depends on !ADK_TARGET_ARCH_H8300
+
+config ADK_TOOLCHAIN_GDB_H8300_GIT
+ bool "h8300-git"
+ depends on ADK_TARGET_ARCH_H8300
config ADK_TOOLCHAIN_GDB_7_10_1
bool "7.10.1"
diff --git a/target/config/Config.in.runtime b/target/config/Config.in.runtime
index b4fe068c8..8bcef7fb7 100644
--- a/target/config/Config.in.runtime
+++ b/target/config/Config.in.runtime
@@ -10,7 +10,6 @@ config ADK_RUNTIME_HOSTNAME
choice
prompt "init"
depends on !ADK_TOOLCHAIN_ONLY
-default ADK_RUNTIME_INIT_SIMPLEINIT if ADK_TARGET_WITHOUT_MMU
default ADK_RUNTIME_INIT_SYSV
config ADK_RUNTIME_INIT_SYSV
@@ -112,7 +111,7 @@ config ADK_RUNTIME_TMPFS_SIZE
default "32768" if ADK_TARGET_SYSTEM_RASPBERRY_PI2
default "32768" if ADK_TARGET_SYSTEM_SOLIDRUN_IMX6
default "8192" if ADK_TARGET_SYSTEM_MIKROTIK_RB532
- default "2048"
+ default "1024"
depends on !ADK_RUNTIME_INIT_SIMPLEINIT
help
Size of /tmp in memory in Kilobyte.
@@ -290,7 +289,7 @@ config ADK_RUNTIME_KBD_LAYOUT
choice
prompt "initial login shell for the root user"
-default ADK_ROOTSH_SASH if ADK_TARGET_WITHOUT_MMU
+default ADK_ROOTSH_HUSH if ADK_TARGET_WITHOUT_MMU
default ADK_ROOTSH_MKSH
config ADK_ROOTSH_MKSH
@@ -300,19 +299,19 @@ config ADK_ROOTSH_MKSH
Use mksh (a Korn Shell variant) as standard login shell
for the superuser.
+config ADK_ROOTSH_HUSH
+ bool "hush (busybox shell compatible with non-MMU systems)"
+ select BUSYBOX_HUSH if !ADK_TOOLCHAIN_ONLY
+ select BUSYBOX_FEATURE_SH_IS_HUSH if !ADK_TOOLCHAIN_ONLY
+ help
+ hush shell from busybox.
+
config ADK_ROOTSH_SASH
bool "sash (Shell compatible with non-MMU systems)"
select ADK_PACKAGE_SASH if !ADK_TOOLCHAIN_ONLY
help
standalone shell.
-config ADK_ROOTSH_HUSH
- bool "hush (busybox shell compatible with non-MMU systems)"
- select BUSYBOX_HUSH
- select BUSYBOX_FEATURE_SH_IS_HUSH
- help
- hush shell from busybox.
-
config ADK_ROOTSH_ASH
bool "ash (busybox shell)"
select BUSYBOX_ASH
@@ -345,7 +344,7 @@ endchoice
choice
prompt "system /bin/sh (POSIX script shell)"
-default ADK_BINSH_SASH if ADK_TARGET_WITHOUT_MMU
+default ADK_BINSH_HUSH if ADK_TARGET_WITHOUT_MMU
default ADK_BINSH_MKSH
config ADK_BINSH_MKSH
@@ -355,18 +354,18 @@ config ADK_BINSH_MKSH
Use mksh (a Korn Shell variant) as system shell, which is
both small and powerful, so quite suited for this task.
+config ADK_BINSH_HUSH
+ bool "hush (busybox)"
+ select ADK_PACKAGE_HUSH if !ADK_TOOLCHAIN_ONLY
+ help
+ hush shell.
+
config ADK_BINSH_SASH
bool "sash (Standalone Shell)"
select ADK_PACKAGE_SASH if !ADK_TOOLCHAIN_ONLY
help
sash shell.
-config ADK_BINSH_HUSH
- bool "hush (busybox)"
- select ADK_PACKAGE_HUSH
- help
- hush shell.
-
config ADK_BINSH_ASH
bool "ash (busybox)"
select BUSYBOX_ASH
diff --git a/target/config/Config.in.target b/target/config/Config.in.target
index 4f8b95c04..4bf725e74 100644
--- a/target/config/Config.in.target
+++ b/target/config/Config.in.target
@@ -29,6 +29,7 @@ config ADK_TARGET_ROOTFS_INITRAMFS
ADK_TARGET_ARCH_X86_64
depends on !ADK_TARGET_VBOX
depends on !ADK_TARGET_SYSTEM_MIKROTIK_RB532
+ depends on !ADK_TARGET_SYSTEM_QEMU_M68K_MCF5208
select ADK_KERNEL_BLK_DEV_INITRD
help
create an read-only initramfs system.
@@ -135,6 +136,7 @@ config ADK_TARGET_ROOTFS_ISO
config ADK_TARGET_ROOTFS_INITRAMFSARCHIVE
bool "Archive usable for initramfs creation"
depends on !ADK_TARGET_SYSTEM_MIKROTIK_RB532 \
+ && !ADK_TARGET_SYSTEM_QEMU_M68K_MCF5208 \
&& !ADK_TARGET_SIM
select ADK_KERNEL_BLK_DEV_INITRD
help
@@ -144,7 +146,8 @@ config ADK_TARGET_ROOTFS_ARCHIVE
bool "Archive usable for different filesystems"
select ADK_HOST_NEED_GENEXT2FS if ADK_TARGET_QEMU || ADK_TARGET_VBOX
select ADK_KERNEL_EXT2_FS if ADK_TARGET_QEMU || ADK_TARGET_VBOX
- depends on !ADK_TARGET_SIM
+ depends on !ADK_TARGET_SIM \
+ && !ADK_TARGET_SYSTEM_QEMU_M68K_MCF5208
help
Use this option if your root filesystem is ext2/ext3/ext4/xfs.
diff --git a/target/linux/config/Config.in.fs b/target/linux/config/Config.in.fs
index 8bb630ee6..e148f75b2 100644
--- a/target/linux/config/Config.in.fs
+++ b/target/linux/config/Config.in.fs
@@ -8,7 +8,6 @@ config ADK_KERNEL_MISC_FILESYSTEMS
config ADK_KERNEL_FSNOTIFY
bool
- default y
config ADK_KERNEL_EXPORTFS
tristate
@@ -256,7 +255,7 @@ menu "Filesystem features"
config ADK_KERNEL_INOTIFY_USER
bool "Inotify support for userspace"
- default y
+ default n
help
Say Y here to enable inotify support for userspace, including the
associated system calls. Inotify allows monitoring of both files and
diff --git a/target/linux/config/Config.in.kernel b/target/linux/config/Config.in.kernel
index 3f5768fbc..1310f0fd4 100644
--- a/target/linux/config/Config.in.kernel
+++ b/target/linux/config/Config.in.kernel
@@ -204,6 +204,10 @@ config ADK_KERNEL_UEVENT_HELPER_PATH
default "/sbin/mdev"
depends on ADK_RUNTIME_DEV_MDEV
+config ADK_KERNEL_BINFMT_ELF
+ bool
+ default y if ADK_TARGET_BINFMT_ELF
+
config ADK_KERNEL_BINFMT_ELF_FDPIC
bool
default y if ADK_TARGET_BINFMT_FDPIC
diff --git a/target/linux/kernel.config b/target/linux/kernel.config
index a291279c3..c32c4ce66 100644
--- a/target/linux/kernel.config
+++ b/target/linux/kernel.config
@@ -6,15 +6,12 @@ CONFIG_POSIX_MQUEUE=y
CONFIG_POSIX_MQUEUE_SYSCTL=y
CONFIG_PROC_FS=y
CONFIG_PROC_SYSCTL=y
-CONFIG_FILE_LOCKING=y
CONFIG_SYSFS=y
CONFIG_TMPFS=y
CONFIG_NLS=y
CONFIG_EMBEDDED=y
CONFIG_MODULES=y
-CONFIG_BINFMT_ELF=y
CONFIG_BINFMT_SCRIPT=y
-CONFIG_STANDALONE=y
CONFIG_FUTEX=y
CONFIG_EPOLL=y
CONFIG_SIGNALFD=y
diff --git a/target/linux/patches/4.3/regmap-default-on.patch b/target/linux/patches/4.3/regmap-default-on.patch
deleted file mode 100644
index 8d72224bf..000000000
--- a/target/linux/patches/4.3/regmap-default-on.patch
+++ /dev/null
@@ -1,17 +0,0 @@
-diff -Nur linux-4.1.6.orig/drivers/base/regmap/Kconfig linux-4.1.6/drivers/base/regmap/Kconfig
---- linux-4.1.6.orig/drivers/base/regmap/Kconfig 2015-08-17 05:52:51.000000000 +0200
-+++ linux-4.1.6/drivers/base/regmap/Kconfig 2015-08-29 22:18:50.329683337 +0200
-@@ -3,7 +3,7 @@
- # subsystems should select the appropriate symbols.
-
- config REGMAP
-- default y if (REGMAP_I2C || REGMAP_SPI || REGMAP_SPMI || REGMAP_AC97 || REGMAP_MMIO || REGMAP_IRQ)
-+ default y
- select LZO_COMPRESS
- select LZO_DECOMPRESS
- select IRQ_DOMAIN if REGMAP_IRQ
-@@ -29,3 +29,4 @@
-
- config REGMAP_IRQ
- bool
-+ default y