1

我在 i2c 总线上使用带有 ds1307 兼容 RTC 控制器的 ARM 设备的 Linux-4.9.67。在内核配置中添加

CONFIG_RTC_DRV_DS1307=y

在设备树中添加节点

&i2c4 {
    clock-frequency = <100000>;
    pinctrl-names = "default";
    pinctrl-0 = <&pinctrl_i2c4>;
    status = "okay";

    ds1307: rtc@68 {
        compatible = "dallas,ds1307";
        reg = <0x68>;
    };
};

我在设备列表中看到它

root@csb:~# i2cdetect -y 3
     0  1  2  3  4  5  6  7  8  9  a  b  c  d  e  f
00:          -- -- -- -- -- -- -- -- -- -- -- -- -- 
10: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
20: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
30: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
40: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
50: -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- 
60: -- -- -- -- -- -- -- -- 68 -- -- -- -- -- -- -- 
70: -- -- -- -- -- -- -- -- 

但是问题是设备驱动程序没有加载并且从未被ds1307_probe()调用。

有什么想法吗?谢谢

4

1 回答 1

0

问题中的一切都很好。该问题是由硬件问题引起的。

于 2020-11-20T13:52:26.803 回答