All of lore.kernel.org
 help / color / mirror / Atom feed
* [U-Boot] multi-image uImage with fitImage
@ 2015-03-23  6:40 fat loser
  2015-03-23 23:10 ` [U-Boot] Fwd: " fat loser
  2015-03-23 23:14 ` [U-Boot] " Simon Glass
  0 siblings, 2 replies; 6+ messages in thread
From: fat loser @ 2015-03-23  6:40 UTC (permalink / raw)
  To: u-boot

Hi all,

I am currently attempting to port my combined uImage and ramdisk image +
dtb over to the fitImage format. I am creating a linux kernel + ramdisk
with buildroot and dt blob with buildroot. The .its I am using to create a
fitImage is below:

/dts-v1/;
/ {
        description = "Linux kernel";
        #address-cells = <1>;
        images {
                kernel at 1 {
                        description = "Linux kernel";
                        data = /incbin/("/tftpboot/uImage");
                        arch = "arm";
                        os = "linux";
                        type = "multi";
                        compression = "none";
                        load = <0x89008000>;
                        entry = <0x89008000>;
                };
                fdt at 1 {
                        description = "Flattened Device Tree blob";
                        data = /incbin/("/tftpboot/arm.dtb");
                        type = "flat_dt";
                        arch = "arm";
                        compression = "none";
                };
        };
        configurations {
                default = "conf at 1";
                conf at 1 {
                        description = "Boot Linux kernel";
                        kernel = "kernel at 1";
                        fdt = "fdt at 1";
                };
        };
};

After tftp'ing the .itb over to address 0x89000000 and running bootm, I get:

# bootm
## Loading kernel from FIT Image at 89000000 ...
   Using 'conf at 1' configuration
   Trying 'kernel at 1' kernel subimage
     Description:  Linux kernel
     Type:         Multi-File Image
     Compression:  uncompressed
     Data Start:   0x890000d0
     Data Size:    28604352 Bytes = 27.3 MiB
   Verifying Hash Integrity ... OK
No Linux ARM Kernel Image Image
ERROR: can't get kernel image!

The images work perfectly before I try to combine them into a fitImage.

Is there a special configuration option for multi-file (combined
ramdisk-kernel) images in fitImage?

Regards,

George.

^ permalink raw reply	[flat|nested] 6+ messages in thread

* [U-Boot] Fwd: multi-image uImage with fitImage
  2015-03-23  6:40 [U-Boot] multi-image uImage with fitImage fat loser
@ 2015-03-23 23:10 ` fat loser
  2015-03-23 23:14 ` [U-Boot] " Simon Glass
  1 sibling, 0 replies; 6+ messages in thread
From: fat loser @ 2015-03-23 23:10 UTC (permalink / raw)
  To: u-boot

Hi Simon,

I am currently attempting to port my combined uImage and ramdisk image +
dtb over to the fitImage format. I am creating a linux kernel + ramdisk
with buildroot and dt blob with buildroot. The .its I am using to create a
fitImage is below:

/dts-v1/;
/ {
        description = "Linux kernel";
        #address-cells = <1>;
        images {
                kernel at 1 {
                        description = "Linux kernel";
                        data = /incbin/("/tftpboot/uImage");
                        arch = "arm";
                        os = "linux";
                        type = "multi";
                        compression = "none";
                        load = <0x89008000>;
                        entry = <0x89008000>;
                };
                fdt at 1 {
                        description = "Flattened Device Tree blob";
                        data = /incbin/("/tftpboot/arm.dtb");
                        type = "flat_dt";
                        arch = "arm";
                        compression = "none";
                };
        };
        configurations {
                default = "conf at 1";
                conf at 1 {
                        description = "Boot Linux kernel";
                        kernel = "kernel at 1";
                        fdt = "fdt at 1";
                };
        };
};

After tftp'ing the .itb over to address 0x89000000 and running bootm, I get:

# bootm
## Loading kernel from FIT Image at 89000000 ...
   Using 'conf at 1' configuration
   Trying 'kernel at 1' kernel subimage
     Description:  Linux kernel
     Type:         Multi-File Image
     Compression:  uncompressed
     Data Start:   0x890000d0
     Data Size:    28604352 Bytes = 27.3 MiB
   Verifying Hash Integrity ... OK
No Linux ARM Kernel Image Image
ERROR: can't get kernel image!

The images work perfectly before I try to combine them into a fitImage.

