原文網址 : http://blog.chinaunix.net/u2/66039/showart_1686204.html
2.6.18內核下已經添加了完整的spi子系統了,參考mtd的分析,將從下到上層,再從上到下層的對其進行分析。
以下先從下到上的進行分析:
driver/spi下有兩個底層相關的spi驅動程序:
spi_s3c24xx.c和spi_s3c24xx_gpio.c
其中spi_s3c24xx.c是基於s3c24xx下相應的spi接口的驅動程序,spi_s3c24xx_gpio.c允許用戶指定3個gpio口,分別充當spi_clk、spi_mosi和spi_miso接口,模擬標準的spi總線。
s3c2410自帶了兩個spi接口(spi0和spi1),在此我只研究基於s3c2410下spi接口的驅動程序spi_s3c24xx.c。
首先從spi驅動的檢測函數進行分析:
好了,至此spi主控制器(驅動)和板上spi設備註冊完畢,以後要使用spi來傳輸數據的話,只要先獲得spi設備結構,然後就可以利用它來和spi驅動打交道了(就好像你要操作一個文件,先要獲取文件句柄一樣,明白吧^_^)