Regmap API与IIO框架:设备驱动开发的高效工具
1. Regmap API概述
Regmap API是一种寄存器映射抽象,支持SPI和I2C协议,对于编写通用驱动程序而言是绝佳选择。其具有通用性和同质性,不同总线类型仅初始化方式有所不同,其他功能函数相同。
1.1 regmap初始化
在驱动的探测函数中,需根据支持的协议调用 regmap_init_i2c() 或 regmap_init_spi() 来初始化regmap。在初始化之前,必须填充 regmap_config 元素。使用完regmap后,可调用 regmap_exit() 函数释放之前分配的寄存器映射。
void regmap_exit(struct regmap *map)
1.1.1 SPI初始化
SPI初始化通过 regmap_init_spi() 函数将设备访问转换为SPI命令。
struct regmap * regmap_init_spi(struct spi_device *spi, const struct regmap_config);
以下是一个完整示例:
static int foo_spi_probe(struct spi
超级会员免费看
订阅专栏 解锁全文
1457

被折叠的 条评论
为什么被折叠?



