Explorar el Código

rework CMDLINE generation regarding serial/vga

Use one place and not hard coded for each device.
There exist use cases where on a specific device
like raspberry pi, not the default 115200 baud rate
is used.
Waldemar Brodkorb hace 9 años
padre
commit
319ac4b072

+ 1 - 0
rules.mk

@@ -48,6 +48,7 @@ ADK_QEMU_ARGS:=				$(strip $(subst ",, $(ADK_QEMU_ARGS)))
 ADK_RUNTIME_TMPFS_SIZE:=		$(strip $(subst ",, $(ADK_RUNTIME_TMPFS_SIZE)))
 ADK_RUNTIME_CONSOLE_SERIAL_SPEED:=	$(strip $(subst ",, $(ADK_RUNTIME_CONSOLE_SERIAL_SPEED)))
 ADK_RUNTIME_CONSOLE_SERIAL_DEVICE:=	$(strip $(subst ",, $(ADK_RUNTIME_CONSOLE_SERIAL_DEVICE)))
+ADK_RUNTIME_CONSOLE_VGA_DEVICE:=	$(strip $(subst ",, $(ADK_RUNTIME_CONSOLE_VGA_DEVICE)))
 ADK_HOST:=				$(strip $(subst ",, $(ADK_HOST)))
 ADK_VENDOR:=				$(strip $(subst ",, $(ADK_VENDOR)))
 ADK_DL_DIR:=				$(strip $(subst ",, $(ADK_DL_DIR)))

+ 8 - 0
target/Makefile

@@ -36,6 +36,14 @@ config-prepare: $(ADK_TOPDIR)/.config
 		echo "no miniconfig found for target system"; \
 		exit 1; \
 	fi
+ifneq ($(ADK_RUNTIME_CONSOLE_SERIAL_DEVICE),)
+	$(SED) 's#^\(CONFIG_.*CMDLINE="\)\(.*\)"#\1\2 console=$(ADK_RUNTIME_CONSOLE_SERIAL_DEVICE),$(ADK_RUNTIME_CONSOLE_SERIAL_SPEED)"#' \
+		$(BUILD_DIR)/.kernelconfig.board
+endif
+ifneq ($(ADK_RUNTIME_CONSOLE_VGA_DEVICE),)
+	$(SED) 's#^\(CONFIG_.*CMDLINE="\)\(.*\)"#\1\2 console=$(ADK_RUNTIME_CONSOLE_VGA_DEVICE)"#' \
+		$(BUILD_DIR)/.kernelconfig.board
+endif
 ifeq ($(ADK_TARGET_SYSTEM_QEMU_M68K),y)
 	@$(SED) 's#^\(CONFIG_.*BOOTPARAM_STRING="\)\(.*\)"#\1\2 ro $(FS_CMDLINE)"#' \
 		$(BUILD_DIR)/.kernelconfig.board

+ 1 - 0
target/aarch64/systems/arm-fm

@@ -9,5 +9,6 @@ config ADK_TARGET_SYSTEM_ARM_FM
 	select ADK_LINUX_64
 	select ADK_TARGET_KERNEL_IMAGE
 	select ADK_PACKAGE_BOOT_WRAPPER_AARCH64
+	select ADK_TARGET_WITH_SERIAL
 	help
 	 Support for ARMv8 Foundation Model (aarch64).

+ 1 - 0
target/arm/systems/linksys-nslu2

@@ -5,6 +5,7 @@ config ADK_TARGET_SYSTEM_LINKSYS_NSLU2
 	select ADK_eabihf
 	select ADK_linksys_nslu2
 	select ADK_TARGET_WITH_USB
+	select ADK_TARGET_WITH_SERIAL
 	select ADK_TARGET_KERNEL_ZIMAGE
 	help
 	  Linksys NSLU2

+ 1 - 0
target/arm/systems/raspberry-pi

@@ -8,6 +8,7 @@ config ADK_TARGET_SYSTEM_RASPBERRY_PI
 	select ADK_CPU_ARM1176JZF_S
 	select ADK_TARGET_CPU_WITH_FPU
 	select ADK_TARGET_WITH_VGA
+	select ADK_TARGET_WITH_SERIAL
 	select ADK_TARGET_WITH_CPU_FREQ
 	select ADK_TARGET_WITH_USB
 	select ADK_TARGET_WITH_INPUT

+ 1 - 0
target/arm/systems/sharp-zaurus

@@ -7,6 +7,7 @@ config ADK_TARGET_SYSTEM_SHARP_ZAURUS
 	select ADK_CPU_XSCALE
 	select ADK_TARGET_CPU_WITH_IWMMXT
 	select ADK_TARGET_WITH_VGA
+	select ADK_TARGET_WITH_SERIAL
 	select ADK_TARGET_WITH_PCMCIA
 	select ADK_TARGET_WITH_INPUT
 	select ADK_TARGET_WITH_SOUND

+ 1 - 0
target/arm/systems/solidrun-imx6

@@ -8,6 +8,7 @@ config ADK_TARGET_SYSTEM_SOLIDRUN_IMX6
 	select ADK_CPU_CORTEX_A9
 	select ADK_TARGET_CPU_WITH_FPU
 	select ADK_TARGET_WITH_VGA
+	select ADK_TARGET_WITH_SERIAL
 	select ADK_TARGET_WITH_CPU_FREQ
 	select ADK_TARGET_WITH_USB
 	select ADK_TARGET_WITH_SD

+ 2 - 1
target/avr32/systems/atmel-ngw100

@@ -5,6 +5,7 @@ config ADK_TARGET_SYSTEM_ATMEL_NGW100
 	select ADK_CPU_AVR32
 	select ADK_TARGET_KERNEL_UIMAGE
 	select ADK_HOST_BUILD_U_BOOT
+	select ADK_TARGET_WITH_SERIAL
 	help
-	  ATMEL NGW100
+	  Atmel NGW100
 

+ 1 - 0
target/config/Config.in

@@ -21,6 +21,7 @@ config ADK_TARGET_UCLINUX
 
 config ADK_TARGET_QEMU
 	bool
+	select ADK_TARGET_WITH_SERIAL
 
 config ADK_TARGET_VBOX
 	bool

+ 13 - 22
target/config/Config.in.adk

@@ -63,60 +63,51 @@ config ADK_MAKE_JOBS
 	default 1 if ! ADK_MAKE_PARALLEL
 
 config ADK_MAKE_PARALLEL
-	prompt "Enable parallel building of packages"
-	boolean
+	bool "Enable parallel building of packages"
 	default y
 
 config ADK_MAKE_JOBS
-	prompt "How many jobs to use"
-	int
+	int "How many jobs to use"
 	default 4
 	depends on ADK_MAKE_PARALLEL
 	help
 	  The number specified here will be passed to make as N in '-jN'
 
 config ADK_TARGET_IP
-	prompt "Set target ip address for make check"
-	string
+	string "Set target ip address for make check"
 	default "127.0.0.1"
 	help
+	  IP address of target, when running make check.
 
 config ADK_TARGET_PORT
-	prompt "Set target port for make check"
-	string
+	string "Set target port for make check"
 	default "2222" if ADK_TARGET_QEMU
 	default "22"
 	help
+	  Port to use for SSH when running make check.
 
 choice 
 prompt "Hostsystem (do not change!)"
 config ADK_HOST_LINUX
-	prompt "Linux"
-	boolean
+	bool "Linux"
 
 config ADK_HOST_FREEBSD
-	prompt "FreeBSD"
-	boolean
+	bool "FreeBSD"
 
 config ADK_HOST_MIRBSD
-	prompt "MirBSD"
-	boolean
+	bool "MirBSD"
 
 config ADK_HOST_OPENBSD
-	prompt "OpenBSD"
-	boolean
+	bool "OpenBSD"
 
 config ADK_HOST_NETBSD
-	prompt "NetBSD"
-	boolean
+	bool "NetBSD"
 
 config ADK_HOST_DARWIN
-	prompt "Darwin"
-	boolean
+	bool "Darwin"
 
 config ADK_HOST_CYGWIN
-	prompt "Cygwin"
-	boolean
+	bool "Cygwin"
 
 endchoice
 endmenu

+ 34 - 31
target/config/Config.in.hardware

@@ -3,94 +3,97 @@
 
 # hardware features, do not use for qemu
 config ADK_TARGET_WITH_CPU_FREQ
-	boolean
+	bool
 
 config ADK_TARGET_WITH_USB
-	boolean
+	bool
 
 config ADK_TARGET_WITH_I2C
-	boolean
+	bool
 
 config ADK_TARGET_WITH_SPI
-	boolean
+	bool
 
 config ADK_TARGET_WITH_PCI
-	boolean
+	bool
 
 config ADK_TARGET_WITH_SSB
-	boolean
+	bool
 
 config ADK_TARGET_WITH_SDIO
-	boolean
+	bool
 
 config ADK_TARGET_WITH_AHB
-	boolean
+	bool
 
 config ADK_TARGET_WITH_MINIPCI
-	boolean
+	bool
 
 config ADK_TARGET_WITH_ACPI
-	boolean
+	bool
 
 config ADK_TARGET_WITH_VGA
-	boolean
+	bool
+
+config ADK_TARGET_WITH_SERIAL
+	bool
 
 config ADK_TARGET_WITH_NAND
-	boolean
+	bool
 
 config ADK_TARGET_WITH_SD
-	boolean
+	bool
 
 config ADK_TARGET_WITH_MTD
-	boolean
+	bool
 
 config ADK_TARGET_WITH_GEODE_CRYPTO
-	boolean
+	bool
 
 config ADK_TARGET_WITH_PATA
-	boolean
+	bool
 
 config ADK_TARGET_WITH_SATA
-	boolean
+	bool
 
 config ADK_TARGET_WITH_SCSI
-	boolean
+	bool
 
 config ADK_TARGET_WITH_INPUT
-	boolean
+	bool
 
 config ADK_TARGET_WITH_SOUND
-	boolean
+	bool
 
 config ADK_TARGET_WITH_TOUCHSCREEN
-	boolean
+	bool
 
 config ADK_TARGET_WITH_LEDS
-	boolean
+	bool
 
 config ADK_TARGET_WITH_PP
-	boolean
+	bool
 
 config ADK_TARGET_WITH_CARDBUS
-	boolean
+	bool
 
 config ADK_TARGET_WITH_PCMCIA
-	boolean
+	bool
 
 config ADK_TARGET_WITH_RTC
-	boolean
+	bool
 
 config ADK_TARGET_WITH_WATCHDOG
-	boolean
+	bool
 
 config ADK_TARGET_WITH_WIFI
-	boolean
+	bool
 
 config ADK_TARGET_WITH_DSL
-	boolean
+	bool
 
 config ADK_TARGET_WITH_USB_BOOT
-	boolean
+	bool
 
 config ADK_TARGET_WITH_SMP
-	boolean
+	bool

+ 14 - 12
target/config/Config.in.qemuopts

@@ -11,18 +11,19 @@ config ADK_QEMU_ARGS
 	default "-nographic"
 
 config ADK_TARGET_QEMU_WITH_GRAPHIC_ONLY
-	boolean
+	bool
+	select ADK_TARGET_WITH_VGA
 	depends on ADK_TARGET_QEMU_ARM_MODEL_SPITZ || ADK_TARGET_QEMU_ARM_MODEL_TERRIER
 
 choice 
-prompt "Use a Bootloader"
+prompt "Bootloader"
 depends on ADK_TARGET_SYSTEM_QEMU_X86_64 || ADK_TARGET_SYSTEM_QEMU_X86
 
 config ADK_TARGET_QEMU_WITHOUT_BOOTLOADER
-	boolean "do not use bootloader"
+	bool "do not use bootloader"
 
 config ADK_TARGET_QEMU_WITH_BOOTLOADER
-	boolean "use bootloader"
+	bool "use bootloader"
 	select ADK_PACKAGE_GRUB if ADK_TARGET_SYSTEM_QEMU_X86_64 || ADK_TARGET_SYSTEM_QEMU_X86
 
 endchoice
@@ -35,10 +36,10 @@ default ADK_TARGET_QEMU_WITH_BLOCK if ADK_TARGET_ROOTFS_SQUASHFS
 default ADK_TARGET_QEMU_WITH_BLOCK if ADK_TARGET_ROOTFS_JFFS2
 
 config ADK_TARGET_QEMU_WITHOUT_BLOCK
-	boolean "disabled"
+	bool "disabled"
 
 config ADK_TARGET_QEMU_WITH_BLOCK
-	boolean "enabled"
+	bool "enabled"
 	select ADK_KERNEL_SCSI_SYM53C8XX_2 if ADK_TARGET_QEMU_ARM_MODEL_VERSATILEPB
 	select ADK_KERNEL_MTD_M25P80 if ADK_TARGET_QEMU_MICROBLAZE_MODEL_ML605 || ADK_TARGET_QEMU_MICROBLAZE_MODEL_S3ADSP1800
 	select ADK_KERNEL_ATA_PIIX if ADK_TARGET_SYSTEM_QEMU_MIPS || ADK_TARGET_SYSTEM_QEMU_MIPS64 || ADK_TARGET_SYSTEM_QEMU_X86 || ADK_TARGET_SYSTEM_QEMU_X86_64
@@ -56,10 +57,11 @@ prompt "Qemu Emulation with graphical output"
 depends on ADK_TARGET_SYSTEM_QEMU_X86_64 || ADK_TARGET_SYSTEM_QEMU_X86 || ADK_TARGET_SYSTEM_QEMU_SH
 
 config ADK_TARGET_QEMU_WITHOUT_GRAPHIC
-	boolean "disabled"
+	bool "disabled"
 
 config ADK_TARGET_QEMU_WITH_GRAPHIC
-	boolean "enabled"
+	bool "enabled"
+	select ADK_TARGET_WITH_VGA
 	select ADK_KERNEL_VT
 	select ADK_KERNEL_VT_CONSOLE
 	select ADK_KERNEL_FONTS
@@ -88,10 +90,10 @@ depends on ADK_TARGET_SYSTEM_QEMU_SPARC64 || \
 default ADK_TARGET_QEMU_WITH_VIRTIO if ADK_TARGET_SYSTEM_QEMU_AARCH64
 
 config ADK_TARGET_QEMU_WITHOUT_VIRTIO
-	boolean "disabled"
+	bool "disabled"
 
 config ADK_TARGET_QEMU_WITH_VIRTIO
-	boolean "enabled"
+	bool "enabled"
 	select ADK_KERNEL_VIRTIO
 	select ADK_KERNEL_VIRTIO_PCI
 	select ADK_KERNEL_VIRTIO_NET
@@ -105,10 +107,10 @@ prompt "Qemu Emulation with audio support"
 depends on ADK_TARGET_SYSTEM_QEMU_X86_64 || ADK_TARGET_SYSTEM_QEMU_X86
 
 config ADK_TARGET_QEMU_WITHOUT_AUDIO
-	boolean "disabled"
+	bool "disabled"
 
 config ADK_TARGET_QEMU_WITH_AUDIO
-	boolean "enabled"
+	bool "enabled"
 
 endchoice
 endmenu

+ 65 - 62
target/config/Config.in.runtime

@@ -9,8 +9,8 @@ config ADK_RUNTIME_HOSTNAME
 
 config ADK_RUNTIME_SSH_PUBKEY
 	string "SSH public key (root user only)"
-	default ""
 	depends on ADK_PACKAGE_OPENSSH_SERVER || ADK_PACKAGE_DROPBEAR
+	default ""
 	help
 	  Paste your generated SSH public key here and it will be embedded into
 	  the built image, so you can use it to login instantly.
@@ -22,10 +22,10 @@ config ADK_RUNTIME_PASSWORD
 	  Predefine the root password enabled in the built image.
 
 config ADK_RUNTIME_START_SERVICES
-	prompt "start services by default"
-	boolean
+	bool "start services by default"
 	default n
 	help
+	  Enable this option to start selected services on boot.
 
 source "target/config/Config.in.scripts"
 
@@ -49,56 +49,52 @@ config ADK_RUNTIME_TIMEZONE
 	  Predefine the timezone for the embedded system.
 
 config ADK_QUIET_KERNEL
-	prompt "make bootup quiet without messages from the kernel"
-	boolean
-	default n
+	bool "make bootup quiet without messages from the kernel"
 	help
 	  Make bootup quiet without messages from the kernel.
 
 choice
 prompt "bootup messages from initscripts"
-default ADK_RUNTIME_QUIET_INIT if ADK_PKG_KODIBOX
-default ADK_RUNTIME_VERBOSE_INIT_VGA if ADK_TARGET_WITH_VGA || ADK_TARGET_QEMU_WITH_GRAPHIC || ADK_TARGET_QEMU_WITH_GRAPHIC_ONLY || ADK_TARGET_VBOX
+default ADK_RUNTIME_VERBOSE_INIT_VGA if ADK_TARGET_WITH_VGA
 default ADK_RUNTIME_VERBOSE_INIT_SERIAL
 
 config ADK_RUNTIME_VERBOSE_INIT_VGA
-	depends on ADK_TARGET_WITH_VGA || ADK_TARGET_QEMU_WITH_GRAPHIC || ADK_TARGET_QEMU_WITH_GRAPHIC_ONLY || ADK_TARGET_VBOX
-	boolean "output via VGA"
+	bool "output via VGA"
+	depends on ADK_TARGET_WITH_VGA
 
 config ADK_RUNTIME_VERBOSE_INIT_SERIAL
-	boolean "output via serial"
+	bool "output via serial"
+	depends on ADK_TARGET_WITH_SERIAL
 
 config ADK_RUNTIME_QUIET_INIT
-	boolean "no output"
+	bool "no output"
 
 endchoice
 
 choice
 prompt "start getty or shell after bootup"
-default ADK_RUNTIME_SHELL if ADK_PKG_TEST
-default ADK_RUNTIME_NONE if ADK_PKG_KODIBOX
 default ADK_RUNTIME_GETTY
 
 config ADK_RUNTIME_GETTY
-	boolean "start a getty after bootup"
+	bool "start a getty after bootup"
 	help
 	  Start a getty after bootup.
 
 config ADK_RUNTIME_SHELL
-	boolean "start a shell after bootup"
+	bool "start a shell after bootup"
 	help
-	  Start a shell after bootup
+	  Start a shell after bootup.
 
 config ADK_RUNTIME_NONE
-	boolean "start no shell nor getty after bootup"
+	bool "start no shell nor getty after bootup"
 	help
-	  Do not start a shell or getty after bootup
+	  Do not start a shell or getty after bootup.
 
 endchoice
 
 config ADK_RUNTIME_GETTY_VGA
-	boolean "start getty on VGA console (tty1-tty6)"
-	depends on ADK_RUNTIME_GETTY
+	bool "start getty on VGA console (tty1-tty6)"
+	depends on ADK_RUNTIME_GETTY && ADK_TARGET_WITH_VGA
 	default y if ADK_TARGET_QEMU_WITH_GRAPHIC_ONLY
 	default y if ADK_TARGET_QEMU_WITH_GRAPHIC
 	default y if ADK_TARGET_SYSTEM_RASPBERRY_PI
@@ -112,8 +108,8 @@ config ADK_RUNTIME_GETTY_VGA
           Start getty on VGA console. (tty1-tty6)
 
 config ADK_RUNTIME_GETTY_SERIAL
-	boolean "start getty on serial console"
-	depends on ADK_RUNTIME_GETTY
+	bool "start getty on serial console"
+	depends on ADK_RUNTIME_GETTY && ADK_TARGET_WITH_SERIAL
 	default n if ADK_TARGET_QEMU_WITH_GRAPHIC_ONLY
 	default n if ADK_TARGET_QEMU_WITH_GRAPHIC
 	default n if ADK_TARGET_SYSTEM_RASPBERRY_PI
@@ -126,9 +122,15 @@ config ADK_RUNTIME_GETTY_SERIAL
 	help
 	  Start getty on serial console.
 
+config ADK_RUNTIME_CONSOLE_VGA_DEVICE
+	string "VGA console device"
+	depends on ADK_TARGET_WITH_VGA
+	default "tty1" if ADK_TARGET_SYSTEM_RASPBERRY_PI
+	default "tty0"
+
 config ADK_RUNTIME_CONSOLE_SERIAL_DEVICE
-	prompt "serial console device"
-	string
+	string "serial console device"
+	depends on ADK_TARGET_WITH_SERIAL
 	default "hvc0" if ADK_TARGET_SYSTEM_QEMU_PPC64
 	default "ttyUL0" if ADK_TARGET_QEMU_MICROBLAZE_MODEL_S3ADSP1800
 	default "ttyAMA0" if ADK_TARGET_QEMU_ARM_MODEL_VERSATILEPB || ADK_TARGET_QEMU_ARM_MODEL_VEXPRESS_A9 || ADK_TARGET_SYSTEM_ARM_FM || ADK_TARGET_SYSTEM_QEMU_AARCH64
@@ -138,16 +140,16 @@ config ADK_RUNTIME_CONSOLE_SERIAL_DEVICE
 	default "ttyS0"
 
 config ADK_RUNTIME_CONSOLE_SERIAL_SPEED
-	prompt "serial console speed"
-	string
+	string "serial console speed"
+	depends on ADK_TARGET_WITH_SERIAL
 	default "9600" if ADK_TARGET_SYSTEM_FON_FON2100
 	default "38400" if ADK_TARGET_SYSTEM_PCENGINES_WRAP	
 	default "115200"
 
 config ADK_RUNTIME_KBD_LAYOUT
 	string "keyboard layout for the embedded system"
-	default ""
 	depends on ADK_TARGET_WITH_INPUT
+	default ""
 	help
 	  Predefine the keyboard layout for the embedded system.
 
@@ -157,48 +159,48 @@ default ADK_ROOTSH_SASH if ADK_TARGET_UCLINUX
 default ADK_ROOTSH_MKSH
 
 config ADK_ROOTSH_MKSH
-	select ADK_PACKAGE_MKSH if !ADK_TOOLCHAIN_ONLY
 	bool "mksh (MirBSD Korn Shell)"
+	select ADK_PACKAGE_MKSH if !ADK_TOOLCHAIN_ONLY
 	help
 	  Use mksh (a Korn Shell variant) as standard login shell
 	  for the superuser.
 
 config ADK_ROOTSH_SASH
-	select ADK_PACKAGE_SASH if !ADK_TOOLCHAIN_ONLY
 	bool "sash (Shell compatible with non-MMU systems)"
+	select ADK_PACKAGE_SASH if !ADK_TOOLCHAIN_ONLY
 	help
 	  standalone shell.
 
 config ADK_ROOTSH_HUSH
-	select ADK_PACKAGE_HUSH if !ADK_TOOLCHAIN_ONLY
 	bool "hush (Shell compatible with non-MMU systems)"
+	select ADK_PACKAGE_HUSH if !ADK_TOOLCHAIN_ONLY
 	help
 	  hush shell from busybox.
 
 config ADK_ROOTSH_ASH
-	select BUSYBOX_ASH
 	bool "ash (busybox)"
+	select BUSYBOX_ASH
 	help
 	  Use the minimalistic ash variant that is part of busybox
 	  as standard login shell for the superuser. This is the
 	  default, but discouraged due to its frugality.
 
 config ADK_ROOTSH_BASH
-	select ADK_PACKAGE_BASH
 	bool "bash (GNU Bourne-Again Shell)"
+	select ADK_PACKAGE_BASH
 	help
 	  Use GNU bash as standard login shell for the superuser.
 
 config ADK_ROOTSH_TCSH
-	select ADK_PACKAGE_TCSH
 	bool "tcsh (Tenex C Shell)"
+	select ADK_PACKAGE_TCSH
 	help
 	  Use tcsh (a C Shell variant) as standard login shell
 	  for the superuser.
 
 config ADK_ROOTSH_ZSH
-	select ADK_PACKAGE_ZSH
 	bool "zsh (The Z Shell)"
+	select ADK_PACKAGE_ZSH
 	help
 	  Use zsh as standard login shell for the superuser.
 
@@ -210,50 +212,49 @@ default ADK_BINSH_SASH if ADK_TARGET_UCLINUX
 default ADK_BINSH_MKSH
 
 config ADK_BINSH_MKSH
-	select ADK_PACKAGE_MKSH if !ADK_TOOLCHAIN_ONLY
 	bool "mksh (MirBSD Korn Shell)"
+	select ADK_PACKAGE_MKSH if !ADK_TOOLCHAIN_ONLY
 	help
 	  Use mksh (a Korn Shell variant) as system shell, which is
 	  both small and powerful, so quite suited for this task.
 
 config ADK_BINSH_SASH
-	select ADK_PACKAGE_SASH if !ADK_TOOLCHAIN_ONLY
 	bool "sash (Standalone Shell)"
+	select ADK_PACKAGE_SASH if !ADK_TOOLCHAIN_ONLY
 	help
 	  hush shell.
 
 config ADK_BINSH_HUSH
-	select ADK_PACKAGE_HUSH if !ADK_TOOLCHAIN_ONLY
 	bool "hush (busybox)"
+	select ADK_PACKAGE_HUSH if !ADK_TOOLCHAIN_ONLY
 	help
 	  hush shell.
 
 config ADK_BINSH_ASH
-	select BUSYBOX_ASH
 	bool "ash (busybox)"
+	select BUSYBOX_ASH
 	help
 	  Use the minimalistic ash variant that is part of busybox
 	  as system shell. This is the default and rather small and
 	  fast, but lacks scripting features.
 
 config ADK_BINSH_BASH
-	select ADK_PACKAGE_BASH
 	bool "bash (GNU Bourne-Again Shell)"
+	select ADK_PACKAGE_BASH
 	help
 	  Use GNU bash as system shell. This is discouraged due to
 	  its size and slowness.
 
 config ADK_BINSH_ZSH
-	select ADK_PACKAGE_ZSH
 	bool "zsh (The Z Shell)"
+	select ADK_PACKAGE_ZSH
 	help
 	  Use zsh as system shell. This is probably a bad idea.
 
 endchoice
 
 config ADK_SIMPLE_NETWORK_CONFIG
-	prompt "simple network configuration"
-	boolean
+	bool "simple network configuration"
 	help
 	  Manually change network config
 	  
@@ -272,6 +273,7 @@ config ADK_SIMPLE_NETWORK_CONFIG_ETH0_DHCP
 
 config ADK_SIMPLE_NETWORK_CONFIG_ETH0_NONE
 	bool "no configuration"
+
 endchoice
 
 choice
@@ -279,26 +281,26 @@ prompt "configure default Gateway"
 depends on ADK_SIMPLE_NETWORK_CONFIG_ETH0_STATIC
 
 config ADK_SIMPLE_NETWORK_CONFIG_ETH0_STATIC_WITH_GW
-	boolean "with Gateway"
+	bool "with Gateway"
 
 config ADK_SIMPLE_NETWORK_CONFIG_ETH0_STATIC_WITHOUT_GW
-	boolean "without Gateway"
+	bool "without Gateway"
 
 endchoice
 
 config ADK_SIMPLE_NETWORK_CONFIG_ETH0_IP
-	depends on ADK_SIMPLE_NETWORK_CONFIG_ETH0_STATIC
 	string "IP Address"
+	depends on ADK_SIMPLE_NETWORK_CONFIG_ETH0_STATIC
 	default "10.0.0.2"
 
 config ADK_SIMPLE_NETWORK_CONFIG_ETH0_NM
-	depends on ADK_SIMPLE_NETWORK_CONFIG_ETH0_STATIC
 	string "Netmask"
+	depends on ADK_SIMPLE_NETWORK_CONFIG_ETH0_STATIC
 	default "255.255.255.0"
 
 config ADK_SIMPLE_NETWORK_CONFIG_ETH0_GW
-	depends on ADK_SIMPLE_NETWORK_CONFIG_ETH0_STATIC_WITH_GW
 	string "Gateway"
+	depends on ADK_SIMPLE_NETWORK_CONFIG_ETH0_STATIC_WITH_GW
 	default "10.0.0.1"
 
 endmenu
@@ -327,26 +329,26 @@ prompt "configure default Gateway"
 depends on ADK_SIMPLE_NETWORK_CONFIG_WLAN0_STATIC
 
 config ADK_SIMPLE_NETWORK_CONFIG_WLAN0_STATIC_WITH_GW
-	boolean "with Gateway"
+	bool "with Gateway"
 
 config ADK_SIMPLE_NETWORK_CONFIG_WLAN0_STATIC_WITHOUT_GW
-	boolean "without Gateway"
+	bool "without Gateway"
 
 endchoice
 
 config ADK_SIMPLE_NETWORK_CONFIG_WLAN0_IP
-	depends on ADK_SIMPLE_NETWORK_CONFIG_WLAN0_STATIC
 	string "IP Address"
+	depends on ADK_SIMPLE_NETWORK_CONFIG_WLAN0_STATIC
 	default "192.168.1.2"
 
 config ADK_SIMPLE_NETWORK_CONFIG_WLAN0_NM
-	depends on ADK_SIMPLE_NETWORK_CONFIG_WLAN0_STATIC
 	string "Netmask"
+	depends on ADK_SIMPLE_NETWORK_CONFIG_WLAN0_STATIC
 	default "255.255.255.0"
 
 config ADK_SIMPLE_NETWORK_CONFIG_WLAN0_GW
-	depends on ADK_SIMPLE_NETWORK_CONFIG_WLAN0_STATIC_WITH_GW
 	string "Gateway"
+	depends on ADK_SIMPLE_NETWORK_CONFIG_WLAN0_STATIC_WITH_GW
 	default "192.168.1.1"
 
 endmenu
@@ -365,13 +367,13 @@ config ADK_SIMPLE_NETWORK_CONFIG_WLAN0_WPA2
 endchoice
 
 config ADK_SIMPLE_NETWORK_CONFIG_WLAN0_WPA2_SSID
-	depends on ADK_SIMPLE_NETWORK_CONFIG_WLAN0_WPA2
 	string "SSID"
+	depends on ADK_SIMPLE_NETWORK_CONFIG_WLAN0_WPA2
 	default ""
 
 config ADK_SIMPLE_NETWORK_CONFIG_WLAN0_WPA2_PW
-	depends on ADK_SIMPLE_NETWORK_CONFIG_WLAN0_WPA2
 	string "Password"
+	depends on ADK_SIMPLE_NETWORK_CONFIG_WLAN0_WPA2
 	default ""
 
 menu "eth1 Configuration"
@@ -390,6 +392,7 @@ config ADK_SIMPLE_NETWORK_CONFIG_ETH1_DHCP
 
 config ADK_SIMPLE_NETWORK_CONFIG_ETH1_NONE
 	bool "no configuration"
+
 endchoice
 
 choice
@@ -397,40 +400,40 @@ prompt "configure default Gateway"
 depends on ADK_SIMPLE_NETWORK_CONFIG_ETH1_STATIC
 
 config ADK_SIMPLE_NETWORK_CONFIG_ETH1_STATIC_WITH_GW
-	boolean "with Gateway"
+	bool "with Gateway"
 
 config ADK_SIMPLE_NETWORK_CONFIG_ETH1_STATIC_WITHOUT_GW
-	boolean "without Gateway"
+	bool "without Gateway"
 
 endchoice
 
 config ADK_SIMPLE_NETWORK_CONFIG_ETH1_IP
-	depends on ADK_SIMPLE_NETWORK_CONFIG_ETH1_STATIC
 	string "IP Address"
+	depends on ADK_SIMPLE_NETWORK_CONFIG_ETH1_STATIC
 	default "172.16.0.2"
 
 config ADK_SIMPLE_NETWORK_CONFIG_ETH1_NM
-	depends on ADK_SIMPLE_NETWORK_CONFIG_ETH1_STATIC
 	string "Netmask"
+	depends on ADK_SIMPLE_NETWORK_CONFIG_ETH1_STATIC
 	default "255.255.0.0"
 
 config ADK_SIMPLE_NETWORK_CONFIG_ETH1_GW
-	depends on ADK_SIMPLE_NETWORK_CONFIG_ETH1_STATIC_WITH_GW
 	string "Gateway"
+	depends on ADK_SIMPLE_NETWORK_CONFIG_ETH1_STATIC_WITH_GW
 	default "172.16.0.1"
 
 endmenu
 
 config ADK_SIMPLE_NETWORK_CONFIG_NS
+	string "Nameserver"
 	depends on ADK_SIMPLE_NETWORK_CONFIG
 	depends on !ADK_SIMPLE_NETWORK_CONFIG_ETH0_DHCP
 	depends on !ADK_SIMPLE_NETWORK_CONFIG_ETH1_DHCP
 	depends on !ADK_SIMPLE_NETWORK_CONFIG_WLAN0_DHCP
-	string "Nameserver"
 	default "10.0.0.1"
 
 config ADK_SIMPLE_NETWORK_CONFIG_PROXY
-	depends on ADK_SIMPLE_NETWORK_CONFIG
 	string "HTTP-Proxy (f.e. http://10.0.0.2:8080)"
+	depends on ADK_SIMPLE_NETWORK_CONFIG
 	default ""
 

+ 2 - 30
target/config/Config.in.target

@@ -41,36 +41,8 @@ config ADK_TARGET_CFLAGS
 
 config ADK_TARGET_CMDLINE
 	string
-	default "console=tty0" if ADK_TARGET_SYSTEM_ARANYM_M68K
-	default "console=ttyAMA0" if ADK_TARGET_SYSTEM_ARM_FM
-	default "console=ttyS0,115200" if ADK_TARGET_SYSTEM_PCENGINES_ALIX2D13
-	default "console=ttyS0,115200" if ADK_TARGET_SYSTEM_PCENGINES_ALIX2D2
-	default "console=ttyS0,115200" if ADK_TARGET_SYSTEM_PCENGINES_APU
-	default "console=ttymxc0,115200 console=tty0" if ADK_TARGET_SYSTEM_SOLIDRUN_IMX6 && ADK_RUNTIME_VERBOSE_INIT_VGA
-	default "console=tty0 console=ttymxc0,115200" if ADK_TARGET_SYSTEM_SOLIDRUN_IMX6 && ADK_RUNTIME_VERBOSE_INIT_SERIAL
-	default "console=ttyS0,115200 console=tty0" if ADK_TARGET_SYSTEM_IBM_X40 && ADK_RUNTIME_VERBOSE_INIT_VGA
-	default "console=tty0 console=ttyS0,115200" if ADK_TARGET_SYSTEM_IBM_X40 && ADK_RUNTIME_VERBOSE_INIT_SERIAL
-	default "console=tty0" if ADK_TARGET_SYSTEM_LEMOTE_YEELONG
-	default "console=ttyAMA0,115200 console=tty1" if ADK_TARGET_SYSTEM_RASPBERRY_PI && ADK_RUNTIME_VERBOSE_INIT_VGA
-	default "console=tty1 console=ttyAMA0,115200" if ADK_TARGET_SYSTEM_RASPBERRY_PI && ADK_RUNTIME_VERBOSE_INIT_SERIAL
-	default "console=ttyS0,115200 console=tty0 fbcon=rotate:1" if ADK_TARGET_SYSTEM_SHARP_ZAURUS
-	default "console=ttyS0,9600" if ADK_TARGET_SYSTEM_FON_FON2100
-	default "console=ttyS0,38400" if ADK_TARGET_SYSTEM_PCENGINES_WRAP
-	default "console=ttyS0,115200 console=tty0 geodewdt.nowayout=1" if ADK_TARGET_SYSTEM_PCENGINES_ALIX1C
-	default "console=tty0" if ADK_TARGET_VBOX
-	default "console=tty0" if ADK_TARGET_QEMU_ARM_MODEL_SPITZ || ADK_TARGET_QEMU_ARM_MODEL_TERRIER
-	default "console=ttyAMA0" if ADK_TARGET_QEMU_ARM_MODEL_VERSATILEPB
-	default "console=ttyAMA0" if ADK_TARGET_QEMU_ARM_MODEL_VEXPRESS_A9
-	default "console=ttyUL0" if ADK_TARGET_QEMU_MICROBLAZE_MODEL_S3ADSP1800
-	default "console=ttyS0,115200" if ADK_TARGET_QEMU_MICROBLAZE_MODEL_ML605
-	default "console=hvc0" if ADK_TARGET_SYSTEM_QEMU_PPC64
-	default "console=ttyS0,9600" if ADK_TARGET_QEMU_PPC_MACPPC
-	default "console=ttyS0" if ADK_TARGET_QEMU_PPC_VIRTEX_ML507
-	default "console=ttyS0" if ADK_TARGET_QEMU_PPC_BAMBOO
-	default "console=ttySC1" if ADK_TARGET_SYSTEM_QEMU_SH
-	default "console=ttyS0,115200" if ADK_TARGET_SYSTEM_QEMU_SPARC64
-	default "console=ttyS0,115200" if ADK_TARGET_SYSTEM_QEMU_X86 || ADK_TARGET_SYSTEM_QEMU_X86_64
-	default "console=ttyS0,38400" if ADK_TARGET_SYSTEM_QEMU_XTENSA
+	default "fbcon=rotate:1" if ADK_TARGET_SYSTEM_SHARP_ZAURUS
+	default "geodewdt.nowayout=1" if ADK_TARGET_SYSTEM_PCENGINES_ALIX1C
 	default ""
 
 choice

+ 4 - 4
target/config/Config.in.x86.choice

@@ -7,19 +7,19 @@ depends on (ADK_TARGET_SYSTEM_QEMU_X86 || ADK_TARGET_SYSTEM_GENERIC_PC || ADK_TA
 default ADK_CPU_I486
 
 config ADK_CPU_I486
-        boolean "i486"
+        bool "i486"
         select ADK_i486
 
 config ADK_CPU_I586
-        boolean "i586"
+        bool "i586"
         select ADK_i586
 
 config ADK_CPU_I686
-        boolean "i686"
+        bool "i686"
         select ADK_i686
 
 config ADK_CPU_ATOM
-        boolean "atom"
+        bool "atom"
         select ADK_atom
 
 endchoice

+ 4 - 4
target/config/Config.in.x86.default

@@ -2,16 +2,16 @@
 # material, please see the LICENCE file in the top-level directory.
 
 config ADK_i486
-	boolean
+	bool
 
 config ADK_i586
-	boolean
+	bool
 
 config ADK_i686
-	boolean
+	bool
 
 config ADK_atom
-	boolean
+	bool
 
 config ADK_TARGET_X86_CPU
 	string

+ 1 - 0
target/mips/systems/dragino-ms14s

@@ -6,6 +6,7 @@ config ADK_TARGET_SYSTEM_DRAGINO_MS14S
 	select ADK_CPU_MIPS32
 	select ADK_TARGET_WITH_WATCHDOG
 	select ADK_TARGET_WITH_NAND
+	select ADK_TARGET_WITH_SERIAL
 	help
 	  Support for Dragino2 ms14-s.
 

+ 1 - 0
target/mips/systems/mikrotik-rb4xx

@@ -5,6 +5,7 @@ config ADK_TARGET_SYSTEM_MIKROTIK_RB4XX
 	select ADK_mikrotik_rb4xx
 	select ADK_CPU_MIPS32
 	select ADK_TARGET_WITH_MINIPCI
+	select ADK_TARGET_WITH_SERIAL
 	select ADK_TARGET_WITH_WATCHDOG
 	select ADK_TARGET_WITH_NAND
 	select ADK_TARGET_WITH_LEDS

+ 1 - 0
target/mips/systems/mikrotik-rb532

@@ -4,6 +4,7 @@ config ADK_TARGET_SYSTEM_MIKROTIK_RB532
 	select ADK_little
 	select ADK_mikrotik_rb532
 	select ADK_CPU_MIPS32
+	select ADK_TARGET_WITH_SERIAL
 	select ADK_TARGET_WITH_MINIPCI
 	select ADK_TARGET_WITH_WATCHDOG
 	select ADK_TARGET_WITH_NAND

+ 1 - 0
target/x86_64/systems/pcengines-apu

@@ -6,6 +6,7 @@ config ADK_TARGET_SYSTEM_PCENGINES_APU
 	select ADK_LINUX_64
 	select ADK_TARGET_KERNEL_BZIMAGE
 	select ADK_TARGET_WITH_MINIPCI
+	select ADK_TARGET_WITH_SERIAL
 	select ADK_TARGET_WITH_USB
 	select ADK_TARGET_WITH_USB_BOOT
 	select ADK_TARGET_WITH_ACPI