[OE-core] [PATCH v3] kernel.bbclass: do not deploy fitImage; kernel-fitimage.bbclass does that.

Marek Vasut marex at denx.de
Tue Sep 18 10:35:29 UTC 2018


On 09/18/2018 12:22 PM, Leon Woestenberg wrote:
> Hi Marek,

Hi,

> On Tue, Sep 18, 2018 at 12:12 PM Marek Vasut <marex at denx.de> wrote:
>>
>> On 09/18/2018 12:01 PM, Leon Woestenberg wrote:
>>> Hi Marek,
>> Could you _please_ stop top-posting ?
> 
>  Yes.
> 
>>
>>> one of the issues I saw was that both kernel.bbclass and
>>> kernel-fitImage.bbclass deployed the FIT image into the deploy/images/
>>> subfolder.
>>>
>>> My fix was to make the kernel.bbclass ignore "fitImage" during
>>> deployment. This is also the fix I saw from Xilinx.
>>
>> If I recall correctly, meta-xilinx had their own horribly hacked
>> fitImage bbclass, are you sure it's not interfering here ?
>>
> Yes I am sure it's not.
> 
>>
>>> (Another fix I have pending is that bundled initramfs images (i.e that
>>> go inside the kernel binary) where also seperately packed inside the FIT
>>> image.)
>>
>> Separate initrd is already supported.
> 
> 
> There is no exception for INITRAMFS_IMAGE_BUNDLE in
> kernel-fitimage.bbclass. The initramfs will be packed inside the FIT,
> in addition of also being packed inside the kernel.

So why would you use initramfs_image_bundle with fitImage when you can
pack the initrd into the fitImage instead ?

> My local fix has this:
> 
> diff --git a/meta/classes/kernel-fitimage.bbclass
> b/meta/classes/kernel-fitimage.bbclass
> index a4d7aca..17addab 100644
> --- a/meta/classes/kernel-fitimage.bbclass
> +++ b/meta/classes/kernel-fitimage.bbclass
> @@ -475,7 +475,9 @@ addtask assemble_fitimage before do_install after do_compile
> 
>  do_assemble_fitimage_initramfs() {
>         if echo ${KERNEL_IMAGETYPES} | grep -wq "fitImage" && \
> -               test -n "${INITRAMFS_IMAGE}" ; then
> +               test -n "${INITRAMFS_IMAGE}" && \
> +               test ! -n "${INITRAMFS_IMAGE_BUNDLE}"; then
> +
>                 cd ${B}
>                 fitimage_assemble fit-image-${INITRAMFS_IMAGE}.its
> fitImage-${INITRAMFS_IMAGE} 1
>         fi
> @@ -483,6 +485,18 @@ do_assemble_fitimage_initramfs() {
> 
>  addtask assemble_fitimage_initramfs before do_deploy after do_install
> 
> +do_assemble_fitimage_bundled_initramfs() {
> +       if echo ${KERNEL_IMAGETYPES} | grep -wq "fitImage" && \
> +               test -n "${INITRAMFS_IMAGE}" && \
> +               test -n "${INITRAMFS_IMAGE_BUNDLE}"; then
> +
> +               cd ${B}
> +               fitimage_assemble fit-image-${INITRAMFS_IMAGE}.its
> fitImage-${INITRAMFS_IMAGE}
> +       fi
> +}
> +
> +addtask assemble_fitimage_bundled_initramfs before do_deploy after
> do_bundle_initramfs
> +
> 
> 
> Regards,
> 
> Leon.
> 


-- 
Best regards,
Marek Vasut



More information about the Openembedded-core mailing list