dm: crash for DM_FLAG_PRE_RELOC

Simon Glass sjg at chromium.org
Mon Apr 20 01:38:12 CEST 2020


Hi Heinrich,

On Wed, 15 Apr 2020 at 15:17, Heinrich Schuchardt <xypron.glpk at gmx.de> wrote:
>
> On 4/15/20 9:22 PM, Simon Glass wrote:
> > Hi Heinrich,
> >
> > On Wed, 15 Apr 2020 at 12:33, Fabio Estevam <festevam at gmail.com> wrote:
> >>
> >> Changing Ruchika's address to the NXP one.
> >>
> >> On Wed, Apr 15, 2020 at 3:28 PM Heinrich Schuchardt <xypron.glpk at gmx.de> wrote:
> >>>
> >>> Hello Simon,
> >>>
> >>> I try to boot pine64-lts_defconfig + CONFIG_RSA=y.
> >>>
> >>> SPL loads BL31. BL31 starts U-Boot. But before any output appears SPL is
> >>> restarted. So some crash must occur.
> >>>
> >>> If I remove the flag DM_FLAG_PRE_RELOC in
> >>> drivers/crypto/rsa_mod_exp/mod_exp_sw.c, booting works fine.
> >>>
> >>> Assigning the driver to UCLASS_NOP does not resolve the problem. So it
> >>> seems not to be a problem with the u-class.
> >>>
> >>> Enlarging CONFIG_SPL_SYS_MALLOC_F_LEN and CONFIG_SYS_MALLOC_F_LEN does
> >>> not resolve the problem.
> >>>
> >>> As the failure occurs very early no console is available for debug
> >>> output. Defining LOG_DEBUG at the top of drivers/core/list.c provides no
> >>> output.
> >>>
> >>> Do you have an idea how to identify the root cause of the problem?
> >>>
> >>> @Ruchika
> >>> Why is this driver loaded before relocation? I cannot find any usage of
> >>> function rsa_verify_key() before relocation.
> >>>>
> > I suppose a JTAG debugger would be best. But failing that you can
> > enable the debug UART. It should make printf(), etc. work very early.
> > If not, try printch() etc, to figure out why.
>
> The board has no board_debug_uart_init().
> And there isn't any JTAG connector either.
>
> With
>
> CONFIG_DEBUG_UART_NS16550=y
> CONFIG_DEBUG_UART_BASE=0x1c28000
> CONFIG_DEBUG_UART_CLOCK=24000000
>
> printch() lets the board simply hang.

That is sad, but it is worth trying to figure out why. Maybe the
values are wrong, or maybe it needs UART_SHIFT, or NS16550_MEM32 or
some other crazy thing!

Regards,
SImon


More information about the U-Boot mailing list