您好,我正在查看此文档。 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是主控吗?
我需要包含哪些头文件才能使用文档提供的函数和结构?
谢谢。