Reputation: 3205
I am currently working on a board booting in 64 bit mode using aarch64 and I have a u-boot in 32 bit mode, I would use arm-linux-gnueabihf.
I looked around but there's no other way than using a secondary toolchain via: open-embedded tutorial to use a secondary toolchain
Nevertheless, impossible to make it work. Intel made a layer (meta-tc-icc) but it's old and I didn't manage to make it work neither.
Any idea how to configure it ?
Upvotes: 2
Views: 1055
Reputation: 2173
So there's a few ways around this.
The general answer for your problem is that you need to have two machine.conf files for this particular setup, build 32bit U-Boot with the 32bit machine, build everything else with the 64bit configuration and at the level above whatever controls running bitbake ensure that you build both machine types before passing the outputs on to whomever needs them.
A more hacky approach would be to say that you use a system-wide toolchain (which you could have OE generate via meta-toolchain and install that) and then in your custom U-Boot recipe, override EXTRA_OEMAKE is that you force it to use your toolchain instead.
And a third approach, which I realize isn't likely, but as the U-Boot custodian I feel I should bring up, move the platform to 64bit U-Boot (or tell the vendor they should), we have many armv8 platforms today and lots of examples of vendors who took their 32bit support and added in 64bit.
Upvotes: 1