All of lore.kernel.org
 help / color / mirror / Atom feed
From: Mark Kettenis <mark.kettenis@xs4all.nl>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH] rockchip: make_fit_atf.py: fix loadables property set error
Date: Fri, 5 Jul 2019 14:03:13 +0200 (CEST)	[thread overview]
Message-ID: <5438a07d23b8aa34@bloch.sibelius.xs4all.nl> (raw)
In-Reply-To: <8a60419f-35fa-c562-4b30-98b67ba10a9f@rock-chips.com> (message from Kever Yang on Fri, 5 Jul 2019 19:38:42 +0800)

> From: Kever Yang <kever.yang@rock-chips.com>
> Date: Fri, 5 Jul 2019 19:38:42 +0800
> 
> Hi Christoph,
> 
> 
> On 07/05/2019 05:15 PM, Christoph Müllner wrote:
> >
> > On 04.07.19 11:44, Andy Yan wrote:
> >> Commit b238e4b00ced ("rockchip: Cleanup of make_fit_atf.py.") set
> >> firmware = "atf_1";
> >> loadables = "uboot","atf_1","atf_2";
> >>
> >> Actually it should be:
> >> firmware = "atf_1";
> >> loadables = "uboot","atf_2","atf_3";
> > Does "atf_1" not need to be among loadables as well?
> 
> The "atf_1" not need to be among loadables, or else it will be loaded twice.
> The loadables suppose to be those firmware not have a entry but need to
> load by SPL.
> > My version of the script produces:
> >
> > loadables = "uboot","atf_1","atf_2","atf_3";
> >
> > And with that I was able to boot mainline ATF.
> 
> The mainline ATF now have 4 segments instead of 3, I don't know why
> there is a stand alone 'GNU_STACK' section, so it's able to boot there is
> one extra segment help, it loads all atf_1, atf_2 and atf_3. Rockchip elf
> and older mainline ATF do not have the extra 'GNU_STACK' section, and
> the last atf_3 is not loaded, which lead to the ATF not able to run.
> Program Headers:
>   Type           Offset             VirtAddr           PhysAddr
>                  FileSiz            MemSiz              Flags Align
>   LOAD           0x0000000000000000 0x0000000000000000 0x0000000000000000
>                  0x0000000000014058 0x0000000000044000  RWE 10000
>   LOAD           0x0000000000020000 0x00000000ff3b0000 0x00000000ff3b0000
>                  0x0000000000001f58 0x0000000000001f58  RWE 10000
>   LOAD           0x0000000000030000 0x00000000ff8c0000 0x00000000ff8c0000
>                  0x0000000000002000 0x0000000000003000  RWE 10000
>   GNU_STACK      0x0000000000000000 0x0000000000000000 0x0000000000000000
>                  0x0000000000000000 0x0000000000000000  RW     10
> 
> I will apply this patch as a fix.

That GNU_STACK segment is produced by your toolchain.  It doesn't
really make sense to have it for standalone binaries like ATF, and
there is no reason to load it.  Not all toolchains produce a GNU_STACK
section.

But the make_fit_atf.py script already checks that the segment type is
PT_LOAD, so I don't understand what you're trying to fix here.  For me
things seem to work fine with mainline u-boot and ATF 2.1 on both the
rock64e and rockpro64.

> >> Signed-off-by: Andy Yan <andy.yan@rock-chips.com>
> >> ---
> >>
> >>  arch/arm/mach-rockchip/make_fit_atf.py | 2 +-
> >>  1 file changed, 1 insertion(+), 1 deletion(-)
> >>
> >> diff --git a/arch/arm/mach-rockchip/make_fit_atf.py b/arch/arm/mach-rockchip/make_fit_atf.py
> >> index 45ec105887..db0ae96ca8 100755
> >> --- a/arch/arm/mach-rockchip/make_fit_atf.py
> >> +++ b/arch/arm/mach-rockchip/make_fit_atf.py
> >> @@ -94,7 +94,7 @@ def append_conf_section(file, cnt, dtname, segments):
> >>      if segments != 0:
> >>          file.write(',')
> >>      for i in range(1, segments):
> >> -        file.write('"atf_%d"' % (i))
> >> +        file.write('"atf_%d"' % (i + 1))
> >>          if i != (segments - 1):
> >>              file.write(',')
> >>          else:
> >>
> 
> 
> 
> _______________________________________________
> U-Boot mailing list
> U-Boot at lists.denx.de
> https://lists.denx.de/listinfo/u-boot

  reply	other threads:[~2019-07-05 12:03 UTC|newest]

Thread overview: 10+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-07-04  9:44 [U-Boot] [PATCH] rockchip: make_fit_atf.py: fix loadables property set error Andy Yan
2019-07-05  7:33 ` Kever Yang
2019-07-05  9:15 ` Christoph Müllner
2019-07-05 10:06   ` Andy Yan
2019-07-05 10:26     ` Christoph Müllner
2019-07-05 11:38   ` Kever Yang
2019-07-05 12:03     ` Mark Kettenis [this message]
2019-07-06 15:02       ` [U-Boot] [PATCH] rockchip: make_fit_atf.py: fix loadables property set error【请注意,邮件由mark.kettenis@sibelius.xs4all.nl代发】 Kever Yang
2019-07-06 17:32         ` Christoph Müllner
2019-07-08  1:07           ` Andy Yan

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=5438a07d23b8aa34@bloch.sibelius.xs4all.nl \
    --to=mark.kettenis@xs4all.nl \
    --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.