[Buildroot] aarch64 + armhf multiarch support?
daggs
daggs at gmx.com
Fri Feb 9 12:29:24 UTC 2018
Greetings Jens,
>
> Hi Dagg,
>
> > Am 08.02.2018 um 13:07 schrieb daggs <daggs at gmx.com>:
> >
> >>> Am 08.02.2018 um 12:36 schrieb daggs <daggs at gmx.com>:
> >>>
> >>> ok, currently in buildroot there is no possibility to build a odroid c2 based 32 big image because the vendor didn't implemented some of the opcode in u-boot.
> >>> however, I've posted a bunch of patches 2 months ago which introduce mainline kernel (4.14.x) and mainline uboot (2017.07) support for this board.
> >>> you might be able to build a 32 bit image using these patches.
> >>>
> >>> imho it worth looking into it.
> >>
> >> Would you mind sharing a link with me pointing to the corresponding patches? That would be great.
> >
> > sure, see: https://patchwork.ozlabs.org/project/buildroot/list/?submitter=69054
>
> Thanks for the link. I just integrated these patches into my buildroot environment and reconfigured the odroidc2 defconfig to build for BR2_arm=y and BR2_cortex_a53=y instead of aarch64. The results suggest, however, that uboot is not able to build for the odroidc2 with armhf only:
>
> — cut here —
> CHK include/config.h
> CFG u-boot.cfg
> cc1: warning: unknown register name: x18
> HOSTLD tools/dumpimage
> HOSTLD tools/mkimage
> CC arch/arm/mach-meson/board.o
> CC board/amlogic/odroid-c2/odroid-c2.o
> CC arch/arm/cpu/armv8/cpu.o
> cc1: warning: unknown register name: x18
> cc1: warning: unknown register name: x18
> cc1: warning: unknown register name: x18
> In file included from ./arch/arm/include/asm/bitops.h:193:0,
> from include/linux/bitops.h:124,
> from include/common.h:25,
> from board/amlogic/odroid-c2/odroid-c2.c:7:
> include/asm-generic/bitops/__fls.h: In function ‘__fls’:
> include/asm-generic/bitops/__fls.h:17:21: warning: left shift count >= width of type [-Wshift-count-overflow]
> if (!(word & (~0ul << 32))) {
> […]
> In file included from include/common.h:97:0,
> from board/amlogic/odroid-c2/odroid-c2.c:7:
> include/dm/of.h: At top level:
> ./arch/arm/include/asm/global_data.h:107:58: error: invalid register name for ‘gd’
> #define DECLARE_GLOBAL_DATA_PTR register volatile gd_t *gd asm („x18“)
> — cut here —
>
> To me this looks like U-Boot is not able to be built for the odroidc2 using only a armhf compiler. Or are there any u-boot defconfig changes I could try and hopefully see a 32bit build for the odroidc2?
>
> Apart from that, are there really no possibilities to build a multiarch (aarch64+armhf) buildroot environment that allows to run 64bit and 32bit binaries at the same time? Or am I missing something?
>
> regards,
> jens
sorry it didn't helped you, I wonder, can you compile the 32 bit bins yourself? if so why not compile the bins you need statically, place it on a nfs server, mount it on the c2 boards and run the bins? will that work for you?
Dagg.
More information about the buildroot
mailing list