AI代码解释 struct regmap_bus{bool fast_io;regmap_hw_write write;regmap_hw_gather_write gather_write;regmap_hw_async_write async_write;regmap_hw_reg_write reg_write;regmap_hw_read read;regmap_hw_reg_read reg_read;regmap_hw_free_context free_context;regmap_hw_async_alloc async_alloc;u8 read...
regmap_hw_write write;--写一定大小数据到外设。regmap_hw_gather_write gather_write; regmap_hw_async_write async_write; regmap_hw_reg_write reg_write;--写值到单个寄存器。regmap_hw_reg_update_bits reg_update_bits; regmap_hw_read read;--读一定大小数据到buffer。regmap_hw_reg_read reg_read;-...
.write = regmap_spi_write, .gather_write = regmap_spi_gather_write, .async_write = regmap_spi_async_write, .async_alloc = regmap_spi_async_alloc, .read = regmap_spi_read, .read_flag_mask =0x80, .reg_format_endian_default = REGMAP_ENDIAN_BIG, .val_format_endian_default = REGMAP_EN...
conststructregmap_config*config){if(i2c_check_functionality(i2c->adapter,I2C_FUNC_I2C))return®map_i2c;// ...returnERR_PTR(-ENOTSUPP);}staticstructregmap_busregmap_i2c={.write=regmap_i2c_write,.gather_write=regmap_i2c_gather_write,.read=regmap_i2c_read,.reg_format_endian...
EN我正在尝试将一些编解码代码/文件移植回Linux3.2,其中有一个函数trace_regmap_async_write_start()...
int async_ret; #ifdef CONFIG_DEBUG_FS bool debugfs_disable; struct dentry *debugfs; const char *debugfs_name; @@ -215,10 +216,17 @@ struct regmap_field { extern void regmap_debugfs_initcall(void); extern void regmap_debugfs_init(struct regmap *map, const char *name); extern void regma...
dev_err(&data->client->dev,"[touch]%s: I2C write over retry limit.addr[0x%x]\n",__func__, addr); retval = -EIO; }returnretval; } 需要自行构建i2c_msg,然后使用i2c_transfer传输数据。 使用regmap机制进行读写 但是使用regmap机制,就会变的更为简单。
(structregmap *map,unsignedintreg,constvoid*val,size_tval_count);// 写多个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)...
regmap_hw_async_write async_write; regmap_hw_reg_write reg_write; regmap_hw_read read; regmap_hw_reg_read reg_read; regmap_hw_free_context free_context; regmap_hw_async_alloc async_alloc;u8read_flag_mask;enumregmap_endianreg_format_endian_default;enumregmap_endianval_format_endian_default;...
(structregmap *map, unsignedintreg,constvoid*val,size_t val_count);/*写多个寄存器*/intregmap_multi_reg_write_bypassed(structregmap *map,conststructreg_sequence *regs,intnum_regs);/*直接写入寄存器,不经过regmap cache*/intregmap_raw_write_async(structregmap *map, unsignedintreg,constvoid*val, ...