Data abort when starting DFU on SAMA5D2

admin LI admin at hifiphile.com
Wed Aug 2 09:38:42 CEST 2023


Hi  Alexis,

I've tried to USB gardet under u-boot without success (linux is ok).

I've contacted Microchip support (No.01275010) and from them:
"we confirmed with the internal team that USB is not fully functional with
u-boot so for any query related to working of USB in u-boot we request you
to create a NASCAR."

Regards,
Zixun

On Wed, Aug 2, 2023 at 9:11 AM Eugen Hristev <eugen.hristev at collabora.com>
wrote:

> Hi Alexis,
>
> On 8/1/23 10:09, Alexis Lothoré wrote:
> > Hi,
> > I am currently using an ATSAMA5D27-WLSOM1-EK1. This boards embeds an
> > ATSAMA5D27-WLSOM1, which in turns holds an ATSAMA5D27 and a 8MB QSPI
> flash. I
> > have been wanting to program u-boot in the QSPI flash thanks to DFU,
> since the
> > board is able to boot from QSPI and is supported in uboot. To do so, I
> have
> > executed the following steps:
> > - check out recent uboot version (2023.07.02, but issed described below
> is
> > observed on master too)
> > - load sama5d27_wlsom1_ek_qspiflash_defconfig
> > - tune the configuration to enable DFU:
> >    - CONFIG_CMD_DFU=y
> >    - CONFIG_DFU_SF=y
> >    - CONFIG_USB_GADGET_DOWNLOAD=y
> > - build uboot, upload and run it onto external ram thanks to snagrecover
> ([1]).
> >    - running "bdinfo" shows that board is properly defined/recognized
> >    - "sf probe" properly detects the qspi flash chip
> > - in u-boot console, configure dfu:
> >    - setenv dfu_alt_info uboot raw 0 0x80000
> > - start DFU:
> >    - dfu 0 sf 2:0
> >
> > Unfortunately, this step systematically and immediately leads to a data
> abort
> > with the following log:
> >
> > => dfu 0 sf 2:0
> > data abort
> > pc : [<2fda9ee0>]        lr : [<2fd8dc08>]
> > reloc pc : [<26f3fee0>]lr : [<26f23c08>]
> > sp : 2f963fe8  ip : 2f9829cc   fp : 00000000
> > r10: 2fde1cd9  r9 : 2f969e80   r8 : 2fdfc304
> > r7 : 00000000  r6 : 00000000   r5 : 2fdf3034  r4 : 2f982948
> > r3 : 0a299cfc  r2 : ffffffec   r1 : 00000000  r0 : 00000000
> > Flags: nzCv  IRQs off  FIQs off  Mode SVC_32
> > Code: e5843058 e5950004 e3a01000 e5903008 (e5933008)
> > Resetting CPU ...
> >
> > resetting ...
> > System reset not supported on this platform
> > ### ERROR ### Please RESET the board ###
> >
> > A quick translation with addr2line shows that the data abort occurs in
> > include/linux/usb/gagdet.h, in usb_ep_alloc_request, likely because of
> ep being
> > NULL, which seems confirmed by adding some custom logs in both
> > usb_ep_alloc_request and its caller (composite_bind). Before digging
> further,
> > does anyone have successfully used DFU on SAMA5D2 boards (and if so, am I
> > missing something in the configuration) ? Or does this data abort show
> that some
> > support is still missing to make it work for SAMA5D2 ?
>
> I believe this is related to the gadget more than DFU itself.
> Zixun LI (in CC) has attempted gadget on this platform at some point.
>
> Mihai (also in CC) has did some tests with USB on this platform as well.
> Cristian has more knowledge of the USB implementation on sama5d2.
>
> Eugen
>
> >
> > Kind regards,
> > Alexis
> >
> > [1] https://github.com/bootlin/snagboot
>
>


More information about the U-Boot mailing list