微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

将wilc3000驱动程序添加到Yocto树莓派

如何解决将wilc3000驱动程序添加到Yocto树莓派

我想为覆盆子(cm3)构建自己的yocto图像。我使用Meta-raspBerry(dunfell)层和poky dunfell-23.0.0。

要安装微芯片wilc3000模块,我必须按照此guide修改内核。这样,我更改了内核conf(Kconfig),以在菜单添加mchp驱动程序,然后选择它。

我已经使用此guide(基于补丁的工作流程)为内核生成了补丁。生成补丁后,我已经修改生成一个新的内核配置(defconfig)。所有更改均通过此配方(linux-raspBerrypi _%。bbappend)在我自己的层中应用:

FILESEXTRAPATHS_prepend := "${THISDIR}/patchs:"

SRC_URI += "file://0001-Add-wilc3000-driver.patch \
            file://defconfig_my \
            "
PACKAGE_ARCH = "${MACHINE_ARCH}"

# PR="r2"

INTREE_DEFCONfig_pn-linux-ti = "defconfig_my"

kmoddir = "/lib/modules/${KERNEL_VERSION}/kernel/drivers/net/wireless/mchp"

# do_configure_append() {
#     cat ${workdir}/*.cfg >> ${B}/.config
# }

do_install_append() {
  install -d ${D}${kmoddir}
  install -m 0755 ${workdir}/wilc-spi.ko ${D}${kmoddir}
}


FILES_${PN}_append += " \
  ${kmoddir}/wilc-spi.ko \
"

patchs 文件夹包含内核的补丁和生成的新内核配置

当我生成图像时:

bitbake -v core-image-base

尝试复制未生成的wilc-spi.ko时,在 do_install 任务中生成失败。

用我自己的配置编译和部署内核的方法是哪种?如果我在单独的文件夹中下载并编译内核,它将成功生成wilc-spi.ko,但在yocto的 build 文件夹中没有文件生成的踪迹。

请帮助我将此驱动程序添加到内核,非常感谢。

解决方法

正如@qschulz所指出的,解决方案是将 defconfig_my 更改为 defconfig ,并删除所有多余的代码。最后,代码如下所示:

FILESEXTRAPATHS_prepend := "${THISDIR}/patchs:"

SRC_URI += "file://0001-Add-wilc3000-driver.patch \
            file://defconfig \
            "
PACKAGE_ARCH = "${MACHINE_ARCH}"

PR="r3"
    
FILES_${PN}_append += " \
  ${kmoddir}/wilc-spi.ko \
"

KERNEL_MODULE_AUTOLOAD += "wilc-spi.ko"

并在 layer.conf 中添加说明以加载模块:

MACHINE_EXTRA_RDEPENDS += " kernel-module-wilc-spi "

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。