如何将 yocto rootfs 中的 galcore 内核模块列入黑名单

How to blacklist the galcore kernel module from yocto rootfs

内核模块名称 galcore.ko 使我的 imx6slevk 板在启动时挂起。 该文件的路径是: /lib/modules/4.9.88-imx_4.9.88_2.0.0_ga+g5e23f9d61147/extra/galcore.ko 手动删除此 .ko 文件并刷新 rootfs 后,电路板可以正常启动。 我想修改 yyocto 源以防止自动加载此 .ko 文件。

我试过添加

PACKAGE_EXCLUDE = "imx-gpu-viv"

还有

IMAGE_INSTALL_remove = "imx-gpu-viv"

进入我的 fsl-image-validation-qt5.bb 文件,但它们都没有任何效果。

这是自动加载 galcore 的 bb 文件

inherit module
require recipes-kernel/linux/linux-imx-src.inc
LIC_FILES_CHKSUM = "file://${COMMON_LICENSE_DIR}/GPL-2.0;md5=801f80980d171dd6425610833a22dbe6"

EXTRA_OEMAKE += "CONFIG_MXC_GPU_VIV=m"

KERNEL_MODULE_AUTOLOAD = ""

如果我在上面的 OEMAKE 路径中给出 "n",我会收到一条错误消息

ERROR: kernel-module-imx-gpu-viv-6.2.4.p1.2-r0 do_package: QA Issue: kernel-module-imx-gpu-viv: Files/directories were installed but not shipped in any package:
/lib
/lib/modules
/lib/modules/4.9.88-imx_4.9.88_2.0.0_ga+g5e23f9d61147
/lib/modules/4.9.88-imx_4.9.88_2.0.0_ga+g5e23f9d61147/extra
Please set FILES such that these items are packaged. Alternatively if they are unneeded, avoid installing them or delete them within do_install

如何将此内核模块列入黑名单或阻止其自动加载?

要将 galcore 内核模块列入黑名单,您应该设置以下 bitbake 变量,而在:

  • local.conf
  • virtual/kernel 食谱 bbappend
  • 提供 galcore 模块 bbappend 的配方
  • 机器配置
  • 发行版配置
KERNEL_MODULE_PROBECONF += "galcore"
module_conf_galcore = "blacklist galcore"

它将创建一个包含 module_conf 内容的 /etc/modprobe.d/galcore.conf 文件。


参见 mega 手册: