<feed xmlns='http://www.w3.org/2005/Atom'>
<title>linux/poky.git/meta/classes/kernel.bbclass, branch uninative-2.10</title>
<subtitle>Mirror of git.yoctoproject.org/poky</subtitle>
<id>https://git.enea.com/cgit/linux/poky.git/atom?h=uninative-2.10</id>
<link rel='self' href='https://git.enea.com/cgit/linux/poky.git/atom?h=uninative-2.10'/>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/'/>
<updated>2021-01-30T10:41:04+00:00</updated>
<entry>
<title>kernel.bbclass: fix deployment for initramfs images</title>
<updated>2021-01-30T10:41:04+00:00</updated>
<author>
<name>Awais Belal</name>
<email>Awais_Belal@mentor.com</email>
</author>
<published>2021-01-29T12:42:39+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=44ecc935b2ba919ed5bf026c02cdb814e207d996'/>
<id>urn:sha1:44ecc935b2ba919ed5bf026c02cdb814e207d996</id>
<content type='text'>
The do_bundle_initramfs() only processes kernel image
types that are found in KERNEL_IMAGETYPE_FOR_MAKE whereas
the build system can generate other types that are not
directly supported by the kernel build system. In which
case when we come to the deploy phase not all the images
mentioned in KERNEL_IMAGETYPES would have a respective
initramfs bundled image. An example is using vmlinux.gz
in KERNEL_IMAGETYPES and enabling initramfs and then we
see

install: cannot stat 'arch/arm64/boot/vmlinux.gz.initramfs': No such file or directory

So we align the deploy phase with bundle initramfs phase
and pick up relevant initramfs bundled images using
KERNEL_IMAGETYPE_FOR_MAKE instead of KERNEL_IMAGETYPES.

(From OE-Core rev: 526bdd88ccd758204452579333ba188e29270bde)

Signed-off-by: Awais Belal &lt;awais_belal@mentor.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>kernel: skip installing fitImage when using Initramfs bundles</title>
<updated>2021-01-20T00:45:05+00:00</updated>
<author>
<name>Abdellatif El Khlifi</name>
<email>abdellatif.elkhlifi@arm.com</email>
</author>
<published>2021-01-19T10:53:02+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=af6ac324379d8e2c85940b401d488d4d4d0cde94'/>
<id>urn:sha1:af6ac324379d8e2c85940b401d488d4d4d0cde94</id>
<content type='text'>
When including an initramfs bundle inside a FIT image, the fitImage is created
after the install task by do_assemble_fitimage_initramfs.

This happens after the generation of the initramfs bundle
(done by do_bundle_initramfs).

So, at the level of the install task we should not try to install the fitImage.
The fitImage is still not generated yet.

After the generation of the fitImage, the deploy task copies the fitImage from
the build directory to the deploy folder.

Change-Id: I3eaa6bba1412f388f710fa0f389f66631c1c4826
(From OE-Core rev: 1b67fd9ac74935fa41e960478c54e45422339138)

Signed-off-by: Abdellatif El Khlifi &lt;abdellatif.elkhlifi@arm.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>kernel: set COMPATIBLE_HOST to *-linux</title>
<updated>2020-12-24T08:25:14+00:00</updated>
<author>
<name>Ross Burton</name>
<email>ross@burtonini.com</email>
</author>
<published>2020-12-11T16:09:22+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=2d99b0993aa7a703c4fd6a3b7c0ddbaa28608aac'/>
<id>urn:sha1:2d99b0993aa7a703c4fd6a3b7c0ddbaa28608aac</id>
<content type='text'>
The target system triple contains whether the target is Linux or not,
so use it to avoid situations where you can attempt to build a kernel
for systems which don't support Linux.

(From OE-Core rev: b1eeeab21a81990321468ddbdd1745ea24d1828d)

Signed-off-by: Ross Burton &lt;ross.burton@arm.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>kernel: relocate copy of module.lds to module compilation task</title>
<updated>2020-11-18T13:59:27+00:00</updated>
<author>
<name>Bruce Ashfield</name>
<email>bruce.ashfield@gmail.com</email>
</author>
<published>2020-11-18T04:56:33+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=d8f47a68a92802fc47f297de05a0f2817963a7ee'/>
<id>urn:sha1:d8f47a68a92802fc47f297de05a0f2817963a7ee</id>
<content type='text'>
There were two copies of this patch floating around, and the merged
variant has the copy in the wrong place.

