您好,我正在查看此文档 . https://www.kernel.org/doc/html/v4.11/driver-api/i2c.html我的目标是使用I2C总线将一些数据写入EEPROM . 我对使用哪些函数以及如何填充这些函数所需的结构感到困惑 . 我的猜测是我需要创建一个i2c_client来代表EEPROM . 我从这个设备树中获得了EEPROM的位置 .
&i2c0 {
status = "okay";
clock-frequency = <400000>;
pinctrl-names = "default";
i2cswitch@74 {
compatible = "nxp,pca9548";
#address-cells = <1>;
#size-cells = <0>;
reg = <0x74>;
i2c@2 {
#address-cells = <1>;
#size-cells = <0>;
reg = <2>;
eeprom@54 {
compatible = "at,24c08";
reg = <0x54>;
};
};
};
};
我如何用这些数据填充i2c_client结构?
然后我猜我会使用这个功能
int i2c_master_send(const struct i2c_client * client, const char * buf, int count)
并提供客户端结构和我想写的字符串以及该字符串的长度,其规定小于64k . 在这种情况下,CPU是主?
我需要包含哪些头文件才能使用文档提供的函数和结构?
谢谢 .