Re: [PATCH 0/3] arm64: add support for loading kernel from FITimage

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Hello Arnaud,

Thanks for the patch.

On Thu, Jul 5, 2018 at 6:25 PM, Arnaud Ferraris
<arnaud.ferraris.external@xxxxxxxxxx> wrote:
> Hi all,
>
> FITimages are an image format used by U-boot, allowing to embed a kernel with
> the associated device tree and initramfs into a single file, using the device
> tree file format.
> Unfortunately, for now kexec doesn't recognize the FITimage format.

Hmm, I think I mentioned this earlier, but why do we need kexec to
support the FIT image format? See the FIT image (or the .itb file)
will be parsed by the u-boot bootloader and the respective components
will be loaded by it at the appropriate load addresses (for the kernel
Image it would be the load address mentioned in the 'loadaddr' u-boot
environment variable and for the dtb it would be as per the arm64
architecture dtb offset placement constraints). Something like (which
I copied from logs on my arm32 board):

<..snip..>
kernel loaded at 0x80008000, end = 0x802bddd0
Loading Device Tree to 8fe44000, end 8fe49947 ... OK

Starting kernel ...

<..snip..>

So, the images are already placed at appropriate addresses by u-boot
and we simply do the following at the u-boot prompt:

<u-boot> bootm ${loadaddr}

So, I am trying to understand the use-case behind FIT image support in
kexec. Do we need kexec-tools to be aware of the FIT format when the
kernel itself it loaded in an uncompressed format (e.g. Image or
vmlinux).

If you can share your .its file and explain the use case better (may
be with the u-boot logs) it would help in the review.

I have other comments on the individual patches, but I will hold them
till the problem we are trying to solve here is clearer to me.

Thanks,
Bhupesh


> This patchset adds a generic FITimage loader & parser, and implements loading
> a kernel/dtb/initrd for the ARM64 architecture.
>
> Arnaud Ferraris (3):
>   kexec: Move zlib buffer decompression function
>   kexec: fitImage: Add fitImage parser and loader
>   kexec: arm64: Add fitImage support
>
>  include/Makefile                        |   1 +
>  include/kexec-fitImage.h                |  18 +++
>  kexec/Makefile                          |   4 +
>  kexec/arch/arm64/Makefile               |   2 +
>  kexec/arch/arm64/kexec-arm64.c          |  15 ++-
>  kexec/arch/arm64/kexec-arm64.h          |   4 +
>  kexec/arch/arm64/kexec-fitImage-arm64.c |  40 ++++++
>  kexec/kexec-fitImage.c                  | 223 ++++++++++++++++++++++++++++++++
>  kexec/kexec-uImage.c                    | 100 +-------------
>  kexec/kexec-zlib.h                      |   1 +
>  kexec/kexec.h                           |   4 +
>  kexec/zlib.c                            | 100 ++++++++++++++
>  12 files changed, 413 insertions(+), 99 deletions(-)
>  create mode 100644 include/kexec-fitImage.h
>  create mode 100644 kexec/arch/arm64/kexec-fitImage-arm64.c
>  create mode 100644 kexec/kexec-fitImage.c
>
> --
> 2.7.4
>
>
> _______________________________________________
> kexec mailing list
> kexec@xxxxxxxxxxxxxxxxxxx
> http://lists.infradead.org/mailman/listinfo/kexec

_______________________________________________
kexec mailing list
kexec@xxxxxxxxxxxxxxxxxxx
http://lists.infradead.org/mailman/listinfo/kexec



[Index of Archives]     [LM Sensors]     [Linux Sound]     [ALSA Users]     [ALSA Devel]     [Linux Audio Users]     [Linux Media]     [Kernel]     [Gimp]     [Yosemite News]     [Linux Media]

  Powered by Linux