I am a hardware guy who is having some trouble getting any kind of
output from McSPI3 using the spidev_test.c code. I have successfully
built Angstrom (2.6.37) and Sakoman's u-boot for my Beagleboard xM A2
using the OE/bitbake tools. I have previously attempted to handle the
pin muxing in u-boot by modifying board/ti/beagle/beagle.h and then
in the kernel with arch/arm/mach-omap2/board-omap3beagle.c. I also
registered the devices in the board file as well. Spidev3.0, 3.1, and
4.0 appear in /dev and the relevant /sys directories once I boot up,
but running spidev_test shows absolutely nothing on my scope (I
compiled spidev_test.c natively). I don't even get the clock pulse.
I figured there was most likely something wrong my pin mux
configuration, so I applied existing patches to enable McSPI 3 and 4
for the 2.6.37 kernel and replaced my config file from [1]. However,
after I rebuilt everything, I still don't get any output on my pins.
In another discussion aLamkin appears to reference a similar issue
which was the result of an older x-loader pulling a default u-boot
configuration from NAND [2]. Since the xM doesn't have NAND I am
assuming that x-loader is not my problem. Clement also posted a
similar issue but if it was resolved, the solution never made it to
the forum [3].
Is there a fundamental issue like additional permissions to execute
spidev_test that I am overlooking? I would appreciate any help that
would point me in the right direction or to a more appropriate mailing
list.
-Andrew Marsh
1.
http://elinux.org/BeagleBoard/SPI
2.
http://groups.google.com/group/beagleboard/browse_thread/thread/42988f0e14db0f01/0ef9f97989133fd6?lnk=gst&q=MCSPI3+working%2C+both+ways#0ef9f97989133fd6
3.
http://groups.google.com/group/beagleboard/browse_thread/thread/d6a4e0703033cada/8bc20f808fafc371?lnk=gst&q=SPI+testing#8bc20f808fafc371