相关疑难解决方法(0)

Linux内核代码中"EXPORT_SYMBOL"的含义是什么?

这里开始

 48 struct snd_card *snd_cards[SNDRV_CARDS];
 49 EXPORT_SYMBOL(snd_cards);
Run Code Online (Sandbox Code Playgroud)

我不知道它的含义以及为什么使用它.我试图搜索它,但没有理解它的含义.

c linux linux-kernel

38
推荐指数
3
解决办法
5万
查看次数

如何编写Linux驱动模块调用/使用其他驱动模块?

我正在开发一个Linux驱动程序可加载模块,我必须在我的驱动程序中使用另一个设备.(堆叠在另一个驱动程序上的驱动程序的种类)

如何在我的驱动程序中调用/使用其他驱动程序?我认为它们都在内核中,所以可能有一种方法可以直接使用另一个驱动程序.

linux kernel module driver device

15
推荐指数
2
解决办法
1万
查看次数

如何在一个Linux内核模块中定义一个函数并在另一个中使用它?

我为内核开发了两个简单的模块.现在我想在一个模块中定义一个函数,然后在另一个模块中使用它.

我怎么能这样做?

只需在其他模块中定义函数和调用程序而不会出现问题?

linux kernel module

10
推荐指数
1
解决办法
2万
查看次数

尽管在Linux内核模块中使用EXPORT_SYMBOL,如何防止"错误:'符号'未声明在这里"?

当我收到此错误时,我将一些驱动程序嵌入到Linux内核中(我在板文件中添加设备并注册它):

error: 'kxtf9_get_slave_descr' undeclared here (not in a function)
Run Code Online (Sandbox Code Playgroud)

我将上面的函数放在驱动程序文件中

struct ext_slave_descr *kxtf9_get_slave_descr(void)
{
    return &kxtf9_descr;
}
EXPORT_SYMBOL(kxtf9_get_slave_descr);
Run Code Online (Sandbox Code Playgroud)

它不应该由EXPORT_SYMBOL"可见"吗?包含上面代码的C文件没有头文件(我没有写它,我只是在这里找到它并且我正在实现.他们说它已经过测试所以我假设不需要头文件?

其余代码编译完美(因此它"看到"文件夹中的代码),包含上面代码的文件也编译完成!

c i2c linux-device-driver linux-kernel

6
推荐指数
1
解决办法
2万
查看次数

如何制作一个Linux内核模块依赖于另一个带有depmod的外部模块?

我正在编写一个依赖于一个现有内核模块的内核模块.我正在从树中构建我的模块(作为外部模块).

如何声明依赖项,以便depmod识别它?

linux kernel-module linux-kernel

5
推荐指数
1
解决办法
7243
查看次数

内核模块中的EXPORT_SYMBOL | insmod期间未定义的符号

我从a.ko(内核模块)导出函数foo()和foo1(),foo1()接受输入参数,一个函数指针.我从b.ko调用foo1(),并传递foo()作为输入参数.

我看到b.ko(未知符号foo)的insmod失败,即使a.ko已经在b.ko之前被破坏了.

任何解释/解决方案?

谢谢,幸运

linux kernel module insmod

5
推荐指数
1
解决办法
2803
查看次数

kallsyms 是否具有内核函数的所有符号?

在 Linux 内核中,我想探测内核函数effective_prio()。它定义为static。当我去搜索它的符号时,kallsyms我找不到它。是否kallsyms具有内核函数的所有符号?如果没有,哪些符号不包括在内?

c linux kernel

5
推荐指数
2
解决办法
8017
查看次数

如何将Linux内核驱动程序模块添加为Buildroot包?

我目前正在为Xilinx的Zybo Board构建嵌入式Linux.为此,我使用Buildroot.现在我想添加一个用C语言编写的驱动程序,用户程序可以使用该驱动程序写入某些特定的寄存器,使其能够控制某些LED.当我查看手册时,基本上说首先要做的是在新的包文件夹中创建一个Config.in,在那里你可以写一些解释驱动程序的文本.好的,我做到了.但是现在makefile:我不太明白那里需要什么.它只是一个编译命令gcc -o ledcontrol hellofunc.c吗?除了Config.in和Makefile之外,我还需要做些什么吗?

c xilinx embedded-linux buildroot

4
推荐指数
2
解决办法
9895
查看次数