[U-Boot] [linux-sunxi] Re: [PATCH 14/17] sunxi: Pine64: defconfig: enable SPL FIT support

Jonathan Gray jsg at jsg.id.au
Sun Mar 5 04:06:26 UTC 2017


On Fri, Mar 03, 2017 at 09:55:25AM +0000, Andre Przywara wrote:
> Hi,
> 
> On 03/03/17 09:22, Maxime Ripard wrote:
> > On Thu, Mar 02, 2017 at 12:03:20AM +0800, Icenowy Zheng wrote:
> >>
> >> 2017???3???1??? 23:51??? Maxime Ripard <maxime.ripard at free-electrons.com>?????????
> >>>
> >>> Hi Andre, 
> >>>
> >>> On Wed, Mar 01, 2017 at 02:25:26AM +0000, Andre Przywara wrote: 
> >>>> The Pine64 (and all other 64-bit Allwinner boards) need to load an 
> >>>> ARM Trusted Firmware image beside the actual U-Boot proper. 
> >>>> This can now be easily achieved by using the just extended SPL FIT 
> >>>> loading support, so enable it in the Pine64 defconfig. 
> >>>> Also add the FIT image as a build target to 64-bit sunxi board to 
> >>>> trigger the respective Makefile rules. 
> >>>>
> >>>> Signed-off-by: Andre Przywara <andre.przywara at arm.com> 
> >>>> --- 
> >>>>   configs/pine64_plus_defconfig  | 6 ++++++ 
> >>>>   include/configs/sunxi-common.h | 4 ++++ 
> >>>>   2 files changed, 10 insertions(+) 
> >>>>
> >>>> diff --git a/configs/pine64_plus_defconfig b/configs/pine64_plus_defconfig 
> >>>> index 7c7d86f..2b47157 100644 
> >>>> --- a/configs/pine64_plus_defconfig 
> >>>> +++ b/configs/pine64_plus_defconfig 
> >>>> @@ -3,9 +3,14 @@ CONFIG_RESERVE_ALLWINNER_BOOT0_HEADER=y 
> >>>>   CONFIG_ARCH_SUNXI=y 
> >>>>   CONFIG_MACH_SUN50I=y 
> >>>>   CONFIG_DEFAULT_DEVICE_TREE="sun50i-a64-pine64-plus" 
> >>>> +CONFIG_OF_LIST="sun50i-a64-pine64 sun50i-a64-pine64-plus" 
> >>>>   # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set 
> >>>>   CONFIG_CONSOLE_MUX=y 
> >>>>   CONFIG_SPL=y 
> >>>> +CONFIG_FIT=y 
> >>>> +CONFIG_SPL_FIT=y 
> >>>> +CONFIG_SPL_LOAD_FIT=y 
> >>>> +CONFIG_SPL_OF_LIBFDT=y 
> >>>
> >>> I'm not sure we want to force down that support to all our users. 
> >>
> >> A64 boards are now unusable without proper ATF.
> > 
> > That's debatable, but that's not really what I meant. What I meant was
> > that they're perfectly usable without FIT.
> 
> But this is a defconfig for a certain, and the Pine64 is not really
> usable without ATF at the moment in an upstream tree.

Could board/sunxi/README.pine64 be updated for the current state of
things?

Without FIT is it now possible with u-boot 2017.03 to use sunxi-spl.bin
as a drop in replacement for Allwinner's boot0 and get a working
combination of SPL/u-boot/ATF that can be redistributed when combining
the parts with boot0img?

Using your repositories
https://github.com/apritzel/arm-trusted-firmware/tree/allwinner (for ATF)
https://github.com/apritzel/pine64 (for boot0img)

README.pine64 still states that there is no SPL available.

Does it make any sense to build a combined spl+u-boot as is done with
the armv7 sunxi targets without ATF?  Or will this not boot?

diff --git a/arch/arm/cpu/armv8/config.mk b/arch/arm/cpu/armv8/config.mk
index 27b66d41b1..a323faf563 100644
--- a/arch/arm/cpu/armv8/config.mk
+++ b/arch/arm/cpu/armv8/config.mk
@@ -12,3 +12,12 @@ PLATFORM_CPPFLAGS += $(PF_NO_UNALIGNED)
 EFI_LDS := elf_aarch64_efi.lds
 EFI_CRT0 := crt0_aarch64_efi.o
 EFI_RELOC := reloc_aarch64_efi.o
+
+# Build a combined spl + u-boot image
+ifdef CONFIG_ARCH_SUNXI
+ifdef CONFIG_SPL
+ifndef CONFIG_SPL_BUILD
+ALL-y += u-boot-sunxi-with-spl.bin
+endif
+endif
+endif


More information about the U-Boot mailing list