通过regmap_add_irq_chip()将struct regmap_irq_chip加入到Regmap,返回strcut regmap_irq_chip_data,其中包括struct irq_domain。 intregmap_add_irq_chip(structregmap *map,intirq,intirq_flags,intirq_base,conststructregmap_irq_chip *chip,structregmap_irq_chip_data **data);voidregmap_del_irq_chip(int...
regmap_init_ac97(structsnd_ac97 *ac97, strcut regmap_config *config); regmap_add_irq_chip(structregmap *map,intirq,intirq_flags,intirq_base,structregmap_irq_chip *chip,structregmap_irq_chip_data **data); 注:regmap_add_irq_chip:关联后的regmap上注册 irq 使用regmap 配置和注册regmap实例后,我...
2. regmap_init_spi(struct spi_device *spi, strcut regmap_config *config); 3. regmap_add_irq_chip(struct regmap *map, int irq, int irq_flags, int irq_base, struct regmap_irq_chip *chip, struct regmap_irq_chip_data **data); 1. 2. 3. 前两个是用来关联i2c或者spi设备和regmap_config...
内核3.1引入了一套新的API机制:regmap,主要为I2C,SPI,IRQ等操作提供统一接口,提高代码可重用性,减少重复逻辑。 以I2C为例: 要让设备跟I2C通信,以前的办法是调用i2c_transfer接口,其实regmap最终还是调用到i2c_transfer,只不过中间加了一层缓冲,这样统一了接口,减少了底层I/O的操作次数。 在初始化之前,要先填充regm...
/* Disable chip interrupts before requesting irq */err = regmap_raw_write(chip->data.regmap, TCPC_ALERT_MASK, &val,sizeof(u16)); new logs are: [ 4.775545][ T8] i2c i2c-4: SCL is stuck low, exit recovery[ 5.283545][ T8] i2c i2c-4: SCL is stuck low, ...
regmap_add_irq_chip(struct regmap *map,int irq,int irq_flags,int irq_base,struct regmap_irq_chip *chip,struct regmap_irq_chip_data **data); 前两个是用来关联i2c或者spi设备和regmap_config的,第三个用来在关联后的regmap上注册 irq 2 使用regmap ...
* HWLOCK_IRQ or 0. * @can_sleep: Optional, specifies whether regmap operations can sleep.*/structregmap_config {constchar*name;intreg_bits;intreg_stride;intreg_downshift; unsignedintreg_base;intpad_bits;intval_bits;bool(*writeable_reg)(structdevice *dev, unsignedintreg);bool(*readable_reg)(str...
内核3.1引入了一套新的API机制:regmap,主要为I2C,SPI,IRQ等操作提供统一接口,提高代码可重用性,减少重复逻辑。 以I2C为例: 要让设备跟I2C通信,以前的办法是调用i2c_transfer接口,其实regmap最终还是调用到i2c_transfer,只不过中间加了一层缓冲,这样统一了接口,减少了底层I/O的操作次数。
regmap_add_irq_chip(struct regmap *map,int irq,int irq_flags,int irq_base,struct regmap_irq_chip *chip,struct regmap_irq_chip_data **data); 前两个是用来关联i2c或者spi设备和regmap_config的,第三个用来在关联后的regmap上注册 irq 2 使用regmap ...