首先,我应该说,我是约克托世界的完全新手。
我有一个产生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我见过在内核中集成树外驱动程序并重建yocto项目映像,也读过Yocto内核开发手册。
我试着按照指示:
.../recipes-kernel中linux dir旁边创建了一个目录。.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我的mod 89359-mod_0.1.bb包含:
SUMMARY = "Integration of Cypress BCMDHD external Linux kernel module"
LICENSE = "Proprietary"
inherit module
SRC_URI = "file://bcmdhd"
S = "${WORKDIR}"不幸的是,这似乎还不够,因为运行bitbake会导致没有编译尝试。
我显然错过了一些东西,但我无法理解什么。
欢迎任何帮助。
发布于 2018-03-30 08:39:23
您应该有以下源树:
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"来自动加载模块。
https://stackoverflow.com/questions/49559438
复制相似问题