I was able to fix it.
First of all, something I didn’t mention that I believe is needed is using the SPIDEV0 overlay. So in uEnv.txt I have:
uboot_overlay_addr5=BB-SPIDEV0-00A0.dtbo
Once rebooted, I modprobe
’d spidev as Robert suggested. This oneliner checks if spidev module is loaded, and if not, it loads it:
lsmod | grep ^spidev || sudo modprobe spidev || true
Then to fix the permissions:
sudo chgrp gpio /dev/spidev*
sudo chmod 660 /dev/spidev*
Now I can successfully run spidev_test
in /opt/source/spidev_test
. My SPI0 pins show up like so:
debian@BeagleBone:~$ show-pins | sort | grep spi
P9.17 / spi boot cs 87 fast rx 0 spi 0 cs 0 spi@48030000 (pinmux_bb_spi0_pins)
P9.18 / spi boot out 86 fast rx 0 spi 0 d1 mosi spi@48030000 (pinmux_bb_spi0_pins)
P9.21 / spi boot in 85 fast rx 0 spi 0 d0 miso spi@48030000 (pinmux_bb_spi0_pins)
P9.22 / spi boot clk 84 fast rx 0 spi 0 clk spi@48030000 (pinmux_bb_spi0_pins)