如果可以使用cache的话,就可以使用regcache_write(map, reg, val)来写入寄存器,目前支持三种缓存类型:数组(flat),LZO压缩,红黑树;这里使用的reg_write(context, reg, val)是regmap-i2c中定义的regmap_smbus_byte_reg_write、regmap_smbus_byte_reg_read。最终使用i2c-smbus的读写寄存器函数。 regmap_multi_reg_...
unsignedintnum_reg_defaults; enumregcache_typecache_type;// 缓冲方式 constvoid*reg_defaults_raw; unsignedintnum_reg_defaults_raw; u8 read_flag_mask; u8 write_flag_mask; booluse_single_rw; boolcan_multi_write; enumregmap_endianreg_format_endian; enumregmap_endianval_format_endian; conststruct...
cache_type;// 缓冲方式constvoid*reg_defaults_raw;unsignedintnum_reg_defaults_raw;u8read_flag_mask;u8write_flag_mask;booluse_single_rw;boolcan_multi_write;enumregmap_endianreg_format_endian;enumregmap_endianval_format_endian;conststructregmap_range_cfg*ranges;unsignedintnum_ranges;}; regmap_init_...
unsignedintnum_reg_defaults;//默认寄存器表中的元素个数enumregcache_typecache_type;constvoid*reg_defaults_raw;unsignedintnum_reg_defaults_raw; u8 read_flag_mask;//读标志掩码。u8 write_flag_mask;//写标志掩码booluse_single_rw;boolcan_multi_write;enumregmap_endianreg_format_endian;enumregmap_endia...
regmap_write(context, reg, val)是regmap-i2c中定义的函数,用于写入寄存器。该函数支持三种缓存类型:数组(flat)、LZO压缩、红黑树。具体操作最终会调用i2c-smbus的读写寄存器函数。regmap_multi_reg_write函数支持顺序写入多个寄存器,使用reg_sequence结构体保存写入顺序。然后调用_regmap_raw_multi_reg...
map->use_single_write = config->use_single_write || !bus || !bus->write;map->can_multi_write = config->can_multi_write && bus && bus->write; if (bus) {map->max_raw_read = bus->max_raw_read;3 changes: 2 additions & 1 deletion 3 drivers/edac/altera_edac.c Original file ...
@@ -2174,18 +2178,18 @@ static int _regmap_multi_reg_write(struct regmap *map, return _regmap_raw_multi_reg_write(map, regs, num_regs); } /* * regmap_multi_reg_write(): Write multiple registers to the device * * where the set of register,value pairs are supplied in any order...
* @can_multi_write: If set, the device supports the multi write mode of bulk * write operations, if clear multi write requests will be * split into individual write operations * * @cache_type: The actual cache type. * @reg_defaults_raw: Power on reset values for registers (for use ...
/ include / linux / regmap.h v6 v5 v4 v4.20 v4.19 v4.18 v4.17 v4.16 v4.15 v4.14 v4.13 v4.12 v4.11 v4.10 v4.9 v4.9.337 v4.9.336 v4.9.335 v4.9.334 v4.9.333 v4.9.332 v4.9.331 v4.9.330 v4.9.329 v4.9.328 v4.9.327 v4.9.326 v4.9.325 v4.9...
// 写多个regintregmap_multi_reg_write_bypassed(structregmap *map,conststructreg_sequence *regs,intnum_regs);// 直接写入reg,不经过regmap cacheintregmap_raw_write_async(structregmap *map,unsignedintreg,constvoid*val,size_tval_len);//写多个reg,并立即刷新cache写入intregmap_read(structregmap *map,...