summaryrefslogtreecommitdiffstats
path: root/meta/recipes-kernel/linux/linux-yocto.inc
AgeCommit message (Collapse)Author
2019-02-12linux-yocto: Add dependency on libgcc for ARCAlexey Brodkin
As of now in case of ARC there's no in-kernel implementation of basic libgcc functions used for millicode, multiplication, division etc instead we simply link with libgcc.a which provides everything used by the compiler. Signed-off-by: Alexey Brodkin <abrodkin@synopsys.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-02recipes-kernel/linux: Enable NUMA Kconfig from MACHINE_FEATURESAlistair Francis
If the user has set numa in their MACHINE_FEATURES we should enable NUMA support in the kernel config. Signed-off-by: Alistair Francis <alistair.francis@wdc.com> Acked-by: Bruce Ashfield <bruce.ashfield@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-07-02linux-yocto: Enable kernel-sample features for runtime testsHongzhi.Song
Enable kernel-sample features by default with the machine of qemu. Signed-off-by: Hongzhi.Song <hongzhi.song@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-05-29linux-yocto-dev: update to v4.17+Bruce Ashfield
Updating the -dev kernel to v4.17+. We also tweak the License checksum in the -dev kernel since SPDX headers have been inserted upstream and that has changed the hash value. Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2018-01-25classes/recipes: Convert SkipPackage -> SkipRecipeRichard Purdie
The new name is much more consistent with what this actually means. We put the pieces in place to rename everything a while back but looks like we forgot to actually do it! Fix that now. Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2018-01-18kernel: drop unnecessary True options from calls to getVarAndre McCurdy
The older style calls (plus a bashism in kernel.bbclass, fixed separately) were introduced via the recent change to add support for multiple kernel packages: http://git.openembedded.org/openembedded-core/commit/?id=6c8c899849d101fd1b86aad0b8eed05c7c785924 Signed-off-by: Andre McCurdy <armccurdy@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2018-01-02kernel: Add support for multiple kernel packagesHaris Okanovic
Some distros may want to provide alternate kernel "flavors" via feeds or within bootable images. For example, readily available builds which provide certain diagnostic features can enable developers and testers to more quickly resolve issues by avoiding lengthy kernel builds. This change allows for building multiple flavors of the kernel and module packages by templatizing kernel package names via a new KERNEL_PACKAGE_NAME variable in kernel.bbclass. It defaults to the old name of "kernel", but can be overridden by certain recipes providing alternate kernel flavors. To maintain compatibility, recipes providing alternate kernel flavors cannot be the "preferred provider" for virtual/kernel. This is because OE puts the preferred provider's build and source at "tmp-glibc/work-shared/$MACHINE/kernel-build-artifacts/" and "tmp-glibc/work-shared/$MACHINE/kernel-source/" instead of "tmp-glibc/work/*/$PN/" like other recipes. Therefore, recipes using the default KERNEL_PACKAGE_NAME="kernel" follows the old semantics -- build in the old location and may be preferred provider -- while recipes using all other KERNEL_PACKAGE_NAME's build from the normal WORKDIR and don't provide "virtual/kernel". Testing: 1. Add `KERNEL_PACKAGE_NAME_pn-linux-yocto-tiny = "tiny-linux"` to local.conf so that linux-yocto-tiny may build alongside the main kernel (linux-yocto). 2. `bitbake linux-yocto linux-yocto-tiny` to build both kernel flavors. 3. Verified image and modules IPKs exist for both: tmp-glibc/deploy/ipk/qemux86/kernel-* for linux-yocto tmp-glibc/deploy/ipk/qemux86/tiny-linux* for linux-yocto-tiny 4. Verified linux-yocto is the "preferred provider", and was built in shared directory: tmp-glibc/work-shared/qemux86/kernel-* 5. Add `CORE_IMAGE_BASE_INSTALL_append_pn-core-image-base = "tiny-linux"` to local.conf to install both kernel flavors in core-image-base. 6. `bitbake core-image-base` to build an image. 7. Verified image contains two bzImage's under /boot/, with "yocto-standard" (linux-yocto recipe) selected to boot via symlink. Discussion threads: http://lists.openembedded.org/pipermail/openembedded-core/2015-December/thread.html#114122 http://lists.openembedded.org/pipermail/openembedded-core/2017-July/thread.html#139130 [YOCTO #11363] Signed-off-by: Ioan-Adrian Ratiu <adrian.ratiu@ni.com> Signed-off-by: Gratian Crisan <gratian.crisan@ni.com> Signed-off-by: Haris Okanovic <haris.okanovic@ni.com> Coauthored-by: Gratian Crisan <gratian.crisan@ni.com> Coauthored-by: Haris Okanovic <haris.okanovic@ni.com> Coauthored-by: Josh Hernstrom <josh.hernstrom@ni.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2017-09-13kernel: Move Device Tree support to kernel.bbclassOtavio Salvador
The Device Tree is commonly used but it is still kept as a .inc file instead of a proper class. Instead now we move the Device Tree code to a kernel-devicetree class and automatically enable it when the KERNEL_DEVICETREE variable is set. To avoid breakage in existing layers, we kept a linux-dtb.inc file which raises a warning telling the user about the change so in next release this can be removed. Signed-off-by: Otavio Salvador <otavio@ossystems.com.br> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2017-09-11linux-yocto: Make LINUX_VERSION_EXTENSION weakerSaul Wold
This allows for other layers to override this variable in addition to providing the distro or local.conf to override it. Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2017-07-24linux-yocto: only suggest default kernel typeJoe Slater
The distro should set a default kernel type (?=) which could be overriden by local.conf (=) or extensions (templates). The kernel itself should only use "??=" to provide a value which allows builds to succeed. Signed-off-by: Joe Slater <jslater@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2017-04-05kernel.bbclass: move in addtask kernel_link_images statement from ↵Ming Liu
linux-yocto.inc Add kernel_link_images task in kernel.bbclass instead of adding it in linux-yocto.inc, or else the recipes inheriting kernel.bbclass might run into implicit dependency issues. Signed-off-by: Ming Liu <peter.x.liu@external.atlascopco.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-12-16meta: remove True option to getVar callsJoshua Lock
getVar() now defaults to expanding by default, thus remove the True option from getVar() calls with a regex search and replace. Search made with the following regex: getVar ?\(( ?[^,()]*), True\) Signed-off-by: Joshua Lock <joshua.g.lock@intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2016-10-15linux-yocto.inc: ensure do_kernel_link_images runs before do_stripAndre McCurdy
If the do_kernel_link_images task is enabled, then it needs to run before do_strip. The addtask statement for do_strip makes that explicit. For consistency, make it explicit in the addtask statement for do_kernel_link_images too. Signed-off-by: Andre McCurdy <armccurdy@gmail.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2016-09-30linux-yocto.inc: Run kernel_version_sanity_check with final sourceNathan Rossi
Ensure that the kernel_version_sanity_check task runs after all source modifications are complete, including any that are introduced during the kernel_metadata task. This also avoids any race condition issues when kernel_version_sanity_check and kernel_metadata tasks are running at the same time. Signed-off-by: Nathan Rossi <nathan@nathanrossi.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2016-09-28linux-yocto: Move PREFERRED_PROVIDER check to be genericSaul Wold
This check ensures that when the PREFERRED_PROVIDER for virtual/kernel changes, the previous instances gets removed correctly so when the new instance installs files into the shared area there is not an overlap of old and new. [YOCTO #10278] Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-09-21kernel.bbclass: Add kernel_version_sanity_check functionCalifornia Sullivan
The kernel being built should match what the recipe claims it is building. This function ensures that happens by comparing the version information in the kernel's Makefile to the PV the recipe is using. v2 changes: * Match against PV instead of LINUX_VERSION * Match against EXTRAVERSION as well (e.g., -rc4) * Cleaned up version string building Fixes [YOCTO #6767]. Signed-off-by: California Sullivan <california.l.sullivan@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2016-07-20linux-yocto: Enable debug/printk.scc KERNEL_FEATURE on qemuall machines.Aníbal Limón
We are experimenting some issues in the Autobuilder infraestructure possible due to high I/O loads, in order to provide more information about intervals of times in printk enable by default debug/printk.scc on qemu development images. [YOCTO #9299] Signed-off-by: Aníbal Limón <anibal.limon@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2016-05-30kernel: Make symbol link to vmlinuz in boot directoryHe Zhe
Rename do_kernel_link_vmlinux to do_kernel_link_images and make a symbol link to vmlinuz(if exists) for reference in arch/$arch/boot directory. Signen-off-by: He Zhe <zhe.he@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2016-05-09kernel-yocto: allow branch auditing to be suspendedBruce Ashfield
When working on the yocto-bsp and kernel-lab update for yocto 1.2 we found it was impossible for a end-user BSP to isolate patches on a branch, since with the following commit: [kernel-yocto: enforce SRC_URI specified branch] Any new branch would be switched to whatever was specified on the SRC_URI and undoing the work that the yocto-bsp tool did to support board specific patches. To fix this, we'll keep the enforcing of branch consistency enabled by default, but introduce a variable "KMETA_AUDIT" that when not set will skip the check. There's no impact for existing users, and it is only something that other plumbing commands and tools will need to use (or care about). [YOCTO: #9120] Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-12-08package_regex.inc: split GITTAGREGEX entries into recipe filesAlexander Kanavin
Signed-off-by: Alexander Kanavin <alexander.kanavin@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-11-16linux-yocto.inc: set SUMMARY instead of DESCRIPTIONPaul Eggleton
We only have a short description, so set SUMMARY and DESCRIPTION will be defaulted from it. Signed-off-by: Paul Eggleton <paul.eggleton@linux.intel.com> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-09-21linux-yocto: depend on libgcc for nios2Marek Vasut
Make nios2 kernel depend on libgcc. In arch/nios2/Makefile, it adds LIBGCC to libs-y: LIBGCC := $(shell $(CC) $(KBUILD_CFLAGS) -print-libgcc-file-name) libs-y += $(LIBGCC) In file Makefile in top directory, libs-y is assigned to to var KBUILD_VMLINUX_MAIN. It uses script link-vmlinux.sh to link vmlinux.o, and when execute function vmlinux_link() in link-vmlinux.sh, KBUILD_VMLINUX_MAIN is passed to ${LD}. If build without libgcc, the value of LIBGCC is just libgcc.a without parent directory. linux-yocto fails to build: | LD vmlinux.o | nios2-poky-linux-ld.bfd: cannot find libgcc.a: No such file or directory Add libgcc to nios2 kernel dependency. Signed-off-by: Marek Vasut <marex@denx.de> Signed-off-by: Ross Burton <ross.burton@intel.com>
2015-03-29kernel-yocto: merge duplicate kernel_configme task definitionsRoss Burton
The kernel_configme task was added twice (once in the .bbclass, one in a .inc) with different ordering constraints. Change this to be just one definition in the bbclass with the stronger ordering constraints. Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-29linux-yocto: add kern-tools-native to kernel_metadata dependsRoss Burton
The autobuilder failed like this: temp/run.do_kernel_metadata.25242: line 165: createme: command not found createme is provided by kern-tools-native. do_patch has a dependency on kern-tools-native, but do_kernel_metadata runs before do_patch. So move the dependency from do_patch to do_kernel_metadata, moving the statement from the .inc to the class so it's alongside the task definition. [ YOCTO #7531 ] Signed-off-by: Ross Burton <ross.burton@intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-03-02kernel-yocto: inhibit BSP description warnings for custom linux-yocto kernelsBruce Ashfield
We don't require that a yocto custom kernel + defconfig have a full BSP description (but of course it would be better if they did). Since this isn't a requirement, we shouldn't alarm users by generating a BSP description warning. To implement this, we add a bsp audit level flag (like the one that exists for kconfig audits), and only set it to activate in the versioned linux-yocto recipes. [YOCTO: #7370] Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2015-02-20linux-yocto: make kernel configuration audit user visibleBruce Ashfield
After a linux-yocto style kernel is configured, a kernel configuration audit is executed to detect common errors or issues with the config. This output used to be visible, but was made less obvious to not alarm users unnecessarily (since some configuration issues are acceptable). There are some classes of configuration issue that are worth being visible, and that is specified configuration values that do not make the final .config. These dropped options can result in any number of runtime failures, so flagging them at build time makes sense. The visibility of auditing is controlled by KCONF_AUDIT_LEVEL: 0: no reporting 1: report options that are specified, but not in the final config 2: report options that are not hardware related, but set by a BSP The default level is 1, with level 2 and above being for BSP development only. If these conditions are detected, warnings will be generated as follows: WARNING: [kernel config]: specified values did not make it into the kernel's final configuration: Value requested for CONFIG_SND_PCSP not in final ".config" Requested value: "CONFIG_SND_PCSP=y" Actual value set: "" or WARNING: [kernel config]: BSP specified non-hw configuration: CONFIG_BLOCK CONFIG_CFG80211_WEXT CONFIG_CORDIC CONFIG_CRC8 CONFIG_EFIVAR_FS CONFIG_EFI_PARTITION CONFIG_NET CONFIG_NETDEVICES CONFIG_PARTITION_ADVANCED CONFIG_WEXT_CORE CONFIG_WEXT_PROC CONFIG_WIRELESS At this point thse are only a warnings, since there needs to be time for layers and configuration fragments to be validated against this new check. [YOCTO: #6943] Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
2014-12-22linux-yocto: Fixup linux-yocto for aarch64Mark Hatle
linux-yocto is updated to pass the sysroot path to the compiler when necessary. linux-yocto_ver.bb are updated to reference the correct linux-yocto branchs and SRCREVs. Signed-off-by: Mark Hatle <mark.hatle@windriver.com> Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-12-21linux-yocto: depend on libgcc for aarch64Kai Kang
Make aarch aarch64 kernel depend on libgcc. In arch/arm64/Makefile, it adds LIBGCC to libs-y: LIBGCC := $(shell $(CC) $(KBUILD_CFLAGS) -print-libgcc-file-name) libs-y += $(LIBGCC) In file Makefile in top directory, libs-y is assigned to to var KBUILD_VMLINUX_MAIN. It uses script link-vmlinux.sh to link vmlinux.o, and when execute function vmlinux_link() in link-vmlinux.sh, KBUILD_VMLINUX_MAIN is passed to ${LD}. If build without libgcc, the value of LIBGCC is just libgcc.a without parent directory. linux-yocto fails to build: | LD vmlinux.o | aarch64-poky-linux-ld.bfd: cannot find libgcc.a: No such file or directory Add libgcc to aarch64 kernel dependency. Signed-off-by: Kai Kang <kai.kang@windriver.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2014-02-11linux-yocto: Use PACKAGE_ARCH in build dirDarren Hart
The current linux-yocto build dir (B) includes MACHINE. This has been appropriate as kernels are typically built machine-specific. We have recently introduced an intel-common type kernel which can be shared across multiple machines sharing a common base (intel-core2-32, intel-corei7-64). In these cases, the kernel is built for a something more generic than MACHINE, and the current mechanism results in something like this when building for MACHINE=sys940x (using intel-common): tmp/work/core2-32-intel-common-poky-linux/linux-yocto-dev/ \ 3.13++gitAUTOINC+e5d23e7879_889c6bec6b-r0/linux-sys940x-noemgd-standard-build Note the descrepancy between core2-32-intel-common and linux-sys940x-noemgd-standard-build. This becomes counterintuitive at the very least when switching to another machine and attempting to reuse this build. This patch swaps MACHINE for PACKAGE_ARCH (which is typically MACHINE_ARCH for linux-yocto), resulting in the following build path: tmp/work/core2-32-intel-common-poky-linux/linux-yocto-dev/ \ 3.13++gitAUTOINC+e5d23e7879_889c6bec6b-r0/linux-core2-32-intel-common-standard-build The impact to existing MACHINEs is a replace of - with _ if MACHINE contains one or more - charachters. Signed-off-by: Darren Hart <dvhart@linux.intel.com> Cc: Bruce Ashfield <bruce.ashfield@windriver.com> Cc: Richard Purdie <richard.purdie@linuxfoundation.org> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2013-08-27linux-yocto: add bc-native dependency, and move to linux-yocto.incBruce Ashfield
As reported by Martin Jansa <martin.jansa@gmail.com>, the following error happens when building in a minimal environment: | BC kernel/timeconst.h | /bin/sh: bc: command not found | make[3]: *** [kernel/timeconst.h] Error 127 | make[2]: *** [kernel] Error 2 | make[2]: *** Waiting for unfinished jobs.... kernel commit 70730bca [kernel: Replace timeconst.pl with a bc script] added a kernel dependency on bc. To support the build of linux-yocto recipes in these configurations, we add bc-native to the common dependencies. Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com> Signed-off-by: Saul Wold <sgw@linux.intel.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2012-07-04kernel: Add kernel headers to kernel-dev packageDarren Hart
[YOCTO #1614] Add the kernel headers to the kernel-dev package. This packages what was already built and kept in sysroots for building modules with bitbake. Making this available on the target requires removing some additional host binaries. Move the location to /usr/src/kernel Before use on the target, the user will need to: # cd /usr/src/kernel # make scripts This renders the kernel-misc recipe empty, so remove it. As we use /usr/src/kernel in several places (and I missed one in the previous version), add a KERNEL_SRC_DIR variable and use that throughout the class to avoid update errors in the future. Now that we package the kernel headers, drop the kernel_package_preprocess function which removed them from PKGD. All *-sdk image recipes include dev-pkgs, so the kernel-dev package will be installed by default on all such images. Signed-off-by: Darren Hart <dvhart@linux.intel.com> CC: Bruce Ashfield <bruce.ashfield@windriver.com> CC: Tom Zanussi <tom.zanussi@intel.com> CC: Khem Raj <raj.khem@gmail.com>
2012-06-29linux-yocto: Use INC_PR and move kernel require to linux-yocto.incDarren Hart
When making changes to kernel.bbclass, it would be nice not to have to manually change the PR of every linux-yocto*.bb file that requires it. Move the "require kernel" line to linux-yocto.inc and update the linux-yocto recipes to use INC_PR. Signed-off-by: Darren Hart <dvhart@linux.intel.com> CC: Bruce Ashfield <bruce.ashfield@windriver.com> CC: Tom Zanussi <tom.zanussi@intel.com>
2012-05-08linux-yocto: streamline support for multiple upstream repo typesBruce Ashfield
In order to support repositories of various types (with or without meta data, branched, pristine, custom, etc) information about the type of processing that is required was passed to the processing phases via variables. The combination of variables involved in coordinating the processing creates a learning curve and overly complicates recipe extensions. With minor tweaks to the kern-tools, adding flexibility and keying off the existence of the meta branch it is possible to remove all of the variables that were added to support different repository types. Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
2012-02-26More quoting fixesMartin Jansa
* We have various variables which are either not quoted at all or are half quoted. This patch fixes the bad exmaples so everything is consistent. Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-09-15linux-yocto: move common tasks to a common locationBruce Ashfield
During the initial development of the linux-yocto recipes there were several additional tasks that needed to be run in any inheriting recipe. At that time, they didn't seem to fire if they were in the include file versus the recipes themselves. As it turns out, these tasks do work fine if placed in the linux-yocto.inc file, and the rest of the recipes can be simplified as a result. Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
2011-08-23linux-yocto: move more default values into linux-yocto.incBruce Ashfield
During the preparation of some linux-yocto extension documentation it was clear that some variables are being defined in each recipe, when they don't have to be. Moving the defaults into linux-yocto.in and allowing them to be overidden in recipes simpifies the reuse of the base infrastructure. Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
2011-07-22linux-yocto: update LICENSE to GPLv2Bruce Ashfield
As reported by Koen Kooi, the LICENSE for linux-yocto can be tightened up to specifiy the particular version of the GPL. cc: Koen Kooi <koen@dominion.thruhere.net> Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
2011-03-21kernel/bbclass: rework kernel and module classes to allow for building ↵Darren Hart
out-of-tree modules The existing infrastructure uses an external build tree which references the kernel source in the work dir. If run with rm work, building external modules will fail. This patch places a configured source tree in sysroots. Striking a balance between minimal size and minimal maintenance is difficult. A fully configured tree is about 500MB after a clean. This version leans on the side of caution and removes only the obviously unecessary parts of the source tree to conserve space, resulting in about 170MB. The arch directories would be some additional pruning we could do. Given examples from the devel package from distributions, I suspect this size could be reduced to 75MB or so, but at the cost of a much more complex recipe which is likely to require a great deal more maintenance to keep current with kernel releases. Care is also taken to clean the hostprogs in scripts, and the modules are responsible for building them as needed. Although it is unclear to me if this is really necessary, especially considering that modules put these bits back as soon as they compile. If we are not generating an sstate package, I suspect we can ignore these. Please try this with your modules and let me know how it does. I tried to take non linux-yocto kernel recipes into account, but I have only tested with linux-yocto and the hello-mod recipe so far. Signed-off-by: Darren Hart <dvhart@linux.intel.com> Acked-by: Koen Kooi <koen@dominion.thruhere.net> Acked-by: Gary Thomas <gary@mlbassoc.com> Signed-off-by: Richard Purdie <richard.purdie@linuxfoundation.org>
2011-02-09linux: factor dts/dtc/dtb handling into a specific includeBruce Ashfield
Fixes [BUGID #610] The powerpc linux-yocto kernels were not creating dtb images in the deploy directories. This was due to two problems: - the dtb generation rules were not being configured - the boards were not specifying a device tree in their config This change addresses the first point by factoring out the dtb generation routines into a new include that can be used by multiple recipes. Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
2011-02-09linux-yocto: streamline BSP bootstrappingBruce Ashfield
In order to build BSPs that were not already integrated into the upstream linux yocto kernel AND keep the git fetcher happy, some fairly complex anonymous python sections were required. These sections cause problems with variable expansion and SRCREV processing. With the updated git fetcher code, we can streamline the BSP boostrapping process and drop 99% of the anonymous python code. This commit has the following changes to support BSP boot strapping and simplication for existing BSPs. - KMETA is set per-recipe rather than in python code - undefined machines are no longer used, but instead common branch names are set per-recipe - fallback machine SRCREVs are present in the default revisions file - A new variable YOCTO_KERNEL_EXTERNAL_BRANCH should be set in the local.conf for new BSPs instead of being programatically determined in the anonymous python. - No more explicity KMACHINE variable expansion and manipulation, since the tools and build phases no longer require it due to the per-recipe fallbacks. Integrated/merged BSPs are unaffected by the changes and have been regression tested. Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com> foo Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
2011-02-01linux-yocto: export kernel configuration audit to the consoleBruce Ashfield
Fixes [BUGID #692] Previously the information dumped by the kernel configuration audit scripts was only placed in log files. This isn't as useful as it could be, since they are rarely checked. This change takes the output from kconf_check and explicitly displays it to the user. Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
2010-12-23linux-yocto: Add LIC_FILES_CHKSUMSaul Wold
Signed-off-by: Saul Wold <sgw@linux.intel.com>
2010-12-13linux-yocto: fix machine compatibilityBruce Ashfield
During the last phase of the recipe factoring, the board compatibility lists ended up in the wrong place, which meant we had an incomplete list of boards, and the same set of boards for both kernels (stable and devel). To fix this, I've yanked the compatibility to the recipes themselves and updated the emenlow to have a -stable bbappend. Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>
2010-12-10yocto-kernel: factor common routes, update to 2.6.37 and branch renamingBruce Ashfield
In order to extend and create more kernel recipes based on the supported yocto kernel common routines need to be placed in re-usable blocks. To accomplish this meta/recipes-kernel/linux/linux-yocto_git.bb is broken into three parts: - meta/classes/kernel-yocto.bbclass: contains common routines for checking out and configuring a yocto kernel git repository. This should be inherited by recipes that need this functionality. - meta/recipes-kernel/linux/linux-yocto.inc: Contains the machine mappings, compatibility, build directives and common task definitions for a yocto kernel based recipe. This inherits kernel-yocto, and is the typical point of entry for other recipes. - meta/recipes-kernel/linux/linuux-tools.inc: tasks and function definitions for kernel recipes that want to build/export perf It also updates the linux-yocto recipe to default to 2.6.37. As part of the update to 2.6.37 the branch naming and conventions have been modified to show inheritance, and be more generic. For example: master meta yocto/base yocto/standard/arm_versatile_926ejs yocto/standard/base yocto/standard/beagleboard yocto/standard/common_pc/atom-pc yocto/standard/common_pc/base yocto/standard/common_pc_64 yocto/standard/fsl-mpc8315e-rdb yocto/standard/intel_atom_z530 yocto/standard/intel_core_qm57_pch yocto/standard/mti_malta32_be yocto/standard/preempt_rt/base yocto/standard/preempt_rt/common_pc yocto/standard/preempt_rt/common_pc_64 yocto/standard/preempt_rt/intel_atom_z530 yocto/standard/preempt_rt/intel_core_qm57_pch yocto/standard/qemu_ppc32 yocto/standard/routerstationpro In this structure: master: tracks the mainline kernel meta: meta information for the BSPs and kernel features yocto/base: baseline kernel branch yocto/standard/base: 'standard' kernel, contains features and configs for all BSPs yocto/standard/<machine>: represents a BSP with specific features or configurations The tools, tree and libc-headers have all been updated to deal with this new structure. Also in addition to dealing with the new structure, they continue to work with the existing tree and will adapt at runtime to the differences. The linux-yocto-stable_git.bb recipe continues to build the 2.6.34 based tree,and linux-yocto_git.bb builds 2.6.37. As boards are enabled for the new kernel they will move from -stable to the development kernel. As of now, only the emulated targets have moved to 2.6.37-rcX Signed-off-by: Bruce Ashfield <bruce.ashfield@windriver.com>