It turns that the spi-omap2 driver in Linux 4.1 does not support GPIO chip selects. However, Linux 4.3 rc7 supports it with a patch. I wrote up details on using the mikroBUS Cape with 4 SPI devices here: http://dev.iachieved.it/iachievedit/adventures-in-beaglebone-black-device-overlays-and-spi/
and explain the patch to the spi-omap2 driver here: http://dev.iachieved.it/iachievedit/gpio-chip-selects-with-the-beaglebone/ Hopefully it's useful to someone wrestling with multiple SPI devices on the BeagleBone. Joe On Sunday, November 15, 2015 at 10:45:06 PM UTC-6, Joe wrote: > > > Howdy. > > I came into possession of a mikroBUS Cape ( > http://beagleboard.org/project/mikrobus) and have been using it to learn > how to write a .dts overlay. Since there are 4 slots for clickboards on > the cape and I have 4 SPI boards (4-20mA T Click), I figured I'd try to > create a single .dts that exposed all 4 as SPI devices. > > Ignoring SPI0 (routed to "Host 3" on the mikroBUS Cape) for now, I have > Host 1 and Host 2 working. These map directly to SPI1.0 and SPI1.1, but I > cannot get a "SPI1.2" enabled (Host4). The mikroBUS Cape schematic shows > that chipselect for Host 4 is routed to P8.10, so I thought I could add > that pin (gpio2_4) as OUTPUT_PULLUP | MODE 7, and then simply add a third > fragment for the third chipselect. > > spi1@2 { > #address-cells = <1>; > #size-cells = <0>; > compatible = "spidev"; > reg = <2>; > spi-max-frequency = <16000000>; > spi-cpol; > spi-cpha; > }; > > Unfortunately this fails with a "cs2 >= max2" error when I load the > overlay. > > Reading around I'm trying to figure out, okay, how do I increase the > number of SPI devices on the SPI1 bus. I've read about: > > num-cs > num-chipselects > cs-gpios > > When using cs-gpios like this: > > cs-gpios = <0>, <1>, <&gpio3 4 0>; > > I get > > [ 171.494015] /ocp/spi@481a0000: could not get #gpio-cells for > /ocp/interrupt-controller@48200000 > > My complete dts is at http://pastebin.com/BvxZ3fa2 > > TL;DR: How can I enable a 3rd chipselect for SPI1 where the CS is mapped > to P8.11 (gpio2[4])? > -- 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.