linux 内核模块在源代码级别是否有任何模块依赖定义?

Is there any module dependency definition for linux kernel module in source code level?

我知道我们可以在运行时使用 lsmod 或 modprobe 命令检查 Linux 内核模块依赖性。 但是如果我们只有内核代码怎么办,有没有办法检查内核模块的依赖关系,或者内核源代码中是否有依赖定义?

提前致谢。

您可以检查驱动程序的 Kconfig 条目。对外部模块的依赖,子系统指定为

您可以在 Documentation/kbuild/kconfig-language.txt

中找到更多详细信息

例如,如果CONFIG_MY_DRIVER依赖于I2C,您可以在Kconfig中指定为depends on。这意味着,如果在 menuconfig 中未选择 I2CMY_DRIVER 将不会出现在 menuconfig 条目中。

与此相反,当您使用select时,选择MY_DRIVER时会自动选择I2C