嗨,我对Android / Linux内核模块创建非常新,并且我一直在尝试使用本指南来使用简单的hello模块:https://abdullahyousafzaii.wordpress.com/2015/08/02/how-to-write-a-kernel-module-for-android/
据我所知,我已经能够使用aosp正确编译模块。 但是,当我查看adb shell上的/ system / lib / modules /时,我没有看到任何驱动程序模块,而是有这个:
optee.ko readme.txt rk29-ipp.ko.3.0.101+
optee_armtz.ko rk29-ipp.ko rk29-ipp.ko.3.0.36+
我的猜测是模块被压缩成android内核使用的包。 是否有配置来防止这种情况发生? 要么 我是以错误的方式来做这件事的吗?
我正在使用的主板是带有arm64处理器的rk3399
答案 0 :(得分:0)
尝试将模块(hello.c)保存在内核中的 drivers / misc 之类的另一个目录中。然后将obj-m += hello.o
添加到内核目录中的 drivers / misc / Makefile 。运行一个干净的构建,让我知道当你刷新系统时,板上的/ system / lib / modules /中是否存在.ko <。pg
您必须在 /system/core/rootdir/init.rc 文件中包含insmod /system/lib/modules/hello.ko
,以便在电路板启动时自动加载模块。