Linux kernel 设备驱动程序regmap\u更新\u位问题

Linux kernel 设备驱动程序regmap\u更新\u位问题,linux-kernel,driver,linux-device-driver,imx6,Linux Kernel,Driver,Linux Device Driver,Imx6,我正在编写基于ov5640 omnivision csi-2摄像头的imx290 csi-2 mipi摄像头驱动程序。我也有imx290参考驱动程序,我必须使它在imx6q处理器上工作,所以我正在修改,根据参考进行更改。 我遇到了将值写入寄存器的问题。在imx290regmap_update_位中(regmap、reg、mask、regbits)用于 static int imx290_write_regbits(struct regmap*regmap,unsigned reg, unsign

我正在编写基于ov5640 omnivision csi-2摄像头的imx290 csi-2 mipi摄像头驱动程序。我也有imx290参考驱动程序,我必须使它在imx6q处理器上工作,所以我正在修改,根据参考进行更改。 我遇到了将值写入寄存器的问题。在imx290
regmap_update_位中(regmap、reg、mask、regbits)用于

static int imx290_write_regbits(struct regmap*regmap,unsigned reg,
unsigned regbits,unsigned nbits)
函数,我需要对这些值进行一些更改,以使其可靠<代码>i2c_主机发送(ov5640_数据.i2c_客户端,au8Buf,3)

我做了研究,查看了头文件,但找不到它。如果你有这方面的信息,你能帮我弄清楚吗

谢谢。。
致以最诚挚的问候。

我知道它在做什么
regmap\u update\u位(regmap,reg,mask,regbits)它屏蔽寄存器位并将regbits值写入屏蔽寄存器位,但我不明白regmap在该宏中做什么?它是经典的,尽管在regmap,RMW操作的上下文中是原子的。我知道它在做什么
regmap\u update\u位(regmap,reg,mask,regbits)它屏蔽寄存器位并将regbits值写入屏蔽寄存器位,但我不明白regmap在该宏中做什么?它是经典的,尽管在regmap、RMW操作的上下文中是原子的。