From: Peter Tyser <ptyser@xes-inc.com>
To: Wolfgang Denk <wd@denx.de>
Cc: Grant Likely <grant.likely@secretlab.ca>,
u-boot <u-boot@lists.denx.de>,
linux-kbuild@vger.kernel.org, linuxppc-dev@ozlabs.org
Subject: Re: [U-Boot] [PATCH v2 3/3] powerpc: Add support for ram filesystems in FIT uImages
Date: Sun, 03 Jan 2010 19:07:09 -0600 [thread overview]
Message-ID: <4B413F3D.2000601@xes-inc.com> (raw)
In-Reply-To: <20100103101048.AF4B7E34A26@gemini.denx.de>
<snip>
> Note that the FIT image can also be made to contain a number of DT
> blobs, and selection of a "board profile" then can be used to boot the
> very sane FIT image file on any of the supported boards - so FIT
> images inherently support multibooting.
I agree with Wolfgang. Additionally, if a FIT image does contain a .dtb
file, firmware can ignore it and load a different .dtb file. So for the
fitImage.<boardname> target you could think of it as including a
"default/fallback" .dtb file, not a mandatory one. So the FIT image
could still be used as a multiplatform image even if it contained dtbs.
>>> I see your point. The main goal of the patch was to introduce FIT image
>>> support as its the new, more flexible, "better", standard image format
>>> for U-Boot going forward. Also, lots people aren't aware of FIT images
>>> and the cool stuff they can do with them, so what better way to get the
>>> word out than getting support for FIT images included in the kernel
>>> proper:)
>>
>> Define 'better'. :-)
>
> FIT images are better than the old uImage format because they:
>
> - allow for strong checksum algorithms like MD5, SHA1, ... (the plain
> CRC32 method is not good enough if you for example want to run
> software in a slot machine in Las Vegas).
>
> - can combine multiple kernel images, device tree blobs and root file
> system images in arbitrary combinations; this allows for example
> for multibooting the same image on different boards by selecting
> the right DTB, for software updates with automatic fall-back, etc.
>
> - can be extended to add new features, images types or whatever in a
> standard way, using a standard technology (device tree support)
> which is already present anyway, i. e. without additional code
> overhead.
Other advantages of FIT images that I see day-to-day include:
- Adding meta-data such as timestamps and version information for each
component of the FIT image. Its great to be able to easily display the
contents of a FIT image to determine which kernel versions it contains, etc.
- Embed multiple OS/dtb images in one FIT image. As a board vendor its
nice to give a customer 1 image that has example dtb(s) and Linux,
VxWorks, QNX, diagnostic, etc kernels. They can boot a number of OSes
on a number of different boards with 1 image.
- You can extract the images contained in a FIT image using 'dtc' to
convert the FIT image to a ".dts" file that has the raw image contents.
Other image formats are more difficult to extract contents from.
<snip>
>> I'd be okay (perhaps not happy, but okay) with merging fitImage and
>> fitImage.initrd targets (no dtb). I will resist merging fitImage.%
>> and fitImage.initrd.% targets because I see that very much as a
>> project specific deployment target and I'm not convinced yet that it
>> the pattern is right or that it is even needed in the kernel at all.
>
> Is this just your personal opinion, or do you think that this is
> really what a majority of kernel developers and users are wanting?
>
> Speaking for myself, I have to admit that I don't understand and don't
> share this attitude.
I agree with Wolfgang that many people would find the combined
kernel/dtb/ramfs useful, but understand Grant's reservations. Assuming
I rework the patch to include a "fitImage" (no dtb) target, for the
users that basic multiplatform images are important to, they could build
this kernel-only FIT image. For people such as Wolfgang, Peter, and
myself who would like to bundle a kernel + dtb(s), we could use the
fitImage.<boardname> target. Wouldn't both parties be happy then? I
could make the FIT documentation explain the benefits of multiplatform
images or warn about the combined kernel/dtb FIT images if that made a
difference too.
Best,
Peter
WARNING: multiple messages have this Message-ID (diff)
From: Peter Tyser <ptyser@xes-inc.com>
To: Wolfgang Denk <wd@denx.de>
Cc: u-boot <u-boot@lists.denx.de>,
linuxppc-dev@ozlabs.org, linux-kbuild@vger.kernel.org
Subject: Re: [U-Boot] [PATCH v2 3/3] powerpc: Add support for ram filesystems in FIT uImages
Date: Sun, 03 Jan 2010 19:07:09 -0600 [thread overview]
Message-ID: <4B413F3D.2000601@xes-inc.com> (raw)
In-Reply-To: <20100103101048.AF4B7E34A26@gemini.denx.de>
<snip>
> Note that the FIT image can also be made to contain a number of DT
> blobs, and selection of a "board profile" then can be used to boot the
> very sane FIT image file on any of the supported boards - so FIT
> images inherently support multibooting.
I agree with Wolfgang. Additionally, if a FIT image does contain a .dtb
file, firmware can ignore it and load a different .dtb file. So for the
fitImage.<boardname> target you could think of it as including a
"default/fallback" .dtb file, not a mandatory one. So the FIT image
could still be used as a multiplatform image even if it contained dtbs.
>>> I see your point. The main goal of the patch was to introduce FIT image
>>> support as its the new, more flexible, "better", standard image format
>>> for U-Boot going forward. Also, lots people aren't aware of FIT images
>>> and the cool stuff they can do with them, so what better way to get the
>>> word out than getting support for FIT images included in the kernel
>>> proper:)
>>
>> Define 'better'. :-)
>
> FIT images are better than the old uImage format because they:
>
> - allow for strong checksum algorithms like MD5, SHA1, ... (the plain
> CRC32 method is not good enough if you for example want to run
> software in a slot machine in Las Vegas).
>
> - can combine multiple kernel images, device tree blobs and root file
> system images in arbitrary combinations; this allows for example
> for multibooting the same image on different boards by selecting
> the right DTB, for software updates with automatic fall-back, etc.
>
> - can be extended to add new features, images types or whatever in a
> standard way, using a standard technology (device tree support)
> which is already present anyway, i. e. without additional code
> overhead.
Other advantages of FIT images that I see day-to-day include:
- Adding meta-data such as timestamps and version information for each
component of the FIT image. Its great to be able to easily display the
contents of a FIT image to determine which kernel versions it contains, etc.
- Embed multiple OS/dtb images in one FIT image. As a board vendor its
nice to give a customer 1 image that has example dtb(s) and Linux,
VxWorks, QNX, diagnostic, etc kernels. They can boot a number of OSes
on a number of different boards with 1 image.
- You can extract the images contained in a FIT image using 'dtc' to
convert the FIT image to a ".dts" file that has the raw image contents.
Other image formats are more difficult to extract contents from.
<snip>
>> I'd be okay (perhaps not happy, but okay) with merging fitImage and
>> fitImage.initrd targets (no dtb). I will resist merging fitImage.%
>> and fitImage.initrd.% targets because I see that very much as a
>> project specific deployment target and I'm not convinced yet that it
>> the pattern is right or that it is even needed in the kernel at all.
>
> Is this just your personal opinion, or do you think that this is
> really what a majority of kernel developers and users are wanting?
>
> Speaking for myself, I have to admit that I don't understand and don't
> share this attitude.
I agree with Wolfgang that many people would find the combined
kernel/dtb/ramfs useful, but understand Grant's reservations. Assuming
I rework the patch to include a "fitImage" (no dtb) target, for the
users that basic multiplatform images are important to, they could build
this kernel-only FIT image. For people such as Wolfgang, Peter, and
myself who would like to bundle a kernel + dtb(s), we could use the
fitImage.<boardname> target. Wouldn't both parties be happy then? I
could make the FIT documentation explain the benefits of multiplatform
images or warn about the combined kernel/dtb FIT images if that made a
difference too.
Best,
Peter
WARNING: multiple messages have this Message-ID (diff)
From: Peter Tyser <ptyser@xes-inc.com>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH v2 3/3] powerpc: Add support for ram filesystems in FIT uImages
Date: Sun, 03 Jan 2010 19:07:09 -0600 [thread overview]
Message-ID: <4B413F3D.2000601@xes-inc.com> (raw)
In-Reply-To: <20100103101048.AF4B7E34A26@gemini.denx.de>
<snip>
> Note that the FIT image can also be made to contain a number of DT
> blobs, and selection of a "board profile" then can be used to boot the
> very sane FIT image file on any of the supported boards - so FIT
> images inherently support multibooting.
I agree with Wolfgang. Additionally, if a FIT image does contain a .dtb
file, firmware can ignore it and load a different .dtb file. So for the
fitImage.<boardname> target you could think of it as including a
"default/fallback" .dtb file, not a mandatory one. So the FIT image
could still be used as a multiplatform image even if it contained dtbs.
>>> I see your point. The main goal of the patch was to introduce FIT image
>>> support as its the new, more flexible, "better", standard image format
>>> for U-Boot going forward. Also, lots people aren't aware of FIT images
>>> and the cool stuff they can do with them, so what better way to get the
>>> word out than getting support for FIT images included in the kernel
>>> proper:)
>>
>> Define 'better'. :-)
>
> FIT images are better than the old uImage format because they:
>
> - allow for strong checksum algorithms like MD5, SHA1, ... (the plain
> CRC32 method is not good enough if you for example want to run
> software in a slot machine in Las Vegas).
>
> - can combine multiple kernel images, device tree blobs and root file
> system images in arbitrary combinations; this allows for example
> for multibooting the same image on different boards by selecting
> the right DTB, for software updates with automatic fall-back, etc.
>
> - can be extended to add new features, images types or whatever in a
> standard way, using a standard technology (device tree support)
> which is already present anyway, i. e. without additional code
> overhead.
Other advantages of FIT images that I see day-to-day include:
- Adding meta-data such as timestamps and version information for each
component of the FIT image. Its great to be able to easily display the
contents of a FIT image to determine which kernel versions it contains, etc.
- Embed multiple OS/dtb images in one FIT image. As a board vendor its
nice to give a customer 1 image that has example dtb(s) and Linux,
VxWorks, QNX, diagnostic, etc kernels. They can boot a number of OSes
on a number of different boards with 1 image.
- You can extract the images contained in a FIT image using 'dtc' to
convert the FIT image to a ".dts" file that has the raw image contents.
Other image formats are more difficult to extract contents from.
<snip>
>> I'd be okay (perhaps not happy, but okay) with merging fitImage and
>> fitImage.initrd targets (no dtb). I will resist merging fitImage.%
>> and fitImage.initrd.% targets because I see that very much as a
>> project specific deployment target and I'm not convinced yet that it
>> the pattern is right or that it is even needed in the kernel at all.
>
> Is this just your personal opinion, or do you think that this is
> really what a majority of kernel developers and users are wanting?
>
> Speaking for myself, I have to admit that I don't understand and don't
> share this attitude.
I agree with Wolfgang that many people would find the combined
kernel/dtb/ramfs useful, but understand Grant's reservations. Assuming
I rework the patch to include a "fitImage" (no dtb) target, for the
users that basic multiplatform images are important to, they could build
this kernel-only FIT image. For people such as Wolfgang, Peter, and
myself who would like to bundle a kernel + dtb(s), we could use the
fitImage.<boardname> target. Wouldn't both parties be happy then? I
could make the FIT documentation explain the benefits of multiplatform
images or warn about the combined kernel/dtb FIT images if that made a
difference too.
Best,
Peter
next prev parent reply other threads:[~2010-01-04 2:09 UTC|newest]
Thread overview: 75+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-12-22 1:50 [PATCH v2 0/3] powerpc: Add support for FIT uImages Peter Tyser
2009-12-22 1:50 ` Peter Tyser
2009-12-22 1:50 ` [PATCH v2 1/3] powerpc: Use scripts/mkuboot.sh instead of 'mkimage' Peter Tyser
2009-12-22 1:50 ` Peter Tyser
2009-12-30 22:25 ` Grant Likely
2009-12-30 22:25 ` Grant Likely
2009-12-22 1:50 ` [PATCH v2 2/3] powerpc: Add support for creating FIT uImages Peter Tyser
2009-12-22 1:50 ` Peter Tyser
2009-12-22 3:48 ` Olof Johansson
2009-12-22 4:50 ` Peter Tyser
2009-12-30 22:57 ` Grant Likely
2009-12-30 22:57 ` Grant Likely
2010-01-01 14:18 ` Wolfgang Denk
2010-01-01 14:18 ` Wolfgang Denk
2010-01-03 5:23 ` Grant Likely
2010-01-03 5:23 ` Grant Likely
2009-12-22 1:50 ` [PATCH v2 3/3] powerpc: Add support for ram filesystems in " Peter Tyser
2009-12-22 1:50 ` Peter Tyser
2009-12-30 23:02 ` Grant Likely
2009-12-30 23:02 ` Grant Likely
2009-12-30 23:39 ` Peter Tyser
2009-12-30 23:39 ` [U-Boot] " Peter Tyser
2009-12-30 23:39 ` Peter Tyser
2009-12-31 0:01 ` Grant Likely
2009-12-31 0:01 ` [U-Boot] " Grant Likely
2009-12-31 0:01 ` Grant Likely
2009-12-31 1:10 ` Peter Tyser
2009-12-31 1:10 ` [U-Boot] " Peter Tyser
2009-12-31 1:10 ` Peter Tyser
2010-01-03 5:08 ` [U-Boot] " Grant Likely
2010-01-03 5:08 ` Grant Likely
2010-01-03 5:08 ` Grant Likely
2010-01-03 10:10 ` Wolfgang Denk
2010-01-03 10:10 ` Wolfgang Denk
2010-01-03 10:10 ` Wolfgang Denk
2010-01-04 1:07 ` Peter Tyser [this message]
2010-01-04 1:07 ` Peter Tyser
2010-01-04 1:07 ` Peter Tyser
2010-01-04 8:27 ` Grant Likely
2010-01-04 8:27 ` Grant Likely
2010-01-04 8:27 ` Grant Likely
2009-12-31 8:01 ` Peter Korsgaard
2009-12-31 8:01 ` [U-Boot] " Peter Korsgaard
2009-12-31 8:01 ` Peter Korsgaard
2010-01-01 14:12 ` Wolfgang Denk
2010-01-01 14:12 ` [U-Boot] " Wolfgang Denk
2010-01-01 14:12 ` Wolfgang Denk
2010-01-03 5:18 ` Grant Likely
2010-01-03 5:18 ` [U-Boot] " Grant Likely
2010-01-03 5:18 ` Grant Likely
2010-01-03 10:15 ` Wolfgang Denk
2010-01-03 10:15 ` [U-Boot] " Wolfgang Denk
2010-01-03 10:15 ` Wolfgang Denk
2009-12-31 22:44 ` Wolfgang Denk
2009-12-31 22:44 ` Wolfgang Denk
2009-12-31 23:10 ` Peter Tyser
2009-12-31 23:10 ` Peter Tyser
2010-01-01 10:44 ` Wolfgang Denk
2010-01-01 10:44 ` Wolfgang Denk
2010-01-03 5:13 ` Grant Likely
2010-01-03 5:13 ` Grant Likely
2010-01-03 10:12 ` Wolfgang Denk
2010-01-03 10:12 ` Wolfgang Denk
2010-01-03 8:06 ` Peter Korsgaard
2010-01-03 8:06 ` Peter Korsgaard
2010-01-03 9:50 ` Wolfgang Denk
2010-01-03 9:50 ` Wolfgang Denk
2010-01-03 14:27 ` Peter Korsgaard
2010-01-03 14:27 ` Peter Korsgaard
2010-01-04 8:34 ` Grant Likely
2010-01-04 8:34 ` Grant Likely
2010-01-03 23:52 ` Peter Tyser
2010-01-03 23:52 ` Peter Tyser
2010-01-03 5:10 ` Grant Likely
2010-01-03 5:10 ` Grant Likely
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4B413F3D.2000601@xes-inc.com \
--to=ptyser@xes-inc.com \
--cc=grant.likely@secretlab.ca \
--cc=linux-kbuild@vger.kernel.org \
--cc=linuxppc-dev@ozlabs.org \
--cc=u-boot@lists.denx.de \
--cc=wd@denx.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
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.