- 论坛徽章:
- 0
|
本帖最后由 dingzerong 于 2011-10-16 21:39 编辑
我想问一下
在s3c24x0中 transfer是这样初始化的
bitbang->master->transfer= spi_bitbang_transfer
在atmel中是这样初始化
master->transfer = atmel_spi_transfer;
导致了我找不到 究竟数据写入了哪里,究竟在哪里有将数据写入spi的数据寄存器
三星的
1.static inline int
2.spi_async(struct spi_device *spi, struct spi_message *message)
3.{
4. message->spi = spi;
5. return spi->master->transfer(spi, message);
6.}
这里的master->transfer是在spi_bitbang_start中进行赋值的:
看spi_bitbang_transfer的实现:
--------------------------------------------
但是amtel中的atmel_spi_transfer 只有中断函数 却没有,像三星有
static int s3c24xx_spi_txrx(struct spi_device *spi, struct spi_transfer *t)
writeb(hw_txbyte(hw, 0), hw->regs + S3C2410_SPTDAT);
wait_for_completion(&hw->done);
没有将数据写入寄存器的函数! |
|