Forums › Reference, Evaluation, and Development Boards › OSD3358-SM-RED › SPI1 troubles
Tagged: spi
I am trying to use SPI1 with a program in C. I have followed the instructions on many posts. The posts are mostly old and still refer the device trees and slots. Added this line to /boot/uEnv.txt
uboot_overlay_addr0=/lib/firmware/BB-SPIDEV1-00A0.dtbO
That did not work. No spi devices show up in /dev. Without this line 4 spi devices show up in /dev, but they don’t seem to work. Scope on CS shows nothing.
You can find the source for all the overlays in the repository:
https://github.com/beagleboard/bb.org-overlays
If you look at the source for BB-SPIDEV1-00A0:
https://github.com/beagleboard/bb.org-overlays/blob/master/src/arm/BB-SPIDEV1-00A0.dts
you can see that it has not been updated to be compatible with the OSD3358-SM-RED:
1 | compatible = "ti,beaglebone", "ti,beaglebone-black", "ti,beaglebone-green"; |
You will need to modify the DTS to be compatible with “oct,osd335x”:
1 | compatible = "ti,beaglebone", "ti,beaglebone-black", "ti,beaglebone-green", "oct,osd335x"; |
and then recompile. This will create a new DTBO file that you can use to replace the one in /lib/firmware We will look at getting the repository updated to add in the OSD3358-SM-RED compatibility to the applicable device tree overlays.
Then you should change which address you are using for the overlay to “addr4”:
1 | uboot_overlay_addr4=/lib/firmware/BB-SPIDEV1-00A0.dtbo |
This should resolve the issue and allow you to use /dev/spidev1.0
Octavo Systems LLC all rights reserved
OCTAVO is registered in the U.S. Patent and Trademark Office. OSD, C-SiP, and the Octavo Logo are trademarks of Octavo Systems LLC.
"*" indicates required fields
"*" indicates required fields
"*" indicates required fields
"*" indicates required fields