Building Linux for a custom board

326 views
Skip to first unread message

Todd Peterson

unread,
Feb 3, 2017, 2:47:25 PM2/3/17
to beagl...@googlegroups.com
We have a board based upon the Beagleboard xM rev. C. We have been running QNX on it. We are trying to experiment with RT Linux by following the instructions at https://eewiki.net/display/linuxonarm/BeagleBoard and the kernel builds fine. We have a problem with the gpios that identify the board revision, since we do not have these gpios wired. I modified u-boot/board/ti/beagle/beagle.c to return revision=2 in get_board_revision. But when I compile u-boot, I get an error of 

/home/users/staff/tpeterson/work/epic2-rt-linux/gcc-linaro-5.3.1-2016.05-x86_64_arm-linux-gnueabihf/bin/arm-linux-gnueabihf-ld.bfd: u-boot-spl section `.rodata' will not fit in region `.sram'
/home/users/staff/tpeterson/work/epic2-rt-linux/gcc-linaro-5.3.1-2016.05-x86_64_arm-linux-gnueabihf/bin/arm-linux-gnueabihf-ld.bfd: region `.sram' overflowed by 2848 bytes
scripts/Makefile.spl:290: recipe for target 'spl/u-boot-spl' failed

Not sure where to fix this.

I also could not find anything in the kernel source that is the equivalent get_board_revision call.

Any help is greatly appreciated.

--
John 3:16
IN GOD WE TRUST!!!

Robert Nelson

unread,
Feb 3, 2017, 2:51:05 PM2/3/17
to Beagle Board
On Fri, Feb 3, 2017 at 1:47 PM, Todd Peterson <achee...@gmail.com> wrote:
> We have a board based upon the Beagleboard xM rev. C. We have been running
> QNX on it. We are trying to experiment with RT Linux by following the
> instructions at https://eewiki.net/display/linuxonarm/BeagleBoard and the
> kernel builds fine. We have a problem with the gpios that identify the board
> revision, since we do not have these gpios wired. I modified
> u-boot/board/ti/beagle/beagle.c to return revision=2 in get_board_revision.
> But when I compile u-boot, I get an error of
>
> /home/users/staff/tpeterson/work/epic2-rt-linux/gcc-linaro-5.3.1-2016.05-x86_64_arm-linux-gnueabihf/bin/arm-linux-gnueabihf-ld.bfd:
> u-boot-spl section `.rodata' will not fit in region `.sram'
> /home/users/staff/tpeterson/work/epic2-rt-linux/gcc-linaro-5.3.1-2016.05-x86_64_arm-linux-gnueabihf/bin/arm-linux-gnueabihf-ld.bfd:
> region `.sram' overflowed by 2848 bytes
> scripts/Makefile.spl:290: recipe for target 'spl/u-boot-spl' failed

As long as you are using "just the xM" (not the older boards)..
re-add this line i removed:

#define CONFIG_SYS_THUMB_BUILD

https://github.com/RobertCNelson/Bootloader-Builder/blob/master/patches/v2017.01/0001-omap3_beagle-uEnv.txt-bootz-n-fixes.patch#L475

It'll get you a smaller build..

Regards,

--
Robert Nelson
https://rcn-ee.com/

acheesehead

unread,
Feb 5, 2017, 2:01:44 PM2/5/17
to BeagleBoard
Thanks Robert. That did the trick. I will see on Mon. if the image boots up. I have to deal with some other issues regarding pin muxing and an eMMC that was added on our board. I'm slightly familiar with device trees and think that I should be able to deal with this using them. The production Angstrom image for the xM does not have the pinmux mechanism, which was what prompted me to use the latest Linux version. Should keep me busy for a while.
Reply all
Reply to author
Forward
0 new messages