AnsweredAssumed Answered

External RTC (MCP79400) Not Registering on i.MX6 Solo X on Linux

Question asked by Jon Clay on Mar 22, 2020
Latest reply on Mar 26, 2020 by Jon Clay



I am trying to implement an external RTC module via i2c3 onto a board with a Solo X chip with a yocto Linux OS (v4.14.98). I'm unable to see this device being registered and the hw clock is not found.


I've followed this thread P1010 & I2C RTC DS1339  and implemented all the drivers mentioned, however, I feel this might be different now since this a 6 year old post. Please see my .config file attached.


My device tree changes are as follows:


&snvs_pwrkey {
    status = "disabled";


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


    rtc@68 {
        compatible = "microchip,mcp7940x";
        reg = <0x68>;


I've disabled the snvs (internal rtc) to only enable the external rtc. The issue still persists when I don't disable the snvs.


I did notice on my defconfig I manually entered in CONFIG_I2C_MPC=y and it does not show up in .config file. I wasn't able to enable I2C_MPC via menuconfig, there wasn't a selection for it. (The .config file I retrieved from /linux-imx/4.14.98-r0/build/, is this correct?)


Please see my attachments for the my config and kernel print out from boot.