summaryrefslogtreecommitdiffstats
path: root/meta/classes/syslinux.bbclass
Commit message (Collapse)AuthorAgeFilesLines
* boot loader: support root=UUIDPatrick Ohly2015-09-061-1/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | As mentioned when introducing the VM images (https://bugzilla.yoctoproject.org/show_bug.cgi?id=7374), the resulting images only work when the image is mounted as a disk that results in the hard-coded path (/dev/sda in the current default). Using the file system UUID to find the rootfs is more flexible. To enable this for boot-direct.bbclass and thus image-vm.bbclass (aka FSTYPEs vdi/vmdk/qcow2), set SYSLINUX_ROOT = "root=UUID=<<uuid-of-rootfs>>". The rootfs image must use an ext file system. The special string will get replaced in the APPEND line with the actual UUID when the boot loader (grub-efi, syslinux or gummiboot) writes the boot loader configuration files. At that time, the rootfs image has already been created and its UUID can be extracted using "tune2fs -l", which also should be available because the e2fsprogs-native tools were needed to create the image in the first place. (From OE-Core rev: 1e29d77d0d33ee216b43022439876863f0db39bb) Signed-off-by: Patrick Ohly <patrick.ohly@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* INITRD var: make it a list of filesystem imagesNitin A Kamble2014-08-021-1/+1
| | | | | | | | | | | | | | | | | | The initrd image used by the Linux kernel is list of file system images concatenated together and presented as a single initrd file at boot time. So far the initrd is a single filesystem image. But in cases like to support early microcode loading, the initrd image need to have multiple filesystem images concatenated together. This commit is extending the INITRD variable from a single filesystem image to a list of filesystem images to satisfy the need mentioned above. (From OE-Core rev: b0ac481dda99d8f4be8015964fcb2cb01afce08c) Signed-off-by: Nitin A Kamble <nitin.a.kamble@intel.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* syslinux.bbclass: Ensure MLPREFIX is applied to depends flagMing Liu2014-06-241-1/+1
| | | | | | | | | | Add MLPREFIX to depends flag to ensure the correct syslinux is dependended upon. (From OE-Core rev: c8dc421ea18bb7a810501ab6d07efa9c8f6d6eb9) Signed-off-by: Ming Liu <ming.liu@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* syslinux.bbclass: Enable additional kernel parameters for syslinuxKonrad Scherer2014-03-301-0/+5
| | | | | | | | | | | | | | | Add additional parameter 'SYSLINUX_KERNEL_ARGS' in order to allow for specific kernel parameters to be set when using syslinux. The extra kernel parameters are added to btype[1] and then written out as part of the APPEND field. (From OE-Core rev: d78c4d51ed266c14b0425f6abf553392c6ebe408) Signed-off-by: Konrad Scherer <Konrad.Scherer@windriver.com> Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Hongxu Jia <hongxu.jia@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* syslinux: add APPEND to dependency listRoss Burton2013-11-121-0/+1
| | | | | | | | | Changing APPEND wasn't causing syslinux to re-run, so add a manual dependency. (From OE-Core rev: 3c2d7ae5d59cb76a838f227c4cb0c64cea0d9e03) Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* syslinux.bbclass: Fix default serial port stringJason Wessel2013-11-011-1/+1
| | | | | | | | | | | | | | | | | | | | | The default value of SYSLINUX_SERIAL_TTY is not correct. It should be console=ttyS0,115200 else the boot string generated in the syslinux menus for the serial choice is not correct. The kernel boot parameters will get set to: /vmlinuz initrd=/initrd LABEL=boot root=/dev/ram0 ttyS0,115200 Note that the above is missing the "console=" The default value will now work the same as the value found in grub-efi.bbclass. (From OE-Core rev: fbc864241933c6f40814f47e7a85dd71ce255393) Signed-off-by: Jason Wessel <jason.wessel@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* boot-directdisk.bbclass: Fix media generation problems with vmdkJason Wessel2013-09-301-5/+7
| | | | | | | | | | | | | | | | | | | | | | | | The various populate methods need to accept a path as an argument vs using hard expanded variables. In the case of the boot-directdisk class it uses a different path for HDDDIR but it gets eclipsed by the the class definition at the point in time ${HDDDIR} gets expanded. The logical fix is to pass the arguments to the functions as opposed to using globally expanded variables from the class definitions. This patch changes 3 things: 1) syslinux_hddimg_populate takes an argument for the destination 2) syslinux_iso_populate takes an argument for the destination 3) populate is changed to boot_direct_populate because there was a conflict with it overriding the populate in bootimg.bbclass [YOCTO #3994] (From OE-Core rev: 63d164b755b984021f7e3cdba7280918ded6e821) Signed-off-by: Jason Wessel <jason.wessel@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* syslinux.bbclass, syslinux: Update to syslinux 6.01Jason Wessel2013-09-301-12/+9
| | | | | | | | | | | | | | | | | | | | | | | A newer version of syslinux is required for an EFI enabled isohybrid. This is used for the the capability to generate 3 types of ISO images, all of which can be booted off a USB device or HDD if copied with dd. 1) PC BIOS only ISO 2) EFI only ISO 3) EFI + PC BIOS ISO The syslinux.bbclass required a minor tweak because a few .c32 libraries require dynamic loading from the created media as of syslinux 5 and up. This was a good time to also fix the duplication of the AUTO_SYSLINUXMENU block. [YOCTO #4100] (From OE-Core rev: 17d74fbd09e377e100423e1a73b9d4ce761a21d7) Signed-off-by: Jason Wessel <jason.wessel@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* syslinux.bbclass: Fix hard coding of console=tty*Jason Wessel2013-09-301-3/+11
| | | | | | | | | | | | | | | | | | | | 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] (From OE-Core rev: cf2fba810a8a59cff71bf2c12e516e9080146604) Signed-off-by: Jason Wessel <jason.wessel@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* boot-directdisk: Allow for EFI-only boot direct disk imagesJoão Henrique Ferreira de Freitas2013-09-141-0/+5
| | | | | | | | | | | | | Condition building PCBIOS legacy images on MACHINE_FEATURES containing "pcbios" or not containing "efi". This ensures existing BSPs will continue to get the old PCBIOS legacy-only images. New BSPs can add "efi", "pcbios", or both. The images created likewise support one or the other or both. (From OE-Core rev: c58aceee7dc243467dd87f07ccc61859f8d945e6) Signed-off-by: João Henrique Ferreira de Freitas <joaohf@gmail.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* syslinux: Update to 4.06Jonathan Liu2013-05-161-4/+4
| | | | | | | | | | | | | | | Patches are now part of upstream or no longer needed. Added new util-linux dependency for isohybrid. Paths updated to reflect directory structure changes. Add CFLAGS and LDFLAGS overrides. [YOCTO #4438] (From OE-Core rev: 17e7ac0c5e75245d17a90e5cc49ade3d18a168ba) Signed-off-by: Jonathan Liu <net147@gmail.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* syslinux.bbclass: Add a default serial console option and real boot menu supportJason Wessel2013-03-181-79/+49
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The previous syslinux menu code did not support using both a serial and vga console, but this has worked for years in syslinux so there is no reason not to take advantage of it. The previous menu looked like: ------------------------------------------------------- Linux Boot Menu The following targets are available on this image: boot: None install: None ------------------------------------------------------- This commit makes it look something more like a traditional grub menu on both the serial console and vga console as well as providing the option to continue on using either the serial or vga console with the correct kernel arguments. You can see the screen shots attached to the bugzilla. https://bugzilla.yoctoproject.org/show_bug.cgi?id=3944 [ YOCTO #3944 ] (From OE-Core rev: 7032d559c04bae09e6b7c39ddeb1bf35acc0584c) Signed-off-by: Jason Wessel <jason.wessel@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* Convert tab indentation in python functions into four-spaceRichard Purdie2012-07-191-139/+139
| | | | | | (From OE-Core rev: 604d46c686d06d62d5a07b9c7f4fa170f99307d8) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* meta: Replace bb.data.expand(xxx, d) -> d.expand(xxx)Richard Purdie2012-03-051-1/+1
| | | | | | | | sed \ -e 's:bb.data.\(expand([^,()]*\), *\([^) ]*\) *):\2.\1):g' \ -i `grep -ril bb.data.expand *` Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* meta: Convert getVar/getVarFlag(xxx, 1) -> (xxx, True)Richard Purdie2012-03-051-14/+14
| | | | | | | | | | | | Using "1" with getVar is bad coding style and "True" is preferred. This patch is a sed over the meta directory of the form: sed \ -e 's:\(\.getVar([^,()]*, \)1 *):\1True):g' \ -e 's:\(\.getVarFlag([^,()]*, [^,()]*, \)1 *):\1True):g' \ -i `grep -ril getVar *` Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* syslinux: add SYSLINUX_ROOT to APPEND lineSaul Wold2012-02-231-0/+1
| | | | | | | | | | By prepending the SYSLINUX_ROOT to the APPEND line, will allow a sane default to be set for the various syslinux images (From OE-Core rev: 47f53bc7998aa8390f846e939b6a7f6df3789777) Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* syslinux: Use SYSLINUX_TIMEOUT and SYSLINUX_PROMPT to configure syslinuxSaul Wold2012-02-231-5/+5
| | | | | | | | | | | | | | | | | | | syslinux allows you to set TIMEOUT and PROMPT variables, when PROMPT is 0, the "boot:" is not displayed uless one presses CTRL or SHIFT during startup. TIMEOUT is in 1/10th of seconds, and a value of 0 for TIMEOUT will disable the timeout mechanism. In bitbake, recipes had set TIMEOUT (not SYSLINUX_TIMEOUT) incorrectly, other patches fix this issues. We are adding SYSLINUX_PROMPT to enable/disable the "boot:" prompt in syslinux. See http://www.syslinux.org/wiki/index.php/SYSLINUX for more details (From OE-Core rev: be04e3b2e13c1a7e1cd5416771b72a80ec52b8ad) Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Dexuan Cui <dexuan.cui@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bootimg: Use the same OS files for each boot methodDarren Hart2012-02-081-21/+13
| | | | | | | | | | | | | | | | | | | | | | Fixes [YOCTO #1951] The do_bootimg code can generate hybrid efi+pcbios images (syslinux and grub-efi) to boot on platforms with both EFI and legacy BIOS options. The current implementation copies the kernel, initrd, and rootfs twice, unnecessarily bloating the image size. This is an especially egregious bug on -sato images. Update the classes to use a common install of the kernel, initrd, and rootfs to the root of the boot media. Grub-efi, syslinux, and isolinux can all reference this location explicitly with a leading slash. Tested with an EFI+PCBIOS image in both EFI and PCBIOS boot modes on two platforms. No ISO image testing was performed. (From OE-Core rev: 5209016cf4c4c8f649e37dc8857b3fbcfe8dd8c8) Signed-off-by: Darren Hart <dvhart@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bootimage: Use ${S} explicitly for generated config filesDarren Hart2011-12-021-2/+2
| | | | | | | | | | | | | | | | | | The syslinux and grub-efi classes were generating config files in the current working directory. This caused a failure due to a race in the creation of the directories leading to cwd changing and the build failing to find the config files. While this has been addressed in bitbake, it is better to use an explicit path. While ${WORKDIR} may seem a more appropriate place, the recipe already uses ${S} for the "hdd" and "cd" construction, so we use ${S} here to keep things consolidated and consistent and address the issue with minimal change. (From OE-Core rev: 2c4b1675eb3c8c599e3b7f33e459aa608c2b93f2) Signed-off-by: Darren Hart <dvhart@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* bootimg: Pull syslinux specific bits into syslinux.bbclassDarren Hart2011-11-301-8/+60
| | | | | | | | | | | | Working towards a more generic bootimg.bbclass, pull out all syslinux specific bits and let syslinux.bbclass manage them directly. This introduces no functional changes to the images constructed and the behavior remains unchanged. (From OE-Core rev: 1915293688d348a765aa0bcdf01168c9fecd9842) Signed-off-by: Darren Hart <dvhart@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* Convert to use direct access to the data store (instead of bb.data.*Var*())Richard Purdie2011-11-101-17/+17
| | | | | | | | | | | | | | | | | This is the result of running the following over the metadata: sed \ -e 's:bb.data.\(setVar([^,()]*,[^,()]*\), *\([^ )]*\) *):\2.\1):g' \ -e 's:bb.data.\(setVarFlag([^,()]*,[^,()]*,[^,()]*\), *\([^) ]*\) *):\2.\1):g' \ -e 's:bb.data.\(getVar([^,()]*\), *\([^(), ]*\) *,\([^)]*\)):\2.\1,\3):g' \ -e 's:bb.data.\(getVarFlag([^,()]*,[^,()]*\), *\([^(), ]*\) *,\([^)]*\)):\2.\1,\3):g' \ -e 's:bb.data.\(getVarFlag([^,()]*,[^,()]*\), *\([^() ]*\) *):\2.\1):g' \ -e 's:bb.data.\(getVar([^,()]*\), *\([^) ]*\) *):\2.\1):g' \ -i `grep -ril bb.data *` (From OE-Core rev: b22831fd63164c4db9c0b72934d7d734a6585251) Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
* syslinux.bbclass: Clean up boot menu titleRichard Purdie2008-10-171-1/+1
| | | | git-svn-id: https://svn.o-hand.com/repos/poky/trunk@5521 311d38ba-8fff-0310-9ca6-ca027cbcb966
* syslinux: We forward the LABEL through cmdlineSamuel Ortiz2008-10-081-0/+2
| | | | git-svn-id: https://svn.o-hand.com/repos/poky/trunk@5458 311d38ba-8fff-0310-9ca6-ca027cbcb966
* syslinux.bbclass: Update to use more modern and efficient functionsRichard Purdie2008-09-031-7/+3
| | | | git-svn-id: https://svn.o-hand.com/repos/poky/trunk@5127 311d38ba-8fff-0310-9ca6-ca027cbcb966
* syslinux.bbclass: imported from OE (needed to generate booting CD)Marcin Juszkiewicz2007-06-081-0/+156
git-svn-id: https://svn.o-hand.com/repos/poky/trunk@1893 311d38ba-8fff-0310-9ca6-ca027cbcb966