After mucking about with it for entirely too long (6+ unsuccessful kernel compiles will wear you down!) I was just able to get a version of Ubuntu working on the BeagleBone that supports user land SPI.
The way I was able to do it was to read, re-read, and re-re-read Brian Hensley’s tutorial on making SPI work on the BeagleBoard xM (http://www.brianhensley.net/2012/02/spi-working-on-beagleboard-xm-rev-c.html) and then figure out how to translate that to the bone. (Thanks so much Brian!)
Then I tried to apply Craig Berscheidt’s BeagleBone SPI patch (http://groups.google.com/group/beagleboard/browse_thread/thread/776a4ca8ca3c06e/3e98b877444fbb05?lnk=gst&q=spi+patch#3e98b877444fbb05) but it wouldn’t cleanly apply to the 3.2 source so I had to roll a new patch with the same changes. (Thank you Craig!)
As time permits I want to write a tutorial up on how to do all of this, but I also know that over the last few months I’ve seen a number of people request userland SPI access and would like to share my result sooner rather than later.
I was thinking of just putting an image file online somewhere along with instructions on how to install it. However, this is the first time I’ve ever done anything like this (and the first time I’ve compiled a kernel since the late 90s!) so I want to make sure that sharing in this manner is kosher. I know there are a number of inexperienced BeagleBone users like myself who are faunching at the bit to play with SPI and I would love to help them get up and running.
Thanks! (And another BIG thank you to Brian and Craig - you guys saved my project!)