[U-Boot] [PATCH v2 18/23] sunxi: A64: enable SPL

Simon Glass sjg at chromium.org
Sat Dec 17 23:48:17 CET 2016


On 16 December 2016 at 10:40, Andre Przywara <andre.przywara at arm.com> wrote:
> Hi,
>
> On 05/12/16 06:26, Simon Glass wrote:
>> On 4 December 2016 at 18:52, Andre Przywara <andre.przywara at arm.com> wrote:
>>> Now that the SPL is ready to be compiled in AArch64 and the DRAM
>>> init code is ready, enable SPL support for the A64 SoC and in the
>>> Pine64 defconfig.
>>> For now we keep the boot0 header in the U-Boot proper, as this allows
>>> to still use boot0 as an SPL replacement without hurting the SPL use
>>> case.
>>> We disable FEL support for now, as the code isn't ready yet.
>>
>> Where is this done? Is it because you don't enable it?
>
> It is done at two places below ....
>
>>>
>>> Signed-off-by: Andre Przywara <andre.przywara at arm.com>
>>> ---
>>>  arch/arm/mach-sunxi/board.c    | 2 +-
>>>  board/sunxi/Kconfig            | 2 ++
>>>  configs/pine64_plus_defconfig  | 1 +
>>>  include/configs/sunxi-common.h | 2 ++
>>>  4 files changed, 6 insertions(+), 1 deletion(-)
>>
>> Reviewed-by: Simon Glass <sjg at chromium.org>
>>
>>>
>>> diff --git a/arch/arm/mach-sunxi/board.c b/arch/arm/mach-sunxi/board.c
>>> index 0f8ead9..80d4b57 100644
>>> --- a/arch/arm/mach-sunxi/board.c
>>> +++ b/arch/arm/mach-sunxi/board.c
>>> @@ -133,7 +133,7 @@ static int gpio_init(void)
>>>         return 0;
>>>  }
>>>
>>> -#ifdef CONFIG_SPL_BUILD
>>> +#if defined(CONFIG_SPL_BOARD_LOAD_IMAGE) && defined(CONFIG_SPL_BUILD)
>
> Here we disable FEL support if the board or build does not support it.
>
> ...
>
>>>  static int spl_board_load_image(struct spl_image_info *spl_image,
>>>                                 struct spl_boot_device *bootdev)
>>>  {
>>> diff --git a/board/sunxi/Kconfig b/board/sunxi/Kconfig
>>> index d477925..b5246df 100644
>>> --- a/board/sunxi/Kconfig
>>> +++ b/board/sunxi/Kconfig
>>> @@ -125,6 +125,7 @@ config MACH_SUN50I
>>>         bool "sun50i (Allwinner A64)"
>>>         select ARM64
>>>         select SUNXI_GEN_SUN6I
>>> +       select SUPPORT_SPL
>>>
>>>  endchoice
>>>
>>> @@ -187,6 +188,7 @@ config DRAM_ODT_EN
>>>         bool "sunxi dram odt enable"
>>>         default n if !MACH_SUN8I_A23
>>>         default y if MACH_SUN8I_A23
>>> +       default y if MACH_SUN50I
>>>         ---help---
>>>         Select this to enable dram odt (on die termination).
>>>
>>> diff --git a/configs/pine64_plus_defconfig b/configs/pine64_plus_defconfig
>>> index ebc24b8..2374170 100644
>>> --- a/configs/pine64_plus_defconfig
>>> +++ b/configs/pine64_plus_defconfig
>>> @@ -5,6 +5,7 @@ CONFIG_MACH_SUN50I=y
>>>  CONFIG_DEFAULT_DEVICE_TREE="sun50i-a64-pine64-plus"
>>>  # CONFIG_SYS_MALLOC_CLEAR_ON_INIT is not set
>>>  CONFIG_CONSOLE_MUX=y
>>> +CONFIG_SPL=y
>>>  # CONFIG_CMD_IMLS is not set
>>>  # CONFIG_CMD_FLASH is not set
>>>  # CONFIG_CMD_FPGA is not set
>>> diff --git a/include/configs/sunxi-common.h b/include/configs/sunxi-common.h
>>> index e05c318..5279e51 100644
>>> --- a/include/configs/sunxi-common.h
>>> +++ b/include/configs/sunxi-common.h
>>> @@ -183,7 +183,9 @@
>>>
>>>  #define CONFIG_SPL_FRAMEWORK
>>>
>>> +#ifndef CONFIG_MACH_SUN50I
>>>  #define CONFIG_SPL_BOARD_LOAD_IMAGE
>>> +#endif
>
> ... and this one makes sure that it is not enabled for a 64-bit build.
> Actually let me change this into ARM64, which is more generic and
> describes the reason better.
>
> Also I guess you'd like to see comments here as well ...
>

Well you could, but if it is temporary perhaps it isn't that important.

Regards,
Simon


More information about the U-Boot mailing list