如何在 Arch Linux 中安装编译好的驱动程序(模块)

如何在 Arch Linux 中安装编译好的驱动程序(模块)

我有一台 Chuwi Hi12 平板电脑(x86_64 处理器),我在上面安装了 ArchLinux。我试图使用默认驱动程序使声音正常工作,但我做不到。所以我从这里下载了一个C编写的驱动程序:

linux-chwhi12/es8316.c

我用系统包含的makefile编译它并获得了.ko文件。我不知道应该如何继续这里,所以我在这个论坛上提问。

非常感谢您的阅读和回答

_____________________________________________________________-

编辑。我尝试使用 insmod 插入模块,但它说资源正忙。我不知道如何管理它。以下是引用 es8316 的模块:

snd_soc_sst_byt_cht_es8316 16384 0 - Live 0x          (null)
snd_soc_es8316 40960 1 - Live 0x          (null)
snd_soc_core 286720 3 snd_soc_sst_byt_cht_es8316,snd_soc_es8316,snd_soc_sst_atom_hifi2_platform, Live 0x          (null)
snd_pcm 135168 6 snd_hdmi_lpe_audio,snd_soc_sst_byt_cht_es8316,snd_soc_es8316,snd_soc_sst_atom_hifi2_platform,snd_soc_core,snd_pcm_dmaengine, Live 0x          (null)

这些是Arch Linux安装的默认驱动程序,但它们不起作用,所以我尝试安装我显示的驱动程序

答案1

如果您正在测试该模块,请使用sudo insmod <module_name>.ko.安装完成后,.ko 应该位于 中/usr/lib/modules/$(uname -r)/,这将允许您执行以下操作sudo modprobe <module_name>

@jasonwryan 是最正确的,你应该写一个 PKGBUILD。我之前没有在 arch 中打包过内核模块,但是维基百科一如既往地拥有丰富的资源

相关内容