static int rx8025_get_datetime(struct i2c_client *client, struct rtc_time *tm) {unsigned char date[7];int data, err;//init rx8025i2c_smbus_write_byte_data(client, RX8025_REG_CTRL1,0x20);i2c_smbus_write_byte_data(client, RX8025_REG_CTRL2,0x20);/* Now read time and date */data = i2c_smbus_read_byte_data(client, RX8025_REG_SC) & 0x7f;if (data < 0) {dev_err(&client->dev, "Unable to read second\n");return -EIO;}tm->tm_sec = bcd2bin(data);data = i2c_smbus_read_byte_data(client, RX8025_REG_MN) & 0x7f;if (data < 0) {dev_err(&client->dev, "Unable to read min\n");return -EIO;}tm->tm_min = bcd2bin(data);data = i2c_smbus_read_byte_data(client, RX8025_REG_HR);if (data < 0) {dev_err(&client->dev, "Unable to read hour\n");return -EIO;}
我加载了一个rtc设备的驱动后,这样的提示是什么原因导致的呢?Input/output error
Nancy Wang:
请重新贴一下图片。
user6263921:
回复 Nancy Wang:
好的
Nancy Wang:
回复 user6263921:
请问sdk的版本是什么?你贴出来的代码是RTC厂商提供的吗?在内核4.19中似乎已经有get_time 来获取相关信息。
并且从打印信息来看只有获取小时是失败的。
user6263921:
回复 Nancy Wang:
用的是Linux3.3的内核,代码不是厂商提供的
Nancy Wang:
回复 user6263921:
这个驱动不是TI提供的,一般是由厂商提供,如果kernel3.3中没有相关的可使用的驱动,请尝试使用之后发布的版本。