From: Kever Yang <kever.yang@rock-chips.com>
To: u-boot@lists.denx.de
Subject: [U-Boot] [PATCH 00/17] SPL: extend FIT loading support
Date: Mon, 06 Mar 2017 19:24:46 +0800 [thread overview]
Message-ID: <58BD46FE.1060502@rock-chips.com> (raw)
In-Reply-To: <1488335129-12363-1-git-send-email-andre.przywara@arm.com>
Hi Andre,
I have test this patch set on rk3399 with ATF support.
For patch 2~5, you can add:
Tested-by: Kever Yang <kever.yang@rock-chips.com>
Thanks,
- Kever
On 03/01/2017 10:25 AM, Andre Przywara wrote:
> This is an updated and slightly extended version of the SPL FIT loading
> series I posted as an RFC some weeks ago.
> I tried to fix all bugs that have been pointed out by the diligent
> reviewers, also added patches to automatically build the FIT images.
>
> The first patch is a bug fix for a regression introduced with -rc1.
> I put this in there to allow people testing the series and to provide
> an actual patch for this fix, which should make it still into 2017.03.
> The next four patches introduce the core of the extened SPL FIT loading
> support, see below for a description.
> Patches 6-9 make some room in the sunxi 64-bit SPL to allow
> compiling in the FIT loading bits. Patch 10 and 11 let the SPL choose
> the proper DT from the FIT image.
> The next two patches add the infrastructure and an actual generator script,
> so the FIT image is automatically created at build time.
> Patches 14 and 15 enable the SPL FIT support in the Pine64 and the
> OrangePi PC 2 defconfigs.
> The last two patches are new and eventually store a DT file name in the
> SPL header, so U-Boot can easily pick the proper DT when scanning the
> FIT image. The idea is that this DT name should stay with the board,
> ideally on eMMC or SPI flash. So both U-Boot and a firmware update tool
> could identify a board, updating with compatible firmware while keeping
> the DT name in place. Ideally a board vendor would once seed this name
> onto on-board storage like SPI flash.
>
> Let me know what you think!
>
> Cheers,
> Andre.
>
> Based on top of sunxi/master (35affe7698e9).
>
> -------
> Currently the FIT format is not used to its full potential in the SPL:
> It only loads the first image from the /images node and appends the
> proper FDT.
> Some boards and platforms would benefit from loading more images before
> starting U-Boot proper, notably Allwinner A64 and ARMv8 Rockchip boards,
> which use an ARM Trusted Firmware (ATF) image to be executed before U-Boot.
>
> This series tries to solve this in a board agnostic and generic way:
> We extend the SPL FIT loading scheme to allow loading multiple images.
> So apart from loading the image which is referenced by the "firmware"
> property in the respective configuration node and placing the DTB right
> behind it, we iterate over all strings in the "loadable" property.
> Each image referenced there will be loaded to its specified load address.
> The entry point U-Boot eventually branches to will be taken from the
> first image to explicitly provide the "entry" property, or, if none
> of them does so, from the load address of the "firmware" image.
> This keeps the scheme compatible with the FIT images our Makefile creates
> automatically at the moment.
> Apart from the already mentioned ATF scenario this opens up more usage
> scenarios, of which the commit message of patch 04/11 lists some.
> The remaining patches prepare ane finally enable this scheme for the 64-bit
> Allwinner boards.
>
> Andre Przywara (15):
> SPL: FIT: refactor FDT loading
> SPL: FIT: rework U-Boot image loading
> SPL: FIT: factor out spl_load_fit_image()
> SPL: FIT: allow loading multiple images
> tools: mksunxiboot: allow larger SPL binaries
> armv8: SPL: only compile GIC code if needed
> armv8: fsl: move ccn504 code into FSL Makefile
> sunxi: A64: move SPL stack to end of SRAM A2
> sunxi: SPL: store RAM size in gd
> sunxi: SPL: add FIT config selector for Pine64 boards
> Makefile: add rules to generate SPL FIT images
> sunxi: A64: Pine64: introduce FIT generator script
> sunxi: Pine64: defconfig: enable SPL FIT support
> sunxi: OrangePi-PC2: defconfig: enable SPL FIT support
> sunxi: use SPL header DT name for FIT board matching
>
> Philipp Tomsich (1):
> armv8: spl: Call spl_relocate_stack_gd for ARMv8
>
> Siarhei Siamashka (1):
> sunxi: Store the device tree name in the SPL header
>
> Kconfig | 17 ++
> Makefile | 20 +++
> arch/arm/cpu/armv8/fsl-layerscape/Makefile | 1 +
> arch/arm/include/asm/arch-sunxi/spl.h | 19 ++-
> arch/arm/lib/Makefile | 3 +-
> arch/arm/lib/crt0_64.S | 14 +-
> board/sunxi/board.c | 36 ++++-
> board/sunxi/mksunxi_fit_atf.sh | 73 +++++++++
> common/spl/spl_fit.c | 246 +++++++++++++++++------------
> configs/orangepi_pc2_defconfig | 6 +
> configs/pine64_plus_defconfig | 6 +
> include/configs/sunxi-common.h | 17 +-
> scripts/Makefile.spl | 3 +-
> tools/mksunxiboot.c | 51 +++++-
> 14 files changed, 387 insertions(+), 125 deletions(-)
> create mode 100755 board/sunxi/mksunxi_fit_atf.sh
>
next prev parent reply other threads:[~2017-03-06 11:24 UTC|newest]
Thread overview: 54+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-03-01 2:25 [U-Boot] [PATCH 00/17] SPL: extend FIT loading support Andre Przywara
2017-03-01 2:25 ` [U-Boot] [PATCH 01/17] armv8: spl: Call spl_relocate_stack_gd for ARMv8 Andre Przywara
2017-03-01 2:25 ` [U-Boot] [PATCH 02/17] SPL: FIT: refactor FDT loading Andre Przywara
2017-03-03 4:53 ` Simon Glass
2017-03-03 11:09 ` Andre Przywara
2017-03-08 21:01 ` Simon Glass
2017-03-14 10:52 ` Lokesh Vutla
2017-03-01 2:25 ` [U-Boot] [PATCH 03/17] SPL: FIT: rework U-Boot image loading Andre Przywara
2017-03-03 4:53 ` Simon Glass
2017-03-14 10:53 ` Lokesh Vutla
2017-03-01 2:25 ` [U-Boot] [PATCH 04/17] SPL: FIT: factor out spl_load_fit_image() Andre Przywara
2017-03-03 16:56 ` Andrew F. Davis
2017-03-03 19:03 ` Franklin S Cooper Jr
2017-03-08 21:00 ` Simon Glass
2017-03-14 10:53 ` Lokesh Vutla
2017-03-01 2:25 ` [U-Boot] [PATCH 05/17] SPL: FIT: allow loading multiple images Andre Przywara
2017-03-08 21:00 ` Simon Glass
2017-03-27 1:19 ` André Przywara
2017-04-01 4:22 ` Simon Glass
2017-03-14 10:53 ` Lokesh Vutla
2017-03-01 2:25 ` [U-Boot] [PATCH 06/17] tools: mksunxiboot: allow larger SPL binaries Andre Przywara
2017-03-08 21:01 ` Simon Glass
2017-03-29 14:43 ` [U-Boot] [linux-sunxi] " Olliver Schinagl
2017-03-29 14:54 ` Andre Przywara
2017-03-01 2:25 ` [U-Boot] [PATCH 07/17] armv8: SPL: only compile GIC code if needed Andre Przywara
2017-03-08 21:01 ` Simon Glass
2017-03-01 2:25 ` [U-Boot] [PATCH 08/17] armv8: fsl: move ccn504 code into FSL Makefile Andre Przywara
2017-03-08 21:01 ` Simon Glass
2017-03-27 1:18 ` André Przywara
2017-03-01 2:25 ` [U-Boot] [PATCH 09/17] sunxi: A64: move SPL stack to end of SRAM A2 Andre Przywara
2017-03-08 21:01 ` Simon Glass
2017-03-01 2:25 ` [U-Boot] [PATCH 10/17] sunxi: SPL: store RAM size in gd Andre Przywara
2017-03-08 21:01 ` Simon Glass
2017-03-01 2:25 ` [U-Boot] [PATCH 11/17] sunxi: SPL: add FIT config selector for Pine64 boards Andre Przywara
2017-03-01 3:03 ` [U-Boot] [linux-sunxi] " Icenowy Zheng
2017-03-03 0:47 ` André Przywara
2017-03-08 21:01 ` [U-Boot] " Simon Glass
2017-03-01 2:25 ` [U-Boot] [PATCH 12/17] Makefile: add rules to generate SPL FIT images Andre Przywara
2017-03-03 16:58 ` Andrew F. Davis
2017-03-08 21:01 ` Simon Glass
2017-03-01 2:25 ` [U-Boot] [PATCH 13/17] sunxi: A64: Pine64: introduce FIT generator script Andre Przywara
2017-03-08 21:01 ` Simon Glass
2017-03-01 2:25 ` [U-Boot] [PATCH 14/17] sunxi: Pine64: defconfig: enable SPL FIT support Andre Przywara
2017-03-01 15:51 ` Maxime Ripard
2017-03-01 2:25 ` [U-Boot] [PATCH 15/17] sunxi: OrangePi-PC2: " Andre Przywara
2017-03-08 21:01 ` Simon Glass
2017-03-01 2:25 ` [U-Boot] [PATCH 16/17] sunxi: Store the device tree name in the SPL header Andre Przywara
2017-03-08 21:01 ` Simon Glass
2017-03-27 1:18 ` André Przywara
2017-04-01 4:22 ` Simon Glass
2017-03-01 2:25 ` [U-Boot] [PATCH 17/17] sunxi: use SPL header DT name for FIT board matching Andre Przywara
2017-03-08 21:01 ` Simon Glass
2017-03-06 11:24 ` Kever Yang [this message]
2017-03-14 11:03 ` [U-Boot] [PATCH 00/17] SPL: extend FIT loading support Dr. Philipp Tomsich
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=58BD46FE.1060502@rock-chips.com \
--to=kever.yang@rock-chips.com \
--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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox