This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] Linux:I2C始终读取0xff

Guru**** 2477745 points


请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/interface-group/interface/f/interface-forum/656983/linux-i2c-reads-0xff-all-the-time

工具/软件:Linux

您好,

我在执行i2cset和i2cget时遇到了一个问题。
我正在使用AMD MF bettong DDR4主板。
内核版本为:4.4 .11-158-amd+

我的i2cset工作正常。
但i2ctget始终读取0xff。

使用的命令是:
sudo i2cset -y 6 0x50 0x6c 00
sudo i2ctget -y 6 0x50 0x6c

无论写入的值如何,i2cdump也始终读取0xff!!!

CAE@CAE-Bettong:~$ sudo i2cdump 6 0x50
未指定大小(使用字节数据访问)
警告! 此程序可能会混淆I2C总线,导致数据丢失,甚至更糟!
我将探测文件/dev/i2c-6,地址0x50, mode byte
是否继续? [Y/n] y
0 1 2 3 4 5 6 7 8 9 a b c d e f 0123456789abcdef
00:FF ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff FF
10:FF ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff FF
20:FF ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff FF
30:FF ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff FF
40:FF ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff FF
50:FF ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff FF
60:FF ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff FF
70:FF ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff FF
80:FF ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff FF
90:FF ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff FF
A0:FF ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff FF
B0:FF ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff FF
C0:FF ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff FF
d0:FF ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff FF
E0:FF ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff FF
F0:FF ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff ff FF
CAE@CAE-Bettong:~$

请告诉我为什么我无法写入EEPROM?

我正在使用一个i2c测试应用程序来接收i2c 1或2字节。运行后,只有i2c从将连接到i2c总线!

运行应用程序之前,i2c从机未连接到总线! 为什么?

运行应用程序还会更改寄存器值,该值是使用驱动程序中的printk()读取的。

那一次i2cdump或i2ctget也会读取0xff!!!!

为什么会发生这种情况?? 有人能告诉我吗?

谢谢,此致,
克里普什里

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好,Kripashree:

    kripa shree 说:
    我正在使用AMD MF bettong DDR4主板。

    此论坛仅支持TI器件/电路板。 请与主板供应商核实您的问题。

    此致,
    Pavel

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    好的。

    谢谢你。

    此致,
    克里普什里