storage组件中i2c读写接口长度限制能否修改

我在实现一款RAID卡的适配,OOB使用的是 i2c 通信,但是通信的数据长度最大是4K,但是storage中i2c接口如下:

static gint32 i2c_write_cb(guint8 obj_index, guint8 *pWritebuf, guint8 write_length);
static gint32 i2c_writeread_cb(guint8 obj_index, guint8 *pWritebuf, guint8 write_length, guint8 *pReadbuf,
                               guint8 read_length);

接口的长度类型是 guint8,则最大支持长度是255,不满足我当前的需求。

我看storage的i2c读写实现最终是调用Chip的读写,请问这个读写长度限制是受Chip能力的限制吗?能否将其扩展为 guint16 。

试了下可以扩展。测试了下Chip的读写长度限制是1024

问题是否已解决

扩展到 1024 可以满足基本需求了,后面我们会考虑在固件那边做分片处理