【问题标题】:Add image sensor driver to linux kernel将图像传感器驱动程序添加到 linux 内核
【发布时间】:2013-08-05 19:51:41
【问题描述】:

我正在开展一个项目,该项目使用Leopardboard DM368LI-M024DUAL 摄像板接口实现立体视觉。该相机使用 Aptina 的 MT09M024 作为其图像传感器。 在网上花了很多时间寻找合适的驱动程序后,我要求 OEM 为我提供一些支持。他们为我提供了驱动程序源文件。问题是我无法将它们包含到内核中。 我还查找了构建模块的方法,并且对它相当满意。但是对于当前的驱动程序,我有一堆使用不存在的头文件的 *.c 文件(我无法在 /linux 目录中找到这些 linux 头文件)。

现在我的问题是,如果我有图像传感器驱动程序的源代码并想要构建它,相同的一般过程是什么。

欢迎提供这方面的任何帮助。

-Kartik

【问题讨论】:

  • 您在此处引用的头文件,它们是标准的 linux 内核头文件还是特定于供应商的?如果它们是特定于供应商的,您应该从供应商处获取它们(或从您获得来源的地方,即 OEM)。如果它们是 Linux 内核头文件,它们应该在内核的 include/ 目录中。请为他们获取内核源代码。
  • 感谢您的回复。我认为头文件是特定于供应商的,因为我在 linux 头文件夹中找不到它们。我想现在我需要联系供应商。

标签: module linux-device-driver embedded-linux device-driver kernel-module


【解决方案1】:

有两种方式来构建你的模块: 1. 静态链接到内核镜像(内置) 2. 创建可动态加载的模块

  1. 静态链接到内核映像(内置) 为此,您必须在内核文件夹(在驱动程序/ 中的某个位置)中找到适当的位置来复制您的 .c 文件。在那里复制它们。参考其他内核驱动程序编辑 Kconfig 和 Makefiles。并使用 menuconfig 启用支持。编译。

  2. 创建可动态加载的模块

您可以在不将它们复制到内核源代码的情况下进行构建。只需创建一个 Makefile 并在 Makefile 中放置规则即可编译您的模块。在这里,您必须通过提供内核源路径将模块链接到内核。

更多谷歌应该提供帮助。

【讨论】:

    猜你喜欢
    • 2019-12-12
    • 2012-08-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-02-05
    • 2015-12-31
    • 2012-09-05
    • 1970-01-01
    相关资源
    最近更新 更多