DragonBoard SPI support


#1

Is SPI supported with the DragonBoard and the latest Ubuntu release? I can compile and load the spidev.ko user-space driver, but I assume some additional configuration needs to be done. I suppose I could bitbang with GPIO, but I’d rather use a SPI driver. Any suggestions for next steps?


#2

you should enable the following config to add SPI support
CONFIG_SPI_QUP=y

On boot you would see something like this:
[ 1.837105] spi_qup 78b7000.spi: IN:block:16, fifo:64, OUT:block:16, fifo:64
[ 1.837847] spi_qup 78b7000.spi: registered master spi32766 (dynamic)

the SPI info is arch/arm64/boot/dts/qcom/msm8916.dtsi


#3

Notice that you will only see the “registered master” message if you enabled the SPI debug feature. Also this enabled SPI1 which is accessible from the HS connector pins.

If you’d rather use the controller in the LS connector, you will need to modify pq8016-sbc.dtsi

diff --git a/arch/arm64/boot/dts/qcom/apq8016-sbc.dtsi b/arch/arm64/boot/dts/qcom/apq8016-sbc.dtsi
index 077bd61..d290bfb 100644
--- a/arch/arm64/boot/dts/qcom/apq8016-sbc.dtsi
+++ b/arch/arm64/boot/dts/qcom/apq8016-sbc.dtsi
@@ -136,7 +136,7 @@
        pinctrl-1 = <&blsp1_uart1_sleep>;
 };
 
-&blsp_spi3 {
+&blsp_spi5 {
        status = "okay";
 };

The kernel config changes will be available in the next release.


#4

Thanks! Any idea when the next release will be available?


#5

having talked to the development team I believe the intention is to have something ready at the end of this month - having said that there are not firm schedules or delivery dates on this project that I am aware of.