Всем добра.
Ситуация такая.
Есть сабжевая плата. На ней висит сервер. Все работает нормально.
Но достает одно. В soc v40/r40 есть rtc, но батарейки нет и соответственно толку с него только при перезагрузке. По i2c прикрутил ds1307. Нарисовал overlay. Поцепился как /dev/rtc1.
hwclock работает нормально.
root@nas:/mnt/nas/work/dtb/dtb# hwclock -r -f /dev/rtc
2019-08-26 20:11:57.687139+0300
Через udev сделал его /dev/rtc.
SUBSYSTEM=="rtc", KERNEL=="rtc1", SYMLINK+="rtc", OPTIONS+="link_priority=-100"
Но как и ожидалось при загрузке система синхронизируется в rtc от soc и кладет на ds1307.
Aug 26 15:17:07 nas kernel: [ 2.684768] sun6i-rtc 1c20400.rtc: registered as rtc0
Aug 26 15:17:07 nas kernel: [ 2.684775] sun6i-rtc 1c20400.rtc: RTC enabled
--------
Aug 26 15:17:07 nas kernel: [ 3.308375] sun6i-rtc 1c20400.rtc: setting system clock to 1970-01-01T00:0
0:11 UTC (11)
--------
Aug 26 15:17:07 nas kernel: [ 4.358985] rtc-ds1307 3-0068: registered as rtc1
Как вообще отрубить внутренний sun6i-rtc 1c20400.rtc?
Наколхозил вот такой dts:
/dts-v1/;
/plugin/;
/ {
compatible = "allwinner,sun8i-r40-rtc", "allwinner,sun8i-h3-rtc";
/* <rtc@1c20400>; */
fragment@0 {
target-path = "/aliases";
__overlay__ {
rtc = "/soc@1c00000/rtc@1c20400";
};
};
fragment@1 {
target = <&rtc>;
__overlay__ {
status = "disabled";
};
};
};
Не помогает. Может я здесь чего накосячил?
Кто силен в armовых делах. Ткните как решить проблему.
Неужели никто не имел дело с v40?