[oe-commits] Jason Wessel : syslinux.bbclass: Fix hard coding of console=tty*
git at git.openembedded.org
git at git.openembedded.org
Wed Oct 2 21:40:53 UTC 2013
Module: openembedded-core.git
Branch: dora
Commit: cf2fba810a8a59cff71bf2c12e516e9080146604
URL: http://git.openembedded.org/?p=openembedded-core.git&a=commit;h=cf2fba810a8a59cff71bf2c12e516e9080146604
Author: Jason Wessel <jason.wessel at windriver.com>
Date: Tue Sep 17 13:32:16 2013 +0000
syslinux.bbclass: Fix hard coding of console=tty*
The SYSLINUX_SERIAL variable was hard coded and occasionally needs to
be different for the kernel argument vs the syslinux argument.
In the auto-generated boot mode console=tty0 was hard coded, and this
is not needed at all, and causes problems in some cases if a end user
wanted to change the console=... via the kernel boot argument APPEND
mechanism. The default can be forced with SYSLINUX_DEFAULT_CONSOLE
for systems that need a special specification to enable the frame
buffer instead of a serial port.
[YOCTO #3944]
Signed-off-by: Jason Wessel <jason.wessel at windriver.com>
Signed-off-by: Saul Wold <sgw at linux.intel.com>
Signed-off-by: Richard Purdie <richard.purdie at linuxfoundation.org>
---
meta/classes/syslinux.bbclass | 14 +++++++++++---
1 files changed, 11 insertions(+), 3 deletions(-)
diff --git a/meta/classes/syslinux.bbclass b/meta/classes/syslinux.bbclass
index dae6609..49f58f5 100644
--- a/meta/classes/syslinux.bbclass
+++ b/meta/classes/syslinux.bbclass
@@ -12,7 +12,9 @@
# ${APPEND} - an override list of append strings for each label
# ${SYSLINUX_OPTS} - additional options to add to the syslinux file ';' delimited
# ${SYSLINUX_SPLASH} - A background for the vga boot menu if using the boot menu
+# ${SYSLINUX_DEFAULT_CONSOLE} - set to "console=ttyX" to change kernel boot default console
# ${SYSLINUX_SERIAL} - Set an alternate serial port or turn off serial with empty string
+# ${SYSLINUX_SERIAL_TTY} - Set alternate console=tty... kernel boot argument
do_bootimg[depends] += "syslinux:do_populate_sysroot \
syslinux-native:do_populate_sysroot"
@@ -21,7 +23,11 @@ SYSLINUXCFG = "${S}/syslinux.cfg"
ISOLINUXDIR = "/isolinux"
SYSLINUXDIR = "/"
+# The kernel has an internal default console, which you can override with
+# a console=...some_tty...
+SYSLINUX_DEFAULT_CONSOLE ?= ""
SYSLINUX_SERIAL ?= "0 115200"
+SYSLINUX_SERIAL_TTY ?= "ttyS0,115200"
ISO_BOOTIMG = "isolinux/isolinux.bin"
ISO_BOOTCAT = "isolinux/boot.cat"
MKISOFS_OPTIONS = "-no-emul-boot -boot-load-size 4 -boot-info-table"
@@ -105,6 +111,8 @@ python build_syslinux_cfg () {
cfgfile.write('%s\n' % opt)
cfgfile.write('ALLOWOPTIONS 1\n');
+ syslinux_default_console = d.getVar('SYSLINUX_DEFAULT_CONSOLE', True)
+ syslinux_serial_tty = d.getVar('SYSLINUX_SERIAL_TTY', True)
syslinux_serial = d.getVar('SYSLINUX_SERIAL', True)
if syslinux_serial:
cfgfile.write('SERIAL %s\n' % syslinux_serial)
@@ -147,10 +155,10 @@ python build_syslinux_cfg () {
localdata.setVar('OVERRIDES', label + ':' + overrides)
bb.data.update_data(localdata)
- btypes = [ [ "", "console=tty0" ] ]
+ btypes = [ [ "", syslinux_default_console ] ]
if menu and syslinux_serial:
- btypes = [ [ "Graphics console ", " console=tty0" ],
- [ "Serial console ", " console=ttyS0,115200" ] ]
+ btypes = [ [ "Graphics console ", syslinux_default_console ],
+ [ "Serial console ", syslinux_serial_tty ] ]
for btype in btypes:
cfgfile.write('LABEL %s%s\nKERNEL /vmlinuz\n' % (btype[0], label))
More information about the Openembedded-commits
mailing list