BBB+FreeBSD RELEASE-10: capes, i2c, UARTs, API and the device tree

I see that FreeBSD RELEASE-10 is out and runs on the BBB. I have it running in a VirtualBox VM (x64 version) and I’m interested enough to try it on the BBB along with my cape & device tree overlay.

Does anyone have any idea how to get my cape(s) working:

  • Does it support some kind of device-tree-overlay (dts) and/or capemgr?
  • Do I need to build a custom kernel to enable the BBB for things like UART1, SPI0 and I2C

Thanks!

-W.

Hi,

FreeBSD does have an ARM port available. It does use device trees to specify hardware, but I don’t know if the grammar is the same as that used in ARM linux. There is a specific FreeBSD port for Raspberry Pi, but I don’t know if a BBB port is available.

The best place to check for this is the FreeBSD Wiki. You will need to be a pioneer to use FreeBSD on BBB.

Best of luck, etc …

So it would seem! It appears that FreeBSD can only boot from SD card as the eMMC is not yet supported!

I’ll do some more digging …

Thanks!

The problem starts with the version of u-boot they are using. By cloning some of the functionality of u-boot-denx you might be able to get it to work. But … it’s a lot of work. Then you face the issues with the kernel etc … Not sure how well the raspberry pi version works either. The flow seems to be with Linux.

For me it is a better use of time to use Yocto (Angstrom) or Embedian Grip (embedded Debian). ie I prefer a source based distribution instead of binary. Yocto is probably the better long term choice, assuming Angstrom continues to be developed.

If you ported RTEMS OS with full functionality to the BBB, that would be impressive and extremely useful to many people.

Regards

I had started with Angstrom, but it was hard work! now it appears effort is switching to debian. I really just need a fast, reliable, stable and secure OS that can run Go binaries … but it must be able to boot from eMMC, support capes (preferably via a device tree type mechanism) and have good support for system updates.