gpt4 book ai didi

compilation - Yocto:如何添加树外设备驱动程序?

转载 作者:行者123 更新时间:2023-12-05 07:35:26 31 4
gpt4 key购买 nike

首先,我应该说我是 Yocto 世界的新手。

我有一个可以生成我的 uboot+kernel+rootfs 的工作环境。

我需要添加一个(复杂的)驱动程序作为子目录。

此驱动程序可以以标准方式本地编译:

here=$(pwd)
make -C /lib/modules/$(uname -r)/build M=$here/bcmdhd modules CONFIG_BCMDHD_PCIE=y CONFIG_BCMDHD=m CONFIG_BCM4359=y

我看过Integrate out-of-tree driver in kernel and rebuild yocto project image我读过Yocto Kernel Development Manual .

我试着按照指示去做:

  • .../recipes-kernel 中创建了一个目录,位于 linux 目录旁边。
  • 将源码目录复制到里面。
  • 创建了一个 .bb 文件。

生成的源代码树是:

recipes-kernel/
├── kernel-modules
│   ├── kernel-module-bcmdhd
│   │   └── bcmdhd
│   │   ├── include
│   │   │   ├── include files
│   │   ├── Kconfig
│   │   ├── Makefile
│   │   └── other source files
│   └── kernel-module-bcmdhd_0.1.bb
└── linux
├── linux-imx-4.1.15
│   └── imx
│   └── defconfig
└── linux-imx_4.1.15.bbappend

我的 BCM89359-mod_0.1.bb 包含:

SUMMARY = "Integration of Cypress BCMDHD external Linux kernel module"
LICENSE = "Proprietary"
inherit module
SRC_URI = "file://bcmdhd"
S = "${WORKDIR}"

不幸的是,这似乎还不够,因为运行 bitbake 结果没有尝试编译。

我显然遗漏了一些东西,但我无法理解是什么。

欢迎任何帮助。

最佳答案

您应该具有以下源代码树:

recipes-kernel/
├── kernel-modules
│   ├── kernel-module-bcm89359_0.1.bb
│ └── kernel-module-bcm89359
│ └ bcmdhd
│ ├ Kconfig
└── linux
├── ...

(备案)您可以将您的模块添加到 MACHINE_ESSENTIAL_EXTRA_RDEPENDS += "kernel-module-bcm89359" 到 local.conf 或机器配置。此外,您可以添加 KERNEL_MODULE_AUTOLOAD = "bcm89359" 以自动加载您的模块。

关于compilation - Yocto:如何添加树外设备驱动程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49559438/

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