一. 简介
SPI 驱动框架和 I2C 很类似,都分为主机控制器驱动和设备驱动,主机控制器也就是 SOC的 SPI 控制器接口。
例如,在裸机篇中的《第二十七章
SPI
实验》,我们编写了
bsp_spi.c
和
bsp_spi.h
这两个文件,这两个文件是
I.MX6U
的
SPI
控制器驱动。
我们编写好
SPI
控制器驱动以后就可
以直接使用了不管是什么
SPI
设备,
SPI
控制器部分的驱动都是一样,我们的重点就落在了
种类繁多的
SPI
设备驱动。
二. Linux下SPI驱动:SPI主机驱动简介
接下来简单分析一下SPI主机驱动,也就是SPI控制器驱动。一般SPI主机驱动是半导体厂商编写的。
1. spi_master结构体
SPI
主机驱动就是
SOC
的
SPI
控制器驱动,类似
I2C
驱动里面的适配器驱动。
Linux
内核
使用
spi_master
表示
SPI
主机驱动,
spi_master