Beaglebone Black FDT issue
Sebastian Huber
sebastian.huber at embedded-brains.de
Thu Jun 29 05:54:05 UTC 2017
On 28/06/17 11:04, Sichen Zhao wrote:
> Hi all,
> I have a issue about BBB FDT: I add " bl bsp_fdt_copy " in c/src/lib/libbsp/arm/shared/start/start.S, when my test exe(modify the testsuites/libtests/libfdt01) boot, came out a error: data abort.
>
> Boot output error info:
>
> data abort
> pc : [<80000df0>] lr : [<8000004c>]
> sp : 9f62a960 ip : ffffffff fp : 9f7a34ec
> r10: 00000000 r9 : 9f62af28 r8 : 9f633714
> r7 : 00000000 r6 : 88000000 r5 : 00000e05 r4 : 800158ac
> r3 : 0002ad24 r2 : 88000000 r1 : 00000e05 r0 : 00000000
> Flags: nzcv IRQs off FIQs on Mode SVC_32
> Resetting CPU ...
>
> resetting ...
>
>
>
> I set the BSP_FDT_BLOB_SIZE_MAX 262144 bytes.
>
> I disassemble my test binary and take a look at the start.S, the info show below:
>
> 80000040 <_start>:
> /*
> * We do not save the context since we do not return to the boot
> * loader but preserve r1 and r2 to allow access to bootloader parameters
> */
> #ifndef BSP_START_NEEDS_REGISTER_INITIALIZATION
> mov r5, r1 /* machine type number or ~0 for DT boot */
> 80000040: e1a05001 mov r5, r1
> mov r6, r2 /* physical address of ATAGs or DTB */
> 80000044: e1a06002 mov r6, r2
> #else /* BSP_START_NEEDS_REGISTER_INITIALIZATION */
> bl bsp_start_init_registers_core
> #endif
>
> #ifdef U_BOOT_USE_FDT
> bl bsp_fdt_copy
You have
void bsp_fdt_copy(const void *src);
The first parameter on ARM is passed in register 0. So, r0 must point to
your FDT.
--
Sebastian Huber, embedded brains GmbH
Address : Dornierstr. 4, D-82178 Puchheim, Germany
Phone : +49 89 189 47 41-16
Fax : +49 89 189 47 41-09
E-Mail : sebastian.huber at embedded-brains.de
PGP : Public key available on request.
Diese Nachricht ist keine geschäftliche Mitteilung im Sinne des EHUG.
More information about the devel
mailing list