On Wed, Feb 16, 2022 at 3:22 AM Christian Mauderer <christian.maude...@embedded-brains.de> wrote: > > A device tree binary has to be 8 byte aligned in memory. This is checked > since RTEMS commit 34052ef78cf8724dee73e9279b2c6bff8cfed234 "libfdt: Add > FDT alignment check to fdt_check_header()". > --- > bsps/arm/imxrt/dts/imxrt1050-evkb.c | 2 +- > bsps/arm/imxrt/dts/imxrt1050-evkb.dts | 2 +- > bsps/arm/imxrt/include/bsp.h | 2 +- > 3 files changed, 3 insertions(+), 3 deletions(-) > > diff --git a/bsps/arm/imxrt/dts/imxrt1050-evkb.c > b/bsps/arm/imxrt/dts/imxrt1050-evkb.c > index 301e790c6b..ecae160a8e 100644 > --- a/bsps/arm/imxrt/dts/imxrt1050-evkb.c > +++ b/bsps/arm/imxrt/dts/imxrt1050-evkb.c > @@ -6,7 +6,7 @@ > > #include <sys/types.h> > > -const unsigned char imxrt_dtb[] = { > +const unsigned char imxrt_dtb[] __attribute__(( __aligned__(8) )) = { > 0xd0, 0x0d, 0xfe, 0xed, 0x00, 0x00, 0x3f, 0xf6, 0x00, 0x00, 0x00, 0x38, > 0x00, 0x00, 0x3b, 0xf8, 0x00, 0x00, 0x00, 0x28, 0x00, 0x00, 0x00, 0x11, > 0x00, 0x00, 0x00, 0x10, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 0xbe, > diff --git a/bsps/arm/imxrt/dts/imxrt1050-evkb.dts > b/bsps/arm/imxrt/dts/imxrt1050-evkb.dts > index 9310371428..dae7e8939f 100644 > --- a/bsps/arm/imxrt/dts/imxrt1050-evkb.dts > +++ b/bsps/arm/imxrt/dts/imxrt1050-evkb.dts > @@ -31,7 +31,7 @@ > * export BSP_DIR="${RTEMS_SRC_DIR}/bsps/arm/imxrt/" > * arm-rtems6-cpp -P -x assembler-with-cpp -I "${BSP_DIR}/include/" > -include "${BSP_DIR}/dts/imxrt1050-evkb.dts" /dev/null | \ > * dtc -O dtb -o "${BSP_DIR}/dts/imxrt1050-evkb.dtb" -b 0 -p 64 > - * rtems-bin2c -C -N imxrt_dtb "${BSP_DIR}/dts/imxrt1050-evkb.dtb" > "${BSP_DIR}/dts/imxrt1050-evkb.c" > + * rtems-bin2c -A 8 -C -N imxrt_dtb "${BSP_DIR}/dts/imxrt1050-evkb.dtb" > "${BSP_DIR}/dts/imxrt1050-evkb.c" > */ > > /dts-v1/; > diff --git a/bsps/arm/imxrt/include/bsp.h b/bsps/arm/imxrt/include/bsp.h > index d7e37628e5..9f3b913a17 100644 > --- a/bsps/arm/imxrt/include/bsp.h > +++ b/bsps/arm/imxrt/include/bsp.h > @@ -57,7 +57,7 @@ extern "C" { > #define BSP_FEATURE_IRQ_EXTENSION > > #define BSP_FDT_IS_SUPPORTED > -extern const unsigned char imxrt_dtb[]; > +extern const unsigned char imxrt_dtb[] __attribute__(( __aligned__(8) ));
Why not use RTEMS_ALIGNED? And is it assumed that if the user wants to provide a different device tree, they will follow the same naming? Otherwise, why are symbols in the public facing bsp.h. > extern const size_t imxrt_dtb_size; > > void *imx_get_reg_of_node(const void *fdt, int node); > -- > 2.31.1 > > _______________________________________________ > devel mailing list > devel@rtems.org > http://lists.rtems.org/mailman/listinfo/devel _______________________________________________ devel mailing list devel@rtems.org http://lists.rtems.org/mailman/listinfo/devel