This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

[参考译文] AM3354:RTC 问题

Guru**** 2615265 points

Other Parts Discussed in Thread: AM3354, TPS65910

请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

https://e2e.ti.com/support/processors-group/processors/f/processors-forum/656256/am3354-rtc-problem

器件型号:AM3354
主题中讨论的其他器件: TPS65910

您好,

SDK: ti-processor-sdk-linux-rt-am335x-evm-03.03.00.04-Linux-x86-Install.bin

主芯片:am3354

器件树: AM335x-bonebblack.dTB

配置文件: tisdk_AM335x-EVM-RT_defconfig

外部时钟芯片: ISL12026

对于 ISL12026、我们编写了驱动程序 RTC-x1226.ko

将 RTC-x1226.ko 放入电路板的/lib/modules/4.4.41-rt50-g968d071ce9/kernel/drivers/rtc 目录中。

但找到的 RTC-OMAP-KO 和 RTC-x1226.ko 加载顺序不能固定、有时加载 RTC-OMAP-ko 有时加载 RTC-x1226.ko。

抱歉,启动 am3354时,如何默认,首先加载 rtc-omap.ko 驱动程序,然后加载 rtc-x1226.ko?

BR

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。
    软件团队已收到通知。 他们将在这里作出回应。
  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    您好 Andre、

    在这种情况下、正确的方法是使用 ioctl 接口来确定/dev/rtcN 对应于 RTC-x1226。 或者、/sys/class/rtc/rtcN 将为您提供对各种 RTC 属性的访问、而无需使用 ioctls。 有关更多详细信息、请参阅 Documentation/rtc.txt 文件。

    此致、
    Kemal

  • 请注意,本文内容源自机器翻译,可能存在语法或其它翻译错误,仅供参考。如需获取准确内容,请参阅链接中的英语原文或自行翻译。

    在 TPS65910 PMIC 上使用 RTC 时遇到类似的问题。  我发现一种权变措施是使您要首先加载的 RTC 驱动程序成为一个内置模块、而另一个、RTC_OMAP、是一个可加载模块。  内置加载在引导中的时间要早得多、而且当两个可加载模块都与 RTC 同步时、它消除了时间不正确的问题。

    这正常工作

    # dmesg | grep rtc
    [1.285058] vrtc:由 VBAT 供电
    [1.382157] tps65910-RTC tps65910-RTC:启用 RTC-tps65910。
    [1.389681] RTC rtc0:tps65910-RTC:dev (253:0)
    [1.389701] tps65910-RTC tps65910-RTC:RTC 内核:将 tps65910-RTC 注册为 rtc0
    [1.422088] tps65910-RTC tps65910-RTC:将系统时钟设置为2018-01-29 05:05:02 UTC (1517202302)
    [6.356774] OMAP_RTC 44e3e000.RTC:已在运行
    [6.412659] OMAP_RTC 44e3e000.RTC:OMAP_RTC_PROBE:RTC 是_PMIC_controller
    [6.493127] RTC RTC1:44e3e000.RTC:DEV (253:1)
    [6.493144] OMAP_RTC 44e3e000.RTC:RTC 内核:将44e3e000.RTC 注册为 RTC1

    当两个模块都是时、我得到了这个(hctosys 错误):

    # dmesg | grep rtc  
    [1.285360] vrtc:由 VBAT 供电  
    [1.403947] hctosys:无法打开 RTC 设备(rtc0)  
    [3.493050] tps65910-RTC tps65910-RTC:启用 RTC-tps65910。  
    [3.501514(XV) RTC rtc0:tps65910-RTC:dev (253:0)  
    [3.501557] tps65910-RTC tps65910-RTC:RTC 内核:寄存器 tps65910-RTC 为0
    [6.331188] OMAP_RTC 44e3e000.RTC:OMAP_RTC_PROBE:RTC 是_PMIC_controller  
    [6.371432] RTC RTC1:44e3e000.RTC:DEV (253:1)  
    [6.371448] OMAP_RTC 44e3e000.RTC:RTC 内核:将44e3e000.RTC 注册为 RTC1