我正在尝试为我的 PCI 声卡创建一个简单的驱动程序,我将在其中使用 ALSA api。要运行我的驱动程序,我已将原始 snd_intel8x0 声卡驱动程序列入黑名单。此时我的探测函数被调用,我的 PCI IO 端口被分配,并且 PCI 设备被启用。
不幸的是,当我尝试使用 ALSA api 时,出现以下错误:
[...] alsa:未知符号 snd_card_register(错误 0)
[...] alsa:未知符号 snd_card_create(错误 0)
[...] alsa:未知符号 snd_card_free(错误 0)
[...] alsa:未知符号 snd_device_new(错误 0)
同样在文件 /proc/kallsyms 中没有 snd* 符号(如果原始驱动程序 snd_intel8x0 正在运行所有上述 snd* 函数在 /proc/kallsyms 中可用)
当原始驱动程序被列入黑名单时,文件夹 /proc/asound 消失(如果 snd_intel8x0 正在运行,则存在一个sound文件夹)
我在互联网上的搜索以及在这里和其他论坛中的问题表明,我必须以某种方式用我的驱动程序构建 ALSA。我该怎么做?任何指南,教程链接都非常感谢。
非常感谢提前。我希望能得到一些有用的答案。我试图解决这个问题很长时间没有成功。
问候,内德林。