linux AM335x嵌入式平台spi驅動調試


使用的是kernel4.4.12內核,已經不需要arch/arm/boot/dts/boar-XXX板級文件了,直接使用設備樹注冊板級文件

所以,在這需要修改的文件有 

 

1.arch/arm/boot/dts/am33xx.dtsi

2.arch/arm/boot/dts/am335x-ariio5702.dts

 

一、配置menuconfgi  使板子支持spi  配置如下

 

 

二、修改設備樹

在  arch/arm/boot/dts/am33xx.dtsi  中增加索引

 

 

 

修改設備樹  arch/arm/boot/dts/am335x-ariio5702.dts

按照自己的使用修改設備樹 例如spi1

 

這里最主要就是pin腳的配置 spi_pins

spi1_pins: pinmux_spi1_pins {
       pinctrl-single,pins = <
       0x190 (PIN_INPUT_PULLUP | MUX_MODE3) /* spi1-sclk gpio3_14*/
  0x194 (PIN_INPUT_PULLUP | MUX_MODE3) /* spi1-do gpio3_15*/
  0x198 (PIN_INPUT_PULLUP | MUX_MODE3) /* spi1-di gpio3_16*/
  0x19c (PIN_INPUT_PULLUP | MUX_MODE3) /* spi1-cs0 gpio3_17*/
  >;
};

 

 

修改的compitable要和driver/spi/spidev.c 里面的設備樹匹配列表一致  才可以保證匹配到

 

driver/spi/spidev.c

 

static const struct of_device_id spidev_dt_ids[] = {
  { .compatible = "rohm,dh2228fv" },
  { .compatible = "xxxx" },
  {},
};

 

然后編譯內核  燒錄鏡像

在開發板中就可以查看到設備節點

 

接着 使用   kernel/Documentation/spi/spidev_test.c   測試spi  這里只需要把這個spidev_test.c 交叉編譯即可

測試如下

 

spi_test -D /dev/spidev1.0 -s 48000000 -p "aaaaaa"

 

 

 

既可以看到測試結果 

到這里 spi驅動添加成功

 

參考  https://www.veryarm.com/15778.html

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM