The New Bradford Embedded

Come join me at the new home for Bradford Embedded at BradfordEmbedded.com. After 24 January 2012, there won't be any new posts on the Blogger version.

If you're following me via RSS, you can get the new RSS, too.

Monday, March 14, 2011

Toolchain, Check! Kernel, Check!

I've been working on the CLFS embedded book for a few months now.  I've been learning a lot and my goal has been to get a CLFS embedded system running on my BeagleBoard-xM. I'm now one step closer!

I've built my own toolchain using CLFS instructions currently found in my git repo. My toolchain consists of:
  • Linux Headers from 2.6.36
  • GMP 5.0.1
  • MPFR 3.0.0
  • MPC 0.8.2
  • Binutils 2.21
  • GCC 4.5.2
  • uClibc 0.9.31 (with uClibc provided patches)

My kernel is from tmlind's OMAP tree, version 2.6.38-rc8.  I started with the omap2plus_defconfig and modified it a little bit (although modification may not be needed, still have to check that).

I'm using the provided xM U-Boot but with a few slight changes to the boot args and boot up sequence:
  • setenv console ttyO2,115200n8
  • mmc init ${mmcdev}
  • run loaduimage
  • run mmcboot

I've made public gists of the boot console output and my kernel config, in case anyone is interested.

Next step is to get the CLFS embedded filesystem up and running on my xM!

EDIT: Thought my selection of ABI and triplets might be of interest as well:
  • target triplet: armv7a-unknown-linux-uclibceabi
  • ABI: aapcs-linux
  • little endian
  • hard float
  • arm mode only (no thumb instructions)
  • vfpv3 floating point hardware
Also, happy Pi day!