All of lore.kernel.org
 help / color / mirror / Atom feed
From: Samuel Holland <samuel@sholland.org>
To: u-boot@lists.denx.de
Subject: [PATCH 2/3] mksunxi_fit_atf.sh: Update FIT component descriptions
Date: Sat, 9 May 2020 14:02:19 -0500	[thread overview]
Message-ID: <9e245d7e-2dc6-b0de-6af5-d7d1b49e5482@sholland.org> (raw)
In-Reply-To: <20200508094512.GA99682@ryzen.blueri.se>

Hi,

On 5/8/20 4:45 AM, Patrick Wildt wrote:
> Hi,
> 
> now this really confuses me.
> 
> commit 0db0ba6141f402b1d496ef53d9fa69978f75ec61 has explicitly made
> u-boot the firmware and moved atf into the loadables on NXP i.MX.
> Here you do the complete opposite for sunxi.
> 
> Can people please make up their minds how it is *supposed* to work?

I don't think that commit is suggesting how things are supposed to work; it's a
workaround responding to the existing limitations in SPL_FIT_IMAGE_TINY.
Specifically, that "firmware" is assumed to be U-Boot, and "loadables" are
assumed to be something else.

The first patch in this series removes those limitations by actually looking at
the "os" property. With my first patch applied, U-Boot would be detected in
either list, so booting would work with or without commit 0db0ba6141f4.

So for the reasons I outline below (the functionality of the "switch
(spl_image.os)" in board_init_r), it might make sense to revert that commit
after applying this series.

Cheers,
Samuel

> Oh, and your previous diff about the "minimal os parsing", I need that
> too for my use-case, so I like that one!
> 
> Patrick
> 
> On Thu, May 07, 2020 at 06:20:34PM -0500, Samuel Holland wrote:
>> Since commit d879616e9e64 ("spl: fit: simplify logic for FDT loading for
>> non-OS boots"), the SPL looks at the "os" properties of FIT images to
>> determine where to append the FDT.
>>
>> The "os" property of the "firmware" image also determines how to execute
>> the next stage of the boot process, as in 1d3790905d9c ("spl: atf:
>> introduce spl_invoke_atf and make bl31_entry private").
>>
>> To support this additional functionality, and to properly model the boot
>> process, where ATF runs before U-Boot, add the "os" properties and swap
>> the firmware/loadable images in the FIT image.
>>
>> Signed-off-by: Samuel Holland <samuel@sholland.org>
>> ---
>>  board/sunxi/mksunxi_fit_atf.sh | 6 ++++--
>>  1 file changed, 4 insertions(+), 2 deletions(-)
>>
>> diff --git a/board/sunxi/mksunxi_fit_atf.sh b/board/sunxi/mksunxi_fit_atf.sh
>> index 88ad719747..4dfd22db78 100755
>> --- a/board/sunxi/mksunxi_fit_atf.sh
>> +++ b/board/sunxi/mksunxi_fit_atf.sh
>> @@ -31,6 +31,7 @@ cat << __HEADER_EOF
>>  			description = "U-Boot (64-bit)";
>>  			data = /incbin/("u-boot-nodtb.bin");
>>  			type = "standalone";
>> +			os = "u-boot";
>>  			arch = "arm64";
>>  			compression = "none";
>>  			load = <0x4a000000>;
>> @@ -39,6 +40,7 @@ cat << __HEADER_EOF
>>  			description = "ARM Trusted Firmware";
>>  			data = /incbin/("$BL31");
>>  			type = "firmware";
>> +			os = "arm-trusted-firmware";
>>  			arch = "arm64";
>>  			compression = "none";
>>  			load = <$BL31_ADDR>;
>> @@ -73,8 +75,8 @@ do
>>  	cat << __CONF_SECTION_EOF
>>  		config_$cnt {
>>  			description = "$(basename $dtname .dtb)";
>> -			firmware = "uboot";
>> -			loadables = "atf";
>> +			firmware = "atf";
>> +			loadables = "uboot";
>>  			fdt = "fdt_$cnt";
>>  		};
>>  __CONF_SECTION_EOF
>> -- 
>> 2.24.1
>>

  reply	other threads:[~2020-05-09 19:02 UTC|newest]

Thread overview: 8+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-05-07 23:20 [PATCH 1/3] spl: fit: Minimally parse OS properties with FIT_IMAGE_TINY Samuel Holland
2020-05-07 23:20 ` [PATCH 2/3] mksunxi_fit_atf.sh: Update FIT component descriptions Samuel Holland
2020-05-08  9:45   ` Patrick Wildt
2020-05-09 19:02     ` Samuel Holland [this message]
2020-05-09 19:09       ` Patrick Wildt
2020-05-07 23:20 ` [PATCH 3/3] sunxi: Add support for including SCP firmware Samuel Holland
2020-05-08  9:47 ` [PATCH 1/3] spl: fit: Minimally parse OS properties with FIT_IMAGE_TINY Patrick Wildt
2020-06-01 17:04 ` Jagan Teki

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=9e245d7e-2dc6-b0de-6af5-d7d1b49e5482@sholland.org \
    --to=samuel@sholland.org \
    --cc=u-boot@lists.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.