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的確定,根據數據手冊讀寫數據的時序以及主控的的時序定義確定。