module.lds is only created during modules_prepare, and that target is
not invoked during our main build of the kernel. We aren't about to
change the kernel build (there's no need), so we move the copy into
the compile_kernelmodules task. After that runs, we have module.lds
availble to copy.

This has been tested against clean kernel + out of tree module
builds, and the dependencies are correct that the file is copied
before the out of tree module build starts.

(From OE-Core rev: 7d94f9209ebaaf59ea001239a889dd7f928a0e7c)

Signed-off-by: Bruce Ashfield &lt;bruce.ashfield@gmail.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>kernel: Set proper LD in KERNEL_KCONFIG_COMMAND</title>
<updated>2020-11-17T21:53:13+00:00</updated>
<author>
<name>Wonmin Jung</name>
<email>wonmin82@gmail.com</email>
</author>
<published>2020-11-16T11:16:27+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=60a0a2fb1e4a7a42d504ba08b47837f562844076'/>
<id>urn:sha1:60a0a2fb1e4a7a42d504ba08b47837f562844076</id>
<content type='text'>
With 'ld-is-gold' and linux kernel 5.4 or later, menuconfig
task for kernel recipes will fail with:

$ bitbake -c menuconfig virtual/kernel
...
scripts/kconfig/mconf  Kconfig
scripts/Kconfig.include:43:  gold linker 'x86_64-poky-linux-ld' not supported
/OE/build/tmp/work-shared/qemux86-64/kernel-source/scripts/kconfig/Makefile:29:
 recipe for target 'menuconfig' failed
make[2]: *** [menuconfig] Error 1
/OE/build/tmp/work-shared/qemux86-64/kernel-source/Makefile:606:
 recipe for target 'menuconfig' failed
make[1]: *** [menuconfig] Error 2
/OE/build/tmp/work-shared/qemux86-64/kernel-source/Makefile:185:
 recipe for target '__sub-make' failed
make: *** [__sub-make] Error 2
Command failed.

This is because that the KERNEL_LD variable already set in
kernel-arch.bbclass isn't used by do_menuconfig function of
cml1.bbclass.

To fix this issue specify LD variable while calling the kernel
menuconfig command through KERNEL_KCONFIG_COMMAND.

(From OE-Core rev: 1faf66ce0b1f8f5165277161e07e25e672370c3f)

Signed-off-by: Wonmin Jung &lt;wonmin82@gmail.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>kernel: provide module.lds for out of tree builds in v5.10+</title>
<updated>2020-11-16T14:27:46+00:00</updated>
<author>
<name>Bruce Ashfield</name>
<email>bruce.ashfield@gmail.com</email>
</author>
<published>2020-11-13T06:32:06+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=92eceb5f1daf30c7320259ed2e494cc2a69acfb4'/>
<id>urn:sha1:92eceb5f1daf30c7320259ed2e494cc2a69acfb4</id>
<content type='text'>
The upstream commit 596b0474d3d [kbuild: preprocess module linker
script], adds a dependency on module.lds for external module
building.

Since module.lds is generated as part of 'modules_prepare', we
must make it available with the other kernel artifacts in the
kernel shared workdir, otherwise out of tree builds fail.

This fixes errors like:

    | make[4]: *** No rule to make target 'scripts/module.lds', needed by
        'build/tmp/work/qemuarm64-poky-linux/cryptodev-module/1.11-r0/git/cryptodev.ko'.
        Stop.
    | make[4]: *** Waiting for unfinished jobs....

We also ensure that kernel-devsrc has a copy to support on
target module builds that are often prepared with 'make scripts
prepare'. Those targets won't regenerate it, so the build fails.
If 'make modules_prepare' is used, the file will be regenerated
and overwrite our copy (as expected).

(From OE-Core rev: 0fc66a0b64953aae38d0124b57615fffaec8de52)

Signed-off-by: Pan, Kris &lt;kris.pan@intel.com&gt;
Signed-off-by: Lili Li &lt;lili.li@intel.com&gt;
Signed-off-by: Bruce Ashfield &lt;bruce.ashfield@gmail.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>kernel.bbclass: ensure symlink_kernsrc task gets run even with externalsrc</title>
<updated>2020-09-28T13:15:48+00:00</updated>
<author>
<name>Rasmus Villemoes</name>
<email>rasmus.villemoes@prevas.dk</email>
</author>
<published>2020-09-25T14:05:44+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=cbf566ec43b8a6cbe4db327cd90ce88be402f5e0'/>
<id>urn:sha1:cbf566ec43b8a6cbe4db327cd90ce88be402f5e0</id>
<content type='text'>
Commit c5dfc2586b41 (kernel.bbclass: run do_symlink_kernsrc before
do_patch) fixed a race between do_symlink_kernsrc and
do_populate_lic. However, I missed the fact that when
externalsrc.bbclass is in use, the do_patch task doesn't exist,
meaning that do_symlink_kernsrc now doesn't get run at all, breaking
the build.

We need this task to run regardless of whether do_patch exists or not,
so reinstate the configure-&gt;symlink_kernsrc dependency explicitly.

Fixes: c5dfc2586b41 (kernel.bbclass: run do_symlink_kernsrc before
do_patch)
Reported-by: Chanho Park &lt;parkch98@gmail.com&gt;

(From OE-Core rev: a2b50b74d609ce079ab36b82d4c7c3539fb56485)

Signed-off-by: Rasmus Villemoes &lt;rasmus.villemoes@prevas.dk&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>kernel.bbclass: use camelCase notation for bash variables in do_deploy</title>
<updated>2020-09-17T08:47:45+00:00</updated>
<author>
<name>Martin Jansa</name>
<email>Martin.Jansa@gmail.com</email>
</author>
<published>2020-09-16T12:54:48+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=a00ca02fbd20af5dcbc9ba6aff65645780195ebf'/>
<id>urn:sha1:a00ca02fbd20af5dcbc9ba6aff65645780195ebf</id>
<content type='text'>
* to match other variables there like deployDir imageType

[YOCTO #12937]

(From OE-Core rev: 13c5d1b686255d385d200cbd06b7000080809fc7)

Signed-off-by: Martin Jansa &lt;Martin.Jansa@gmail.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>kernel.bbclass: eliminate (initramfs_)symlink_name variables</title>
<updated>2020-09-17T08:47:45+00:00</updated>
<author>
<name>Martin Jansa</name>
<email>Martin.Jansa@gmail.com</email>
</author>
<published>2020-09-16T12:54:47+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=d1f5f2391e868df98c05fd1ee965687c01428435'/>
<id>urn:sha1:d1f5f2391e868df98c05fd1ee965687c01428435</id>
<content type='text'>
* they are used only once, we can use the value directly
* notice that .bin extension isn't part of the variable values

[YOCTO #12937]

(From OE-Core rev: 22874b43de45e86418f683eb9d4394d7a8a08033)

Signed-off-by: Martin Jansa &lt;Martin.Jansa@gmail.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
<entry>
<title>kernel.bbclass: use bash variables like imageType, base_name without {}</title>
<updated>2020-09-17T08:47:45+00:00</updated>
<author>
<name>Martin Jansa</name>
<email>Martin.Jansa@gmail.com</email>
</author>
<published>2020-09-16T12:54:46+00:00</published>
<link rel='alternate' type='text/html' href='https://git.enea.com/cgit/linux/poky.git/commit/?id=89c123119ba1b49e2507c547409eaca3d5e353ce'/>
<id>urn:sha1:89c123119ba1b49e2507c547409eaca3d5e353ce</id>
<content type='text'>
* just to make sure it looks like bash variable not bitbake variable in
  run.do_* scripts

[YOCTO #12937]

(From OE-Core rev: 9a16dc2ac3d5e8ea95a575c377d3ad1602c1db12)

Signed-off-by: Martin Jansa &lt;Martin.Jansa@gmail.com&gt;
Signed-off-by: Richard Purdie &lt;richard.purdie@linuxfoundation.org&gt;
</content>
</entry>
</feed>
