Quantcast
Channel: MarsHut
Viewing all articles
Browse latest Browse all 6551

ARM/BeagleBone Thumb2 Kernels

$
0
0
So when I try to build a Xenomai patched kernel for the BeagleBone using
Thumb2 instructions, I get the following linker errors:

This has recently become more of a problem, as the default BeagleBone
kernel has switched to enabling CONFIG_THUMB2_KERNEL.

A bit of Googling turned up the following patch to fix a similar problem
on the Tegra (not Xenomai related):

http://patchwork.ozlabs.org/patch/236760/

I applied a similar if-then patch (see below) to the two Xenomai calls
that generate the linker errors, and the result is a working kernel.

Can someone more familiar with iPipeand ARM assembly review the attached
minor patch and advise on whether or not it seems OK?

As I understand things, the two bne calls in the default ipipe patch
don't work when building a kernel using the thumb instructions due to
the limited range of the conditional branch. Using the if-then
construct when THUMB2 is enabled allows for a larger addressing range in
the branch, thus avoiding the linker errors. If this seems OK, perhaps
it should be applied to the master ipipe patch set? If not, is there a
better way to avoid the linker errors when building with the thumb
instructions?

Viewing all articles
Browse latest Browse all 6551

Trending Articles