I've been using spi2 quite extensively in python: from spidev import SpiDev as SPI and it works fine for me. > ls /dev/spi* /dev/spidev1.0 /dev/spidev1.1 > > sudo cat $SLOTS 0: PF---- -1 1: PF---- -1 2: PF---- -1 3: PF---- -1 4: P-O-L- 0 Override Board Name,00A0,Override Manuf,BB-BONE-PRU 5: P-O-L- 1 Override Board Name,00A0,Override Manuf,BB-ADC 6: P-O-L- 2 Override Board Name,00A0,Override Manuf,ADAFRUIT-SPI1 > uname -a Linux BBB4 4.1.15-bone17 #1 Wed Dec 16 17:39:16 UTC 2015 armv7l GNU/Linux > > lsb_release -d Description: Debian GNU/Linux 8.3 (jessie) > I could post my tbo file if you think it would help, but I don't think I changed it much besides playing with the clock rate and making sure d1 and d0 change on negative edges of the clock (i.e. commenting out spi-cpha;) Have you checked your pins carefully; for example, the clock should be an input not an output; I've never figured this one out.
I load the overlays using a service that simply calls a shell script in my bin directory: #!/bin/sh cd /lib/firmware echo BB-BONE-PRU > /sys/devices/platform/bone_capemgr/slots echo BB-ADC > /sys/devices/platform/bone_capemgr/slots echo ADAFRUIT-SPI1 > /sys/devices/platform/bone_capemgr/slots > I could also post the service, but it is very straightforward and simple. My pins are defined as: pinctrl_spi1_pins { pinctrl-single,pins = <0x190 0x33 0x194 0x33 0x198 0x13 0x19c 0x13>; linux,phandle = <0x1>; phandle = <0x1>; }; When I do >sudo cat $PINS, their values are verified: pin 100 (44e10990.0) 00000033 pinctrl-single pin 101 (44e10994.0) 00000033 pinctrl-single pin 102 (44e10998.0) 00000013 pinctrl-single pin 103 (44e1099c.0) 00000013 pinctrl-single I hope this helps a bit. > -- For more options, visit http://beagleboard.org/discuss --- You received this message because you are subscribed to the Google Groups "BeagleBoard" group. To unsubscribe from this group and stop receiving emails from it, send an email to beagleboard+unsubscr...@googlegroups.com. For more options, visit https://groups.google.com/d/optout.