Regmap API与IIO框架:设备驱动开发的利器
Regmap API概述
Regmap API是一种寄存器映射抽象,它支持SPI和I2C协议,是编写通用驱动的理想选择。该API具有通用性和同质性,不同总线类型仅在初始化时有所不同,其他功能则保持一致。
Regmap初始化
在驱动的探测函数中,需根据支持的总线类型调用 regmap_init_i2c() 或 regmap_init_spi() 来初始化regmap。在初始化之前,必须填充 regmap_config 元素。使用完regmap后,可调用 regmap_exit() 释放分配的寄存器映射。
void regmap_exit(struct regmap *map)
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_device *client)
{
超级会员免费看
订阅专栏 解锁全文

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