Is there a special configuration option for multi-file (combined
ramdisk-kernel) images in fitImage?

Regards,

George.

^ permalink raw reply	[flat|nested] 6+ messages in thread

* [U-Boot] multi-image uImage with fitImage
  2015-03-23  6:40 [U-Boot] multi-image uImage with fitImage fat loser
  2015-03-23 23:10 ` [U-Boot] Fwd: " fat loser
@ 2015-03-23 23:14 ` Simon Glass
  2015-03-23 23:42   ` Andre Wolokita
  1 sibling, 1 reply; 6+ messages in thread
From: Simon Glass @ 2015-03-23 23:14 UTC (permalink / raw)
  To: u-boot

Hi,

On 23 March 2015 at 00:40, fat loser <george.cluniac@gmail.com> wrote:
> Hi all,
>
> I am currently attempting to port my combined uImage and ramdisk image +
> dtb over to the fitImage format. I am creating a linux kernel + ramdisk
> with buildroot and dt blob with buildroot. The .its I am using to create a
> fitImage is below:
>
> /dts-v1/;
> / {
>         description = "Linux kernel";
>         #address-cells = <1>;
>         images {
>                 kernel at 1 {
>                         description = "Linux kernel";
>                         data = /incbin/("/tftpboot/uImage");
>                         arch = "arm";
>                         os = "linux";
>                         type = "multi";

What is multi? Do you want kernel or kernel_noload?

>                         compression = "none";
>                         load = <0x89008000>;
>                         entry = <0x89008000>;
>                 };
>                 fdt at 1 {
>                         description = "Flattened Device Tree blob";
>                         data = /incbin/("/tftpboot/arm.dtb");
>                         type = "flat_dt";
>                         arch = "arm";
>                         compression = "none";
>                 };
>         };
>         configurations {
>                 default = "conf at 1";
>                 conf at 1 {
>                         description = "Boot Linux kernel";
>                         kernel = "kernel at 1";
>                         fdt = "fdt at 1";
>                 };
>         };
> };
>
> After tftp'ing the .itb over to address 0x89000000 and running bootm, I get:
>
> # bootm
> ## Loading kernel from FIT Image at 89000000 ...
>    Using 'conf at 1' configuration
>    Trying 'kernel at 1' kernel subimage
>      Description:  Linux kernel
>      Type:         Multi-File Image
>      Compression:  uncompressed
>      Data Start:   0x890000d0
>      Data Size:    28604352 Bytes = 27.3 MiB
>    Verifying Hash Integrity ... OK
> No Linux ARM Kernel Image Image
> ERROR: can't get kernel image!
>
> The images work perfectly before I try to combine them into a fitImage.
>
> Is there a special configuration option for multi-file (combined
> ramdisk-kernel) images in fitImage?
>
> Regards,
>
> George.
> _______________________________________________
> U-Boot mailing list
> U-Boot at lists.denx.de
> http://lists.denx.de/mailman/listinfo/u-boot

Regards,
Simon

^ permalink raw reply	[flat|nested] 6+ messages in thread

* [U-Boot] multi-image uImage with fitImage
  2015-03-23 23:14 ` [U-Boot] " Simon Glass
@ 2015-03-23 23:42   ` Andre Wolokita
  2015-03-23 23:49     ` Simon Glass
  0 siblings, 1 reply; 6+ messages in thread
From: Andre Wolokita @ 2015-03-23 23:42 UTC (permalink / raw)
  To: u-boot

Hi Simon,

