SPI驅動

1 關於 時鐘信號

時鐘信號是在板級文件中設置的

static struct s3c64xx_spi_csinfo s3c64xx_spi0_csinfo = { 
 .fb_delay=100, 
 .line=S3C64XX_GPC(3), //CS管腳
 .set_level=cs_set_level, 
}; 
 
static struct spi_board_info s3c6410_spi0_board[] = { 
[0] = { 
.modalias ="spidev", 
.bus_num= 0, 
.chip_select= 0, 
.irq =IRQ_SPI0, 
.max_speed_hz= 500*1000, //默認是設置的時鐘
.mode=SPI_MODE_0, //工作模式,根據SPI設備的時序和主控制器的時序確定
.controller_data=&s3c64xx_spi0_csinfo, 
}, 
}; 
static struct s3c64xx_spi_csinfo s3c64xx_spi1_csinfo = { 
 .fb_delay=100, 
 .line=S3C64XX_GPC(7), 
 .set_level=cs_set_level, 
}; 
 
static struct spi_board_info s3c6410_spi1_board[] = { 
[0] = { 
.modalias = "spidev", 
.bus_num= 1, 
.chip_select= 1, 
.irq = IRQ_SPI1, 
.max_speed_hz = 500*1000, 
.mode=SPI_MODE_0, 
.controller_data=&s3c64xx_spi1_csinfo, 
}, 
};

時鐘在板級文件初始化了 ,驅動的其他地方可以不用管了,系統做好了。

2、 mode的確定,根據數據手冊讀寫數據的時序以及主控的的時序定義確定。

發佈了27 篇原創文章 · 獲贊 0 · 訪問量 2萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章