问题描述
我将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()
被从未调用。
关于此的任何想法都丢失了吗? 谢谢
解决方法
问题中的一切都很好。 该问题是由硬件问题引起的。