gpt4 book ai didi

linux - 我如何找到内核加载哪个RTC模块?

转载 作者:塔克拉玛干 更新时间:2023-11-03 01:55:26 24 4
gpt4 key购买 nike

使用从Ubuntu OS 16.04获得的配置文件编译内核时,我注意到我正在编译很多RTC驱动程序,基本上是每种可能的驱动程序:

... snip ...
CC [M] drivers/rtc/rtc-bq4802.o
CC [M] drivers/rtc/rtc-da9052.o
CC [M] drivers/rtc/rtc-da9055.o
... more of those ...
...

我想知道是否可以摆脱这么多司机,所以我开始四处寻找如何:

lsmod中查找
  • 我没有看到RTC驱动程序
  • lshw也不起作用
  • lspci -v也没有产生太多信息。

  • 较低级别的检查,表明设备存在:
    $ ls -l /dev/rtc
    lrwxrwxrwx 1 root root 4 Dec 18 09:54 /dev/rtc -> rtc0

    我获得更多信息的最近位置在 /sys/class/rtc/中:
    $ sudo cat /sys/class/rtc/rtc0/device/rtc/rtc0/name 
    rtc_cmos

    这是否意味着我的内核使用的唯一驱动程序是 rtc_cmos
  • 这是否意味着我不需要所有其他驱动程序?
  • 这是否意味着我的笔记本电脑使用CMOS兼容硬件?
  • 也一样,为什么modinfo rtc_cmos不返回任何内容?
  • 最佳答案

    Does that mean I do not need all the other drivers? Does that mean that my laptop uses a CMOS compatible hardware?



    的确,如果您只关心该RTC,则只需要rtc_cmos。
    如果您的PC足够新,则rtc-efi可能是有效的选择。

    also, why does modinfo rtc_cmos return nothing?



    因为驱动程序可能是在内核中静态编译的,而不是作为模块编译的。在您的配置中检查CONFIG_RTC_DRV_CMOS = y。

    关于linux - 我如何找到内核加载哪个RTC模块?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47940754/

    24 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com