On 24/03/15 10:14, Simon Glass wrote:
> Hi,
>
> On 23 March 2015 at 00:40, fat loser <george.cluniac@gmail.com> wrote:
>> Hi all,
>>
>> I am currently attempting to port my combined uImage and ramdisk image +
>> dtb over to the fitImage format. I am creating a linux kernel + ramdisk
>> with buildroot and dt blob with buildroot. The .its I am using to create a
>> fitImage is below:
>>
>> /dts-v1/;
>> / {
>>         description = "Linux kernel";
>>         #address-cells = <1>;
>>         images {
>>                 kernel at 1 {
>>                         description = "Linux kernel";
>>                         data = /incbin/("/tftpboot/uImage");
>>                         arch = "arm";
>>                         os = "linux";
>>                         type = "multi";
> What is multi? Do you want kernel or kernel_noload?
I read somewhere that multi can represent a kernel+ramdisk uImage (image with ramdisk linked in.) If try to use "kernel" here, I get an error like: ERROR: new format image overwritten - must RESET the board to recover
resetting ...
>
>>                         compression = "none";
>>                         load = <0x89008000>;
>>                         entry = <0x89008000>;
>>                 };
>>                 fdt at 1 {
>>                         description = "Flattened Device Tree blob";
>>                         data = /incbin/("/tftpboot/arm.dtb");
>>                         type = "flat_dt";
>>                         arch = "arm";
>>                         compression = "none";
>>                 };
>>         };
>>         configurations {
>>                 default = "conf at 1";
>>                 conf at 1 {
>>                         description = "Boot Linux kernel";
>>                         kernel = "kernel at 1";
>>                         fdt = "fdt at 1";
>>                 };
>>         };
>> };
>>
>> After tftp'ing the .itb over to address 0x89000000 and running bootm, I get:
>>
>> # bootm
>> ## Loading kernel from FIT Image at 89000000 ...
>>    Using 'conf at 1' configuration
>>    Trying 'kernel at 1' kernel subimage
>>      Description:  Linux kernel
>>      Type:         Multi-File Image
>>      Compression:  uncompressed
>>      Data Start:   0x890000d0
>>      Data Size:    28604352 Bytes = 27.3 MiB
>>    Verifying Hash Integrity ... OK
>> No Linux ARM Kernel Image Image
>> ERROR: can't get kernel image!
>>
>> The images work perfectly before I try to combine them into a fitImage.
>>
>> Is there a special configuration option for multi-file (combined
>> ramdisk-kernel) images in fitImage?
>>
>> Regards,
>>
>> George.
>> _______________________________________________
>> U-Boot mailing list
>> U-Boot at lists.denx.de
>> http://lists.denx.de/mailman/listinfo/u-boot
> Regards,
> Simon
> _______________________________________________
> U-Boot mailing list
> U-Boot at lists.denx.de
> http://lists.denx.de/mailman/listinfo/u-boot
>

-- 
Andre Wolokita (andre.wolokita at analog.com)
Design Engineer, Analog Devices Australia Pty Ltd
Unit 3, 97 Lewis Road, Wantirna, Victoria, 3152, AUSTRALIA
Direct: +61 3 9881 9933   Main: +61 3 9881 9999
Fax: +61 3 9881 9988      Web: www.analog.com/au

Embedded DSP software for multimedia & telecommunications.

This communication is proprietary and confidential. 

^ permalink raw reply	[flat|nested] 6+ messages in thread

