未调用Linux函数i2c ds1307_probe

问题描述

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

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()从未调用

关于此的任何想法都丢失了吗? 谢谢

解决方法

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

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...