* [U-Boot] multi-image uImage with fitImage
  2015-03-23 23:42   ` Andre Wolokita
@ 2015-03-23 23:49     ` Simon Glass
       [not found]       ` <5510FFE2.2010709@analog.com>
  0 siblings, 1 reply; 6+ messages in thread
From: Simon Glass @ 2015-03-23 23:49 UTC (permalink / raw)
  To: u-boot

Hi,

On 23 March 2015 at 17:42, Andre Wolokita <andre.wolokita@analog.com> wrote:
> Hi Simon,
>
> On 24/03/15 10:14, Simon Glass wrote:
>> Hi,
>>
>> On 23 March 2015 at 00:40, fat loser <george.cluniac@gmail.com> wrote:
>>> Hi all,
>>>
>>> I am currently attempting to port my combined uImage and ramdisk image +
>>> dtb over to the fitImage format. I am creating a linux kernel + ramdisk
>>> with buildroot and dt blob with buildroot. The .its I am using to create a
>>> fitImage is below:
>>>
>>> /dts-v1/;
>>> / {
>>>         description = "Linux kernel";
>>>         #address-cells = <1>;
>>>         images {
>>>                 kernel at 1 {
>>>                         description = "Linux kernel";
>>>                         data = /incbin/("/tftpboot/uImage");
>>>                         arch = "arm";
>>>                         os = "linux";
>>>                         type = "multi";
>> What is multi? Do you want kernel or kernel_noload?
> I read somewhere that multi can represent a kernel+ramdisk uImage (image with ramdisk linked in.) If try to use "kernel" here, I get an error like: ERROR: new format image overwritten - must RESET the board to recover
> resetting ...

Sure, but that's getting further than before, when it was saying it
could not find the kernel. You may need to load the kernel to a
different place, so that it can be decompressed without overwriting.
Also what is uImage? It should be a simple uncompressed kernel image.
If it is a zImage you should likely use kernel_noload.

>>
>>>                         compression = "none";
>>>                         load = <0x89008000>;
>>>                         entry = <0x89008000>;
>>>                 };
>>>                 fdt at 1 {
>>>                         description = "Flattened Device Tree blob";
>>>                         data = /incbin/("/tftpboot/arm.dtb");
>>>                         type = "flat_dt";
>>>                         arch = "arm";
>>>                         compression = "none";
>>>                 };
>>>         };
>>>         configurations {
>>>                 default = "conf at 1";
>>>                 conf at 1 {
>>>                         description = "Boot Linux kernel";
>>>                         kernel = "kernel at 1";
>>>                         fdt = "fdt at 1";
>>>                 };
>>>         };
>>> };
>>>
>>> After tftp'ing the .itb over to address 0x89000000 and running bootm, I get:
>>>
>>> # bootm
>>> ## Loading kernel from FIT Image at 89000000 ...
>>>    Using 'conf at 1' configuration
>>>    Trying 'kernel at 1' kernel subimage
>>>      Description:  Linux kernel
>>>      Type:         Multi-File Image
>>>      Compression:  uncompressed
>>>      Data Start:   0x890000d0
>>>      Data Size:    28604352 Bytes = 27.3 MiB
>>>    Verifying Hash Integrity ... OK
>>> No Linux ARM Kernel Image Image
>>> ERROR: can't get kernel image!
>>>
>>> The images work perfectly before I try to combine them into a fitImage.
>>>
>>> Is there a special configuration option for multi-file (combined
>>> ramdisk-kernel) images in fitImage?
>>>
>>> Regards,
>>>
>>> George.

Regards,
Simon

^ permalink raw reply	[flat|nested] 6+ messages in thread

* [U-Boot] multi-image uImage with fitImage
       [not found]                 ` <551A258C.7070801@analog.com>
@ 2015-04-03 23:29                   ` Simon Glass
  0 siblings, 0 replies; 6+ messages in thread
From: Simon Glass @ 2015-04-03 23:29 UTC (permalink / raw)
  To: u-boot

+U-Boot again

Hi Andre,

On 30 March 2015 at 22:41, Andre Wolokita <andre.wolokita@analog.com> wrote:
>
>
> On 31/03/15 13:42, Stephen Warren wrote:
>> On 03/30/2015 05:42 PM, Andre Wolokita wrote:
>> ...
>>> I am able to boot a uImage produced by buildroot successfully, although I still haven't tried a zImage. One point of clarification: the uImage (and presumably zImage) produced by buildroot has the initrd linked in to the image. Could you think of any reason that this would affect a fitImage from loading?
>> Presumably this combined kernel+initrd is very large, so the amount of
>> space taken by the decompressed kernel (roughly located at the start of
>> RAM) is much larger than typical. Perhaps the decompression is
>> over-writing the DTB or something like that? Is the entire kernel_initrd
>> located within the first 256MB of RAM, if you're uses AUTO_ZRELADDR in
>> the kernel config?
> Well, I figured it out. It turns out that using objcopy to create a binary of vmlinux and using the vmlinux.bin as the "kernel" as well as creating a cpio of the rootfs for the "ramdisk" allows Linux to boot perfectly.
>
> Thanks for your help, Simon and Stephen. :)
>

OK good! I wonder if the Linux build process still creates a file
called 'Image' which does the objcopy for you?

Regards,
Simon

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2015-04-03 23:29 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-03-23  6:40 [U-Boot] multi-image uImage with fitImage fat loser
2015-03-23 23:10 ` [U-Boot] Fwd: " fat loser
2015-03-23 23:14 ` [U-Boot] " Simon Glass
2015-03-23 23:42   ` Andre Wolokita
2015-03-23 23:49     ` Simon Glass
     [not found]       ` <5510FFE2.2010709@analog.com>
     [not found]         ` <CAPnjgZ2QFXvxvzA_+AWx6B7N4Fyu16V8HDzG0L9Cz7t5iT==DA@mail.gmail.com>
     [not found]           ` <55176F12.4070002@wwwdotorg.org>
     [not found]             ` <5519DF82.2020205@analog.com>
     [not found]               ` <551A097C.7010904@wwwdotorg.org>
     [not found]                 ` <551A258C.7070801@analog.com>
2015-04-03 23:29                   ` Simon Glass

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.